Nástroje pro práci s procesy
Z MiS
(Rozdíly mezi verzemi)
(→Linux: Přidán odkaz na adresář /proc) |
m (→Windows: Správný název pro Správce úloh (dříve Správce procesů)) |
||
(Není zobrazeno 6 mezilehlých verzí od 1 uživatele.) | |||
Řádka 1: | Řádka 1: | ||
− | [[Category:VSE]][[Category:Informatika]][[Category:OSY]] | + | [[Category:VSE]][[Category:Informatika]][[Category:OSY]][[Category:Procesy]] |
== Windows == | == Windows == | ||
; Přehled procesů a využití prostředků | ; Přehled procesů a využití prostředků | ||
− | * Standardně ve Windows: Správce | + | * Standardně ve Windows: Správce úloh (vyvoláme <tt>Ctrl-Alt-Del</tt>) |
− | * Pokročilejší, podrobnější: [http://technet.microsoft.com/cs-cz/sysinternals/bb896653.aspx Process Explorer] | + | * Pokročilejší, podrobnější: [http://technet.microsoft.com/cs-cz/sysinternals/bb896653.aspx Process Explorer] (součást balíčku ''[https://docs.microsoft.com/en-us/sysinternals/ Sysinternals]'' od Microsoftu). |
** zdarma, není nutné instalovat, | ** zdarma, není nutné instalovat, | ||
** ale pro podrobné informace musí běžet pod účtem správce počítače. | ** ale pro podrobné informace musí běžet pod účtem správce počítače. | ||
; Informace o procesech | ; Informace o procesech | ||
− | * <tt> | + | * <tt>Start → Systémové informace</tt> |
; Správa (spouštění, ukončování, restart) služeb | ; Správa (spouštění, ukončování, restart) služeb | ||
− | * <tt>Správa počítače | + | * <tt>Správa počítače → Služby</tt> (viz [[Služby a démoni]]) |
* <tt>msconfig</tt> | * <tt>msconfig</tt> | ||
** Umožňuje jednorázově zakázat spouštění programů, které se jinak zavádí po spuštění počítače. | ** Umožňuje jednorázově zakázat spouštění programů, které se jinak zavádí po spuštění počítače. | ||
Řádka 16: | Řádka 16: | ||
== Linux == | == Linux == | ||
+ | |||
; & | ; & | ||
*spuštění procesu na pozadí | *spuštění procesu na pozadí | ||
* Příklady: | * Příklady: | ||
freemind & | freemind & | ||
− | cat /dev/random > /dev/ | + | cat /dev/random > /dev/null & |
; echo $$ | ; echo $$ | ||
*vrací PID aktuálního procesu | *vrací PID aktuálního procesu | ||
+ | |||
+ | === Zobrazení seznamu procesů === | ||
; ps | ; ps | ||
+ | * Zkratka z „ProcesseS“. | ||
*Standardně jen „moje“ procesy (potomci aktuálního procesu). | *Standardně jen „moje“ procesy (potomci aktuálního procesu). | ||
* Procesy všech uživatelů: | * Procesy všech uživatelů: | ||
ps aux | ps aux | ||
+ | |||
; top | ; 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 <tt>q</tt>. | ||
* Ovládání | * Ovládání | ||
**z ... barvičky | **z ... barvičky | ||
Řádka 39: | Řádka 47: | ||
**Z = zombie | **Z = zombie | ||
*Nadstavba htop (knihovna ncurses) | *Nadstavba htop (knihovna ncurses) | ||
+ | |||
+ | |||
+ | === Posílání signálů a násilné ukončení procesu === | ||
; kill | ; kill | ||
*Pošle signál 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 | |
− | *bg <číslo> | + | kill 4562 |
− | ** Spoustí uspaný proces na pozadí. | + | 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 <code>bg</code> nebo <code>fg</code> 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. | ||
+ | |||
<div class="Priklad"> | <div class="Priklad"> | ||
Zabití zaseknutého procesu: | Zabití zaseknutého procesu: | ||
Řádka 55: | Řádka 91: | ||
killall -STOP cat | killall -STOP cat | ||
</div> | </div> | ||
− | |||
− | |||
− | == Priority procesů == | + | === Informace o běžících procesech === |
+ | * Viz [[Adresář /proc]]. | ||
+ | |||
+ | |||
+ | === Priority procesů === | ||
; nice | ; nice | ||
*který proces právě poběží určuje jádro podle priorit | *který proces právě poběží určuje jádro podle priorit | ||
Řádka 79: | Řádka 117: | ||
*Priorita vstupně-výstupních operací. | *Priorita vstupně-výstupních operací. | ||
*V balíku util-linux | *V balíku util-linux | ||
+ | |||
+ | |||
== Zdroje == | == Zdroje == | ||
* [http://www.abclinuxu.cz/clanky/unixove-nastroje-18-nice-renice-umask AbcLinuxu.cz > Unixove-nastroje-18-nice-renice-umask] | * [http://www.abclinuxu.cz/clanky/unixove-nastroje-18-nice-renice-umask AbcLinuxu.cz > Unixove-nastroje-18-nice-renice-umask] | ||
* Kódy stavů procesu: [http://slack-linux.blogspot.cz/2009/07/linux-process-state-codes.html Slack-linux.blogspot.cz > Linux-process-state-codes] | * Kódy stavů procesu: [http://slack-linux.blogspot.cz/2009/07/linux-process-state-codes.html Slack-linux.blogspot.cz > Linux-process-state-codes] |
Aktuální verze z 18. 12. 2023, 11:03
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