나이스(Unix)

nice (Unix)
좋아.
개발자AT&T 벨 연구소
초기 릴리즈1973년 11월, 48년 전(1973년-11년)
운영 체제Unix 및 Unix 유사
플랫폼크로스 플랫폼
유형명령어
면허증.코어 유틸리티: GNU GPL v3

nice 는 Linux 등의 Unix 및 Unix 계열 운영체제시스템탑재되어 있는 프로그램입니다.같은 이름의 커널 콜에 직접 매핑됩니다. nice는 특정 CPU priority를 가진 유틸리티 또는스크립트를 호출하기 위해 사용되며, 이로 인해 프로세스에 다른 프로세스보다 CPU 시간이 다소 단축됩니다.-20이 가장 높은 priority이고 19가 가장 낮은 priority입니다.프로세스의 기본 정밀도는 부모 프로세스에서 상속되며 일반적으로 0입니다.

용도 및 효과

nice는 여러 프로세스가 CPU가 제공할 수 있는 것보다 더 많은 리소스를 필요로 할 때 유용합니다.이 상태에서는 priority가 높은 프로세스가 priority가 낮은 프로세스보다 CPU 시간의 더 큰 청크를 가져옵니다.nicity를 낮은 값(즉, 높은 priority)으로 설정할 수 있는 것은 슈퍼 유저(루트)뿐입니다.Linux 에서는 변경할 수 있습니다./etc/security/limits.conf다른 사용자 또는 그룹이 낮은 nice [1]값을 설정할 수 있도록 합니다.

사용자가 다른 프로세스의 속도를 늦추지 않고 대용량 파일을 압축하려는 경우 다음을 실행할 수 있습니다.

$ nice - n 19 tar cvzf archive . tgz large file

프로세스의 특정 정밀도 값을 설정하는 경우의 정확한 수학적 효과는 Unix 구현에 대해 스케줄러가 어떻게 설계되어 있는지에 따라 달라집니다.특정 운영 체제의 스케줄러에는 다양한 휴리스틱스도 내장되어 있습니다(예를 들어 주로 I/O바운드가 되어 있는 프로세스를 CPU바운드로 되어 있는 프로세스보다 우선합니다).단순한 예로서 동일한 CPU 바인드프로세스 2개가 단일 CPU Linux 시스템에서 동시에 실행되고 있는 경우 CPU 시간의 각 점유율은 20 - p에 비례합니다.여기서 p는 프로세스의 우선 순위입니다.따라서 프로세스 실행:nice +15는, 통상 priority 프로세스에 할당된 CPU 시간의 25%(20~15)/(20~0)= 0.25 [2]를 수신합니다.한편, BSD 4.x 스케줄러에서는, 같은 예의 비율은 약 10 대 [citation needed]1입니다.

유사한 명령어

관련 정보renice프로그램을 사용하여 이미 [3]실행 중인 프로세스의 우선순위를 변경할 수 있습니다.

Linux에는ioniceCPU [4]시간이 아닌 I/O 스케줄에 영향을 주는 프로그램입니다.

어원학

"nice"라는 이름은 프로그램의 목적이 프로세스의 적정도 값을 수정하는 것이라는 사실에서 유래했습니다.각 프로세스에 허용되는 CPU 시간의 양을 결정하기 위해 사용되는 진정한 우선순위는 커널 프로세스 스케줄러에 의해 다른 프로세스의 정밀도 값과 각 프로세스의 I/O 양 등의 기타 데이터의 조합에서 계산됩니다.

"nicness"라는 이름은 높은 nicness 값을 가진 프로세스가 시스템 내의 다른 프로세스에 대해 "nicness"하다는 생각에서 유래합니다.

그렇기 때문에 보통 nice nice라고 부릅니다.nice nice가 높은 작업은 시스템 사용자에게 매우 친절합니다(즉, priority가 낮은 작업).nice가 낮은 작업은 CPU를 더 많이 사용합니다."니컬리티"라는 용어는 어색하게 여겨질 수 있다.유감스럽게도, 이 용어는 정확하면서도(우선순위 계산에는 적절한 숫자가 사용되지만, 그 자체는 우선 순위가 아닙니다) 끔찍한 완곡한 표현(우선순위 상승은 우선 순위를 낮춘다는 의미)을 피할 수 있는 유일한 용어입니다..")[5]

「 」를 참조해 주세요.

레퍼런스

  1. ^ limits.conf(5)Linux 파일 형식 설명서
  2. ^ College, Abraham Silberschatz, Yale University, Peter Baer Galvin, Pluribus Networks, Greg Gagne, Westminster; Baer Galvin, Peter; Gagne, Greg (2013). Operating system concepts (Ninth ed.). Hoboken, N.J: Wiley. p. 294. ISBN 978-1-118-06333-0.
  3. ^ renice(1)Linux 일반 명령어 매뉴얼
  4. ^ ionice(1)Linux 일반 명령어 매뉴얼
  5. ^ 제리 픽, 셸리 파워스, 팀 오라일리, 마이크 루키데스(2002).UNIX 파워오라일리, 507페이지

외부 링크