svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
pset_bind(2)
pset_bind(2) System Calls pset_bind(2)
NAME
pset_bind - bind LWPs to a pset
SYNOPSIS
#include <sys/pset.h>
int pset_bind(psetid_t pset, idtype_t idtype, id_t id, psetid_t *opset);
DESCRIPTION
The pset_bind() function binds the LWP or set of LWPs specified by
idtype and id to the pset specified by pset. If opset is not NULL,
pset_bind() sets the psetid_t variable pointed to by opset to the pre‐
vious pset binding of one of the specified LWP, or to PS_NONE if the
selected LWP was not bound.
If idtype is P_PID, the binding affects all LWPs of the process with
process ID (PID) id.
If idtype is P_LWPID, the binding affects the LWP of the current
process with LWP ID id.
If idtype is P_TASKID, the binding affects all LWPs of all processes
with task ID id.
If idtype is P_PROJID, the binding affects all LWPs of all processes
with project ID id.
If idtype is P_ZONEID, the binding affects all LWPs of all processes
with zone ID id.
If idtype is P_CTID, the binding affects all LWPs of all processes with
process contract ID id.
If id is P_MYID, the specified LWP, process, task, project, zone, or
process contract is the current one.
If pset is PS_NONE, the pset bindings of the specified LWPs are
cleared.
If pset is PS_QUERY, the pset bindings are not changed.
If pset is PS_MYID, the specified LWPs are bound to the same pset as
the caller. If the caller is not bound to a pset, the pset bindings are
cleared.
The {PRIV_SYS_RES_CONFIG} privilege must be asserted in the effective
set of the calling process or pset must be PS_QUERY.
LWPs that have been bound to a processor with processor_bind(2) may
also be bound to a pset if the processor is part of the pset. If this
occurs, the binding to the processor remains in effect. If the proces‐
sor binding is later removed, the pset binding becomes effective.
Pset bindings are inherited across fork(2) and exec(2).
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, −1 is returned
and errno is set to indicate the error.
ERRORS
The pset_bind() function will fail if:
EBUSY One of the LWPs is bound to a processor, and the specified
pset does not include that processor, or a process belongs
to a different zone than processes currently bound to the
pset.
EFAULT The location pointed to by opset was not NULL and not
writable by the user.
EINVAL An invalid pset ID was specified; or idtype was not P_PID,
P_LWPID, P_PROJID, P_TASKID, P_ZONEID, or P_CTID: or the
zone of the target threads or processes is bound to a pool.
See pooladm(8).
ENOTSUP The target pset is a pset created by the resource pools
facility. See pooladm(8). Processes can be bound to regular
pools using the poolbind(8) utility or the pool_set_bind‐
ing(3POOL) function.
Binding a system process to a pset is not supported.
EPERM The {PRIV_PROC_OWNER} is not asserted in the effective set
of the calling process and either the real or effective user
ID of the calling process does not match the real or effec‐
tive user ID of one of the LWPs being bound, or the pset
from which one or more of the LWPs are being unbound has the
PSET_NOESCAPE attribute set and {PRIV_SYS_RES_CONFIG) is not
asserted in the effective set of the calling process. See
pset_setattr(2) for more information about pset attributes.
ESRCH No processes, LWPs, or tasks were found to match the crite‐
ria specified by idtype and id.
EINTR The process received a signal while attempting the opera‐
tion.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelAsync-Signal-
Safe
SEE ALSO
exec(2), fork(2), processor_bind(2), pset_create(2), pset_info(2),
pset_setattr(2), pset_getloadavg(3C), pool_set_binding(3POOL),
pool_set_status(3POOL), process(5), project(5), attributes(7), privi‐
leges(7), pbind(8), pooladm(8), poolbind(8), psrset(8)
Oracle Solaris 11.4 20 Jan 2015 pset_bind(2)