Nástroje pro práci s procesy

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Windows: Přidána informace o balíčku sysinternals.)
(Doplněno lepší vysvětlení k fg a bg + vysvětlení zkratek + podrobněji vysvětlen kill.)
Řádka 16: Řádka 16:
  
 
== Linux ==
 
== Linux ==
 +
 
; &
 
; &
 
*spuštění procesu na pozadí
 
*spuštění procesu na pozadí
Řádka 24: Řádka 25:
 
; 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&nbsp;násilné ukončení procesu ===
 
; kill
 
; kill
 
*Pošle signál KILL
 
*Pošle signál KILL
*Obecně posílá libovolný signál (pomocí parametrů).
+
* Pomocí parametrů můžeme poslat libovolný signál.
; Spouštění procesů na popředí/pozadí
+
* Jako parametr zadáváme číslo procesu.
*Ctrl-Z
+
* Základní použití:
**uspí proces
+
kill -''signal'' ''pid''
**Vypíše číslo procesu
+
* Příklady
*bg <číslo>
+
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&nbsp;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&nbsp;číslo úlohy neodpovídá PID daného procesu.
 +
 
 +
; bg ''<číslo-úlohy>''
 +
** Zkratka z&nbsp;''BackGround'' &mdash; „spusť úlohu na pozadí“
 
** Spoustí uspaný proces na pozadí.
 
** Spoustí uspaný proces na pozadí.
*fg <číslo>
+
bg 1
 +
 
 +
; fg ''<číslo-úlohy>''
 
** Spoustí uspaný proces na popředí.
 
** Spoustí uspaný proces na popředí.
 +
** Zkratka z&nbsp;''ForeGround'' &mdash; „spusť úlohu na popředí“
 +
fg 1
 +
 
<div class="Priklad">
 
<div class="Priklad">
 
Zabití zaseknutého procesu:
 
Zabití zaseknutého procesu:
Řádka 55: Řádka 88:
 
  killall -STOP cat
 
  killall -STOP cat
 
</div>
 
</div>
; Informace o běžících procesech
 
* [[Adresář /proc]]
 
  
== 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 115:
 
*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]

Verze z 21. 10. 2020, 08:39


Obsah

Windows

Přehled procesů a využití prostředků
Informace o procesech
Správa (spouštění, ukončování, restart) služeb

Linux

&
freemind &
cat /dev/random > /dev/null &
echo $$

Zobrazení seznamu procesů

ps
ps aux
top


Posílání signálů a násilné ukončení procesu

kill
kill -signal pid
kill 4562
kill -TERM 4562
kill -L
killall


Spouštění úloh na popředí/pozadí

Ctrl-Z
bg <číslo-úlohy>
bg 1
fg <číslo-úlohy>
fg 1

Zabití zaseknutého procesu:

cat /dev/zero > /dev/null &
killall -STOP cat


Informace o běžících procesech


Priority procesů

nice
nice program
nice -n 5 program

Vyzkoušejte:

nice
nice nice
nice -n 19 nice //hodnotu dědí od svého rodiče
renice
ionice


Zdroje

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje