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