Linux Proc stat: /proc/stat


리눅스 시스템 통계 정보: /proc/stat

'/proc/stat' 파일은 Linux 시스템에서 다양한 시스템 통계 정보를 제공하는 파일입니다.   이 파일은 CPU 사용량, 시스템 부팅 시간, 프로세스 수 등과 같은 여러 중요한 정보를 포함하고 있습니다.   Red Hat Enterprise Linux 9 (RHEL 9)을 포함한 대부분의 Linux 배포판에서 '/proc/stat' 파일의 각 항목을 이해하는 것은 시스템 성능 모니터링 및 관리를 위해 중요합니다.

'/proc/stat' 파일의 내용은 여러 줄로 구성되어 있으며, 각 줄에는 특정 시스템 통계와 관련된 정보가 포함되어 있습니다.   주요 항목들을 하나씩 살펴보겠습니다.

📦 각 항목 설명

  • 1. 'cpu'
    - 첫 번째 줄은 'cpu'로 시작하며, 시스템의 모든 CPU 코어의 총 합계를 나타냅니다.
    - 그 다음에 나오는 각 항목들은 CPU 사용량의 다양한 카테고리를 나타냅니다.
    예시: cpu 122104 337 48107 1373320 2347 0 529 0 0 0
    여기서 각 숫자의 의미는 다음과 같습니다:
    1) user: 사용자가 직접 실행한 프로세스의 CPU 시간 (단위: jiffies)
    2) nice: 'nice'로 우선순위가 변경된 프로세스의 CPU 시간
    3) system: 커널이 사용한 CPU 시간
    4) idle: 유휴 상태에서의 CPU 시간
    5) iowait: 입출력 작업 대기 시간
    6) irq: 하드웨어 인터럽트 처리에 사용된 CPU 시간
    7) softirq: 소프트웨어 인터럽트 처리에 사용된 CPU 시간
    8) steal: 가상화 환경에서 다른 가상 머신에 의해 "훔쳐진" 시간
    9) guest: 호스트가 가상 머신에서 실행된 시간
    10) guest_nice: 'nice' 우선순위를 가진 가상 머신에서 실행된 시간
  • 2. 'cpuN'
    - 'cpu'로 시작하는 추가적인 줄들이 있을 수 있으며, 이는 개별 CPU 코어에 대한 통계를 나타냅니다. 'N'은 CPU 코어의 인덱스입니다.
  • 3. 'intr'
    - 이 줄은 시스템에서 발생한 모든 인터럽트의 합계를 나타냅니다. intr 1145634 25 0 0 0 1 0 0 0 0 0 0 0 ... 첫 번째 숫자는 발생한 인터럽트의 총수이며, 뒤에 나오는 숫자들은 각 인터럽트 라인에 대한 개별적인 카운트입니다.
  • 4. 'ctxt'
    - 시스템에서 발생한 문맥 교환(context switch)의 총수를 나타냅니다.
  • 5. 'btime'
    - 시스템의 부팅 시간(초 단위)을 나타냅니다. 이는 Unix Epoch 시간(1970년 1월 1일 00:00:00 UTC)으로부터의 초 단위 시간입니다.
  • 6. 'processes'
    - 부팅 이후 생성된 프로세스의 총수를 나타냅니다.
  • 7. 'procs_running'
    - 현재 실행 중인 프로세스의 수를 나타냅니다.
  • 8. 'procs_blocked'
    - 현재 입출력 작업을 대기 중인 프로세스의 수를 나타냅니다.
  • 9. 'softirq'
    - 소프트웨어 인터럽트의 발생 횟수를 나타냅니다. 각 숫자는 특정 소프트웨어 인터럽트 종류에 해당합니다. softirq 98765 0 12345 567 7890 0 0 100 0 2 0
  • 이러한 항목들은 시스템 성능을 모니터링하거나 특정 성능 문제를 분석할 때 매우 유용한 정보를 제공합니다. '/proc/stat' 파일의 각 필드는 시스템의 현재 상태를 반영하므로, 이 파일을 주기적으로 모니터링하여 시스템 성능을 분석할 수 있습니다.
  • CentOS7에서 실행 예:
    [CentOS7]$ cat /proc/stat
    cpu 65372233 11220741 53996617 89891525108 27418714 0 4061637 0 0 0
    cpu0 10724023 1754022 10024950 11227044101 2097917 0 649301 0 0 0
    cpu1 12912709 5162474 10899473 11206579028 14778705 0 777840 0 0 0
    cpu2 11068309 1118296 10036134 11221880667 6494706 0 594759 0 0 0
    cpu3 10607064 2325284 10234693 11224180586 2767771 0 714646 0 0 0
    cpu4 4882771 184217 3293067 11253827780 221816 0 302549 0 0 0
    cpu5 4805131 373872 3066831 11252929033 606001 0 299915 0 0 0
    cpu6 5400906 135086 3278601 11253022618 244086 0 345072 0 0 0
    cpu7 4971317 167489 3162863 11252061292 207707 0 377553 0 0 0
    intr 29457416335 34 0 0 0 0 0 0 0 1 0 222 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 637 480573151 230621010 1554168237 120177812 297242339 110094951 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 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 0 0
    ctxt 75934073498
    btime 1610550046
    processes 99180012
    procs_running 2
    procs_blocked 0
    softirq 60203586626 6 4106555316 26081014 1348317618 478337266 0 54594194 1564903022 0 1085190638

⚛ 설명 (chatgpt)


Email 답글이 올라오면 이메일로 알려드리겠습니다.