proc_stat(5)
๐ proc_stat(5) โ File Formats Manual ๐
okay bestie, gather round, because this is the /proc/stat page from the File Formats Manual and it's genuinely a whole vibe. it's <pink>kernel system statistics</pink> and i'm obsessed.
๐ธ NAME ๐ธ
/proc/stat โ kernel system statistics โจ
๐ฆ DESCRIPTION ๐ฆ
/proc/stat
so <hotpink>/proc/stat is your kernel/system statistics file. heads up though: it varies with architecture. the common entries include:
cpu 10132153 290696 3084719 46828483 16683 0 25195 0 175628 0
cpu0 1393280 32966 572056 13343292 6130 0 17875 0 23933 0
that's the amount of time, measured in units of USER_HZ (1/100ths of a second on most architectures โ and if you wanna get the right value yourself, call sysconf(_SC_CLK_TCK) ๐ซถ), that the system (the "cpu" line) or the specific CPU (the "cpuN" line) spent in various states:
userโ (1) 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. no cap, this value should beUSER_HZtimes the second entry in the/proc/uptimepseudo-file.iowait(since Linux 2.5.41) โ (5) time waiting for I/O to complete. ๐จ bestie listen: this value is not reliable, for the following reasons:- the CPU will not wait for I/O to complete;
iowaitis 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. - on a multi-core CPU, the task waiting for I/O to complete is not running on any CPU, so the
iowaitof each CPU is difficult to calculate. ๐ญ - the value in this field may decrease in certain conditions. (yes, a counter that goes down. it's giving chaos.)
- the CPU will not wait for I/O to complete;
irq(since Linux 2.6.0) โ (6) time servicing interrupts.softirq(since Linux 2.6.0) โ (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 โ they only get summed into the total. ๐
disk_io: (2,0):(31,30,5764,1,2) (3,0):...
the format is:
(major,disk_idx):(noinfo, read_io_ops, blks_read, write_io_ops, blks_written)
(Linux 2.4 only) โ yeah, she's legacy, she's retro, she's not coming back. ๐
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.)
softirq 229245889 94 60001584 13619 5175704 2471304 28 51212741 59130143 0 51240672
this line shows the number of softirq for all CPUs. the first column is the total of all softirqs and each subsequent column is the total for a particular softirq. (Linux 2.6.31 onward.) ๐ฅ
๐ SEE ALSO ๐
k that's the whole page bestie, you ate that read ๐ go forth and /proc/stat responsibly, the kernel is counting on you (literally, it counts everything, see above).
sign-off time: this was <rainbow>Linux man-pages 6.20</rainbow>, dated <hotpink>2026-02-08</hotpink>, and the manual page itself is proc_stat(5). mwah. ๐
โจ๐
๐ฆ where this page comes from
- arch rolling: man-pages 6.20-1 ยท BSD-2-Clause AND BSD-3-Clause AND BSD-4.3TAHOE AND BSD-4-Clause-UC AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-linking-exception AND LGPL-3.0-or-later AND LicenseRef-Public-Domain AND LicenseRef-UltraPermissive AND Linux-man-pages-1-para AND Linux-man-pages-copyleft AND Linux-man-pages-copyleft-2-para AND Linux-man-pages-copyleft-var AND MIT AND Spencer-94
- nixpkgs unstable: man-pages 6.20
- ๐ the page's license: GPL-3.0-or-later
- Copyright 1994-1995, Daniel Quinlan <Daniel.Quinlan@linux.org>
- Copyright 2002-2017, Michael Kerrisk <mtk.manpages@gmail.com>
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms