Використання команд «Nice» і «Renice» в Linux

Використання команд «Nice» і «Renice» в Linux

Системи Linux можуть запускати багато процесів (завдань) одночасно. Навіть якщо процесор має декілька процесорів або ядер, кількість процесів зазвичай набагато перевищує кількість доступних ядер. Завдання ядра Linux - розподіляти доступні цикли ЦП серед активних процесів.

Використовуйте команди nice і renice, щоб змусити ядро  перерозподілити цикли процесора для конкретних програм.

Використовуйте Nice, щоб отримати пріоритети прямо

За замовчуванням всі процеси вважаються однаково терміновими і мають однакову кількість процесорного часу. Linux пов'язує параметр пріоритету з кожним завданням, яке може бути встановлено або змінено користувачем. Потім ядро  Linux резервує процесорний час для кожного процесу на основі його відносного значення пріоритету.

Параметр nice використовується для цієї мети. Він варіюється від мінус 20 до плюс 19 і може приймати тільки цілі значення. Значення мінус 20 представляє найвищий рівень пріоритету, тоді як 19 позначає найнижчий. Той факт, що найвищий рівень пріоритету позначений найбільш негативним числом, дещо суперечить інтуїції. Однак робота з нижчим пріоритетом вважається «більш приємною», оскільки вона дозволяє іншим процесам використовувати більшу частку процесорного часу.

Як грати в Ніццу

За допомогою команди:

відмінно

запускає новий процес (завдання) і призначає йому пріоритетне (красиве) значення одночасно. Щоб змінити пріоритет процесу, який вже запущено, скористайтеся командою:

Renice

Наприклад, наступний командний рядок запускає процес large-job, встановлюючи значення nice рівним 12:

хороший - 12 велика робота

Зверніть увагу, що дефіс перед 12 не представляє знак мінус. У нього є звичайна функція позначки прапора, переданого як аргумент команді nice.

Щоб встановити значення nice до мінус 12, додайте ще один дефіс:

хороший - 12 велика робота

Пам'ятайте, що нижчі значення відповідають вищому пріоритету. Отже, -12 має вищий пріоритет, ніж 12.

Типовим значенням є 0. Звичайні користувачі можуть встановлювати нижчі пріоритети (додатні значення Nice). Щоб використовувати більш високі пріоритети (від'ємні значення Nice), потрібні права адміністратора.

Змінити значення Nice

Змініть пріоритет завдання, яке вже виконується з використанням Renice. Наприклад:

реніс 17-р 1134

Це змінює значення nice завдання з ідентифікатором процесу 1134 на 17. У цьому випадку дефіс не використовується для налаштування команди при зазначенні значення nice. Наступна команда змінює значення nice процесу 1134 на -3:

реніс -3 -р 1134

Приклад використання команди оболонки Linux'ps '

Image