[ LINUX / 리눅스 완전정복 포스팅 링크 모음]
안녕하세요 양햄찌 블로그입니다~~!
오늘 알아볼 명령어는 NICE와 RENICE입니다.
NICE / RENICE 가 하는 일? 공통점과 차이점
nice와 renice 명령어는 프로세스의 우선순위를 변경하는 기능을 합니다.
다만 nice는 명령어를 치는 순간 지정한 우선순위로 프로세스를 실행하지만,
renice는 이미 실행된 프로세스에다가 우선순위를 변경할 수 있다는 차이점이 있습니다.
re~~~다시~~~재nice~~ 이런느낌으로 생각하시면 쉽게 구분할 수 있어요.
PS명령어로 먼저 프로세스 우선순위를 확인해볼까?
참고로 ps 명령어는 현재 실행중인 프로세스 목록과 상태를 확인하는 명령어인데요~
이 명령어로 실행중인 프로세스의 우선순위 정보도 확인할 수 있어요.
ps명령어를 모르시는 분은 아래 포스팅을 이용해주세요
▼ ps 명령어 : jhnyang.tistory.com/268
[리눅스, 유닉스] ps 프로세스 명령어 완벽정리, 프로세스 관리, 계열에 따른 옵션 차이, 조건에
[리눅스 유닉스 포스팅 링크 모음] 안녕하세요 오늘 들고온 포스팅은 ps 명령어 관련입니다. 프로세스(process)의 약자로 추정되는 명령어 ps는 현재 돌아가고 있는 프로세스를 확인할 수 있는 명령
jhnyang.tistory.com
'ps -l' 또는 아래처럼 'ps -el' 명령어를 쳐봅시다.
여기 빨간색 네모 박스에 PRI, NI 항목이 보이시나요??
PRI 와 NI 둘다 프로세스 우선순위를 나타냅니다.
PRI, NI 둘다 값이 낮을 수록 우선순위가 높아요. 숫자가 크다고 높은게 아님!
PRI와 NI의 차이?
일단 둘다 우선순위를 나타냅니다. 그런데 왜 두개냐!
PRI는 운영체제에서 참고하는 우선순위로 조작이 안됩니다! 시스템 상황에 따라 부여되는 변경불가능한 값이예요. 즉 nice랑 renice로 조작하는 값은 PRI가 아닌 NI값이라는거죠~
반대로 NI는 사용자가 조작할 수 있는 우선순위값입니다. 그런데 일반 사용자는 우선순위를 낮출 수는 있어도 올릴 수는 없어요. root 관리자 계정만이 낯추고 올리고 둘 다 할 수 있습니다.
NI 값 범위
우리가 지정할 수 있는 우선순위 값은 -20부터 19까지인데 앞에서 말했듯이 값이 낮아야 우선순위가 높으므로, 가장 높은 우선순위는 -20이 됩니다.
가장 높은 우선순위 NI 값 : -20
가장 낮은 우선순위 NI 값 : 19
기본적으로 주어지는 디폴트 값: 0
NICE 명령어 사용해보기
■ nice -n [N] [프로세스명]
기존 우선순위 값에 N만큼 더한 우선순위로 [프로세스명]을 실행시킨다.
■ nice [프로세스명]
-n 옵션 없이 사용할 경우 N값은 디폴트로 10을 갖습니다. 즉 10을 더해 우선순위를 낮춰서 실행시키는거죠~
■ nice -[N] 프로세스명
nice -n N 한 것과 동일합니다
즉 N값이 양수이면 우선순위가 낮아지고 음수이면 우선순위가 올라간다!
실습해보기~~~
ubuntu 계정(root가 아닌 일반 사용자 계정)으로 로그인한 뒤 ps -l 로 실행중인 bash 우선순위 값을 확인해봤습니다.
PID가 2728인 bash의 PRI는 80, NI 값은 0이었네요.
여기서 nice -n 15 bash 명령어를 쳐줬습니다.
이는 기존 우선순위값인 0에서 15를 더한 15 NI로 bash를 실행시키라는 명령이죠?
nice는 실행 중인 프로세스의 우선순위를 변경하는 게 아니기 때문에 기존 bash PID 2728과는 다른 새로운 2806 pid의 bash가 실행됩니다. 우선순위가 낮아진 것을 확인할 수 있어요 사용자가 설정한 것을 고려해 시스템도 이 bash는 우선순위를 낮췄네요 (PRI)
그럼 이번엔 우선순위를 올려볼까요??
nice -n -15 bash를 쳤는데 이런! Permission deniced 에러가 떳네요!!
우선순위를 높이는 것은 root 관리자 계정만 가능하기 때문입니다.
RENICE 명령어 사용해보기
running processes 실행 중인 프로세스의 우선순위를 변경하는 명령어입니다.
■ renice [N] PID
실행 중인 PID 프로세스의 우선순위값 NI를 N만큼 더합니다.
renice는 옵션이 몇 개 있는데요 옵션을 알아봅시다.
옵션 | 의미 |
-n | nice와 마찬가지로 우선순위를 조정할 때 사용합니다. |
-g | 특정 그룹을 지정해서 우선순위를 조정할때 사용합니다. |
-p (--pid) | 디폴트 값이기 때문에 옵션 안붙이고 renice N pid 이렇게 쓰셔도 됩니다. renice N -p pid 와 동일~ |
-u (--user) | 특정 사용자를 지정해서 우선순위를 조정합니다. |
# renice 10 -u ubuntu
ubuntu 계정의 NI 값을 10 더해 우선순위를 낮춥니다.
실습해보기~~~
renice 명령어로 현재 실행중인 pid 58389인 프로세스의 우선순위를 변경해줘봤어요~
-10 을 해줬으니 즉 10만큼 우선순위가 높아졌겠죠??
결과를 ps -l로 확인해보면 기존 NI값이 0이었는데 -10으로 변경된 것을 확인할 수 있습니다.
root 계정이기 때문에 우선순위를 높여도 permission denied 거절이 뜨지 않은 것을 확인할 수 있어요.
오늘은 여기까지입니다. 도움이 되셨다면 공감 어떤가요?
정보공유에 큰 힘이 됩니다. 다음 포스팅에서 봐요~~
'별걸다하는 IT > 리눅스 유닉스' 카테고리의 다른 글
2002회 리눅스마스터 1급 1차 필기 2과목 2탄 [31-40문항] 문제 풀이 및 해설 (0) | 2021.01.30 |
---|---|
[리눅스/유닉스] jobs, fg, bg, &, nohup 명령어 - 프로세스 백그라운드로 돌려 실행하기, 포어그라운드로 돌리기 (0) | 2021.01.28 |
[리눅스/Linux] NICE와 RENICE 알아보자~! 프로세스 우선순위 변경하고 확인하는 명령어. PRI vs NI? (0) | 2021.01.27 |
2002회 리눅스마스터 1급 1차 필기 2과목 1탄 [21-30문항] 문제 풀이 및 해설, 문제지 다운로드 (0) | 2021.01.26 |
[리눅스/LInux] history 명령어 및 옵션- 이전에 수행한 명령어 리스트 확인, 동작원리 (0) | 2020.07.16 |
[리눅스/유닉스] du 명령어, 디렉터리별 디스크 사용량 확인하기. 퍼센테이지 비율로 확인하기 , ls명령어와 크기가 다른 이유? (0) | 2020.06.27 |
최신 댓글