Nástroje pro práci s procesy
Z MiS
Obsah |
Windows
- Přehled procesů a využití prostředků
- Standardně ve Windows: Správce úloh (vyvoláme Ctrl-Alt-Del)
- Pokročilejší, podrobnější: Process Explorer (součást balíčku Sysinternals od Microsoftu).
- zdarma, není nutné instalovat,
- ale pro podrobné informace musí běžet pod účtem správce počítače.
- Informace o procesech
- Start → Systémové informace
- Správa (spouštění, ukončování, restart) služeb
- Správa počítače → Služby (viz Služby a démoni)
- msconfig
- Umožňuje jednorázově zakázat spouštění programů, které se jinak zavádí po spuštění počítače.
- Vhodné pokud si myslíme, že některý program není v systému potřeba, ale nejsme si jisti.
Linux
- &
- spuštění procesu na pozadí
- Příklady:
freemind & cat /dev/random > /dev/null &
- echo $$
- vrací PID aktuálního procesu
Zobrazení seznamu procesů
- ps
- Zkratka z „ProcesseS“.
- Standardně jen „moje“ procesy (potomci aktuálního procesu).
- Procesy všech uživatelů:
ps aux
- top
- Zkratka z „TOP n processes according to ...“.
- Zobrazí procesy v pořadí podle využití procesoru či podle dalších kritérií.
- Průběžně aktualizuje výpis do doby, než program ukončíme stiskem klávesy q.
- Ovládání
- z ... barvičky
- q ... ukončit
- Kódy stavů procesu
- D = v "nepřerušitelném spánku"
- R = běžící nebo ready
- S = spící
- T = traceovaný nebo zastavený
- Z = zombie
- Nadstavba htop (knihovna ncurses)
Posílání signálů a násilné ukončení procesu
- kill
- Pošle signál KILL
- Pomocí parametrů můžeme poslat libovolný signál.
- Jako parametr zadáváme číslo procesu.
- Základní použití:
kill -signal pid
- Příklady
kill 4562 kill -TERM 4562 kill -L
- Vypíše signály, které můžeme posílat.
- killall
- Umožňuje ukončit všechny procesy s daným názvem procesu (podle názvu, nikoli podle PID).
Spouštění úloh na popředí/pozadí
- Ctrl-Z
- uspí aktuální běžící proces
- Vypíše do výstupu číslo úlohy. Pomocí tohoto čísla můžeme proces znovu obnovit příkazy
bg
nebofg
viz dále. - Pozn.: úlohy jsou číslovány od jedničky a číslo úlohy neodpovídá PID daného procesu.
- bg <číslo-úlohy>
- Zkratka z BackGround — „spusť úlohu na pozadí“
- Spoustí uspaný proces na pozadí.
bg 1
- fg <číslo-úlohy>
- Spoustí uspaný proces na popředí.
- Zkratka z ForeGround — „spusť úlohu na popředí“
fg 1
- jobs
- Vypíše seznam běžících úloh s čísly.
Zabití zaseknutého procesu:
cat /dev/zero > /dev/null & killall -STOP cat
Informace o běžících procesech
- Viz Adresář /proc.
Priority procesů
- nice
- který proces právě poběží určuje jádro podle priorit
- standardně 0, může zvýšit; rozsah (-20; 19)
- vyšší hodnota znamená, že poběží nepřerušovaně delší dobu, ale ve větších intervalech
- nižší hodnota => rychlejší odezva (vyšší priorita)
nice program
- standardně zvýší hodnotu o 10
nice -n 5 program
- zvýší hodnotu o 5
Vyzkoušejte:
nice nice nice nice -n 19 nice //hodnotu dědí od svého rodiče
- renice
- mění prioritu procesů
- ionice
- Priorita vstupně-výstupních operací.
- V balíku util-linux
Zdroje
- AbcLinuxu.cz > Unixove-nastroje-18-nice-renice-umask
- Kódy stavů procesu: Slack-linux.blogspot.cz > Linux-process-state-codes