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