...
1
2
3
4 package process
5
6 const (
7 CTLKern = 1
8 KernProc = 14
9 KernProcPID = 1
10 KernProcProc = 8
11 KernProcPathname = 12
12 KernProcArgs = 7
13 )
14
15 const (
16 sizeofPtr = 0x4
17 sizeofShort = 0x2
18 sizeofInt = 0x4
19 sizeofLong = 0x4
20 sizeofLongLong = 0x8
21 )
22
23 const (
24 sizeOfKinfoVmentry = 0x488
25 sizeOfKinfoProc = 0x300
26 )
27
28 const (
29 SIDL = 1
30 SRUN = 2
31 SSLEEP = 3
32 SSTOP = 4
33 SZOMB = 5
34 SWAIT = 6
35 SLOCK = 7
36 )
37
38 type (
39 _C_short int16
40 _C_int int32
41 _C_long int32
42 _C_long_long int64
43 )
44
45 type Timespec struct {
46 Sec int32
47 Nsec int32
48 }
49
50 type Timeval struct {
51 Sec int32
52 Usec int32
53 }
54
55 type Rusage struct {
56 Utime Timeval
57 Stime Timeval
58 Maxrss int32
59 Ixrss int32
60 Idrss int32
61 Isrss int32
62 Minflt int32
63 Majflt int32
64 Nswap int32
65 Inblock int32
66 Oublock int32
67 Msgsnd int32
68 Msgrcv int32
69 Nsignals int32
70 Nvcsw int32
71 Nivcsw int32
72 }
73
74 type Rlimit struct {
75 Cur int64
76 Max int64
77 }
78
79 type KinfoProc struct {
80 Structsize int32
81 Layout int32
82 Args int32
83 Paddr int32
84 Addr int32
85 Tracep int32
86 Textvp int32
87 Fd int32
88 Vmspace int32
89 Wchan int32
90 Pid int32
91 Ppid int32
92 Pgid int32
93 Tpgid int32
94 Sid int32
95 Tsid int32
96 Jobc int16
97 Spare_short1 int16
98 Tdev uint32
99 Siglist [16]byte
100 Sigmask [16]byte
101 Sigignore [16]byte
102 Sigcatch [16]byte
103 Uid uint32
104 Ruid uint32
105 Svuid uint32
106 Rgid uint32
107 Svgid uint32
108 Ngroups int16
109 Spare_short2 int16
110 Groups [16]uint32
111 Size uint32
112 Rssize int32
113 Swrss int32
114 Tsize int32
115 Dsize int32
116 Ssize int32
117 Xstat uint16
118 Acflag uint16
119 Pctcpu uint32
120 Estcpu uint32
121 Slptime uint32
122 Swtime uint32
123 Cow uint32
124 Runtime uint64
125 Start Timeval
126 Childtime Timeval
127 Flag int32
128 Kiflag int32
129 Traceflag int32
130 Stat int8
131 Nice int8
132 Lock int8
133 Rqindex int8
134 Oncpu uint8
135 Lastcpu uint8
136 Tdname [17]int8
137 Wmesg [9]int8
138 Login [18]int8
139 Lockname [9]int8
140 Comm [20]int8
141 Emul [17]int8
142 Loginclass [18]int8
143 Sparestrings [50]int8
144 Spareints [7]int32
145 Flag2 int32
146 Fibnum int32
147 Cr_flags uint32
148 Jid int32
149 Numthreads int32
150 Tid int32
151 Pri Priority
152 Rusage Rusage
153 Rusage_ch Rusage
154 Pcb int32
155 Kstack int32
156 Udata int32
157 Tdaddr int32
158 Spareptrs [6]int32
159 Sparelongs [12]int32
160 Sflag int32
161 Tdflags int32
162 }
163
164 type Priority struct {
165 Class uint8
166 Level uint8
167 Native uint8
168 User uint8
169 }
170
171 type KinfoVmentry struct {
172 Structsize int32
173 Type int32
174 Start uint64
175 End uint64
176 Offset uint64
177 Vn_fileid uint64
178 Vn_fsid uint32
179 Flags int32
180 Resident int32
181 Private_resident int32
182 Protection int32
183 Ref_count int32
184 Shadow_count int32
185 Vn_type int32
186 Vn_size uint64
187 Vn_rdev uint32
188 Vn_mode uint16
189 Status uint16
190 X_kve_ispare [12]int32
191 Path [1024]int8
192 }
193
View as plain text