GNU/Linux >> Znalost Linux >  >> Linux

Co jsou „vedoucí relací“ v `ps`?

Co jsou vedoucí relace, jako v ps -d který vybírá všechny procesy kromě vedoucích relací?

Přijatá odpověď:

V Linuxu má každý proces přidruženo několik ID, včetně:

  • ID procesu (PID)

    Toto je libovolné číslo identifikující proces. Každý proces má jedinečné ID, ale poté, co proces skončí a nadřazený proces načte stav ukončení, je ID procesu uvolněno pro opětovné použití novým procesem.

  • ID rodičovského procesu (PPID)

    Toto je pouze PID procesu, který zahájil daný proces. Pokud nadřazený proces skončí dříve, než to udělá podřízený, změní se PPID podřízeného na jiný proces (obvykle PID 1).

  • ID skupiny procesů (PGID)

    Toto je pouze PID vedoucího procesní skupiny. Pokud PID ==PGID, pak je tento proces vedoucím procesní skupiny.

  • ID relace (SID)

    Toto je pouze PID vedoucího relace. Pokud PID ==SID, pak je tento proces vedoucím relace.

Relace a skupiny procesů jsou jen způsoby, jak zacházet s řadou souvisejících procesů jako s jednotkou. Všichni členové skupiny procesů vždy patří do stejné relace, ale relace může mít více skupin procesů.

Normálně bude shell vůdcem relace a každý kanál spuštěný tímto shellem bude skupinou procesů. To proto, aby bylo snadné zabít děti skořápky, když opustí. (Viz exit(3) pro krvavé podrobnosti.)

Nemyslím si, že existuje speciální termín pro člena relace nebo procesní skupiny, který není vedoucím.


Linux
  1. Jaké jsou výhody CloudLinuxu?

  2. Jak zkontrolovat, jaké sdílené knihovny jsou načteny za běhu pro daný proces?

  3. Co jsou základní a základní?

  1. Vynutit odhlášení uživatele

  2. Jaká je definice relace v linuxu?

  3. Co jsou nevyřízené signály?

  1. Co jsou zombie procesy a jak najít a zabít zombie procesy?

  2. Co způsobuje odesílání různých signálů?

  3. Pamatujete si, jaké soubory se otevírají v relaci Gedit?