51 lines
1.1 KiB
Plaintext
51 lines
1.1 KiB
Plaintext
|
sigar - System Info Gather And Reporter
|
||
|
|
||
|
goal of this api is provide a portable interface for gathering system
|
||
|
information such as:
|
||
|
|
||
|
- system memory (total, used, etc.)
|
||
|
|
||
|
- system cpu (total, sys, idle, etc.)
|
||
|
|
||
|
- system swap (total, free, etc.)
|
||
|
|
||
|
- process memory usage (size, vsize, etc.)
|
||
|
|
||
|
- process cpu usage (user, sys, etc.)
|
||
|
|
||
|
- process credentials (uid, gid, ppid, etc.)
|
||
|
|
||
|
- process times (start time, user cpu, system cpu, etc.)
|
||
|
|
||
|
- process state (name, state, etc.)
|
||
|
|
||
|
- process list (list of active process pids)
|
||
|
|
||
|
- process arguments
|
||
|
|
||
|
- process environment
|
||
|
|
||
|
- filesystem list (list of mounted filesystems: fs type, fs name, etc.)
|
||
|
|
||
|
- filesystem usage (total blocks, blocks free, files, etc.)
|
||
|
|
||
|
- load average
|
||
|
|
||
|
- uptime
|
||
|
|
||
|
- netload (packets in, packets out, bytes in, bytes out, etc.)
|
||
|
|
||
|
the api used by applications will be the same for all platforms,
|
||
|
underneath the platform vendor api(s) are used to fill in the portable
|
||
|
sigar structures:
|
||
|
|
||
|
- linux => /proc filesystem, native system calls
|
||
|
|
||
|
- solaris => kstat api + /proc filesystem
|
||
|
|
||
|
- hpux => pstat api
|
||
|
|
||
|
- win32 => registry performance "api", sdk calls
|
||
|
|
||
|
- aix => /dev/kmem, native system calls
|