Hi,all:

I installed a sol 10 box (T2000) and tried to migrate our propritary
programe on non-global zones to seperate applications. But when installing
the package,I met a problem, in the installation package, there was some
"dispadmin -c RT -s ../filesname" commands can't excute. After checking the
doc, I found the non-global zone has no privilege to set scheduler
parameters, I must set it under global zone, it's very inconvient to do that
with automatical installation scripts.The worser thing is there are a lot of
codes like following in our application:


//-----------------------------------------
  // Set scheduler class parameters.

  //-----------------------------------------

  struct sched_param scheduleparams;

  scheduleparams.sched_priority = ::sched_get_priority_min (pSchedClass);

  if (pSchedClass != SCHED_RR)

  {

    scheduleparams.sched_nice    = 0;

    scheduleparams.sched_nicelim = 0;

  }

  int retVal = ::sched_setscheduler (::getpid (),    // this process

                                     pSchedClass,

                                     &scheduleparams);

  if (retVal == -1)

  {

    if (pSchedClass == SCHED_RR)

      ::syslog (LOG_INFO, "Monitord: ERROR - Failed to set RT scheduler
parameters");

    else

      ::syslog (LOG_INFO, "Monitord: ERROR - Failed to set TS scheduler
parameters");

  }

If I can't set scheduler parameters under non-global zone, that limit force
me to modify the code. Is there any small skill to allow non-global zone
setting the schedule parameters? Under my system infrastructure, all
applications under one global zone can share one set of scheduler
parameters, so allow non-global zones to modify these parameters will not
affect each other.
b/r

Oxy Hazard








_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to