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