Как дисковый IO приоритет связан с приоритетом процесса?

(Это - не обязательно ответ, но я отправил как таковой должный на сумму кода. У меня нет практического опыта с whiptail. Удалит это позже если a whiptail пользователь отправляет протестированное решение на этом.)

Как Bash записи Shell Scripting/Whiptail:

От его README: whiptail разработан, чтобы быть вклиниванием сигнала, совместимым с диалоговым окном (1), но имеет меньше функций: некоторые диалоговые окна не реализованы, такие как tailbox, timebox, calendarbox, и т.д.

Это означает, что не обязательно необходимо решить для одного или другого. Просто обнаружьте, какой доступен, затем позволяют сценарию использовать его:

# check whether whiptail or dialog is installed
# (choosing the first command found)
read dialog <<< "$(which whiptail dialog 2> /dev/null)"

# exit if none found
[[ "$dialog" ]] || {
  echo 'neither whiptail nor dialog found' >&2
  exit 1
}

# just use whichever was found
"$dialog" --msgbox "Message displayed with $dialog" 0 0

(Да, вышеупомянутое обнаружение перестанет работать на инструментах, установленных в каталогах с именем, содержащим символы новой строки. Я просто сохранил это простым.)

9
04.09.2014, 01:02
1 ответ

В Linux по умолчанию приоритет ввода-вывода процесса определяется его приоритетом ЦП в соответствии с формулой

io_priority = (cpu_nice + 20) / 5

Приоритет ввода-вывода находится в диапазоне от 0 до 7, где 0 является наивысшим приоритетом. Удобство процессора варьируется от -20 до 19, причем -20 является высшим приоритетом.

Вы можете использовать команду ionice , чтобы изменить приоритет ввода-вывода процесса. Если вы хотите, чтобы этот процесс запускался только тогда, когда система в остальном не занята, заставьте его работать в классе «простоя», а не в классе «максимальных усилий» по умолчанию:

ionice -c 3 -p $PID
ionice -c 3 mycommand --someoption

Даже с самым низким приоритетом, интенсивное использование диска процесс имеет тенденцию замедлять работу системы, по крайней мере, потому что он загрязняет кеш.

См. ionice справочную страницу для получения дополнительной информации.

13
27.01.2020, 20:06

Теги

Похожие вопросы