Čo sú procesy a ako ich môžeme riadiť v Ubuntu

procesný obal

Dnes majú Ubuntu (a väčšina distribúcií GNU / Linux) a Komplexné užívateľské rozhranie, ktorá umožňuje používateľovi používať Systém takmer bez toho, aby o ňom niečo vedel, a je to v poriadku. Vychádza sa z predpokladu, že používateľ nemusí mať pokročilé znalosti, a preto je používanie systémov Ubuntu a GNU / Linux všeobecne čoraz intuitívnejšie.

Teraz nie je na škodu vedieť, ako to, čo používame, funguje. Okrem toho vieme, že ak používate GNU/Linux, je to čiastočne kvôli vášmu nesúhlasu, vašej zvedavosti a vašej túžbe učiť sa. Takže v Ubunlog Chceme napísať trochu technickejší článok a ukázať vám ho aké sú procesy a ako fungujú v Ubuntu. Naučíme vás vypisovať spustené procesy, nájsť konkrétny proces a zabiť ich. Začíname.

Ako všetci vieme, Ubuntu (GNU / Linux) je multitaskingový operačný systém. To znamená, že je schopný vykonávať niekoľko procesov (úloh) súčasne, bez problémov medzi nimi.

Ale ... Čo je to proces?

Proces nie je nič iné ako inštancia programu. Alebo inak povedané, program nie je ničím iným ako sériou spustených procesov. Hovorovým spôsobom by sa teda dal proces chápať ako bežiaci program.

Procesy, ako už niektorí viete, je možné vykonať dvoma spôsobmi; v popredia (v popredí) alebo v pozadia (v pozadí).

Pre tých najkurióznejších má proces navyše aj a stáť, pretože to môže byť nielen bežiaci. Ak napríklad proces A začať ďalší proces B, A sa stáva známym ako proces otec a B ako proces syn (dieťa). Najčastejšie, keď k tomu dôjde, A zostať v stave suspendovaný.

Môžeme to vidieť na príklade:

Si otvárame Terminál našej verzie Ubuntu už spúšťame nový proces, pretože terminál je ďalší program. Čo ak z Terminálu spúšťame ďalší program, uvidíme, že bude pozastavený. To znamená, že ak je terminál otvorený, vykonáme:

gedit f_test

otvoriť nový súbor s názvom f_test (s textovým editorom Gedit) uvidíme, že terminál je pozastavený a že „ho už nemôžeme používať“. Ak sme chceli po spustení procesu naďalej používať ten istý terminál, stačí ho spustiť pozadia (pozadie), to znamená, že stačí, aby sme vykonali:

gedit f_test &

Symbol „&“ označuje, že chceme, aby sa tento proces vykonal v pozadia. Týmto spôsobom, akonáhle je proces spustený, môžeme pokračovať v používaní terminálu, pretože nebude pozastavený a oba procesy budú bežať naďalej normálne.

Ako môžem zistiť, aké procesy prebiehajú v systéme Ubuntu?

Zoznam spustených procesov zobrazíte otvorením terminálu a spustením:

ps -aux

Uvidíme výstup ako tento:

Screenshot z 2016-05-22 16:19:21

Jediná informácia, ktorá nás zo zoznamu zaujíma, je PID. PID (Process Identifier) ​​je celé číslo, ktoré, ako naznačuje jeho názov, je zodpovedné za identifikáciu jedného procesu.

Okrem toho majú Ubuntu (a všetky distribúcie GNU / Linux) súbor, ktorý určuje maximálnu hodnotu PID. Toto zjavne určuje maximálny počet procesov, ktoré sa majú spustiť. Súbor sa volá pid_max a je to v adresári / proc / sys / kernel /. Ak chcete rýchlo zobraziť jeho obsah, stačí spustiť:

cat / proc / sys / kernel / pid_max

A uvidíte, ako je predvolene maximálny počet procesov, ktoré je možné spustiť, 32768. Je dôležité, aby ste pri prechádzaní týmito adresármi kráčali opatrne, pretože zlá zmena môže byť fatálna.

Na druhej strane, ak chceme prehľadávať procesy spojené s určitým programom na filtrovanie výsledku môžeme použiť fajku a príkaz grep. To znamená, že ak napríklad chceme vidieť všetky procesy spojené s Gimpom, môžeme vykonať:

ps-aux | grep gimp

Screenshot z 2016-05-22 16:25:53

Ako vidíte, v mojom prípade sú s Gimpom spojené 3 procesy.

A ... Ako môžem zabiť proces?

Zabitie procesu znamená jeho ukončenie a odoslanie príslušného signálu na ukončenie procesu. Urobiť to je také ľahké ako použitie príkazu zabiť. To je miesto, kde potrebujeme poznať PID procesu, ktorý chceme zabiť. Vo vyššie uvedenom príklade povedzme, že chcem zabiť proces Gimp, ktorý má ako svoj PID 5649. Stačí spustiť:

zabiť 5649

Teraz, ako môžem zabiť jedným ťahom všetky procesy spojené s programom? Veľmi ľahké tiež. Ak v mojom prípade chcem zabiť všetky procesy Gimpu, môžem použiť príkaz zabiť. Nasledovne:

pkill gimp

Toto by zabilo všetko Gimp procesy, to znamená procesy s PID 5649, 5719 a 5782. Jednoduché, však? Ak program zamrzne a vy ste nevedeli, ako ho ukončiť, máte teraz možné riešenie 😉

Dúfame, že vám tento malý sprievodca pomohol trochu lepšie pochopiť, ako fungujú Ubuntu a Linux vo všeobecnosti. Vedieť pracovať a riadiť procesy je v systéme Linux základné a zároveň veľmi dôležité. Aj napriek tomu vieme, že táto príručka bola dosť jednoduchá a výstižná, takže ak ste zvedaví a chcete sa tejto téme trochu venovať, môžete sa pozrieť na životného cyklu procesu alebo Plánovač Linuxu (plánovač procesov).

Až nabudúce 😉


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Alfredo Ishmael Gontaro Vega dijo

    vynikajúci

  2.   Louis dijo

    Hľadám sprievodcu v pdf, ktorý mi pomocou diagramov vysvetlí, ako sa riadia procesy v systéme Linux Ubuntu. Prostredníctvom grafiky je všetko lepšie viditeľné.