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