/proc/stat: Explanation & Insights

Information about CPU utilization

/proc/stat is a file system that provides information about various system statistics related to the CPU usage, process statistics, and other kernel-related statistics. It is a virtual file that is created by the Linux kernel and can be accessed via the command line or through programming interfaces.

Here's an example of what the contents of /proc/stat might look like:

cpu  1019353 0 383884 19471851 733 0 422 0 0 0
cpu0 223955 0 86285 4865085 258 0 109 0 0 0
cpu1 251486 0 87196 4863504 154 0 61 0 0 0
cpu2 268172 0 89413 4871599 119 0 36 0 0 0
cpu3 275738 0 82288 4911662 202 0 215 0 0 0
intr 3188140670 15 0 0 0 0 0 0 0 0
ctxt 5473270734
btime 1620159864
processes 167166
procs_running 1
procs_blocked 0

Let's break down some of the important lines in this output:

  • cpu: This line provides statistics about the CPU usage since the system has started. The values are separated by spaces and represent user, nice, system, idle, iowait, irq, softirq, steal, guest, and guest_nice CPU time.

  • intr: This line shows the total number of interrupts that have occurred on the system since it was last booted. This can be useful for identifying devices that are generating a lot of interrupts and causing performance issues.

  • ctxt: This line shows the total number of context switches that have occurred on the system since it was last booted. Context switches occur when the kernel switches between different processes.

  • btime: This line shows the system's boot time in seconds since the Unix epoch (January 1, 1970).

  • processes: This line shows the total number of processes that have been created since the system was last booted.

  • procs_running: This line shows the number of processes that are currently running on the system.

  • procs_blocked: This line shows the number of processes that are currently blocked, waiting for some resource to become available.

Overall, /proc/stat provides a wealth of information about the system's performance and resource usage. It can be used for monitoring, troubleshooting, and tuning the system for optimal performance.

CleverUptime uses this file as a source for CPU and performance information.

Except where otherwise noted, content on this site is licensed under a CC BY-SA 4.0 license CC BY SA