Struct procinfo::pid::Status
[−]
[src]
pub struct Status { pub command: String, pub umask: mode_t, pub state: State, pub pid: pid_t, pub numa_gid: pid_t, pub tid: pid_t, pub ppid: pid_t, pub tracer_pid: pid_t, pub uid_real: uid_t, pub uid_effective: uid_t, pub uid_saved: uid_t, pub uid_fs: uid_t, pub gid_real: gid_t, pub gid_effective: gid_t, pub gid_saved: gid_t, pub gid_fs: gid_t, pub fd_allocated: u32, pub groups: Vec<gid_t>, pub ns_pids: Vec<pid_t>, pub ns_tids: Vec<pid_t>, pub ns_pgids: Vec<pid_t>, pub ns_sids: Vec<pid_t>, pub vm_peak: usize, pub vm_size: usize, pub vm_locked: usize, pub vm_pin: usize, pub vm_hwm: usize, pub vm_rss: usize, pub vm_rss_anon: usize, pub vm_rss_file: usize, pub vm_rss_shared: usize, pub vm_data: usize, pub vm_stack: usize, pub vm_exe: usize, pub vm_lib: usize, pub vm_pte: usize, pub vm_pmd: usize, pub vm_swap: usize, pub hugetlb_pages: usize, pub threads: u32, pub sig_queued: u64, pub sig_queued_max: u64, pub sig_pending_thread: u64, pub sig_pending_process: u64, pub sig_blocked: u64, pub sig_ignored: u64, pub sig_caught: u64, pub cap_inherited: u64, pub cap_permitted: u64, pub cap_effective: u64, pub cap_bounding: u64, pub cap_ambient: u64, pub no_new_privs: bool, pub seccomp: SeccompMode, pub cpus_allowed: Box<[u8]>, pub mems_allowed: Box<[u8]>, pub voluntary_ctxt_switches: u64, pub nonvoluntary_ctxt_switches: u64, }
Process status information.
See man 5 proc
and Linux/fs/proc/array.c
.
Fields
command: String
Filename of the executable.
umask: mode_t
File mode creation mask (since Linux 4.7).
state: State
Current state of the process.
pid: pid_t
Process ID (i.e., Thread Group ID).
numa_gid: pid_t
NUMA group ID.
tid: pid_t
Thread ID.
ppid: pid_t
Process ID of parent process.
tracer_pid: pid_t
Process ID of the process tracing this process (0 if not being traced).
uid_real: uid_t
Real user ID.
uid_effective: uid_t
Effective user ID.
uid_saved: uid_t
Saved user ID.
uid_fs: uid_t
Filesystem user ID.
gid_real: gid_t
Real group ID.
gid_effective: gid_t
Effective group ID.
gid_saved: gid_t
Saved group ID.
gid_fs: gid_t
Filesystem group ID.
fd_allocated: u32
Number of file descriptor slots currently allocated.
groups: Vec<gid_t>
Supplementary group list.
ns_pids: Vec<pid_t>
Process IDs for each namespace which the process belongs to.
ns_tids: Vec<pid_t>
Thread IDs for each namespace which the process belongs to.
ns_pgids: Vec<pid_t>
Process group IDs for each namespace which the process belongs to.
ns_sids: Vec<pid_t>
Session IDs of the process for each namespace to which it belongs.
vm_peak: usize
Peak virtual memory size (kB).
vm_size: usize
Virtual memory size (kB).
vm_locked: usize
Locked memory size (kB) (see mlock(3)).
vm_pin: usize
Pinned memory size (since Linux 3.2). These are pages that can't be moved because something needs to directly access physical memory.
vm_hwm: usize
Peak resident size (kB) ("high water mark").
vm_rss: usize
Resident set size (kB). Comprised of vm_rss_anon
, vm_rss_file
,
and vm_rss_shared
.
vm_rss_anon: usize
Size of resident anonymous memory (kB) (since Linux 4.5).
vm_rss_file: usize
Size of resident file mappings (kB) (since Linux 4.5).
Size of resident shared memory (kB) (since Linux 4.5). Includes SysV shm, mapping of tmpfs and shared anonymous mappings.
vm_data: usize
Size of data segments (kB).
vm_stack: usize
Size of stack segments (kB).
vm_exe: usize
Size of text (executable) segments (kB).
vm_lib: usize
Shared library code size (kB).
vm_pte: usize
Page table entries size (since Linux 2.6.10).
vm_pmd: usize
Size of second-level page tables (since Linux 4.0).
vm_swap: usize
Swapped-out-virtual memory size (since Linux 2.6.34).
hugetlb_pages: usize
Size of hugetlb memory portions (since Linux 4.4).
threads: u32
Number of threads in process containing this thread.
sig_queued: u64
The number of currently queued signals for this real user ID (see the description of RLIMIT_SIGPENDING in getrlimit(2)).
sig_queued_max: u64
The resource limit on the number of queued signals for this process.
sig_pending_thread: u64
Number of signals pending for the thread (see pthreads(7)).
sig_pending_process: u64
Number of signals pending for the process (see signal(7)).
sig_blocked: u64
Mask indicating signals being blocked.
sig_ignored: u64
Mask indicating signals being ignored.
sig_caught: u64
Mask indicating signals being caught.
cap_inherited: u64
Mask of capabilities enabled in inheritable sets (see capabilities(7)).
cap_permitted: u64
Mask of capabilities enabled in permitted sets.
cap_effective: u64
Mask of capabilities enabled in effective sets.
cap_bounding: u64
Capability Bounding set (since Linux 2.6.26).
cap_ambient: u64
Ambient capability set (since Linux 4.3).
no_new_privs: bool
Whether the process can acquire new privileges (since Linux 4.10)
seccomp: SeccompMode
Secure Computing mode of the process (since Linux 3.8, see seccomp(2)).
This field is provided only if the kernel was built with the
CONFIG_SECCOMP
kernel configuration option enabled.
cpus_allowed: Box<[u8]>
CPUs on which this process may run (since Linux 2.6.24, see cpuset(7)).
The slice represents a bitmask in the same format as BitVec
.
mems_allowed: Box<[u8]>
Memory nodes allowed to this process (since Linux 2.6.24, see cpuset(7)).
The slice represents a bitmask in the same format as BitVec
.
voluntary_ctxt_switches: u64
Number of voluntary context switches.
nonvoluntary_ctxt_switches: u64
Number of involuntary context switches.
Trait Implementations
impl Default for Status
[src]
impl Debug for Status
[src]
impl PartialEq for Status
[src]
fn eq(&self, __arg_0: &Status) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Status) -> bool
This method tests for !=
.