proc_pid_status(5) — Linux manual page

NAME | DESCRIPTION | SEE ALSO | COLOPHON

proc_pid_status(5)         File Formats Manual         proc_pid_status(5)

NAME         top

       /proc/pid/status - memory usage and status information

DESCRIPTION         top

       /proc/pid/status
              Provides much of the information in /proc/pid/stat and
              /proc/pid/statm in a format that's easier for humans to
              parse.  Here's an example:

                  $ 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

              The fields are as follows:

              Name   Command run by this process.  Strings longer than
                     TASK_COMM_LEN (16) characters (including the
                     terminating null byte) are silently truncated.

              Umask  Process umask, expressed in octal with a leading
                     zero; see umask(2).  (Since Linux 4.7.)

              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)".

              Tgid   Thread group ID (i.e., Process ID).

              Ngid   NUMA group ID (0 if none; since Linux 3.13).

              Pid    Thread ID (see gettid(2)).

              PPid   PID of parent process.

              TracerPid
                     PID of process tracing this process (0 if not being
                     traced).

              Uid
              Gid    Real, effective, saved set, and filesystem UIDs
                     (GIDs).

              FDSize Number of file descriptor slots currently allocated.

              Groups Supplementary group list.

              NStgid 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 process that mounted this procfs
                     (or the root namespace if mounted by the kernel),
                     followed by the value in successively nested inner
                     namespaces.  (Since Linux 4.1.)

              NSpid  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 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  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 Peak virtual memory size.

              VmSize Virtual memory size.

              VmLck  Locked memory size (see mlock(2)).

              VmPin  Pinned memory size (since Linux 3.2).  These are
                     pages that can't be moved because something needs to
                     directly access physical memory.

              VmHWM  Peak resident set size ("high water mark").  This
                     value is inaccurate; see /proc/pid/statm above.

              VmRSS  Resident set size.  Note that the value here is the
                     sum of RssAnon, RssFile, and RssShmem.  This value
                     is inaccurate; see /proc/pid/statm above.

              RssAnon
                     Size of resident anonymous memory.  (since Linux
                     4.5).  This value is inaccurate; see /proc/pid/statm
                     above.

              RssFile
                     Size of resident file mappings.  (since Linux 4.5).
                     This value is inaccurate; see /proc/pid/statm above.

              RssShmem
                     Size of resident shared memory (includes System V
                     shared memory, mappings from tmpfs(5), and shared
                     anonymous mappings).  (since Linux 4.5).

              VmData
              VmStk
              VmExe  Size of data, stack, and text segments.  This value
                     is inaccurate; see /proc/pid/statm above.

              VmLib  Shared library code size.

              VmPTE  Page table entries size (since Linux 2.6.10).

              VmPMD  Size of second-level page tables (added in Linux
                     4.0; removed in Linux 4.15).

              VmSwap 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
                     /proc/pid/statm above.

              HugetlbPages
                     Size of hugetlb memory portions (since Linux 4.4).

              CoreDumping
                     Contains the value 1 if the process is currently
                     dumping core, and 0 if it is not (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.

              Threads
                     Number of threads in process containing this thread.

              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 RLIMIT_SIGPENDING in getrlimit(2)).

              SigPnd
              ShdPnd Mask (expressed in hexadecimal) of signals pending
                     for thread and for process as a whole (see
                     pthreads(7) and signal(7)).

              SigBlk
              SigIgn
              SigCgt Masks (expressed in hexadecimal) indicating signals
                     being blocked, ignored, and caught (see signal(7)).

              CapInh
              CapPrm
              CapEff Masks (expressed in hexadecimal) of capabilities
                     enabled in inheritable, permitted, and effective
                     sets (see capabilities(7)).

              CapBnd Capability bounding set, expressed in hexadecimal
                     (since Linux 2.6.26, see capabilities(7)).

              CapAmb Ambient capability set, expressed in hexadecimal
                     (since Linux 4.3, see capabilities(7)).

              NoNewPrivs
                     Value of the no_new_privs bit (since Linux 4.10, see
                     prctl(2)).

              Seccomp
                     Seccomp mode of the process (since Linux 3.8, see
                     seccomp(2)).  0 means SECCOMP_MODE_DISABLED; 1 means
                     SECCOMP_MODE_STRICT; 2 means SECCOMP_MODE_FILTER.
                     This field is provided only if the kernel was built
                     with the CONFIG_SECCOMP kernel configuration option
                     enabled.

              Seccomp_filters
                     Number of seccomp filters attached to the process
                     (since Linux 5.9, see seccomp(2)).

              Speculation_Store_Bypass
                     Speculation flaw mitigation state (since Linux 4.17,
                     see prctl(2)).

              Cpus_allowed
                     Hexadecimal mask of CPUs on which this process may
                     run (since Linux 2.6.24, see cpuset(7)).

              Cpus_allowed_list
                     Same as previous, but in "list format" (since Linux
                     2.6.26, see cpuset(7)).

              Mems_allowed
                     Mask of memory nodes allowed to this process (since
                     Linux 2.6.24, see cpuset(7)).

              Mems_allowed_list
                     Same as previous, but in "list format" (since Linux
                     2.6.26, see cpuset(7)).

              voluntary_ctxt_switches
              nonvoluntary_ctxt_switches
                     Number of voluntary and involuntary context switches
                     (since Linux 2.6.23).

SEE ALSO         top

       proc(5)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.10.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2025-02-02.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.10            2024-05-02             proc_pid_status(5)

Pages that refer to this page: kill(1)PR_GET_SECCOMP(2const)proc_pid_stat(5)proc_pid_statm(5)