Použití příkazů "Nice" a "Renice" v systému Linux

Je to všechno o prioritách.

Systémy Linux mohou současně spouštět mnoho procesů (úloh). I když procesor má více procesorů nebo jader, počet procesů obecně daleko přesahuje počet dostupných jader. Úlohou jádra Linux je distribuovat dostupné procesorové cykly do aktivních procesů.

Příjemné získání priorit přímo

Ve výchozím nastavení jsou všechny procesy považovány za stejně naléhavé a jsou přiděleny stejné množství času procesoru. Chcete-li povolit uživateli změnit relativní význam procesů, Linux spojuje prioritní parametr s každou úlohou, kterou uživatel může nastavit nebo změnit. Linuxové jádro pak rezervuje procesní čas pro každý proces na základě relativní hodnoty priority.

Pro tento účel se používá pěkný parametr. To se pohybuje od mínus 20 do plus 19 a může převzít pouze celočíselné hodnoty. Hodnota mínus 20 představuje nejvyšší prioritu, zatímco 19 představuje nejnižší. Skutečnost, že nejvyšší priorita je označena nejaktivnějším číslem, je poněkud neintuitivní; nicméně běh na nižší prioritu je považován za "hezčí", protože umožňuje jiným procesům použít větší podíl CPU času.

Jak hrát pěkně

Pomocí příkazu nice začne nový proces (úloha) a přiřadí mu současně prioritní (pěknou) hodnotu. Chcete-li změnit prioritu procesu, který již běží, použijte příkaz renice .

Například následující příkazový řádek spustí proces "velké úlohy", nastavením hezké hodnoty na 12:

pěkná -12 velkorysá práce

Mějte na paměti, že pomlčka před značkou 12 nepředstavuje znaménko mínus. Má obvyklou funkci označování příznaku předaného jako argument pro pěkný příkaz.

Chcete-li nastavit pěknou hodnotu na mínus 12, přidejte další pomlčku:

hezké - 12 velké práce

Nezapomeňte, že nižší pěkné hodnoty odpovídají vyšší prioritě. Takže -12 má vyšší prioritu než 12. Výchozí pěkná hodnota je 0. Pravidelní uživatelé mohou nastavit nižší priority (pozitivní pěkné hodnoty). Pro použití vyšších priorit (záporné pěkné hodnoty) jsou vyžadována oprávnění administrátora.

Můžete změnit prioritu úlohy, která je již spuštěna pomocí renice:

renice 17 -p 1134

Tím se změní hezká hodnota úlohy s procesním číslem 1134 na hodnotu 17. V tomto případě se při zadávání pekné hodnoty nepoužívá žádná pomlčka pro příkaz příkazu. Následující příkaz změní pěknou hodnotu procesu 1134 na -3:

renice -3 -p 1134

Chcete-li vytisknout seznam aktuálních procesů , použijte příkaz ps. Přidáním možnosti "l" (jak je uvedeno v "seznamu") je uvedena pěkná hodnota pod záhlaví sloupce "NI". Například:

ps -al