Kas yra procesai ir kaip mes galime juos valdyti „Ubuntu“

proceso uždengimas

Šiandien „Ubuntu“ (ir dauguma GNU / Linux „distros“) turi Sudėtinga vartotojo sąsaja, kuris leidžia vartotojui naudotis sistema beveik nieko apie tai nežinant, ir tai puiku. Pradedama nuo prielaidos, kad vartotojas neprivalo turėti pažangių žinių, todėl „Ubuntu“ ir „GNU / Linux“ naudojimas apskritai yra vis intuityvesnis.

Dabar niekada neskauda žinoti, kaip veikia tai, ką naudojame. Be to, žinome, kad jei naudojate GNU/Linux, tai iš dalies dėl jūsų nesutarimų, jūsų smalsumo ir noro mokytis. Taigi į Ubunlog Norime parašyti šiek tiek techninį straipsnį ir parodyti jums kokie yra procesai ir kaip jie veikia Ubuntu. Mes išmokysime išvardyti vykstančius procesus, surasti konkretų procesą ir juos užmušti. Mes pradedame.

Kaip visi žinome, „Ubuntu“ (GNU / Linux) yra daugiafunkcinė operacinė sistema. Tai reiškia, kad jis gali vienu metu vykdyti kelis procesus (užduotis), be problemų tarp jų.

Bet ... Kas yra procesas?

Procesas yra ne kas kita, kaip programos egzempliorius. Arba kitaip tariant, programa yra ne kas kita, kaip vykdoma procesų serija. Taigi šnekamuoju būdu procesą galima suprasti kaip vykdomą programą.

Procesus, kaip kai kurie iš jūsų jau žino, galima vykdyti dviem būdais; į priekinis planas (priekiniame plane) arba fonas (fone).

Be to, smalsiausiems procesas taip pat turi Estado, nes taip gali būti ne tik bėgimas. Jei, pavyzdžiui, procesas A pradėti kitą procesą B, A tampa žinomas kaip procesas tėvas ir B kaip procesas sūnus (vaikas). Dažniausiai, kai tai įvyksta, A likti valstybe sustabdytas.

Tai galime pamatyti su pavyzdžiu:

Si atidarome Terminalą „Ubuntu“, mes jau pradedame naują procesą, nes terminalas yra kita programa. Kas, jeigu iš terminalo paleidžiame kitą programą, pamatysime, kad jis laikinai sustabdytas. Tai yra, jei atidarius terminalą, mes vykdome:

gedit f_test

atidaryti naują failą, vadinamą f_testas (su „Gedit“ teksto redaktoriumi) pamatysime, kad terminalas yra sustabdytas ir kad „mes nebegalime juo naudotis“. Jei mes norėjome ir toliau naudoti tą patį terminalą paleidę procesą, tiesiog paleiskite jį fonas (fonas), tai yra, pakanka, kad įvykdytume:

„gedit f_test“

Simbolis „&“ rodo, kad norime, kad šis procesas būtų vykdomas fonas. Tokiu būdu, kai procesas bus paleistas, mes galėsime toliau naudotis terminalu, nes jis nebus sustabdytas, o abu procesai ir toliau veiks įprastai.

Kaip sužinoti, kokie procesai veikia „Ubuntu“?

Norėdami pamatyti vykdomų procesų sąrašą, tiesiog atidarykite terminalą ir paleiskite:

ps -aux

Ir pamatysime tokią išvestį:

Ekrano kopija nuo 2016-05-22 16:19:21

Vienintelė iš sąrašo mus dominanti informacija yra PID. PID (proceso identifikatorius) yra sveikas skaičius, kuris, kaip rodo jo pavadinimas, yra atsakingas už vieno proceso identifikavimą.

Be to, „Ubuntu“ (ir visi GNU / Linux „distros“) turi failą, kuris nustato didžiausią PID vertę. Tai akivaizdžiai lemia maksimalus vykdytinų procesų skaičius. Failas vadinamas pid_max ir jis yra kataloge / proc / sys / kernel /. Jei norite greitai pamatyti jo turinį, tiesiog paleiskite:

katė / proc / sys / branduolys / pid_max

Jūs pamatysite, kaip pagal numatytuosius nustatymus maksimalus procesų, kuriuos galima vykdyti, skaičius yra 32768. Svarbu, kad eidami per šiuos katalogus vaikščiotumėte atsargiai, nes blogas pakeitimas gali būti mirtinas.

Kita vertus, jei norime ieškoti procesų, susijusių su tam tikra programa rezultatui filtruoti galime naudoti „pipe“ ir „grep“ komandą. Tai yra, jei, pavyzdžiui, norime pamatyti visus su „Gimp“ susijusius procesus, galime įvykdyti:

ps-aux | grep gimp

Ekrano kopija nuo 2016-05-22 16:25:53

Kaip matote, mano atveju yra 3 procesai, susiję su „Gimp“.

Ir ... Kaip aš galiu nužudyti procesą?

Užmušti procesą reiškia jį nutraukti, siunčiant atitinkamą signalą, kad procesas baigtųsi. Tai padaryti taip pat lengva, kaip ir naudoti komandą nužudyti. Čia turime žinoti PID procesą, kurį norime nužudyti. Ankstesniame pavyzdyje tarkime, kad noriu nužudyti „Gimp“ procesą, kurio PID yra 5649. Na, tiesiog bėk:

nužudyk 5649

Dabar kaip aš galiu nužudyti vienu ypu visi su programa susiję procesai? Labai lengva taip pat. Jei mano atveju noriu nužudyti visus „Gimp“ procesus, galiu naudoti komandą pkill. Taip:

pkill gimp

Tai užmuštų visi „Gimp“ procesai, tai yra, procesai su PID 5649, 5719 ir 5782. Lengva, tiesa? Jei programa užstringa ir nežinojai, kaip ją baigti, dabar turi galimą sprendimą 😉

Tikimės, kad šis mažasis vadovas padėjo jums šiek tiek geriau suprasti, kaip „Ubuntu“ ir „Linux“ veikia apskritai. Žinojimas, kaip dirbti ir valdyti procesus, yra pagrindinis „Linux“ ir kartu labai svarbus. Nepaisant to, mes žinome, kad šis vadovas buvo gana paprastas ir glaustas, taigi, jei jums įdomu ir norite šiek tiek pasinerti į temą, galite pažvelgti į proceso gyvavimo ciklas arba „Linux“ planuoklis (proceso planuotojas).

Iki kito karto 😉


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Alfredo Ishmaelis Gontaro Vega sakė

    puikus

  2.   Louis sakė

    Aš ieškau vadovo pdf formatu, kuris man diagramomis paaiškintų, kaip procesai valdomi „Linux Ubuntu“. Grafikos pagalba dalykai yra geriau matomi.