nice
Утилита nice —
Следует различать термины «утилита» и «команда». Утилита — компьютерная программа, исполняемая в отдельном процессе. Команда — встроенная команда интерпретатора команд (shell), исполняемая внутри процесса shell.
Команда nice — встроенная команда интерпретатора команд (shell), выполняющая такие же функции, как и утилита nice, но работающая внутри процесса shell. Реализована, например, интерпретаторами команд csh и tcsh.
Приоритет nice — число, указывающее
.Описание
Утилита nice, запущенная без аргументов, выводит приоритет nice, унаследованный от родительского процесса. nice принимает аргумент «смещение» в диапазоне от −20 (наивысший приоритет) до +19 (низший приоритет). Если указать смещение и путь к исполняемому файлу, утилита nice получит приоритет своего процесса, изменит его на указанное смещение и использует системный вызов семейства exec()
[англ.] для замещения кода своего процесса кодом из указанного исполняемого файла. Команда nice сделает то же, но сначала выполнит системный вызов семейства fork()
для запуска дочернего процесса (англ. sub-shell). Если смещение не указано, будет использовано смещение +10. Привилегированный пользователь (root) может указать отрицательное смещение.
Приоритет nice и приоритет
В ОС Linux для получения текущего приоритета nice процесса используется системный вызов getpriority()
, а для его изменения — setpriority()
[7].
В
sched_setscheduler()
— изменить её[8]Для изменения приоритета уже запущенных процессов используется утилита renice.
Синтаксис
nice [-n смещение] [--adjustment=смещение] [команда [аргумент…]]
Параметры
- -n смещение
- --adjustment=смещение
- Установить приоритет nice, равный сумме текущего приоритета nice и указанного числа «смещение». Если этот аргумент не указан, будет использовано число 10.
Примечания
- ↑ CPU — англ. central processing unit, центральный процессор.
- ↑ IO — англ. input-output, ввод-вывод.
- ↑ ionice —
программа из пакета util-linux.
См.
ionice(1)
— страница справкиGNU/Linux(англ.). - ↑ 1 2
nice(1)
— страница справки man по пользовательским командам FreeBSD (англ.). - ↑ Утилита nice . The Open Group. — The Open Group Base Specifications Issue 7. IEEE Std 1003.1, 2013 Edition. Дата обращения: 8 августа 2015. Архивировано 12 сентября 2015 года.
- ↑ См. исходный код ядра Linux:
- kernel/sched/sched.h Архивная копия от 24 сентября 2015 на Wayback Machine;
- include/linux/sched/rt.h.
- GNU/Linux(англ.)
- GNU/Linux(англ.)