현재 위치 - 주공해몽공식사이트 - 랜덤 번호 뽑기 점술 - Nice 및 renice 명령을 통해 프로세스의 우선 순위를 설정하는 방법

Nice 및 renice 명령을 통해 프로세스의 우선 순위를 설정하는 방법

시스템에서 실행되는 각 프로세스에는 -20 (가장 높은 우선 순위) 부터 19 (가장 낮은 우선 순위) 까지의 우선 순위 ("nice 값" 이라고도 함) 가 있습니다. 기본적으로 프로세스의 우선 순위는 0 (기본 일정 우선 순위) 입니다. 우선 순위가 높은 프로세스 (nice 값이 상대적으로 작고 최소 -20) 와 우선 순위가 낮은 프로세스 (19 까지) 가 더 자주 실행되도록 일정이 잡혀 프로세스 주기가 더 많습니다. 일반 사용자는 자신의 프로세스 우선 순위만 낮출 수 있으며 0 에서 19 로 제한됩니다. 수퍼유저는 모든 프로세스의 우선 순위를 임의의 값으로 설정할 수 있습니다.

레니세

하나 이상의 프로세스가 시스템 리소스를 너무 많이 사용하는 경우 프로세스를 종료하는 것 외에 우선 순위를 변경할 수 있습니다. 이렇게 하려면 renice 명령을 사용합니다. 그 구문은 다음과 같습니다.

Renice 우선 순위 [[-p] pid...] [[-g] pgrp...] [[-u] 사용자 이름 ...]

여기서 우선 순위는 우선 순위 값입니다. Pid (여러 프로세스에 -p 옵션 사용) 는 프로세스 id 번호를 나타냅니다. Pgrp (둘 이상인 경우 -g) 는 프로세스 그룹 ID 번호를 나타냅니다. Users (여러 사용자가 있는 경우 -u 사용) 는 프로세스 소유자의 사용자 이름을 나타냅니다.

장기 과학 작업을 수행하는 프로세스 (PID 는 785 임) 를 실행하지만 게임을 하고 시스템 자원을 확보하고 싶다고 가정해 봅시다. 그런 다음 다음을 수행할 수 있습니다.

$ renice+15 785

이렇게 하면 프로세스를 완료하는 데 더 많은 시간이 걸릴 수 있지만 다른 프로세스에서 CPU 슬라이스를 훔치지는 않습니다.

시스템 관리자인 경우 일부 사용자가 너무 많은 프로세스를 수행하고 시스템 리소스를 너무 많이 사용하는 것을 발견하면 다음 명령만 입력하면 이러한 사용자 프로세스의 우선 순위를 변경할 수 있습니다.

# renice +20 -u li_si

이렇게 하면 li_si 의 모든 프로세스가 가장 낮은 우선 순위를 가지므로 다른 사용자의 프로세스를 방해하지 않습니다.

아름다운

프로세스의 우선 순위를 변경할 수 있다는 것을 알고 있으므로 지정된 우선 순위에 따라 명령을 실행해야 할 수 있습니다. 이렇게 하려면 nice 명령을 사용합니다.

이 시점에서 nice 의 인수로 실행하려는 명령을 사용해야 합니다. 또 다른 매개변수인 n 을 사용하여 우선 순위를 설정할 수 있습니다. 기본적으로 nice 는 우선 순위를 10 으로 설정합니다.

예를 들어, Mandrakelinux 설치 CD 의 ISO 이미지를 만들려고 합니다.

$ ddif =/dev/cdromof = ~/mdk1.iso

표준 IDE 디스크가 장착된 일부 시스템에서는 대량의 정보를 복제하는 과정에서 시스템 리소스가 너무 많이 소모됩니다. 복제 작업이 다른 프로세스를 차단하지 않도록 다음 명령을 사용하여 낮은 우선 순위로 프로세스를 시작할 수 있습니다.

$ nice-n19 DD if =/dev/cdromof = ~/mdk1.iso

그런 다음 계속 일할 수 있습니다.