linux

package
v4.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2019 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Unlimited uint64 = 1<<64 - 1
)

Variables

This section is empty.

Functions

func ReadCPUPeriod

func ReadCPUPeriod(cgroup string) (period time.Duration, err error)

func ReadCPUQuota

func ReadCPUQuota(cgroup string) (quota time.Duration, err error)

func ReadCPUShares

func ReadCPUShares(cgroup string) (shares int64, err error)

func ReadMemoryLimit

func ReadMemoryLimit(pid int) (limit uint64, err error)

func ReadOpenFileCount

func ReadOpenFileCount(pid int) (n uint64, err error)

Types

type CGroup

type CGroup struct {
	ID   int
	Name string
	Path string // Path in /sys/fs/cgroup
}

type Limits

type Limits struct {
	Name string
	Soft uint64
	Hard uint64
	Unit string
}

type ProcCGroup

type ProcCGroup []CGroup

func ParseProcCGroup

func ParseProcCGroup(s string) (proc ProcCGroup, err error)

func ReadProcCGroup

func ReadProcCGroup(pid int) (proc ProcCGroup, err error)

func (ProcCGroup) Lookup

func (pcg ProcCGroup) Lookup(name string) (cgroup CGroup, ok bool)

type ProcLimits

type ProcLimits struct {
	CPUTime          Limits // seconds
	FileSize         Limits // bytes
	DataSize         Limits // bytes
	StackSize        Limits // bytes
	CoreFileSize     Limits // bytes
	ResidentSet      Limits // bytes
	Processes        Limits // processes
	OpenFiles        Limits // files
	LockedMemory     Limits // bytes
	AddressSpace     Limits // bytes
	FileLocks        Limits // locks
	PendingSignals   Limits // signals
	MsgqueueSize     Limits // bytes
	NicePriority     Limits
	RealtimePriority Limits
	RealtimeTimeout  Limits
}

func ParseProcLimits

func ParseProcLimits(s string) (proc ProcLimits, err error)

func ReadProcLimits

func ReadProcLimits(pid int) (proc ProcLimits, err error)

type ProcSched

type ProcSched struct {
	NRSwitches            uint64 // nr_switches
	NRVoluntarySwitches   uint64 // nr_voluntary_switches
	NRInvoluntarySwitches uint64 // nr_involuntary_switches
	SEAvgLoadSum          uint64 // se.avg.load_sum
	SEAvgUtilSum          uint64 // se.avg.util_sum
	SEAvgLoadAvg          uint64 // se.avg.load_avg
	SEAvgUtilAvg          uint64 // se.avg.util_avg
}

func ParseProcSched

func ParseProcSched(s string) (proc ProcSched, err error)

func ReadProcSched

func ReadProcSched(pid int) (proc ProcSched, err error)

type ProcStat

type ProcStat struct {
	Pid                 int32     // (1) pid
	Comm                string    // (2) comm
	State               ProcState // (3) state
	Ppid                int32     // (4) ppid
	Pgrp                int32     // (5) prgp
	Session             int32     // (6) session
	TTY                 int32     // (7) tty_nr
	Tpgid               int32     // (8) tpgid
	Flags               uint32    // (9) flags
	Minflt              uint64    // (10) minflt
	Cminflt             uint64    // (11) cminflt
	Majflt              uint64    // (12) majflt
	Cmajflt             uint64    // (13) cmajflt
	Utime               uint64    // (14) utime
	Stime               uint64    // (15) stime
	Cutime              int64     // (16) cutime
	Cstime              int64     // (17) cstime
	Priority            int64     // (18) priority
	Nice                int64     // (19) nice
	NumThreads          int64     // (20) num_threads
	Itrealvalue         int64     // (21) itrealvalue
	Starttime           uint64    // (22) starttime
	Vsize               uint64    // (23) vsize
	Rss                 uint64    // (24) rss
	Rsslim              uint64    // (25) rsslim
	Startcode           uintptr   // (26) startcode
	Endcode             uintptr   // (27) endcode
	Startstack          uintptr   // (28) startstack
	Kstkeep             uint64    // (29) kstkeep
	Kstkeip             uint64    // (30) kstkeip
	Signal              uint64    // (31) signal
	Blocked             uint64    // (32) blocked
	Sigignore           uint64    // (33) sigignore
	Sigcatch            uint64    // (34) sigcatch
	Wchan               uintptr   // (35) wchan
	Nswap               uint64    // (36) nswap
	Cnswap              uint64    // (37) cnswap
	ExitSignal          int32     // (38) exit_signal
	Processor           int32     // (39) processor
	RTPriority          uint32    // (40) rt_priority
	Policy              uint32    // (41) policy
	DelayacctBlkioTicks uint64    // (42) delayacct_blkio_ticks
	GuestTime           uint64    // (43) guest_time
	CguestTime          int64     // (44) cguest_time
	StartData           uintptr   // (45) start_data
	EndData             uintptr   // (46) end_data
	StartBrk            uintptr   // (47) start_brk
	ArgStart            uintptr   // (48) arg_start
	ArgEnd              uintptr   // (49) arg_end
	EnvStart            uintptr   // (50) env_start
	EnvEnd              uintptr   // (51) env_end
	ExitCode            int32     // (52) exit_code
}

func ParseProcStat

func ParseProcStat(s string) (proc ProcStat, err error)

func ReadProcStat

func ReadProcStat(pid int) (proc ProcStat, err error)

type ProcState

type ProcState rune
const (
	Running                         ProcState = 'R'
	Sleeping                        ProcState = 'S'
	WaitingUninterruptibleDiskSleep ProcState = 'D'
	Zombie                          ProcState = 'Z'
	Stopped                         ProcState = 'T'
	TracingStop                     ProcState = 't'
	Paging                          ProcState = 'P'
	Dead                            ProcState = 'X'
	Dead_                           ProcState = 'x'
	Wakekill                        ProcState = 'W'
	Parked                          ProcState = 'P'
)

func (*ProcState) Scan

func (ps *ProcState) Scan(s fmt.ScanState, _ rune) (err error)

type ProcStatm

type ProcStatm struct {
	Size     uint64 // (1) size
	Resident uint64 // (2) resident
	Share    uint64 // (3) share
	Text     uint64 // (4) text
	Lib      uint64 // (5) lib
	Data     uint64 // (6) data
	Dt       uint64 // (7) dt
}

func ParseProcStatm

func ParseProcStatm(s string) (proc ProcStatm, err error)

func ReadProcStatm

func ReadProcStatm(pid int) (proc ProcStatm, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL