@@ -38,100 +38,184 @@ s! {
38
38
}
39
39
40
40
pub struct kinfo_proc {
41
+ /// Size of this structure.
41
42
pub ki_structsize: :: c_int,
43
+ /// Reserved: layout identifier.
42
44
pub ki_layout: :: c_int,
45
+ /// Address of command arguments.
43
46
pub ki_args: * mut :: pargs,
44
47
// This is normally "struct proc".
48
+ /// Address of proc.
45
49
pub ki_paddr: * mut :: c_void,
46
50
// This is normally "struct user".
51
+ /// Kernel virtual address of u-area.
47
52
pub ki_addr: * mut :: c_void,
48
53
// This is normally "struct vnode".
54
+ /// Pointer to trace file.
49
55
pub ki_tracep: * mut :: c_void,
50
56
// This is normally "struct vnode".
57
+ /// Pointer to executable file.
51
58
pub ki_textvp: * mut :: c_void,
52
59
// This is normally "struct filedesc".
60
+ /// Pointer to open file info.
53
61
pub ki_fd: * mut :: c_void,
54
62
// This is normally "struct vmspace".
63
+ /// Pointer to kernel vmspace struct.
55
64
pub ki_vmspace: * mut :: c_void,
65
+ /// Sleep address.
56
66
pub ki_wchan: * mut :: c_void,
67
+ /// Process identifier.
57
68
pub ki_pid: :: pid_t,
69
+ /// Parent process ID.
58
70
pub ki_ppid: :: pid_t,
71
+ /// Process group ID.
59
72
pub ki_pgid: :: pid_t,
73
+ /// tty process group ID.
60
74
pub ki_tpgid: :: pid_t,
75
+ /// Process session ID.
61
76
pub ki_sid: :: pid_t,
77
+ /// Terminal session ID.
62
78
pub ki_tsid: :: pid_t,
79
+ /// Job control counter.
63
80
pub ki_jobc: :: c_short,
81
+ /// Unused (just here for alignment).
64
82
pub ki_spare_short1: :: c_short,
83
+ /// Controlling tty dev.
65
84
pub ki_tdev_freebsd11: u32 ,
85
+ /// Signals arrived but not delivered.
66
86
pub ki_siglist: :: sigset_t,
87
+ /// Current signal mask.
67
88
pub ki_sigmask: :: sigset_t,
89
+ /// Signals being ignored.
68
90
pub ki_sigignore: :: sigset_t,
91
+ /// Signals being caught by user.
69
92
pub ki_sigcatch: :: sigset_t,
93
+ /// Effective user ID.
70
94
pub ki_uid: :: uid_t,
95
+ /// Real user ID.
71
96
pub ki_ruid: :: uid_t,
97
+ /// Saved effective user ID.
72
98
pub ki_svuid: :: uid_t,
99
+ /// Real group ID.
73
100
pub ki_rgid: :: gid_t,
101
+ /// Saved effective group ID.
74
102
pub ki_svgid: :: gid_t,
103
+ /// Number of groups.
75
104
pub ki_ngroups: :: c_short,
105
+ /// Unused (just here for alignment).
76
106
pub ki_spare_short2: :: c_short,
107
+ /// Groups.
77
108
pub ki_groups: [ :: gid_t; :: KI_NGROUPS ] ,
109
+ /// Virtual size.
78
110
pub ki_size: :: vm_size_t,
111
+ /// Current resident set size in pages.
79
112
pub ki_rssize: :: segsz_t,
113
+ /// Resident set size before last swap.
80
114
pub ki_swrss: :: segsz_t,
115
+ /// Text size (pages) XXX.
81
116
pub ki_tsize: :: segsz_t,
117
+ /// Data size (pages) XXX.
82
118
pub ki_dsize: :: segsz_t,
119
+ /// Stack size (pages).
83
120
pub ki_ssize: :: segsz_t,
121
+ /// Exit status for wait & stop signal.
84
122
pub ki_xstat: :: u_short,
123
+ /// Accounting flags.
85
124
pub ki_acflag: :: u_short,
125
+ /// %cpu for process during `ki_swtime`.
86
126
pub ki_pctcpu: :: fixpt_t,
127
+ /// Time averaged value of `ki_cpticks`.
87
128
pub ki_estcpu: :: u_int,
129
+ /// Time since last blocked.
88
130
pub ki_slptime: :: u_int,
131
+ /// Time swapped in or out.
89
132
pub ki_swtime: :: u_int,
133
+ /// Number of copy-on-write faults.
90
134
pub ki_cow: :: u_int,
135
+ /// Real time in microsec.
91
136
pub ki_runtime: u64 ,
137
+ /// Starting time.
92
138
pub ki_start: :: timeval,
139
+ /// Time used by process children.
93
140
pub ki_childtime: :: timeval,
141
+ /// P_* flags.
94
142
pub ki_flag: :: c_long,
143
+ /// KI_* flags (below).
95
144
pub ki_kiflag: :: c_long,
145
+ /// Kernel trace points.
96
146
pub ki_traceflag: :: c_int,
147
+ /// S* process status.
97
148
pub ki_stat: :: c_char,
149
+ /// Process "nice" value.
98
150
pub ki_nice: i8 , // signed char
151
+ /// Process lock (prevent swap) count.
99
152
pub ki_lock: :: c_char,
153
+ /// Run queue index.
100
154
pub ki_rqindex: :: c_char,
155
+ /// Which cpu we are on.
101
156
pub ki_oncpu_old: :: c_uchar,
157
+ /// Last cpu we were on.
102
158
pub ki_lastcpu_old: :: c_uchar,
159
+ /// Thread name.
103
160
pub ki_tdname: [ :: c_char; :: TDNAMLEN + 1 ] ,
161
+ /// Wchan message.
104
162
pub ki_wmesg: [ :: c_char; :: WMESGLEN + 1 ] ,
163
+ /// Setlogin name.
105
164
pub ki_login: [ :: c_char; :: LOGNAMELEN + 1 ] ,
165
+ /// Lock name.
106
166
pub ki_lockname: [ :: c_char; :: LOCKNAMELEN + 1 ] ,
167
+ /// Command name.
107
168
pub ki_comm: [ :: c_char; :: COMMLEN + 1 ] ,
169
+ /// Emulation name.
108
170
pub ki_emul: [ :: c_char; :: KI_EMULNAMELEN + 1 ] ,
171
+ /// Login class.
109
172
pub ki_loginclass: [ :: c_char; :: LOGINCLASSLEN + 1 ] ,
173
+ /// More thread name.
110
174
pub ki_moretdname: [ :: c_char; :: MAXCOMLEN - :: TDNAMLEN + 1 ] ,
175
+ /// Spare string space.
111
176
pub ki_sparestrings: [ [ :: c_char; 23 ] ; 2 ] , // little hack to allow PartialEq
177
+ /// Spare room for growth.
112
178
pub ki_spareints: [ :: c_int; :: KI_NSPARE_INT ] ,
179
+ /// Controlling tty dev.
113
180
pub ki_tdev: :: dev_t,
181
+ /// Which cpu we are on.
114
182
pub ki_oncpu: :: c_int,
183
+ /// Last cpu we were on.
115
184
pub ki_lastcpu: :: c_int,
185
+ /// PID of tracing process.
116
186
pub ki_tracer: :: c_int,
187
+ /// P2_* flags.
117
188
pub ki_flag2: :: c_int,
189
+ /// Default FIB number.
118
190
pub ki_fibnum: :: c_int,
191
+ /// Credential flags.
119
192
pub ki_cr_flags: :: u_int,
193
+ /// Process jail ID.
120
194
pub ki_jid: :: c_int,
195
+ /// Number of threads in total.
121
196
pub ki_numthreads: :: c_int,
197
+ // Thread ID.
122
198
pub ki_tid: :: lwpid_t,
199
+ /// Process priority.
123
200
pub ki_pri: :: priority,
201
+ /// Process rusage statistics.
124
202
pub ki_rusage: :: rusage,
203
+ /// rusage of children processes.
125
204
pub ki_rusage_ch: :: rusage,
126
205
// This is normally "struct pcb".
206
+ /// Kernel virtual addr of pcb.
127
207
pub ki_pcb: * mut :: c_void,
208
+ /// Kernel virtual addr of stack.
128
209
pub ki_kstack: * mut :: c_void,
210
+ /// User convenience pointer.
129
211
pub ki_udata: * mut :: c_void,
130
212
// This is normally "struct thread".
131
213
pub ki_tdaddr: * mut :: c_void,
132
214
pub ki_spareptrs: [ * mut :: c_void; :: KI_NSPARE_PTR ] ,
133
215
pub ki_sparelongs: [ :: c_long; :: KI_NSPARE_LONG ] ,
216
+ /// PS_* flags.
134
217
pub ki_sflag: :: c_long,
218
+ /// kthread flag.
135
219
pub ki_tdflags: :: c_long,
136
220
}
137
221
}
0 commit comments