[−][src]Struct procfs::Status
Status information about the process, based on the /proc/<pid>/status
file.
To construct this structure, see Process::status().
Not all fields are available in every kernel. These fields have Option<T>
types.
Fields
name: String
Command run by this process.
umask: Option<u32>
Process umask, expressed in octal with a leading zero; see umask(2). (Since Linux 4.7.)
state: String
Current state of the process.
tgid: i32
Thread group ID (i.e., Process ID).
ngid: Option<i32>
NUMA group ID (0 if none; since Linux 3.13).
pid: i32
Thread ID (see gettid(2)).
ppid: i32
PID of parent process.
tracerpid: i32
PID of process tracing this process (0 if not being traced).
ruid: i32
Real UID.
euid: i32
Effective UID.
suid: i32
Saved set UID.
fuid: i32
Filesystem UID.
rgid: i32
Real GID.
egid: i32
Effective GID.
sgid: i32
Saved set GID.
fgid: i32
Filesystem GID.
fdsize: u32
Number of file descriptor slots currently allocated.
groups: Vec<i32>
Supplementary group list.
nstgid: Option<Vec<i32>>
Thread group ID (i.e., PID) in each of the PID namespaces of which [pid] is a member. The leftmost entry shows the value with respect to the PID namespace of the reading process, followed by the value in successively nested inner namespaces. (Since Linux 4.1.)
nspid: Option<Vec<i32>>
Thread ID in each of the PID namespaces of which [pid] is a member. The fields are ordered as for NStgid. (Since Linux 4.1.)
nspgid: Option<Vec<i32>>
Process group ID in each of the PID namespaces of which [pid] is a member. The fields are ordered as for NStgid. (Since Linux 4.1.)
nssid: Option<Vec<i32>>
NSsid: descendant namespace session ID hierarchy Session ID in each of the PID namespaces of which [pid] is a member. The fields are ordered as for NStgid. (Since Linux 4.1.)
vmpeak: u64
Peak virtual memory size by kB.
vmsize: u64
Virtual memory size by kB.
vmlck: u64
Locked memory size by kB (see mlock(3)).
vmpin: Option<u64>
Pinned memory size by kB (since Linux 3.2). These are pages that can't be moved because something needs to directly access physical memory.
vmhwm: u64
Peak resident set size by kB ("high water mark").
vmrss: u64
Resident set size by kB. Note that the value here is the sum of RssAnon, RssFile, and RssShmem.
rssanon: Option<u64>
Size of resident anonymous memory by kB. (since Linux 4.5).
rssfile: Option<u64>
Size of resident file mappings by kB. (since Linux 4.5).
rssshmem: Option<u64>
Size of resident shared memory by kB (includes System V shared memory, mappings from tmpfs(5), and shared anonymous mappings). (since Linux 4.5).
vmdata: u64
Size of data by kB.
vmstk: u64
Size of stack by kB.
vmexe: u64
Size of text seg‐ments by kB.
vmlib: u64
Shared library code size by kB.
vmpte: Option<u64>
Page table entries size by kB (since Linux 2.6.10).
vmswap: Option<u64>
Swapped-out virtual memory size by anonymous private pages by kB; shmem swap usage is not included (since Linux 2.6.34).
hugetblpages: Option<u64>
Size of hugetlb memory portions by kB. (since Linux 4.4).
threads: u64
Number of threads in process containing this thread.
sigq: (u64, u64)
This field contains two slash-separated numbers that relate to queued signals for the real user ID of this process. The first of these is the number of currently queued signals for this real user ID, and the second is the resource limit on the number of queued signals for this process (see the description of RLIMIT_SIGPENDING in getrlimit(2)).
sigpnd: u64
Number of signals pending for thread (see pthreads(7) and signal(7)).
shdpnd: u64
Number of signals pending for process as a whole (see pthreads(7) and signal(7)).
sigblk: u64
Masks indicating signals being blocked (see signal(7)).
sigign: u64
Masks indicating signals being ignored (see signal(7)).
sigcgt: u64
Masks indicating signals being caught (see signal(7)).
capinh: u64
Masks of capabilities enabled in inheritable sets (see capabilities(7)).
capprm: u64
Masks of capabilities enabled in permitted sets (see capabilities(7)).
capeff: u64
Masks of capabilities enabled in effective sets (see capabilities(7)).
capbnd: Option<u64>
Capability Bounding set (since Linux 2.6.26, see capabilities(7)).
capamb: Option<u64>
Ambient capability set (since Linux 4.3, see capabilities(7)).
nonewprivs: Option<u64>
Value of the no_new_privs bit (since Linux 4.10, see prctl(2)).
seccomp: Option<u32>
Seccomp mode of the process (since Linux 3.8, see seccomp(2)). 0 means SECCOMP_MODE_DISABLED; 1 means SEC‐ COMP_MODE_STRICT; 2 means SECCOMP_MODE_FILTER. This field is provided only if the kernel was built with the CON‐ FIG_SECCOMP kernel configuration option enabled.
cpus_allowed: Option<Vec<u32>>
Mask of CPUs on which this process may run (since Linux 2.6.24, see cpuset(7)).
cpus_allowed_list: Option<Vec<(u32, u32)>>
Same as previous, but in "list format" (since Linux 2.6.26, see cpuset(7)).
mems_allowed: Option<Vec<u32>>
Mask of memory nodes allowed to this process (since Linux 2.6.24, see cpuset(7)).
mems_allowed_list: Option<Vec<(u32, u32)>>
Same as previous, but in "list format" (since Linux 2.6.26, see cpuset(7)).
voluntary_ctxt_switches: Option<u64>
Number of voluntary context switches (since Linux 2.6.23).
nonvoluntary_ctxt_switches: Option<u64>
Number of involuntary context switches (since Linux 2.6.23).
Methods
impl Status
[src]
pub fn from_reader<R: Read>(r: R) -> Option<Status>
[src]
Trait Implementations
impl Clone for Status
[src]
fn clone(&self) -> Status
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Status
[src]
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,