서버모니터링 top실무8편: 프로세스들의 우선순위 변경하기
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 1,234 조회
- 0 추천
- 목록
본문
서버모니터링 top실무8편: 프로세스들의 우선순위 변경하기
우리는 이미 앞에서 nice와 renice편에서 프로세스의 모든 프로세스에 존재하는 NICE값을 조절하여 프로세스 우선순위를 조절하는 방법에 대해서 배웠다.
리눅스 서버는 다중사용자(Multi-User), 다중프로세스(Multi-Process)환경의 운영체제이므로 많은 프로세스들이 동시에 실행되고 있다.
이들 프로세스들은 모두 그 우선순위를 가지고 있으며 리눅스 시스템에서는 실행중인 프로세스들의 우선순위를 조절하여 특정프로세스가 먼저 실행되도록 할 수 있다.
top을 실행한 후에 우리는 이 NICE값을 변경하여 특정프로세스의 우선순위를 변경할 수 있다.
즉, 아래의 예는 top을 실행한 후에 특정프로세스의 NICE값을 변경하기 위하여 r을 입력한 것이다.
top - 01:10:21 up 6:24, 3 users, load average: 0.83, 0.67, 0.52 Tasks: 97 total, 1 running, 96 sleeping, 0 stopped, 0 zombie Cpu(s): 0.7%us, 4.7%sy, 0.0%ni, 0.0%id, 90.6%wa, 0.7%hi, 3.3%si, 0.0%st Mem: 1033816k total, 985284k used, 48532k free, 46360k buffers Swap: 2096472k total, 4k used, 2096468k free, 804444k cached PID to renice: 2565
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2277 root 20 0 10388 2972 2372 S 4.6 0.3 0:16.39 sshd 2564 root 20 0 5648 1188 948 D 3.7 0.1 0:03.28 tar 2565 root 20 0 2108 600 244 S 1.3 0.1 0:22.09 gzip
1 root 20 0 2008 768 564 S 0.0 0.1 0:01.51 init 2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd |
즉, 위와 같이 gzip프로세스의 PID인 2565를 입력하였다.
즉, gzip프로세스의 NICE값을 변경하기 위함이다.
(원래 초기 gzip프로세스의 NICE값은 0임. 초기 디폴트값)
그런 다음 아래와 같이 2565프로세스에 대한 NICE값으로 -20을 입력하였다.
즉, 최고 우선순위를 지정한 것이다.
top - 01:10:21 up 6:24, 3 users, load average: 0.83, 0.67, 0.52 Tasks: 97 total, 1 running, 96 sleeping, 0 stopped, 0 zombie Cpu(s): 0.7%us, 4.7%sy, 0.0%ni, 0.0%id, 90.6%wa, 0.7%hi, 3.3%si, 0.0%st Mem: 1033816k total, 985284k used, 48532k free, 46360k buffers Swap: 2096472k total, 4k used, 2096468k free, 804444k cached Renice PID 2565 to value: -20
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2277 root 20 0 10388 2972 2372 S 4.6 0.3 0:16.39 sshd 2564 root 20 0 5648 1188 948 D 3.7 0.1 0:03.28 tar 2565 root 20 0 2108 600 244 S 1.3 0.1 0:22.09 gzip 1 root 20 0 2008 768 564 S 0.0 0.1 0:01.51 init 2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd |
주의 할 것은 “Renice PID 2565 to value :”에서 지정할 수 있는 값의 범위는 -20부터 19까지라는 점이다.
-20이 가장 높은 우선순위를 의미하고, 19는 가장 낮은 우선순위를 의미한다.
우리는 여기서 gzip프로세스의 NICE값으로 -20을 입력하였다.
top - 01:11:31 up 6:25, 3 users, load average: 0.98, 0.75, 0.56 Tasks: 97 total, 2 running, 95 sleeping, 0 stopped, 0 zombie Cpu(s): 21.5%us, 14.7%sy, 0.0%ni, 0.0%id, 60.2%wa, 0.7%hi, 2.9%si, 0.0%st Mem: 1033816k total, 1017316k used, 16500k free, 40204k buffers Swap: 2096472k total, 24k used, 2096448k free, 838812k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2565 root 0 -20 2108 600 244 S 29.2 0.1 0:28.30 gzip
2564 root 20 0 5648 1188 948 R 9.6 0.1 0:08.06 tar 2277 root 20 0 10388 2972 2372 S 4.3 0.3 0:20.05 sshd 203 root 15 -5 0 0 0 S 0.3 0.0 0:00.29 kswapd0 2165 root 20 0 10388 2972 2372 S 0.3 0.3 2:48.84 sshd 2568 root 20 0 2428 1040 836 R 0.3 0.1 0:00.06 top 1 root 20 0 2008 768 564 S 0.0 0.1 0:01.51 init 2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd |
그 결과 위의 예에서 PID 2565인 gzip프로세스의 NICE값이 원래 0이었지만 -20으로 재설정되어 있다는 것을 알 수 있다.
그리고 눈여겨 볼것은 PR항목(Priority)값이 원래 20에서 0으로 재조정되었다는 것도 함께 알 수 있다.
이미 앞에서 NICE값을 -20부터 19까지 조절하면서 각각의 프로세스의 우선순위 값을 0부터 39까지 조절할 수 있다는 것을 배웠다.
관련자료
-
이전
-
다음