공든탑앱 열기

top

리눅스마스터 2급 · 프로세스 관리 · 약 9분

쉽게 말하면

ps가 사진이라면 top은 생방송이에요. 몇 초마다 화면을 새로 그려서 어떤 프로그램이 컴퓨터를 가장 많이 쓰는지 실시간으로 보여 줘요.

시험용 정의

top은 프로세스와 시스템 자원 사용을 실시간으로(기본 3초마다) 보여 주는 명령이다. 실행 중에 키를 눌러 정렬·종료·우선순위 변경을 할 수 있다.

비유로 이해하기

ps가 CCTV 정지 화면이라면 top은 생방송 모니터다. 게다가 모니터 앞에서 바로 지시(키 입력)를 내릴 수 있다.

자세히

top 안에서 쓰는 키

키기능
q종료
k프로세스 종료 (PID와 시그널 입력)
rnice 값 변경 (renice)
PCPU 사용률 순 정렬
M메모리 사용률 순 정렬
T누적 실행 시간 순
u특정 사용자만
1CPU 코어별 표시
h도움말
Space즉시 갱신

실행 옵션

top -d 55초마다 갱신 (delay)
top -u kimkim의 프로세스만
top -p 977특정 PID만
top -b -n 1배치 모드로 한 번만 출력 (파일로 저장할 때)

비슷한 도구

htop(컬러·마우스 지원 개선판), uptime(가동 시간과 load average만), free(메모리), vmstat(가상 메모리·CPU 통계).

시험에 이렇게 나와요

확인 문제

Q1. top 화면에서 load average가 1.08, 0.74, 0.52다. 세 숫자는 무엇일까?

  1. 최근 1분, 5분, 15분 평균 부하
  2. 메모리·스왑·디스크 사용률
  3. 사용자 3명의 부하
  4. CPU 3개 각각의 사용률
정답 보기

1번 최근 1분, 5분, 15분 평균 부하

load average는 실행 중이거나 실행을 기다리는(그리고 디스크 대기 D 상태) 프로세스 수의 1분·5분·15분 평균이다. CPU 코어 수보다 계속 크면 과부하다.

Q2. top 실행 중 메모리 사용률 순으로 정렬하는 키는?

  1. M
  2. P
  3. T
  4. k
정답 보기

1번 M

M(memory). P는 CPU.

Q3. top 실행 중 특정 프로세스에 시그널을 보내 종료하는 키는?

  1. k
  2. d
  3. q
  4. r
정답 보기

1번 k

k(kill). r은 renice.

Q4. top의 %Cpu(s) 항목 중 입출력(디스크) 대기 비율은?

  1. us
  2. wa
  3. id
  4. sy
정답 보기

2번 wa

wa(wait)다. CPU가 디스크 입출력을 기다리며 쉰 비율이다. us는 사용자 프로그램, sy는 커널, id는 아무것도 안 한 비율이다.

헷갈리기 쉬운 O·X

load average의 세 값은 최근 1분, 5분, 15분 평균이다.

정답 보기

O 맞는 설명이다.

top은 기본적으로 메모리 사용률이 높은 순으로 정렬된다.

정답 보기

X 기본은 %CPU 순.

top 안에서 r 키로 프로세스의 nice 값을 바꿀 수 있다.

정답 보기

O 맞는 설명이다.

함께 보면 좋은 개념