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