GNU/Linux >> Znalost Linux >  >> Linux

Příkazy pro správu procesů v Linuxu

V tomto článku budeme diskutovat o správě procesů v Linuxu. Proces v Linuxu není nic jiného než spuštěný program. Je to spuštěná instance programu. Jakýkoli příkaz, který provedete, spustí proces.

Typy procesů v Linuxu

V Linuxu mohou být procesy dvou typů:

  • Procesy v popředí
    závisí na vstupu uživatele
    označované také jako interaktivní procesy
  • Procesy na pozadí
    běží nezávisle na uživateli
    označované jako neinteraktivní nebo automatické procesy

Stavy procesu v Linuxu

Proces v Linuxu může po vytvoření a před ukončením projít různými stavy. Tyto stavy jsou:

  • Spuštěno
  • Spánek
    • Přerušitelný spánek
    • Nepřerušitelný spánek
  • Zastaveno
  • Zombie
  • Proces v provozu stav znamená, že je spuštěný nebo je připraven ke spuštění.
  • Proces spí stav, kdy čeká na dostupnost zdroje.
  • Proces v přerušitelném spánku se probudí, aby zvládl signály, zatímco proces v Nepřerušitelném spánku nebude.
  • Proces přejde do stavu zastaven stavu, kdy obdrží signál k zastavení.
  • Zombie stav je, když je proces mrtvý, ale záznam procesu je stále přítomen v tabulce.

Různé příkazy pro správu procesů v Linuxu

V Linuxu jsou k dispozici dva příkazy pro sledování běžících procesů. Tyto dva příkazy jsou Nahoře a Ps .

1. Nejlepší příkaz pro správu linuxových procesů

Chcete-li sledovat běžící procesy na vašem počítači, můžete použít příkaz top.

$ top 

Příkaz Top zobrazí seznam procesů, které běží v reálném čase, spolu s jejich pamětí a využitím CPU. Pojďme pochopit výstup trochu lépe:

  • PID :Jedinečné ID procesu přidělené každému procesu.
  • Uživatel :Uživatelské jméno vlastníka procesu.
  • PR :Priorita dána procesu při plánování.
  • NI: „pěkná“ hodnota procesu.
  • VIRT :Množství virtuální paměti používané procesem.
  • RES :Množství fyzické paměti použité procesem.
  • SHR :Množství paměti sdílené s jinými procesy.
  • S :stav procesu
    • „D“ =nepřerušitelný spánek
    • „R“ =běží
    • „S“ =spící 
    • „T“ =vysledováno nebo zastaveno 
    • ‘Z‘ =zombie
  • %CPU :Procento CPU použitého procesem.
  • %MEM; Procento paměti RAM použité procesem.
  • TIME+: Celkový čas procesoru spotřebovaný procesem.
  • Příkaz :Příkaz použitý k aktivaci procesu.

Můžete použít nahoru/dolů šipky pro pohyb nahoru a dolů v seznamu. Pro ukončení stiskněte q . Chcete-li proces ukončit, zvýrazněte proces pomocí kláves se šipkami nahoru/dolů a stiskněte „k“.

Případně můžete také použít příkaz kill, který uvidíme později.

2. příkaz ps

Příkaz ps je zkratka pro „Stav procesu“. Zobrazuje aktuálně běžící procesy. Na rozdíl od příkazu top však generovaný výstup není v reálném čase.

$ ps

Terminologie je následující:

PID ID procesu
TTY typ terminálu
ČAS celková doba, po kterou proces běží
CMD název příkazu, který spouští proces

Chcete-li získat další informace pomocí příkazu ps, použijte:

$ ps -u

Zde:

  • %CPU představuje množství výpočetního výkonu, který proces odebírá.
  • %MEM představuje množství paměti, kterou proces zabírá.
  • STAT představuje stav procesu.

Zatímco příkaz ps zobrazuje pouze procesy, které právě běží, můžete jej také použít k zobrazení seznamu všech procesů.

$ ps -A 

Tento příkaz vypíše i ty procesy, které aktuálně neběží.

3. Zastavit proces

Chcete-li zastavit proces v Linuxu, použijte „kill“ příkaz. příkaz kill vyšle signál procesu.

Existují různé typy signálů, které můžete vysílat. Nejběžnější je však ‚kill -9‘, což je ‚SIGKILL ‘.

Všechny signály můžete vypsat pomocí:

$ kill -L

Výchozí signál je 15, což je SIGTERM . Což znamená, že pokud použijete pouze příkaz kill bez jakéhokoli čísla, vyšle signál SIGTERM.

Syntaxe pro ukončení procesu je:

$ kill [pid]

Případně můžete také použít :

$ kill -9 [pid]

Tento příkaz odešle do procesu signál „SIGKILL“. Toto by se mělo použít v případě, že proces ignoruje normální požadavek na ukončení.

4. Změna priority procesu

V Linuxu můžete upřednostňovat procesy. Hodnota priority pro proces se nazývá hodnota „Pěknost“. Hodnota jemnosti se může pohybovat od –20 do 19 . 0 je výchozí hodnota.

Čtvrtý sloupec ve výstupu příkazu top je sloupec pro hodnotu niceness.

Chcete-li spustit proces a dát mu jinou než výchozí hodnotu, použijte:

$ nice -n [value] [process name]

Pro změnu pěkné hodnoty procesu, který již běží, použijte:

renice [value] -p 'PID'

Závěr

Tento tutoriál se zabýval správou procesů v Linuxu. Pokryty byly především praktické aspekty procesního řízení. Teoreticky je procesní řízení rozsáhlé téma a jeho úplné pokrytí je mimo rozsah tohoto tutoriálu.


Linux
  1. 20 základních příkazů Linuxu pro každého uživatele

  2. 8 Linuxových příkazů pro efektivní řízení procesů

  3. Správa procesů v Ubuntu Linux

  1. Moje oblíbené linuxové příkazy pro optimalizaci webových obrázků

  2. 3 základní linuxové cheaty pro produktivitu

  3. Knihovna Python pro správu procesů v Linuxu

  1. Cheat sheet pro běžné linuxové příkazy

  2. 10 Linuxových příkazů pro diagnostiku sítě

  3. Linux Command Basics:7 příkazů pro správu procesů