]> git.saurik.com Git - apple/xnu.git/blame - osfmk/man/policy_timeshare_info.html
xnu-4903.221.2.tar.gz
[apple/xnu.git] / osfmk / man / policy_timeshare_info.html
CommitLineData
13fec989
A
1<h2>policy_timeshare_info</h2>
2<hr>
3<p>
4<strong>Structure</strong> - Specifies information associated with the system's Timeshare scheduling policy.
5<h3>SYNOPSIS</h3>
6<pre>
7<strong>struct policy_timeshare_limit</strong>
8<strong>{</strong>
9 <strong>int</strong> <var>max_priority</var><strong>;</strong>
10<strong>};</strong>
11
12<strong>struct policy_timeshare_base</strong>
13<strong>{</strong>
14 <strong>int</strong> <var>base_priority</var><strong>;</strong>
15<strong>};</strong>
16
17<strong>struct policy_timeshare_info</strong>
18<strong>{</strong>
19 <strong>int</strong> <var>max_priority</var><strong>;</strong>
20 <strong>int</strong> <var>base_priority</var><strong>;</strong>
21 <strong>int</strong> <var>cur_priority</var><strong>;</strong>
22 <strong>boolean_t</strong> <var>depressed</var><strong>;</strong>
23 <strong>int</strong> <var>depress_priority</var><strong>;</strong>
24<strong>};</strong>
25</pre>
26<h3>FIELDS</h3>
27<dl>
28<dt> <var>max_priority</var>
29<dd>
30Maximum scheduling priority.
31<p>
32<dt> <var>base_priority</var>
33<dd>
34Base scheduling priority.
35<p>
36<dt> <var>cur_priority</var>
37<dd>
38Current scheduling priority.
39<p>
40<dt> <var>depressed</var>
41<dd>
42True if scheduling priority is depressed.
43<p>
44<dt> <var>depress_priority</var>
45<dd>
46Scheduling priority from which depressed.
47</dl>
48<h3>DESCRIPTION</h3>
49<p>
50The <strong>policy_timeshare_info</strong> structure defines the timeshare
51scheduling policy
52information.
53Timeshare threads have three priorities associated with them by the system:
54<ul>
55 <p>
56<li>
57A maximum priority value which can be raised only via privileged operation
58so that users may not unfairly compete with other users in their processor
59set. Newly created threads obtain their maximum priority from that of their
60assigned processor set.
61 <p>
62<li>
63A priority value which can be set by the thread to any value up to a
64maximum priority. Newly created threads obtain their priority from their task.
65 <p>
66<li>
67A scheduled priority value which is used to make scheduling decisions for
68the thread. This value is determined on the basis of the user
69priority value by
70the scheduling policy (for time-sharing, this means adding an increment
71derived from CPU usage).
72</ul>
73<h3>RELATED INFORMATION</h3>
74<p>
75Functions:
76<a href="thread_info.html"><strong>thread_info</strong></a>,
77<a href="task_info.html"><strong>task_info</strong></a>,
78<a href="processor_set_info.html"><strong>processor_set_info</strong></a>,
79<a href="P_set_policy_control.html"><strong>processor_set_policy_control</strong></a>,
80<a href="P_set_policy_disable.html"><strong>processor_set_policy_disable</strong></a>,
81<a href="P_set_policy_enable.html"><strong>processor_set_policy_enable</strong></a>,
82<a href="task_policy.html"><strong>task_policy</strong></a>,
83<a href="thread_policy.html"><strong>thread_policy</strong></a>,
84<a href="thread_set_policy.html"><strong>thread_set_policy</strong></a>.
85<p>
86Data Structures:
87<a href="policy_fifo_info.html"><strong>policy_fifo_info</strong></a>,
88<a href="policy_rr_info.html"><strong>policy_rr_info</strong></a>.