pbind(1M)
NAME
pbind - control and query bindings of processes to proces-
sors
SYNOPSIS
pbind -b processor_id pid...
pbind -u pid...
pbind [-q] [pid...]
DESCRIPTION
pbind controls and queries bindings of processes to proces-
sors. pbind binds all the LWPs (lightweight processes) of a
process to a processor, or removes or displays the bindings.
When an LWP is bound to a processor, it will be executed
only by that processor except when the LWP requires a
resource that is provided only by another processor. The
binding is not exclusive, that is, the processor is free
execute other LWPs as well.
Bindings are inherited, so new LWPs and processes created by
a bound LWP will have the same binding. Binding an interac-
tive shell to a processor, for example, binds all commands
executed by the shell.
Superusers may bind or unbind any process, and other users
can use pbind to bind or unbind any process for which the
user has permission to signal, that is, any process that has
the same effective user ID as the user.
OPTIONS
The following options are supported:
-b processor_id
Binds all the LWPs of the specified processes to the
processor processor_id. Specify processor_id as the
processor ID of the processor to be controlled or
queried. processor_id must be present and on-line.
Use the psrinfo command to determine whether or not
processor_id is present and on-line. See psrinfo(1M).
-q Displays the bindings of the specified processes, or
of all processes. If a process is composed of multiple
LWPs, which have different bindings, the bindings of
only one of the bound LWPs will be displayed.
-u Removes the bindings of all LWPs of the specified
processes, allowing them to be executed on any on-line
processor.
OPERANDS
The following operands are supported:
pid The process ID of the process to be controlled or
queried.
EXAMPLES
Example 1: Binding Processes
The following example binds processes 204 and 223 to proces-
sor 2:
example% pbind -b 2 204 223
process id 204: was 2, now 2
process id 223: was 3, now 2
Example 2: Unbinding a Process
The following example unbinds process 204:
example% pbind -u 204
Example 3: Querying Bindings
The following example queries bindings. It demonstrates that
process 1 is bound to processor 0, process 149 has at least
one LWP bound to CPU3, and process 101 has no bound LWPs.
example% pbind -q 1 149 101
process id 1: 0
process id 149: 3
process id 101: not bound
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWcsu |
|_____________________________|_____________________________|
EXIT STATUS
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
SEE ALSO
psradm(1M), psrinfo(1M), psrset(1M), processor_bind(2),
processor_info(2), sysconf(3C), attributes(5)
DIAGNOSTICS
pbind: cannot query pid 31: No such process
The process specified did not exist or has exited.
pbind: cannot bind pid 31: Not owner
The user does not have permission to bind the process.
pbind: cannot bind pid 31: Invalid argument
The specified processor is not on-line.
Man(1) output converted with
man2html