top
쉽게 말하면
ps가 사진이라면 top은 생방송이에요. 몇 초마다 화면을 새로 그려서 어떤 프로그램이 컴퓨터를 가장 많이 쓰는지 실시간으로 보여 줘요.
시험용 정의
top은 프로세스와 시스템 자원 사용을 실시간으로(기본 3초마다) 보여 주는 명령이다. 실행 중에 키를 눌러 정렬·종료·우선순위 변경을 할 수 있다.
비유로 이해하기
ps가 CCTV 정지 화면이라면 top은 생방송 모니터다. 게다가 모니터 앞에서 바로 지시(키 입력)를 내릴 수 있다.
자세히
top 안에서 쓰는 키
| 키 | 기능 |
|---|---|
| q | 종료 |
| k | 프로세스 종료 (PID와 시그널 입력) |
| r | nice 값 변경 (renice) |
| P | CPU 사용률 순 정렬 |
| M | 메모리 사용률 순 정렬 |
| T | 누적 실행 시간 순 |
| u | 특정 사용자만 |
| 1 | CPU 코어별 표시 |
| h | 도움말 |
| Space | 즉시 갱신 |
실행 옵션
| top -d 5 | 5초마다 갱신 (delay) |
| top -u kim | kim의 프로세스만 |
| top -p 977 | 특정 PID만 |
| top -b -n 1 | 배치 모드로 한 번만 출력 (파일로 저장할 때) |
비슷한 도구
htop(컬러·마우스 지원 개선판), uptime(가동 시간과 load average만), free(메모리), vmstat(가상 메모리·CPU 통계).
시험에 이렇게 나와요
- CPU 사용률 등 프로세스 상태를 실시간으로 모니터링 → top
- top 화면의 PR(커널 우선순위)·NI(nice 값) 열 읽기
확인 문제
Q1. top 화면에서 load average가 1.08, 0.74, 0.52다. 세 숫자는 무엇일까?
- 최근 1분, 5분, 15분 평균 부하
- 메모리·스왑·디스크 사용률
- 사용자 3명의 부하
- CPU 3개 각각의 사용률
정답 보기
1번 최근 1분, 5분, 15분 평균 부하
load average는 실행 중이거나 실행을 기다리는(그리고 디스크 대기 D 상태) 프로세스 수의 1분·5분·15분 평균이다. CPU 코어 수보다 계속 크면 과부하다.
Q2. top 실행 중 메모리 사용률 순으로 정렬하는 키는?
- M
- P
- T
- k
정답 보기
1번 M
M(memory). P는 CPU.
Q3. top 실행 중 특정 프로세스에 시그널을 보내 종료하는 키는?
- k
- d
- q
- r
정답 보기
1번 k
k(kill). r은 renice.
Q4. top의 %Cpu(s) 항목 중 입출력(디스크) 대기 비율은?
- us
- wa
- id
- sy
정답 보기
2번 wa
wa(wait)다. CPU가 디스크 입출력을 기다리며 쉰 비율이다. us는 사용자 프로그램, sy는 커널, id는 아무것도 안 한 비율이다.
헷갈리기 쉬운 O·X
load average의 세 값은 최근 1분, 5분, 15분 평균이다.
정답 보기
O 맞는 설명이다.
top은 기본적으로 메모리 사용률이 높은 순으로 정렬된다.
정답 보기
X 기본은 %CPU 순.
top 안에서 r 키로 프로세스의 nice 값을 바꿀 수 있다.
정답 보기
O 맞는 설명이다.