Pokud v systému existuje běžící program, označuje se jako proces. V systému lze nastavit jejich prioritu pomocí příkazů ''nice'' a ''renice''.
Normální program může spouštět celou řadu procesů, nemusí být jen jeden. Každý proces dostane od jádra přidělené číselné označení ([[.pid|PID - process identification number, identifikační číslo procesu]]), které můžete zjistit pomocí příkazu [[.monitoring#ps|ps]], [[.monitoring#top|top]] a dalších. Existují i grafické utility, které to umí, ale ty zde nediskutujeme :-).
__Příklad využití:__
Zatížení procesu je trvale vysoké, snižuje se odezva aplikací. Co se děje? Který proces tak zatěžuje procesor? Použijete příkaz [[.monitoring#top|top]], který také vypisuje ''PID'' procesů, ale výpis je defaultně řazen podle využití procesoru jednotlivými procesy:
[[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]]
Tasks: 121 total, 2 running, 119 sleeping, 0 stopped, 0 zombie
Cpu(s): 8.6%us, 2.6%sy, 9.3%ni, 78.1%id, 1.0%wa, 0.3%hi, 0.0%si, 0.0%st
Mem: 1556028k total, 1488200k used, 67828k free, 163936k buffers
Swap: 3293244k total, 156k used, 3293088k free, 756536k cached
Unknown command - try 'h' for help
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6948 user 39 19 81920 42m 10m S 92.0 2.8 55:34.10 beagled-helper
6720 user 20 0 341m 134m 25m S 6.0 8.8 17:35.38 firefox-bin
6767 user 27 7 116m 73m 9196 S 3.0 4.8 61:00.91 beagled
6624 user 20 0 21600 10m 8300 S 1.0 0.7 4:23.34 gkrellm
4318 root 20 0 195m 44m 6788 S 0.7 2.9 7:31.69 X
6405 user 20 0 42064 18m 13m S 0.3 1.2 0:45.94 kicker
6736 user 20 0 32744 22m 8724 S 0.3 1.5 0:09.90 net_applet
17374 user 20 0 35800 13m 11m R 0.3 0.9 0:00.76 konsole
18232 root 20 0 2168 1000 784 R 0.3 0.1 0:00.01 top
1 root 20 0 1648 532 472 S 0.0 0.0 0:01.00 init
2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 15 -5 0 0 0 S 0.0 0.0 0:01.09 ksoftirqd/0
5 root 15 -5 0 0 0 S 0.0 0.0 0:01.27 events/0
6 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khelper
Je vidět, že proces, který enormně zatěžuje procesor je ''beagled-helper'', a jeho ''PID'' je ''6978''. Ve sloupci ''NI'' je uvedena priorita procesu.
Podobně jako příkaz ''renice'' používá čísla od ''19'' (nejnižší priorita) do ''-19'' (nejvyšší priorita). Průměrná priorita, obvyklá u uživatelských procesů (programů) je ''0''. Proces ''beagle-helper'' má hodnotu ''nice 19'', tedy nejnižší možnou.
V praxi to funguje tak, že procesy s vyšší prioritou dostanou při zpracování přednost. Můžete si všimnout, že ve chvíli, kdy váš program pracuje, vytížení procesoru se změní ve prospěch aktuálně využívaného programu. Proces ''beagle-helper'' procesor uvolní pro upřednostněné procesy. Jakmile má procesor čas, věnuje ho i procesům s nízkou prioritou.
V tomto konkrétním případě by bylo nutné měnit ještě prioritu procesu ''beagled'', který celou indexaci řídí.
Použít na tento proces příkaz ''renice'' za účelem uvolnění procesoru pro jiné programy nemá tedy smysl. Pokud ale potřebujete mít indexaci pro vyhledávání mít hotovou dříve, je možné jeho prioritu zvýšit (tedy číslo snížit). Je potřeba zmínit, že zvyšovat prioritu (snižovat číslo) může jen administrátor; uživatel může jen u svých procesů prioritu pouze snižovat (číslo zvyšovat). Nyní tedy zvýšíme prioritu procesu ''beagle-helper'' na úroveň ostatních uživatelských procesů, tedy na nulu:
[[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]]
[root@localhost user]# renice 0 -p 6948
6948: původní priorita 19, nová priorita 0
[root@localhost user]#
Nyní ''beagle-helper'' využívá procesor stejně jako většina ostatních uživatelských procesů. Opět výpis z programu ''top'':
[[:system:prikazovy_radek#konzole|{{wiki:icons:konzole.png?40 |Konzole}}]]
Tasks: 125 total, 2 running, 123 sleeping, 0 stopped, 0 zombie
Cpu(s): 4.0%us, 2.7%sy, 8.0%ni, 81.0%id, 4.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1556028k total, 1515824k used, 40204k free, 195236k buffers
Swap: 3293244k total, 156k used, 3293088k free, 742524k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6948 moje 20 0 81920 43m 10m S 9.3 2.8 57:03.50 beagled-helper
6720 moje 20 0 340m 133m 25m R 1.3 8.8 19:42.97 firefox-bin
6624 moje 20 0 21600 10m 8300 S 1.0 0.7 4:55.07 gkrellm
4318 root 20 0 195m 44m 6788 S 0.7 2.9 8:34.79 X
6767 moje 27 7 116m 74m 9196 S 0.7 4.9 62:52.88 beagled
6745 moje 20 0 115m 35m 21m S 0.3 2.3 0:10.80 thunderbird-bin
19125 root 20 0 2168 1012 784 R 0.3 0.1 0:00.71 top
Pokud chcete spouštěnému programu/procesu určit prioritu hned při spuštění, slouží k tomu příkaz ''nice''. V něm se nezadává konečná hodnota priority jako u příkazu ''renice'', ale k aktuální hodnotě se v parametru ''-n'' přičítá zde uvedené číslo. Tedy ''nice -n 2 nazev_spustitelneho_souboru'' přičte k aktuálnímu číslu priority dvojku, tedy sníží prioritu o dva stupně. Pokud je číslo s mínusovým znaménkem, dochází ke zvyšování priority (snižování čísla).
Další informace viz přeložené manuálové a info stránky [[:system:prikazovy_radek:procesy|zde]]