linux, Top 에 대한 많은 이야기. |
참고 사이트 : http://bluelimn.tistory.com/740
실행 명령어
$ top [옵션]
Top 의 출력 내용 분석
-
top - 11:17:50 up 33 days, 18:22, 7 users, load average: 0.47, 0.72, 1.78
현재시간 / uptime / 로그인 유저수 / 로드 에버리지
-
Tasks: 190 total, 2 running, 185 sleeping, 2 stopped, 1 zombie
전체 프로세스 수 / 현재 실행중 프로세스 수 / 유휴 프로세스 수 / 정지상태 프로세스 / 좀비 프로세스
-
Cpu(s): 0.3%us, 0.6%sy, 0.0%ni, 97.9%id, 0.0%wa, 0.5%hi, 0.7%si, 0.0%st
CPU 사용량 : 사용자(us) / 시스템(sy) / NICE 정책(ni) / 미사용률(id) / 입출력 대시상태 사용률(wa)
-
Mem: 3922852k total, 3217548k used, 705304k free, 915084k buffers
전체물리메모리 / 사용중 메모리 / 사용되지 않는 여유메모리 / 버퍼 메모리
-
Swap: 3553592k total, 162520k used, 3391072k free, 1377272k cached
전체 스왑 메모리, 사용중 스왑 메모리, 남아있는 스왑 메모리, 캐싱 메모리
cf) cached memory, buffer memory 는 free memory 범주 안에 있는 녀석이다.
buffer 는 chunk 단위이고, cache 는 패킷 단위이다.
-
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID : process id
USER : user id
PR : priority
NI : nice value
VIRT : 가상메모리 사용량 ( swap + res )
RES : 현재 페이지가 상주하고 있는 크기 ( Resident size )
SHR : 분할된 페이지
S : 프로세스 상태, S(sleeping), R(running), W(swapped out process), Z(zombies) 로 구분된다.
%CPU : 프로세스가 사용하는 CPU 사용률
%MEM : 프로세스가 사용하는 메모리 사용율
COMMAND : 실행된 명령어
VIRT, RES, SHR 에 대한 자세한 이야기
-
VIRT 는 Virtual Image 의 약자.
모든 코드, data, shared lib, swap out 된 page 들 전체를 이야기한다.
-
RES 는 Resident size 의 약자.
swap 되지 않은 사용중인 physical memory 를 이야기한다.
다시 말해, 모든 코드, data, shared lib ( 실제 사용 ) 을 이야기한다.
Shared lib 부분에 차이가 있기 때문에 pagination 이 없어도, VIRT 와 RES 의 상황은 대부분 RES 가 용량이 더 적다.
-
SHR 은 Shared 의 약자이며
VIRT 에서 sharable ( memory or lib ) memory size 를 이야기한다.
-
VIRT 와 RES 값 차이가 크다는 것은 SWAP 을 많이 사용한다는 의미로,
swap 을 많이 사용하는 것은 성능이슈를 야기하므로 좋은 것은 아니다.
여기에는 약간의 함정(?) 이 있는데
shared library 의 경우 모든 library 는 VIRT 와 SHR 에 올라가 count 되지만,
RES에는 이 중 사용중인 녀석들만 count 된다.
cf)
nice value : 마이너스를 가지는 녀석은 우선순위가 높다. 0 이 기본이다.
명령어 실행 후 사용 옵션들
1 : cpu 갯수별 사용량 보기 ( multi core )
shift + m : 메모리 사용량이 큰 순서로 정렬
shift + p : CPU 사용량이 큰 순서로 정렬
shift + t : 실행시간이 큰 순서로 정렬
k : 프로세스 kill, k 입력후 종료할 pid 입력, kill signal인 9 를 입력.
c : 명령인자 표시/비표시
spacebar : refresh
u : 입력한 유저의 프로세스만 표시
q : top 종료
'IT 놀이터 > Linux' 카테고리의 다른 글
[Server구축/Tutorial] 리눅스 기본 폴더 구조 (0) | 2017.04.30 |
---|---|
CentOS vs. Ubuntu 간단 비교 (0) | 2017.04.19 |
Server Side Include ( SSI ) 란? (0) | 2014.03.13 |
[linux] /etc/passwd 파일 분석 (0) | 2014.03.04 |
[linux] Centos 는 뭘까? (0) | 2014.02.24 |
댓글