xref: /xnu-10063.121.3/osfmk/man/thread_basic_info.html (revision 2c2f96dc2b9a4408a43d3150ae9c105355ca3daa)
1*2c2f96dcSApple OSS Distributions<h2>thread_basic_info</h2>
2*2c2f96dcSApple OSS Distributions<hr>
3*2c2f96dcSApple OSS Distributions<p>
4*2c2f96dcSApple OSS Distributions<strong>Structure</strong> - Defines basic information for a thread.
5*2c2f96dcSApple OSS Distributions<h3>SYNOPSIS</h3>
6*2c2f96dcSApple OSS Distributions<pre>
7*2c2f96dcSApple OSS Distributions<strong>struct thread_basic_info</strong>
8*2c2f96dcSApple OSS Distributions<strong>{</strong>
9*2c2f96dcSApple OSS Distributions       <strong>time_value_t</strong>     <var>user_time</var><strong>;</strong>
10*2c2f96dcSApple OSS Distributions       <strong>time_value_t</strong>   <var>system_time</var><strong>;</strong>
11*2c2f96dcSApple OSS Distributions       <strong>integer_t</strong>        <var>cpu_usage</var><strong>;</strong>
12*2c2f96dcSApple OSS Distributions       <strong>policy_t</strong>            <var>policy</var><strong>;</strong>
13*2c2f96dcSApple OSS Distributions       <strong>integer_t</strong>        <var>run_state</var><strong>;</strong>
14*2c2f96dcSApple OSS Distributions       <strong>integer_t</strong>            <var>flags</var><strong>;</strong>
15*2c2f96dcSApple OSS Distributions       <strong>integer_t</strong>    <var>suspend_count</var><strong>;</strong>
16*2c2f96dcSApple OSS Distributions       <strong>integer_t</strong>       <var>sleep_time</var><strong>;</strong>
17*2c2f96dcSApple OSS Distributions<strong>};</strong>
18*2c2f96dcSApple OSS Distributions
19*2c2f96dcSApple OSS Distributions<strong>typedef struct thread_basic_info* thread_basic_info_t;</strong>
20*2c2f96dcSApple OSS Distributions</pre>
21*2c2f96dcSApple OSS Distributions<h3>FIELDS</h3>
22*2c2f96dcSApple OSS Distributions<dl>
23*2c2f96dcSApple OSS Distributions<dt> <var>user_time</var>
24*2c2f96dcSApple OSS Distributions<dd>
25*2c2f96dcSApple OSS DistributionsThe total user run time for the thread.
26*2c2f96dcSApple OSS Distributions     <p>
27*2c2f96dcSApple OSS Distributions<dt> <var>system_time</var>
28*2c2f96dcSApple OSS Distributions<dd>
29*2c2f96dcSApple OSS DistributionsThe total system run time for the thread.
30*2c2f96dcSApple OSS Distributions          <p>
31*2c2f96dcSApple OSS Distributions<dt> <var>cpu_usage</var>
32*2c2f96dcSApple OSS Distributions<dd>
33*2c2f96dcSApple OSS DistributionsScaled <strong>CPU</strong> usage percentage for the thread.
34*2c2f96dcSApple OSS Distributions          <p>
35*2c2f96dcSApple OSS Distributions<dt> <var>policy</var>
36*2c2f96dcSApple OSS Distributions<dd>
37*2c2f96dcSApple OSS DistributionsScheduling policy in effect
38*2c2f96dcSApple OSS Distributions          <p>
39*2c2f96dcSApple OSS Distributions<dt> <var>run_state</var>
40*2c2f96dcSApple OSS Distributions<dd>
41*2c2f96dcSApple OSS DistributionsThe thread's run state.  Possible values are:
42*2c2f96dcSApple OSS Distributions<dl>
43*2c2f96dcSApple OSS Distributions       <p>
44*2c2f96dcSApple OSS Distributions<dt> <strong>TH_STATE_RUNNING</strong>
45*2c2f96dcSApple OSS Distributions<dd>
46*2c2f96dcSApple OSS DistributionsThe thread is running normally.
47*2c2f96dcSApple OSS Distributions          <p>
48*2c2f96dcSApple OSS Distributions<dt> <strong>TH_STATE_STOPPED</strong>
49*2c2f96dcSApple OSS Distributions<dd>
50*2c2f96dcSApple OSS DistributionsThe thread is stopped.
51*2c2f96dcSApple OSS Distributions          <p>
52*2c2f96dcSApple OSS Distributions<dt> <strong>TH_STATE_WAITING</strong>
53*2c2f96dcSApple OSS Distributions<dd>
54*2c2f96dcSApple OSS DistributionsThe thread is waiting normally.
55*2c2f96dcSApple OSS Distributions          <p>
56*2c2f96dcSApple OSS Distributions<dt> <strong>TH_STATE_UNINTERRUPTIBLE</strong>
57*2c2f96dcSApple OSS Distributions<dd>
58*2c2f96dcSApple OSS DistributionsThe thread is in an un-interruptible wait state.
59*2c2f96dcSApple OSS Distributions          <p>
60*2c2f96dcSApple OSS Distributions<dt> <strong>TH_STATE_HALTED</strong>
61*2c2f96dcSApple OSS Distributions<dd>
62*2c2f96dcSApple OSS DistributionsThe thread is halted at a clean point.
63*2c2f96dcSApple OSS Distributions</dl>
64*2c2f96dcSApple OSS Distributions     <p>
65*2c2f96dcSApple OSS Distributions<dt> <var>flags</var>
66*2c2f96dcSApple OSS Distributions<dd>
67*2c2f96dcSApple OSS DistributionsSwap/idle flags for the thread.  Possible values are:
68*2c2f96dcSApple OSS Distributions<dl>
69*2c2f96dcSApple OSS Distributions       <p>
70*2c2f96dcSApple OSS Distributions<dt> <strong>TH_FLAGS_SWAPPED</strong>
71*2c2f96dcSApple OSS Distributions<dd>
72*2c2f96dcSApple OSS DistributionsThe thread is swapped out.
73*2c2f96dcSApple OSS Distributions          <p>
74*2c2f96dcSApple OSS Distributions<dt> <strong>TH_FLAGS_IDLE</strong>
75*2c2f96dcSApple OSS Distributions<dd>
76*2c2f96dcSApple OSS DistributionsThe thread is an idle thread.
77*2c2f96dcSApple OSS Distributions</dl>
78*2c2f96dcSApple OSS Distributions     <p>
79*2c2f96dcSApple OSS Distributions<dt> <var>suspend_count</var>
80*2c2f96dcSApple OSS Distributions<dd>
81*2c2f96dcSApple OSS DistributionsThe current suspend count for the thread.
82*2c2f96dcSApple OSS Distributions          <p>
83*2c2f96dcSApple OSS Distributions<dt> <var>sleep_time</var>
84*2c2f96dcSApple OSS Distributions<dd>
85*2c2f96dcSApple OSS DistributionsThe number of seconds that the thread has been sleeping.
86*2c2f96dcSApple OSS Distributions</dl>
87*2c2f96dcSApple OSS Distributions<h3>DESCRIPTION</h3>
88*2c2f96dcSApple OSS Distributions<p>
89*2c2f96dcSApple OSS DistributionsThe <strong>thread_basic_info</strong> structure defines the basic information
90*2c2f96dcSApple OSS Distributionsarray for threads.
91*2c2f96dcSApple OSS DistributionsThe <strong>thread_info</strong> function returns this array for a specified thread.
92*2c2f96dcSApple OSS Distributions<h3>RELATED INFORMATION</h3>
93*2c2f96dcSApple OSS Distributions<p>
94*2c2f96dcSApple OSS DistributionsFunctions:
95*2c2f96dcSApple OSS Distributions<a href="thread_info.html"><strong>thread_info</strong></a>.
96*2c2f96dcSApple OSS Distributions<p>
97*2c2f96dcSApple OSS DistributionsData Structures:
98*2c2f96dcSApple OSS Distributions<a href="policy_fifo_info.html"><strong>policy_fifo_info</strong></a>,
99*2c2f96dcSApple OSS Distributions<a href="policy_rr_info.html"><strong>policy_rr_info</strong></a>,
100*2c2f96dcSApple OSS Distributions<a href="policy_timeshare_info.html"><strong>policy_timeshare_info</strong></a>.
101