1<h2>processor_assign</h2>
2<hr>
3<p>
4<strong>Function</strong> - Assign a processor to a processor set.
5<h3>SYNOPSIS</h3>
6<pre>
7<strong>kern_return_t	processor_assign</strong>
8		<strong>(processor_t</strong>	<var>processor</var>,
9		<strong>processor_set_t</strong>	<var>new_set</var>,
10		<strong>boolean_t</strong>	<var>wait</var><strong>);</strong>
11</pre>
12<h3>PARAMETERS</h3>
13<dl>
14<dt> <var>processor</var> 
15<dd>
16[in processor send right]
17The processor to be assigned.
18<dt> <var>new_set</var> 
19<dd>
20[in processor-set-control send right]
21The control port for the processor 
22set into which the processor is to be assigned.
23<dt> <var>wait</var> 
24<dd>
25[in scalar]
26True if the call should wait for the completion of the
27assignment.
28</dl>
29<h3>DESCRIPTION</h3>
30<p>
31The <strong>processor_assign</strong> function assigns <var>processor</var> to
32the set <var>new_set</var>.  After the 
33assignment is completed, the processor only executes threads that are assigned 
34to that processor set.  Any previous assignment of the processor
35is nullified.  The 
36master processor cannot be re-assigned.
37<p>
38The <var>wait</var> argument indicates whether the 
39caller should wait for the assignment 
40to be completed or should return immediately.  Dedicated kernel threads are 
41used to perform processor assignment, so setting <var>wait</var> to <strong>FALSE</strong> allows
42assignment requests to be queued and performed more quickly, especially
43if the kernel has 
44more than one dedicated internal thread for processor assignment.
45<p>
46All processors take clock interrupts at all times.  Redirection of other device
47interrupts away from processors assigned to other than the default
48processor set is 
49machine dependent.
50<h3>RETURN VALUES</h3>
51<p>
52Only generic errors apply.
53<h3>RELATED INFORMATION</h3>
54<p>
55Functions:
56<a href="processor_set_create.html">processor_set_create</a>,
57<a href="processor_set_info.html">processor_set_info</a>,
58<a href="task_assign.html">task_assign</a>,
59<a href="thread_assign.html">thread_assign</a>.
60