인터피 블로그

프로세서의 우선순위 값 : nice 본문

개발

프로세서의 우선순위 값 : nice

인터피 2022. 8. 11. 14:43

MapR의 Monitoring Metric 을 보다가, CPUNICE 라는 컬럼 이름에 다음과 같은 설명이 있다.

Amount of CPU time used by processes with a positive nice value.

오잉, 프로세스의 CPU 사용 시간인 것 까진 알겠는데, 양의 좋은 값이라니? 실은, nice value 의 뜻이 다음과 같기 때문이다.

Nice 값은 CPU 의 스케줄링 우선순위를 의미합니다. 값의 범위는 +19 ~ -20으로, 숫자가 높을 수록 우선 순위는 낮습니다. man 2 getpriority 를 참고하시면, 더 자세한 정보가 나와 있습니다. 프로세스를 실행할 때 nice 명령어로 우선 순위를 부여할 수 있고, renice 명령어로 우선 순위를 조정할 수 있습니다. 우선 순위를 높이기 위해선, 슈퍼 유저 권한이 (root) 필요합니다.

(출처)

참고로, getpriority() 는 프로세스의 현재 우선순위를 반환하는 인터페이스이다. setpriority() 역시 존재하는데, 이 함수를 실행할 때 값을 낮추려면 슈퍼 유저 권한이 있어야 한다.

값을 높이는 건 권한이 필요 없나 보다. 테스트가 필요하다.

※ 2016년 11월 28일에 작성한 글입니다.

728x90