이 nice
명령을 사용하면 프로그램의 스케줄링 우선 순위 ( "niceness")를 조정할 수 있습니다. 내가 사용한 모든 유닉스 계열 시스템에서 niceness는 정수 범위로 지정됩니다. 여기서 -20이 가장 선호되는 예약 우선 순위이고 0이 기본값이며 19가 가장 선호되지 않습니다.
기본 niceness로 0을 갖는 것은 충분히 직관적이지만 왜 범위의 끝점으로 -20과 19가 선택 되었습니까? 부호있는 8 비트 바이트에 정확히 맞는 -128 및 127이 아닌 이유는 무엇입니까? 아니면 -100에서 100까지, 왜 소수의 인간에게는 더 직관적이거나 비슷하지만 약간 더 인체 공학적으로 -99에서 99입니까? -20 ~ 19 범위가 임의로 선택 되었습니까, 아니면 nice
원래 인터페이스 했던 스케줄러의 내부 와 관련이 있습니까? (현재 스케줄러가 0에서 139 사이의 우선 순위를 사용하는 Linux의 경우 그러한 관계가 없다는 것을 알고 있습니다. 그러나 나는 -20에서 19 범위의 역사적인 이유에 관심이 있습니다.)
min(127, (recent CPU usage on a scale of 0 to 15) + 50 + pp->p_nice - 20
)로 설정하고 우선 순위 <25는 예약되었습니다 중단없는 일을하는 프로세스. 따라서 niceness는 제한된 범위 여야했습니다.