/proc/stat

From NovaOrdis Knowledge Base
Revision as of 05:44, 10 September 2017 by Ovidiu (talk | contribs) (→‎Contents)
Jump to navigation Jump to search

Internal

Overview

A file containing kernel/system statistics.

Example

cpu  4716184 3158 1575618 516755847 4325 0 90716 4020 0 0
cpu0 4716184 3158 1575618 516755847 4325 0 90716 4020 0 0
intr 415283255 52 10 0 0 1506 0 3 0 0 0 33246670 0 15 0 0 0 0 0 0 0 0 0 0 0 0 91122832 1731 0 1411593 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ctxt 521749055
btime 1499777097
processes 1917148
procs_running 2
procs_blocked 0
softirq 466353251 7 252457843 14212592 108355645 0 0 648971 0 0 90678193

Contents

cpu user nice system idle iowait page swap

"cpu" contains a list of values representing the amount of time, measured in units of USER_HZ (1/100ths of a second on most architectures, use sysconf(_SC_CLK_TCK) to obtain the right value), that the system spent in various states:

  • user - time spent in user mode.
                    nice   (2) Time spent in user mode with low priority
                           (nice).
                    system (3) Time spent in system mode.
                    idle   (4) Time spent in the idle task.  This value
                           should be USER_HZ times the second entry in the
                           /proc/uptime pseudo-file.
                    iowait (since Linux 2.5.41)
                           (5) Time waiting for I/O to complete.  This
                           value is not reliable, for the following
                           reasons:
                           1. The CPU will not wait for I/O to complete;
                              iowait is the time that a task is waiting for
                              I/O to complete.  When a CPU goes into idle
                              state for outstanding task I/O, another task
                              will be scheduled on this CPU.
                           2. On a multi-core CPU, the task waiting for I/O
                              to complete is not running on any CPU, so the
                              iowait of each CPU is difficult to calculate.
                           3. The value in this field may decrease in
                              certain conditions.
                           irq (since Linux 2.6.0-test4)
                              (6) Time servicing interrupts.
                           softirq (since Linux 2.6.0-test4)
                              (7) Time servicing softirqs.
                           steal (since Linux 2.6.11)
                              (8) Stolen time, which is the time spent in
                              other operating systems when running in a
                              virtualized environment
                           guest (since Linux 2.6.24)
                              (9) Time spent running a virtual CPU for
                              guest operating systems under the control of
                              the Linux kernel.
                           guest_nice (since Linux 2.6.33)
                              (10) Time spent running a niced guest
                              (virtual CPU for guest operating systems
                              under the control of the Linux kernel).
                    page 5741 1808
                           The number of pages the system paged in and the
                           number that were paged out (from disk).
                    swap 1 0
                           The number of swap pages that have been brought
                           in and out.
                    intr 1462898
                           This line shows counts of interrupts serviced
                           since boot time, for each of the possible system
                           interrupts.  The first column is the total of
                           all interrupts serviced including unnumbered
                           architecture specific interrupts; each
                           subsequent column is the total for that
                           particular numbered interrupt.  Unnumbered
                           interrupts are not shown, only summed into the
                           total.
                    disk_io: (2,0):(31,30,5764,1,2) (3,0):...
                           (major,disk_idx):(noinfo, read_io_ops,
                           blks_read, write_io_ops, blks_written)
                           (Linux 2.4 only)
                    ctxt 115315
                           The number of context switches that the system
                           underwent.
                    btime 769041601
                           boot time, in seconds since the Epoch,
                           1970-01-01 00:00:00 +0000 (UTC).
                    processes 86031
                           Number of forks since boot.
                    procs_running 6
                           Number of processes in runnable state.  (Linux
                           2.5.45 onward.)
                    procs_blocked 2
                           Number of processes blocked waiting for I/O to
                           complete.  (Linux 2.5.45 onward.)