2 분 소요

1. top 이란?

  • 해당 명령어는 현재 OS의 상태를 나타내주는 어플리케이션
  • 메모리 사용량, CPU 사용량 등을 알려줌

2. top의 output

image

2.1. System time, Uptim, User

  • 시스템의 현재 시간, OS가 살아있는 시간, 그리고 유저의 세션수를 보여줌
  • $ who 를 통해 user session에 대해 알 수 있음

2.2. Load Average

  • CPU load의 이동 평균 표시, CPU가 수행하는 작업의 양
  • 1분, 5분, 15분의 평균값
  • 싱글코어일 경우, 1.0의 값이 CPU 100%를 나타냄
  • 멀티코어일 경우, 코어 수 * N을 한 값이 CPU 100% 사용

2.3. Tasks

  • 현재 프로세스들의 상태를 나타내주는 영역
    • total : 전체 프로세스
    • Running : running 상태인 프로세스
    • Sleeping : waiting 상태인 프로세스
    • Stopped : 종료된 프로세스
    • Zombil : 좀비 상태인 프로세스
  • 프로세스 상태

image

  • 실행(Runnable) - CPU에 의해서 명령어가 실행중인 Process
  • 준비(Ready) - CPU의 명령어 실행을 기다리는 Process
  • 대기(Waiting) - I/O operation이 끝나기를 기다리는 Process
  • 종료(Terminated) - Ctrl + Z 등의 signal로 종료된 Process
  • Zombie - Process는 root Process로 부터 뿌리내린 자식 Process의 형식으로 트리구조를 형성, 이 때 부모가 먼저 종료되면 root process로 부터 닿을 수 없는 Process가 생김 이를 zombie process라고 부름

2.4. CPU

  • CPU가 어떻게 사용되고 있는지 사용률을 보여주는 영역
  • 모든 값의 총합은 100% (1) 임
  • 용어
    • us : 프로세스의 유저 영역에서의 CPU 사용률
    • sy : 프로세스의 커널 영역에서의 CPU 사용률
    • ni : 프로세스의 우선순위(priority) 설정에 사용하는 CPU 사용률
    • id : 사용하고 있지 않는 비율
    • wa : I/O가 완료될때까지 기다리고 있는 CPU 비율
    • hi : 하드웨어 인터럽트에 사용되는 CPU 사용률
    • si : 소프트웨어 인터럽트에 사용되는 CPU 사용률
    • st : CPU를 VM에서 사용하여 대기하는 CPU 비율

2.5. Memory

  • RAM 메모리영역을 Mem으로 표시
  • 디스크를 메모리처럼 이용하는 Swap 메모리 영역
  • 일반적으로 Mem의 사용량이 거의 가득 찼을 때 Swap 메모리 영역을 사용, 디스크기 때문에 RAM보다 속도가 많이 느림
  • 용어
    • total : 총 메모리 양
    • free : 사용가능한 메모리 양
    • used : 사용중인 메모리 양
    • Buff/cache : 커널 버퍼에 사용되는 메모리를 뜻함
    • Avail Mem : Swap 메모리를 사용하지 않고 사용할 수 있는 메모리의 크기

3. 디테일 영역

image

  • PID : 프로세스 ID이며 프로세스를 구분하기 위한 겹치지 않는 고유한 값
  • USER : 해당 프로세스를 실행한 USER 이름 또는 효과를 받는 USER의 이름
  • PR : 커널에 의해서 스케줄링 되는 우선순위
  • NI : PR에 영향을 주는 nice 라는 값
  • VIRT : 프로세스가 소비하고 있는 총 메모리 ( 프로그램이 실행 중인 코드 + heap + stack + IO buffer 메모리를 포함 )
  • RES : RAM에서 샤용중인 메모리의 크기를 나타냄
  • SHR : 다른 프로세스와의 공유메모리(Shared Memory)를 나타냄
  • %MEM : RAM에서 RES가 차지하는 비율
  • S : 프로세스의 현재 상태를 나타냄
  • TIME+ : 프로세스가 사용한 total CPU 시간
  • COMMAND : 해당 프로세스를 실행한 커맨드

참고

sabarada


This is personal diary for study documents.
Please comment if I'm wrong or missing something else 😄. 

Top

태그: ,

카테고리:

업데이트:

댓글남기기