psrset - creation and management of processor sets
psrset -a [-F] processor_set_id processor_id...
psrset -b processor_set_id pid [/lwpid]...
psrset -c [-F] [processor_id]...
psrset -d processor_set_id...
psrset -e processor_set_id command [argument(s)]
psrset -f processor_set_id
psrset [-i] [processor_set_id]...
psrset -n processor_set_id
psrset -p [processor_id]...
psrset [-q] [pid [/lwpid]]...
psrset -Q [processor_set_id]...
psrset -r [-F] processor_id...
psrset -u pid [/lwpid]...
psrset -U [processor_set_id]...
The psrset utility controls the management of processor sets. Processor sets allow the binding of processes or LWPs to groups of processors, rather than just a single processor. Processors assigned to processor sets can run only LWPs that have been bound to that processor set.
This command cannot be used to modify processor disposition when pools are enabled. Use pooladm(1M) and poolcfg(1M) to modify processor set configuration through the resource pools facility.
The following options are supported:
-a
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-b
LWPs bound to a processor set are restricted to run only on the processors in that set. Processes can only be bound to non-empty processor sets, that is, processor sets that have had processors assigned to them.
Bindings are inherited, so new LWPs and processes created by a bound LWP have the same binding. Binding an interactive shell to a processor, for example, binds all commands executed by the shell.
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-c
If a list of processors is given, it also attempts to assign those processors to the processor set. If this succeeds, the processors are idle until LWPs are bound to the processor set. This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
Only a limited number of processor sets can be active (created and not destroyed) at a given time. This limit is always be greater than the number of processors in the system. If the -c option is used when the maximum number of processor sets is already active, the command fails.
The following format is used for the first line of output of the -c option when the LC_MESSAGES locale category specifies the "C" locale. In other locales, the strings created, processor, and set can be replaced with more appropriate strings corresponding to the locale.
"created processor set %d\n" processor set ID
-d
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-e
The command process and any child processes are executed only by processors in the processor set.
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-f
If some processors in the set cannot have their interrupts disabled, the other processors still have their interrupts disabled, and the command reports an error and return non-zero exit status.
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-F
-i
-n
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-p
-q
-Q
-r
Processors with LWPs bound to them using pbind(1M) can be assigned to or removed from processor sets using the -F option.
This option is restricted to users with the PRIV_SYS_RES_CONFIG privilege.
-u
Users with the PRIV_SYS_RES_CONFIG privilege can unbind any process or LWP from any active processor set. Other users can unbind processes and LWPs from processor sets that do not have the PSET_NOESCAPE attribute set. In addition, the user must have permission to control the affected processes; the real or effective user ID of the user must match the real or saved user ID of the target processes.
-U
The following operands are supported:
pid
lwpid
2,3,4-8 LWP IDs 2, 3, and 4 through 8 -4 LWPs whose IDs are 4 or below 4- LWPs whose IDs are 4 or above
processor_id
processor_set_id
The following exit values are returned:
0
non-0
See attributes(5) for descriptions of the following attributes:
|
pbind(1M), pooladm(1M), poolcfg(1M), psradm(1M), psrinfo(1M), processor_bind(2), processor_info(2), pset_bind(2), pset_create(2), pset_info(2), sysconf(3C), libpool(3LIB), attributes(5), privileges(5)
The following output indicates that the specified process did not exist or has exited:
psrset: cannot query pid 31: No such process
The following output indicates that the user does not have permission to bind the process:
psrset: cannot bind pid 31: Not owner
The following output indicates that the user does not have permission to assign the processor:
psrset: cannot assign processor 4: Not owner
The following output indicates that the specified processor is not on-line, or the specified processor does not exist.
psrset: cannot assign processor 8: Invalid argument
The following output indicates that an LWP in the specified process is bound to a processor and cannot be bound to a processor set that does not include that processor:
psrset: cannot bind pid 67: Device busy
The following output indicates that the specified processor could not be added to the processor set. This can be due to bound LWPs on that processor, or because that processor cannot be combined in the same processor set with other processors in that set, or because the processor is the last one in its current processor set:
psrset: cannot assign processor 7: Device busy
The following output indicates that the specified processor set does not exist:
psrset: cannot execute in processor set 8: Invalid argument
The following output indicates that the maximum number of processor sets allowed in the system is already active:
psrset: cannot create processor set: Not enough space
The following output indicates that the pools facility is active.
psrset: cannot assign processor 7: Operation not supported psrset: cannot bind pid 31: Operation not supported psrset: cannot bind pid 31: Operation not supported psrset: could not create processor set: Operation not supported psrset: could not remove processor set 1: Operation not supported psrset: cannot exec in processor set 1: Operation not supported psrset: cannot remove processor 7: Operation not supported psrset: cannot unbind pid 31: Operation not supported
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |