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

NICE값을 변경하여 프로세스들의 실행속도를 조절할 수있는 nice활용실무: 프로세스 실행우선순위 설정을 위한 nice 개론

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

NICE값을 변경하여 프로세스들의 실행속도를 조절할 수있는 nice활용실무:  프로세스 실행우선순위 설정을 위한 nice 개론

 

 

 

 

 

리눅스 명령어를 실행시키면서 nice라는 명령어를 이용하여  NICE값을 지정할 수 있는 반면 이미 실행되어있는 프로세스에 대하여 NICE값을 변경할 수 있는 것은 renice이다.

 

 

 

 먼저 nice명령어에 대한 것부터 배워보도록 하자.

 

리눅스시스템은 다중사용자(Multi-User), 다중프로세스(Multi-Process)환경의 운영체제이기에 많은 사용자와 함께 많은 프로세스들이 동시에 실행된다.

 

 

 

 따라서 시스템 사용자에 따라서 권한과 특권이 주어지는 경우가 있는 것처럼, 실행되고 있는 프로세스들에게도 급하게 빨리 실행되어야 하는 것이 있고 반면에 천천히 실행되어도 괜찮은 프로세스들이 있다.

 

 

 

 실행되고 있는 모든 프로세스에는 우선순위(priority)라는 것이 있고 우선순위는 해당 프로세스의 시스템 자원할당량을 조절한다.

 

 

 

 , 자원할당(CPU시간, MEMORY 사용량 등)을 많이 받는 프로세스는 당연히 실행속도가 빨라지게 된다.

 

 

 

 , 우선순위가 높은 프로세스는 실행속도가 빨라진다는 결론을 얻는다.

 

 

 

 

 

결론적으로 nice라는 명령어는 특정프로세스가 실행될 때에 우선순위를 지정할 수 있는 것으로서 실행속도를 높일 수 있는 도구이다.

 

 

 

 그리고 이미 실행중인 프로세스에 대한 우선순위를 재설정할 수 있는 것은 renice라는 명령어이다.

 

 

 

 따라서 이번에 설명하는 nice명령어와 함께 바로 이어서 설명하는 renice명령어를 반드시 함께 보기 바란다.

 

 

 

 또한 renice편 바로 이어서 설명하고있는 top편에도 우선순위에 관한 자세히 설명되어 있다.

 

 

 

  3가지를 함께 보면 매우 효과적이다.

 

 

 

 

 

리눅스시스템의 프로세스들은 모두 그 우선순위를 가지고 있다고 하였다.

 

 

 

 , 이번에는 실행중인 프로세스들의 우선순위를 조절하여 특정프로세스가 빠르게 실행이 되도록하는 방법에 대해서 배울 것이다.

 

 

 

 

 

리눅스에서 프로세스들이 가질 수 있는 NICE값의 범위는 -20에서부터 19까지이다.

 

 

 

 여기서 -20이 가장 우선되는 자원스케줄링을 하게되고 19는 가장 최악의 자원스케줄링을 하게된다.

 

 

 

 여기서 스케줄링이란 CPU MEMORY등과 같은 시스템자원사용에 대한 할당량 스케줄링을 의미한다.

 

 

 

 

 

, NICE값은 시스템의 자원을 어떻게 할당하고 어떤 프로세스에게 보다 많은 자원을 할당하여 실행 우선권을 부여할 것인가를 결정하는 역할을 하는 값이다.

 

 

 

 

 

그리고 특정 NICE값의 지정없이 일반적인 방법으로 실행된 프로세스들의 우선순위(Priority)값은 모두 20(default)이며 NICE값은 0(default)이다.

 

 

 

 우선순위 값은 0(가장 높은 우선순위, 가장 빠르게 실행됨)부터 39(가장 낮은 우선순위, 가장 느리게 실행됨)까지 가능하며 NICE값은 -20부터 19까지 가능하다.

 

 

 

 

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,039 명
  • 현재 강좌수 :  35,844 개
  • 현재 접속자 :  167 명