mirror of https://github.com/shirou/gopsutil
[process]freebsd: process_freebsd_amd64.go is now generated by cgo godefs.
parent
e5c53aa342
commit
37b6b4051f
@ -1,125 +1,192 @@
|
|||||||
// +build freebsd
|
// Created by cgo -godefs - DO NOT EDIT
|
||||||
// +build amd64
|
// cgo -godefs types_freebsd.go
|
||||||
|
|
||||||
package process
|
package process
|
||||||
|
|
||||||
// copied from sys/sysctl.h
|
|
||||||
const (
|
const (
|
||||||
CTLKern = 1 // "high kernel": proc, limits
|
CTLKern = 1
|
||||||
KernProc = 14 // struct: process entries
|
KernProc = 14
|
||||||
KernProcPID = 1 // by process id
|
KernProcPID = 1
|
||||||
KernProcProc = 8 // only return procs
|
KernProcProc = 8
|
||||||
KernProcPathname = 12 // path to executable
|
KernProcPathname = 12
|
||||||
KernProcArgs = 7 // get/set arguments/proctitle
|
KernProcArgs = 7
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
sizeofPtr = 0x8
|
||||||
|
sizeofShort = 0x2
|
||||||
|
sizeofInt = 0x4
|
||||||
|
sizeofLong = 0x8
|
||||||
|
sizeofLongLong = 0x8
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
sizeOfKinfoVmentry = 0x488
|
||||||
|
sizeOfKinfoProc = 0x440
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
SIDL = 1
|
||||||
|
SRUN = 2
|
||||||
|
SSLEEP = 3
|
||||||
|
SSTOP = 4
|
||||||
|
SZOMB = 5
|
||||||
|
SWAIT = 6
|
||||||
|
SLOCK = 7
|
||||||
|
)
|
||||||
|
|
||||||
|
type (
|
||||||
|
_C_short int16
|
||||||
|
_C_int int32
|
||||||
|
_C_long int64
|
||||||
|
_C_long_long int64
|
||||||
)
|
)
|
||||||
|
|
||||||
type Timespec struct {
|
type Timespec struct {
|
||||||
Sec int64
|
Sec int64
|
||||||
Nsec int64
|
Nsec int64
|
||||||
}
|
}
|
||||||
|
|
||||||
type Timeval struct {
|
type Timeval struct {
|
||||||
Sec int64
|
Sec int64
|
||||||
Usec int64
|
Usec int64
|
||||||
}
|
}
|
||||||
|
|
||||||
type Rusage struct {
|
type Rusage struct {
|
||||||
Utime Timeval
|
Utime Timeval
|
||||||
Stime Timeval
|
Stime Timeval
|
||||||
Maxrss int64
|
Maxrss int64
|
||||||
Ixrss int64
|
Ixrss int64
|
||||||
Idrss int64
|
Idrss int64
|
||||||
Isrss int64
|
Isrss int64
|
||||||
Minflt int64
|
Minflt int64
|
||||||
Majflt int64
|
Majflt int64
|
||||||
Nswap int64
|
Nswap int64
|
||||||
Inblock int64
|
Inblock int64
|
||||||
Oublock int64
|
Oublock int64
|
||||||
Msgsnd int64
|
Msgsnd int64
|
||||||
Msgrcv int64
|
Msgrcv int64
|
||||||
Nsignals int64
|
Nsignals int64
|
||||||
Nvcsw int64
|
Nvcsw int64
|
||||||
Nivcsw int64
|
Nivcsw int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Rlimit struct {
|
||||||
|
Cur int64
|
||||||
|
Max int64
|
||||||
}
|
}
|
||||||
|
|
||||||
// copied from sys/user.h
|
|
||||||
type KinfoProc struct {
|
type KinfoProc struct {
|
||||||
KiStructsize int32
|
Structsize int32
|
||||||
KiLayout int32
|
Layout int32
|
||||||
KiArgs int64
|
Args int64 /* pargs */
|
||||||
KiPaddr int64
|
Paddr int64 /* proc */
|
||||||
KiAddr int64
|
Addr int64 /* user */
|
||||||
KiTracep int64
|
Tracep int64 /* vnode */
|
||||||
KiTextvp int64
|
Textvp int64 /* vnode */
|
||||||
KiFd int64
|
Fd int64 /* filedesc */
|
||||||
KiVmspace int64
|
Vmspace int64 /* vmspace */
|
||||||
KiWchan int64
|
Wchan int64
|
||||||
KiPid int32
|
Pid int32
|
||||||
KiPpid int32
|
Ppid int32
|
||||||
KiPgid int32
|
Pgid int32
|
||||||
KiTpgid int32
|
Tpgid int32
|
||||||
KiSid int32
|
Sid int32
|
||||||
KiTsid int32
|
Tsid int32
|
||||||
KiJobc [2]byte
|
Jobc int16
|
||||||
KiSpareShort1 [2]byte
|
Spare_short1 int16
|
||||||
KiTdev int32
|
Tdev uint32
|
||||||
KiSiglist [16]byte
|
Siglist [16]byte /* sigset */
|
||||||
KiSigmask [16]byte
|
Sigmask [16]byte /* sigset */
|
||||||
KiSigignore [16]byte
|
Sigignore [16]byte /* sigset */
|
||||||
KiSigcatch [16]byte
|
Sigcatch [16]byte /* sigset */
|
||||||
KiUID int32
|
Uid uint32
|
||||||
KiRuid int32
|
Ruid uint32
|
||||||
KiSvuid int32
|
Svuid uint32
|
||||||
KiRgid int32
|
Rgid uint32
|
||||||
KiSvgid int32
|
Svgid uint32
|
||||||
KiNgroups [2]byte
|
Ngroups int16
|
||||||
KiSpareShort2 [2]byte
|
Spare_short2 int16
|
||||||
KiGroups [64]byte
|
Groups [16]uint32
|
||||||
KiSize int64
|
Size uint64
|
||||||
KiRssize int64
|
Rssize int64
|
||||||
KiSwrss int64
|
Swrss int64
|
||||||
KiTsize int64
|
Tsize int64
|
||||||
KiDsize int64
|
Dsize int64
|
||||||
KiSsize int64
|
Ssize int64
|
||||||
KiXstat [2]byte
|
Xstat uint16
|
||||||
KiAcflag [2]byte
|
Acflag uint16
|
||||||
KiPctcpu int32
|
Pctcpu uint32
|
||||||
KiEstcpu int32
|
Estcpu uint32
|
||||||
KiSlptime int32
|
Slptime uint32
|
||||||
KiSwtime int32
|
Swtime uint32
|
||||||
KiCow int32
|
Cow uint32
|
||||||
KiRuntime int64
|
Runtime uint64
|
||||||
KiStart [16]byte
|
Start Timeval
|
||||||
KiChildtime [16]byte
|
Childtime Timeval
|
||||||
KiFlag int64
|
Flag int64
|
||||||
KiKflag int64
|
Kiflag int64
|
||||||
KiTraceflag int32
|
Traceflag int32
|
||||||
KiStat [1]byte
|
Stat int8
|
||||||
KiNice [1]byte
|
Nice int8
|
||||||
KiLock [1]byte
|
Lock int8
|
||||||
KiRqindex [1]byte
|
Rqindex int8
|
||||||
KiOncpu [1]byte
|
Oncpu uint8
|
||||||
KiLastcpu [1]byte
|
Lastcpu uint8
|
||||||
KiOcomm [17]byte
|
Tdname [17]int8
|
||||||
KiWmesg [9]byte
|
Wmesg [9]int8
|
||||||
KiLogin [18]byte
|
Login [18]int8
|
||||||
KiLockname [9]byte
|
Lockname [9]int8
|
||||||
KiComm [20]byte
|
Comm [20]int8
|
||||||
KiEmul [17]byte
|
Emul [17]int8
|
||||||
KiSparestrings [68]byte
|
Loginclass [18]int8
|
||||||
KiSpareints [36]byte
|
Sparestrings [50]int8
|
||||||
KiCrFlags int32
|
Spareints [7]int32
|
||||||
KiJid int32
|
Flag2 int32
|
||||||
KiNumthreads int32
|
Fibnum int32
|
||||||
KiTid int32
|
Cr_flags uint32
|
||||||
KiPri int32
|
Jid int32
|
||||||
KiRusage Rusage
|
Numthreads int32
|
||||||
KiRusageCh [144]byte
|
Tid int32
|
||||||
KiPcb int64
|
Pri Priority
|
||||||
KiKstack int64
|
Rusage Rusage
|
||||||
KiUdata int64
|
Rusage_ch Rusage
|
||||||
KiTdaddr int64
|
Pcb int64 /* pcb */
|
||||||
KiSpareptrs [48]byte
|
Kstack int64
|
||||||
KiSpareint64s [96]byte
|
Udata int64
|
||||||
KiSflag int64
|
Tdaddr int64 /* thread */
|
||||||
KiTdflags int64
|
Spareptrs [6]int64
|
||||||
|
Sparelongs [12]int64
|
||||||
|
Sflag int64
|
||||||
|
Tdflags int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Priority struct {
|
||||||
|
Class uint8
|
||||||
|
Level uint8
|
||||||
|
Native uint8
|
||||||
|
User uint8
|
||||||
|
}
|
||||||
|
|
||||||
|
type KinfoVmentry struct {
|
||||||
|
Structsize int32
|
||||||
|
Type int32
|
||||||
|
Start uint64
|
||||||
|
End uint64
|
||||||
|
Offset uint64
|
||||||
|
Vn_fileid uint64
|
||||||
|
Vn_fsid uint32
|
||||||
|
Flags int32
|
||||||
|
Resident int32
|
||||||
|
Private_resident int32
|
||||||
|
Protection int32
|
||||||
|
Ref_count int32
|
||||||
|
Shadow_count int32
|
||||||
|
Vn_type int32
|
||||||
|
Vn_size uint64
|
||||||
|
Vn_rdev uint32
|
||||||
|
Vn_mode uint16
|
||||||
|
Status uint16
|
||||||
|
X_kve_ispare [12]int32
|
||||||
|
Path [1024]int8
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,95 @@
|
|||||||
|
// +build ignore
|
||||||
|
|
||||||
|
// We still need editing by hands.
|
||||||
|
// go tool cgo -godefs types_freebsd.go | sed 's/\*int64/int64/' | sed 's/\*byte/int64/' > process_freebsd_amd64.go
|
||||||
|
|
||||||
|
/*
|
||||||
|
Input to cgo -godefs.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// +godefs map struct_pargs int64 /* pargs */
|
||||||
|
// +godefs map struct_proc int64 /* proc */
|
||||||
|
// +godefs map struct_user int64 /* user */
|
||||||
|
// +godefs map struct_vnode int64 /* vnode */
|
||||||
|
// +godefs map struct_vnode int64 /* vnode */
|
||||||
|
// +godefs map struct_filedesc int64 /* filedesc */
|
||||||
|
// +godefs map struct_vmspace int64 /* vmspace */
|
||||||
|
// +godefs map struct_pcb int64 /* pcb */
|
||||||
|
// +godefs map struct_thread int64 /* thread */
|
||||||
|
// +godefs map struct___sigset [16]byte /* sigset */
|
||||||
|
|
||||||
|
package process
|
||||||
|
|
||||||
|
/*
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/user.h>
|
||||||
|
|
||||||
|
enum {
|
||||||
|
sizeofPtr = sizeof(void*),
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
|
||||||
|
// Machine characteristics; for internal use.
|
||||||
|
|
||||||
|
const (
|
||||||
|
CTLKern = 1 // "high kernel": proc, limits
|
||||||
|
KernProc = 14 // struct: process entries
|
||||||
|
KernProcPID = 1 // by process id
|
||||||
|
KernProcProc = 8 // only return procs
|
||||||
|
KernProcPathname = 12 // path to executable
|
||||||
|
KernProcArgs = 7 // get/set arguments/proctitle
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
sizeofPtr = C.sizeofPtr
|
||||||
|
sizeofShort = C.sizeof_short
|
||||||
|
sizeofInt = C.sizeof_int
|
||||||
|
sizeofLong = C.sizeof_long
|
||||||
|
sizeofLongLong = C.sizeof_longlong
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
sizeOfKinfoVmentry = C.sizeof_struct_kinfo_vmentry
|
||||||
|
sizeOfKinfoProc = C.sizeof_struct_kinfo_proc
|
||||||
|
)
|
||||||
|
|
||||||
|
// from sys/proc.h
|
||||||
|
const (
|
||||||
|
SIDL = 1 /* Process being created by fork. */
|
||||||
|
SRUN = 2 /* Currently runnable. */
|
||||||
|
SSLEEP = 3 /* Sleeping on an address. */
|
||||||
|
SSTOP = 4 /* Process debugging or suspension. */
|
||||||
|
SZOMB = 5 /* Awaiting collection by parent. */
|
||||||
|
SWAIT = 6 /* Waiting for interrupt. */
|
||||||
|
SLOCK = 7 /* Blocked on a lock. */
|
||||||
|
)
|
||||||
|
|
||||||
|
// Basic types
|
||||||
|
|
||||||
|
type (
|
||||||
|
_C_short C.short
|
||||||
|
_C_int C.int
|
||||||
|
_C_long C.long
|
||||||
|
_C_long_long C.longlong
|
||||||
|
)
|
||||||
|
|
||||||
|
// Time
|
||||||
|
|
||||||
|
type Timespec C.struct_timespec
|
||||||
|
|
||||||
|
type Timeval C.struct_timeval
|
||||||
|
|
||||||
|
// Processes
|
||||||
|
|
||||||
|
type Rusage C.struct_rusage
|
||||||
|
|
||||||
|
type Rlimit C.struct_rlimit
|
||||||
|
|
||||||
|
type KinfoProc C.struct_kinfo_proc
|
||||||
|
|
||||||
|
type Priority C.struct_priority
|
||||||
|
|
||||||
|
type KinfoVmentry C.struct_kinfo_vmentry
|
Loading…
Reference in New Issue