MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


System Calls                                       psetcreate(2)



NAME
     psetcreate, psetdestroy, psetassign - manage sets of pro-
     cessors

SYNOPSIS
     #include 

     int psetcreate(psetidt *newpset);


     int psetdestroy(psetidt pset);


     int psetassign(psetidt pset, processoridt cpu, psetidt *opset);


DESCRIPTION
     These functions control the creation and management of  sets
     of  processors.   Processor  sets  allow  a  subset  of  the
     system's processors to be set aside  for  exclusive  use  by
     specified  LWPs  and  processes.  The  binding  of  LWPs and
     processes to processor sets is controlled by psetbind(2).


     The psetcreate() function creates an  empty  processor  set
     that  contains no processors.  On successful return, newpset
     will contain the ID of the new processor set.


     The psetdestroy() function destroys the processor set pset,
     releasing  its constituent processors and processes. If pset
     is PSMYID, the processor set to which the caller  is  bound
     is destroyed.


     The psetassign() function assigns the processor cpu to  the
     processor  set pset. A processor that has been assigned to a
     processor set will run only LWPs  and  processes  that  have
     been  explicitly bound to that processor set, unless another
     LWP requires a resource that is only available on that  pro-
     cessor.


     On successful return, if opset is non-null, opset will  con-
     tain the processor set ID of the former processor set of the
     processor.


     If pset is PSNONE,  psetassign()  releases  processor  cpu
     from its current processor set.





SunOS 5.11          Last change: 22 Feb 2008                    1






System Calls                                       psetcreate(2)



     If pset is PSQUERY, psetassign() makes no change  to  pro-
     cessor  sets,  but  returns  the current processor set ID of
     processor cpu in opset.


     If pset is PSMYID, processor cpu is assigned to the proces-
     sor  set to which the caller belongs. If the caller does not
     belong to a processor set, processor cpu  is  released  from
     its current processor set.


     These functions  are  restricted  to  privileged  processes,
     except for psetassign() when pset is PSQUERY.

RETURN VALUES
     Upon successful completion, these functions return 0. Other-
     wise, -1 is returned and errno is set to indicate the error.

ERORS
     These functions will fail if:

     EBUSY      The processor could not be moved to the specified
                processor set.


     EFAULT     The location pointed to by newpset was not  writ-
                able  by  the user, or the location pointed to by
                opset was not NUL and not writable by the user.


     EINVAL     The  specified  processor  does  not  exist,  the
                specified   processor   is  not  on-line,  or  an
                invalid processor set was specified.


     ENOMEM     There was insufficient space for  psetcreate  to
                create a new processor set.


     ENOTSUP    The pools facility is active. See pooladm(1M) and
                poolsetstatus(3POL) for information about ena-
                bling and disabling the pools facility.


     EPERM      The  {PRIVSYSRESCONFIG}   privilege   is   not
                asserted in the effective set of the calling pro-
                cess.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



SunOS 5.11          Last change: 22 Feb 2008                    2






System Calls                                       psetcreate(2)



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Committed                   
    
     MT-Level                     Async-Signal-Safe           
    


SEE ALSO
     pooladm(1M),    psradm(1M),     psrinfo(1M),     psrset(1M),
     ponline(2),  processorbind(2), psetbind(2), psetinfo(2),
     poolsetstatus(3POL), psetgetloadavg(3C),  attributes(5),
     privileges(5)

NOTES
     The processor set type of PSYSTEM is no longer supported.


     Processors with LWPs bound to them  using  processorbind(2)
     cannot  be  assigned  to  a  new  processor set. If  this is
     attempted, psetassign() will fail and set errno to EBUSY.

































SunOS 5.11          Last change: 22 Feb 2008                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™