차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
tech:nice [2013/06/22 00:08] V_Ltech:nice [2021/07/17 04:00] (현재) 172.68.118.87
줄 1: 줄 1:
 +{{tag>nice linux 우분투 서버 모니터링 부하 조절}}
 +======리눅스 Nice (스케줄링에 의한 프로세스 우선순위 변경)======
 +
 +리눅스 시스템은 다중사용자(Multi-User ) 운영체제이며, 다중프로세스처리(Multi-Processing) 운영체제이다.  따라서 여러개의 프로세스가 동시에 실행되어 처리된다.  이때 각 프로세스들 간에는 실행우선순위라는 것이 결정이 되어 있다.
 +
 +nice 명령어는 많은 프로세스들 사이에 우선순위를 확인하고 우선순위를 변경할 수 있는 명령어이다.
 +
 +nice값은 -20부터 +19까지 있는데((-20 (most favorable scheduling) to 19 (least favorable) )), 대부분의 프로세스들은 대부분 우선순위 0의 값을 가지며 값이 작을수록 우선 순위가 높다. -n옵션을 쓰지 않으면 디폴트로 10이 쓰임. 일반 유저는 nice값을 증가시킬 수밖에 없지만 root는 nice값을 감소시켜 우선 순위를 높일 수도 있다
 +
 +프로세스 우선순의 -5의 값으로 실행
 +  nice -5 vi
 +
 +이미 실행시킨 프로세스의 경우 renice 명령을 사용하여 조절한다.
 +
 +  renice [-n] <priority> [-p] <pid> [<pid>  ...]
 +  renice [-n] <priority>  -g <pgrp> [<pgrp> ...]
 +  renice [-n] <priority>  -u <user> [<user> ...]
 +
 +{{tech/nice.jpg}}
 +
 +[[top]] 에서 볼 수 있다.
 +
 + =====특정 유저의 모든 프로세스 설정=====
 +
 +  /etc/security/limits.conf
 +  
 +  <username>  <hard|soft>  priority  <nice value>
 +
 +  tecmint  hard  priority  10
 +
 +이렇게 하면 된다.