강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

실행중인 프로세스의 우선순위를 변경할 수 있는 renice 활용법: renice의 실무사용예

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

실행중인 프로세스의 우선순위를 변경할 수 있는 renice 활용법: renice의 실무사용예

 

 

 

 

 

가장 실무적인 renice의 사용예를 보이기 위하여 아래와 같이 /usr전체를 압축 보관하는 tar명령어를 실행하였다.

 

 

 

 

 

[root@sulinux backup]# tar cvfz usr.tar.gz /usr >& /dev/null &

[1] 2898

[root@sulinux backup]#

 

그리고 다음과 같이 top을 실행하여 좀 전에 실행했던 tar프로세스의 우선순위값과 NICE값을 각각 확인하였다.

 

 

 

 아래 예와 같이 PR(우선순위, Priority)값이 20이며 NI(NICE)값이 0으로서 실행되어 있다.

 

 

 

 이것이 모든 프로세스에게 기본적으로 해당되는 PR(Priority, 우선순위) NI(NICE)의 기본값이다.

 

 

 

 

 

top - 04:49:30 up  2:03,  4 users,  load average: 0.15, 0.03, 0.01

Tasks:  87 total,   2 running,  85 sleeping,   0 stopped,   0 zombie

Cpu(s): 25.0%us, 40.0%sy,  0.0%ni,  0.0%id, 30.0%wa,  2.5%hi,  2.5%si, 

Mem:   1033816k total,   358916k used,   674900k free,    94836k buffers

Swap:  2096472k total,        0k used,  2096472k free,   148708k cached

 

  PID USER      PR  NI  VIRT S %CPU %MEM    TIME+  SWAP CODE COMMAND   

 2899 root      20   0  2108 S 65.2  0.1   0:06.51 1516   60 gzip      

 2898 root      20   0  5648 R 15.8  0.1   0:00.57 4536  272 tar        

   82 root      15  -5     0 S  4.9  0.0   0:00.40    0    0 kblockd/0 

 2857 root      20   0 10240 S  1.0  0.3   0:00.12 7284  452 sshd      

 2897 root      20   0  2428 R  1.0  0.1   0:00.62 1384   60 top       

    1 root      20   0  2008 S  0.0  0.1   0:01.50 1240  124 init

 

그리고 다음과 같이 tar프로세스에게 NICE값을 재설정하였다.

 

 

 

 즉 다음 실행한 renice명령어는 “-p 2898” , PID 2898인 프로세스(tar프로세스)에 대하여 NICE값을 5로 재설정하라는 의미이다.

 

 

 

 참고로 아래 renice의 결과메시지“old priority”“new priority 5”에서 볼 수 있는 priority라는 것은 우선순위를 의미하는 것이 아니고 NICE값을 의미하는 것이다.

 

 

 

 , 변경되기 전 NICE 0(old priority)에서 새로운 NICE 5(new priority)로 재설정되었다는 의미이다.

 

 

 

 헷갈리지 않기를 바란다.

 

 

 

 그리고 아래에서 +5로 지정하는 것과 그냥 5로 지정하는 것은 같은 의미이다.

 

 

 

 

 

[root@sulinux backup]# ps -ef | grep tar

root      2898  2821 26 04:49 pts/2    00:01:57 tar cvfz usr.tar.gz /usr

root      2908  2821  0 04:56 pts/2    00:00:00 grep tar

[root@sulinux backup]#

[root@sulinux backup]# renice +5 -p 2898

2898: old priority 0, new priority 5

[root@sulinux backup]#

 

이 결과를 확인하기 위하여 다음과 같이 top을 실행하였다.

 

 

 

 다음 결과를 보면 tar프로세스의 NI값이 5로 설정되었고, PR값은 25로 재설정되었다.

 

 

 

 즉 앞에서 20이었던 tar프로세스의 우선순위는 이제 25로 재설정되었다.

 

 

 

 

 

top - 04:50:09 up  2:03,  4 users,  load average: 0.79, 0.21, 0.07

Tasks:  87 total,   2 running,  85 sleeping,   0 stopped,   0 zombie

Cpu(s): 16.9%us, 39.0%sy,  0.0%ni,  0.0%id, 42.4%wa,  0.0%hi,  1.7%si, 

Mem:   1033816k total,   447948k used,   585868k free,    96336k buffers

Swap:  2096472k total,        0k used,  2096472k free,   231168k cached

 

  PID USER      PR  NI  VIRT S %CPU %MEM    TIME+  SWAP CODE COMMAND   

 2898 root      25   5  5648 D 36.2  0.1   0:15.27 4516  272 tar       

 2899 root      20   0  2108 R 24.5  0.1   0:10.49 1504   60 gzip      

   82 root      15  -5     0 S  2.9  0.0   0:00.66    0    0 kblockd/0 

 2900 root      20   0  2428 R  2.0  0.1   0:00.48 1384   60 top       

  150 root      15  -5     0 S  1.0  0.0   0:01.92    0    0 ata/0     

  441 root      15  -5     0 S  1.0  0.0   0:00.33    0    0 scsi_eh_1 

    1 root      20   0  2008 S  0.0  0.1   0:01.50 1240  124 init

 

이번 예에서 우리는 이미 실행중인 특정프로세스에 대하여 renice를 이용하여 우선순위를 변경하는 방법에 대해서 배웠다.

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,156 명
  • 현재 강좌수 :  36,513 개
  • 현재 접속자 :  289 명