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