hpux man page for pset_assign

Query: pset_assign

OS: hpux

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

pset_assign(2)							System Calls Manual						    pset_assign(2)

NAME
pset_assign() - change processor set assignment
SYNOPSIS
DESCRIPTION
The function assigns the processor spu to the processor set pset, removing the processor spu from its current processor set. A processor may not belong to more than one processor set at any given time. If opset is not it contains the processor set ID of the previously assigned processor set upon successful operation. A user with the privilege or a user with WRITE permissions on the processor sets may change the processor set assignment for a processor using the function. A user without the privilege must have WRITE permissions in both processor sets to make the processor reassignment, unless the target processor set is the system default processor set. That is, only a user with the privilege may move a processor out of the system default processor set. Currently, processor 0 cannot be reassigned to another processor set from the system default processor set. The system default processor set is never empty. If pset is or the processor spu is assigned to the system default processor set. If pset is the processor's assignment is not changed, but the current processor set ID of processor spu is returned in opset. Neither WRITE permission nor the privilege is needed for operation. If there are threads or processes with binding to the processor spu (in its old processor set), the binding of affected threads and pro- cesses is changed to another processor in that processor set. If spu is the last processor in the locality domain that contributes to its current processor set and there are threads or processes with binding to the locality domain, their binding is changed to another locality domain in the processor set. See mpctl(2) for binding to processors and locality domains. If spu is the last processor in its current processor set, the behavior of is dependent on the value of the attribute. The following attribute values are defined for this attribute: Assign the processor to the specified processor set, and migrate all threads and processes to the system default processor set, This is the default behavior. If the threads and processes being migrated to the system default processor set (pset) have binding to processor or locality domain, their binding is reassigned to another processor or locality domain in the system default processor set. Make the request fail if there are active threads and processes assigned to the processor set. Security Restrictions Some or all of the actions associated with this system call require the privilege. Processes owned by the superuser have this privilege. Processes owned by other users may have this privilege, depending on system configuration. See privileges(5) for more information about privileged access on systems that support fine-grained privileges. Note on Logical Processor and Hyper-Threading Feature On systems with the Hyper-Threading (HT) feature enabled at the firmware, each hyper-thread is represented as a logical processor (LCPU). For migration of a logical processor in a processor core may also migrate that logical processor's sibling logical processor, which belongs to the same physical processor core. Otherwise the resulting configuration would violate the processor set contract, which specifies that applications bound to a processor set have complete and exclusive control of all processor cores within that processor set. When a processor core is assigned to another pset, depending on the source and target processor sets' (see pset_setattr(2)) value, the num- ber of logical processors from that processor core may change.
EXAMPLES
Reassign spu from its current processor set to new_pset, and retrieve the current processor set in old_pset.
RETURN VALUE
returns zero on successful completion. Otherwise, -1 is returned and is set to indicate the error.
ERRORS
fails if one or more of the following is true: The processor set currently assigned to the processor spu has active threads and processes, and the processor set attributes do not allow this operation. The memory location pointed to by opset is not writable by the user. The operation was interrupted. The processor spu or processor set pset is not valid. The spu is not enabled. The memory location pointed to by opset is and the operation is requested. The processor set functionality is not supported by the underlying HP-UX version. The user does not have necessary permissions to assign spu to pset.
SEE ALSO
mpctl(2), pset_bind(2), pset_create(2), pset_ctl(2), pset_destroy(2), pset_getattr(2), pset_setattr(2), privgrp(4), privileges(5). pset_assign(2)
Related Man Pages
pset_assign(2) - hpux
pset_getattr(2) - hpux
pset_assign(2) - sunos
pset_destroy(2) - sunos
pset_create(2) - minix
Similar Topics in the Unix Linux Community
To find processor speed & memory in HP Unix 10.2
current processes
who is the best processor based servers
linux for dual core processor
Processor and processor core