summaryrefslogtreecommitdiffstats
path: root/man/man5/proc_pid_status.5
diff options
context:
space:
mode:
Diffstat (limited to 'man/man5/proc_pid_status.5')
-rw-r--r--man/man5/proc_pid_status.5384
1 files changed, 384 insertions, 0 deletions
diff --git a/man/man5/proc_pid_status.5 b/man/man5/proc_pid_status.5
new file mode 100644
index 000000000..65a75546e
--- /dev/null
+++ b/man/man5/proc_pid_status.5
@@ -0,0 +1,384 @@
+.\" Copyright (C) 1994, 1995, Daniel Quinlan <quinlan@yggdrasil.com>
+.\" Copyright (C) 2002-2008, 2017, Michael Kerrisk <mtk.manpages@gmail.com>
+.\" Copyright (C) 2023, Alejandro Colomar <alx@kernel.org>
+.\"
+.\" SPDX-License-Identifier: GPL-3.0-or-later
+.\"
+.TH proc_pid_status 5 (date) "Linux man-pages (unreleased)"
+.SH NAME
+/proc/pid/status \- memory usage and status information
+.SH DESCRIPTION
+.TP
+.IR /proc/ pid /status
+Provides much of the information in
+.IR /proc/ pid /stat
+and
+.IR /proc/ pid /statm
+in a format that's easier for humans to parse.
+Here's an example:
+.IP
+.in +4n
+.EX
+.RB "$" " cat /proc/$$/status"
+Name: bash
+Umask: 0022
+State: S (sleeping)
+Tgid: 17248
+Ngid: 0
+Pid: 17248
+PPid: 17200
+TracerPid: 0
+Uid: 1000 1000 1000 1000
+Gid: 100 100 100 100
+FDSize: 256
+Groups: 16 33 100
+NStgid: 17248
+NSpid: 17248
+NSpgid: 17248
+NSsid: 17200
+VmPeak: 131168 kB
+VmSize: 131168 kB
+VmLck: 0 kB
+VmPin: 0 kB
+VmHWM: 13484 kB
+VmRSS: 13484 kB
+RssAnon: 10264 kB
+RssFile: 3220 kB
+RssShmem: 0 kB
+VmData: 10332 kB
+VmStk: 136 kB
+VmExe: 992 kB
+VmLib: 2104 kB
+VmPTE: 76 kB
+VmPMD: 12 kB
+VmSwap: 0 kB
+HugetlbPages: 0 kB # 4.4
+CoreDumping: 0 # 4.15
+Threads: 1
+SigQ: 0/3067
+SigPnd: 0000000000000000
+ShdPnd: 0000000000000000
+SigBlk: 0000000000010000
+SigIgn: 0000000000384004
+SigCgt: 000000004b813efb
+CapInh: 0000000000000000
+CapPrm: 0000000000000000
+CapEff: 0000000000000000
+CapBnd: ffffffffffffffff
+CapAmb: 0000000000000000
+NoNewPrivs: 0
+Seccomp: 0
+Seccomp_filters: 0
+Speculation_Store_Bypass: vulnerable
+Cpus_allowed: 00000001
+Cpus_allowed_list: 0
+Mems_allowed: 1
+Mems_allowed_list: 0
+voluntary_ctxt_switches: 150
+nonvoluntary_ctxt_switches: 545
+.EE
+.in
+.IP
+The fields are as follows:
+.RS
+.TP
+.I Name
+Command run by this process.
+Strings longer than
+.B TASK_COMM_LEN
+(16) characters (including the terminating null byte) are silently truncated.
+.TP
+.I Umask
+Process umask, expressed in octal with a leading zero; see
+.BR umask (2).
+(Since Linux 4.7.)
+.TP
+.I State
+Current state of the process.
+One of
+"R (running)",
+"S (sleeping)",
+"D (disk sleep)",
+"T (stopped)",
+"t (tracing stop)",
+"Z (zombie)",
+or
+"X (dead)".
+.TP
+.I Tgid
+Thread group ID (i.e., Process ID).
+.TP
+.I Ngid
+NUMA group ID (0 if none; since Linux 3.13).
+.TP
+.I Pid
+Thread ID (see
+.BR gettid (2)).
+.TP
+.I PPid
+PID of parent process.
+.TP
+.I TracerPid
+PID of process tracing this process (0 if not being traced).
+.TP
+.I Uid
+.TQ
+.I Gid
+Real, effective, saved set, and filesystem UIDs (GIDs).
+.TP
+.I FDSize
+Number of file descriptor slots currently allocated.
+.TP
+.I Groups
+Supplementary group list.
+.TP
+.I NStgid
+Thread group ID (i.e., PID) in each of the PID namespaces of which
+.I pid
+is a member.
+The leftmost entry shows the value with respect to the PID namespace
+of the process that mounted this procfs (or the root namespace
+if mounted by the kernel),
+followed by the value in successively nested inner namespaces.
+.\" commit e4bc33245124db69b74a6d853ac76c2976f472d5
+(Since Linux 4.1.)
+.TP
+.I NSpid
+Thread ID in each of the PID namespaces of which
+.I pid
+is a member.
+The fields are ordered as for
+.IR NStgid .
+(Since Linux 4.1.)
+.TP
+.I NSpgid
+Process group ID in each of the PID namespaces of which
+.I pid
+is a member.
+The fields are ordered as for
+.IR NStgid .
+(Since Linux 4.1.)
+.TP
+.I NSsid
+descendant namespace session ID hierarchy
+Session ID in each of the PID namespaces of which
+.I pid
+is a member.
+The fields are ordered as for
+.IR NStgid .
+(Since Linux 4.1.)
+.TP
+.I VmPeak
+Peak virtual memory size.
+.TP
+.I VmSize
+Virtual memory size.
+.TP
+.I VmLck
+Locked memory size (see
+.BR mlock (2)).
+.TP
+.I VmPin
+Pinned memory size
+.\" commit bc3e53f682d93df677dbd5006a404722b3adfe18
+(since Linux 3.2).
+These are pages that can't be moved because something needs to
+directly access physical memory.
+.TP
+.I VmHWM
+Peak resident set size ("high water mark").
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I VmRSS
+Resident set size.
+Note that the value here is the sum of
+.IR RssAnon ,
+.IR RssFile ,
+and
+.IR RssShmem .
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I RssAnon
+Size of resident anonymous memory.
+.\" commit bf9683d6990589390b5178dafe8fd06808869293
+(since Linux 4.5).
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I RssFile
+Size of resident file mappings.
+.\" commit bf9683d6990589390b5178dafe8fd06808869293
+(since Linux 4.5).
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I RssShmem
+Size of resident shared memory (includes System V shared memory,
+mappings from
+.BR tmpfs (5),
+and shared anonymous mappings).
+.\" commit bf9683d6990589390b5178dafe8fd06808869293
+(since Linux 4.5).
+.TP
+.I VmData
+.TQ
+.I VmStk
+.TQ
+.I VmExe
+Size of data, stack, and text segments.
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I VmLib
+Shared library code size.
+.TP
+.I VmPTE
+Page table entries size (since Linux 2.6.10).
+.TP
+.I VmPMD
+.\" commit dc6c9a35b66b520cf67e05d8ca60ebecad3b0479
+Size of second-level page tables (added in Linux 4.0; removed in Linux 4.15).
+.TP
+.I VmSwap
+.\" commit b084d4353ff99d824d3bc5a5c2c22c70b1fba722
+Swapped-out virtual memory size by anonymous private pages;
+shmem swap usage is not included (since Linux 2.6.34).
+This value is inaccurate; see
+.IR /proc/ pid /statm
+above.
+.TP
+.I HugetlbPages
+Size of hugetlb memory portions
+.\" commit 5d317b2b6536592a9b51fe65faed43d65ca9158e
+(since Linux 4.4).
+.TP
+.I CoreDumping
+Contains the value 1 if the process is currently dumping core,
+and 0 if it is not
+.\" commit c643401218be0f4ab3522e0c0a63016596d6e9ca
+(since Linux 4.15).
+This information can be used by a monitoring process to avoid killing
+a process that is currently dumping core,
+which could result in a corrupted core dump file.
+.TP
+.I Threads
+Number of threads in process containing this thread.
+.TP
+.I SigQ
+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
+.B RLIMIT_SIGPENDING
+in
+.BR getrlimit (2)).
+.TP
+.I SigPnd
+.TQ
+.I ShdPnd
+Mask (expressed in hexadecimal)
+of signals pending for thread and for process as a whole (see
+.BR pthreads (7)
+and
+.BR signal (7)).
+.TP
+.I SigBlk
+.TQ
+.I SigIgn
+.TQ
+.I SigCgt
+Masks (expressed in hexadecimal)
+indicating signals being blocked, ignored, and caught (see
+.BR signal (7)).
+.TP
+.I CapInh
+.TQ
+.I CapPrm
+.TQ
+.I CapEff
+Masks (expressed in hexadecimal)
+of capabilities enabled in inheritable, permitted, and effective sets
+(see
+.BR capabilities (7)).
+.TP
+.I CapBnd
+Capability bounding set, expressed in hexadecimal
+(since Linux 2.6.26, see
+.BR capabilities (7)).
+.TP
+.I CapAmb
+Ambient capability set, expressed in hexadecimal
+(since Linux 4.3, see
+.BR capabilities (7)).
+.TP
+.I NoNewPrivs
+.\" commit af884cd4a5ae62fcf5e321fecf0ec1014730353d
+Value of the
+.I no_new_privs
+bit
+(since Linux 4.10, see
+.BR prctl (2)).
+.TP
+.I Seccomp
+.\" commit 2f4b3bf6b2318cfaa177ec5a802f4d8d6afbd816
+Seccomp mode of the process
+(since Linux 3.8, see
+.BR seccomp (2)).
+0 means
+.BR SECCOMP_MODE_DISABLED ;
+1 means
+.BR SECCOMP_MODE_STRICT ;
+2 means
+.BR SECCOMP_MODE_FILTER .
+This field is provided only if the kernel was built with the
+.B CONFIG_SECCOMP
+kernel configuration option enabled.
+.TP
+.I Seccomp_filters
+.\" commit c818c03b661cd769e035e41673d5543ba2ebda64
+Number of seccomp filters attached to the process
+(since Linux 5.9, see
+.BR seccomp (2)).
+.TP
+.I Speculation_Store_Bypass
+.\" commit fae1fa0fc6cca8beee3ab8ed71d54f9a78fa3f64
+Speculation flaw mitigation state
+(since Linux 4.17, see
+.BR prctl (2)).
+.TP
+.I Cpus_allowed
+Hexadecimal mask of CPUs on which this process may run
+(since Linux 2.6.24, see
+.BR cpuset (7)).
+.TP
+.I Cpus_allowed_list
+Same as previous, but in "list format"
+(since Linux 2.6.26, see
+.BR cpuset (7)).
+.TP
+.I Mems_allowed
+Mask of memory nodes allowed to this process
+(since Linux 2.6.24, see
+.BR cpuset (7)).
+.TP
+.I Mems_allowed_list
+Same as previous, but in "list format"
+(since Linux 2.6.26, see
+.BR cpuset (7)).
+.TP
+.I voluntary_ctxt_switches
+.TQ
+.I nonvoluntary_ctxt_switches
+Number of voluntary and involuntary context switches (since Linux 2.6.23).
+.RE
+.SH SEE ALSO
+.BR proc (5)