Linux/Unix-procesbeheer: ps, kill, top, df, gratis, leuke opdrachten

Wat is een proces?

Een instantie van een programma wordt een proces genoemd. Simpel gezegd: elke opdracht die u aan uw Linux-machine geeft, start een nieuw proces.

Wat is een proces

Het is mogelijk om meerdere processen voor hetzelfde programma te hebben.

Soorten processen:

  • Voorgrondprocessen: Ze draaien op het scherm en hebben input van de gebruiker nodig. Bijvoorbeeld Office-programma's
  • Achtergrondprocessen: Ze draaien op de achtergrond en hebben meestal geen gebruikersinvoer nodig. Bijvoorbeeld Antivirus.

Klik hier als de video niet toegankelijk is

Een voorgrondproces uitvoeren

Om een ​​voorgrondproces te starten, kunt u dit vanaf het dashboard uitvoeren, of vanaf de terminal.

Wanneer u de Terminal gebruikt, moet u wachten totdat het voorgrondproces wordt uitgevoerd.

Een voorgrondproces uitvoeren

Een achtergrondproces uitvoeren

Als u een voorgrondprogramma/proces vanaf de terminal start, kunt u niet op de terminal werken totdat het programma actief is.

Bepaalde, data-intensieve taken vergen veel verwerkingskracht en kunnen zelfs uren duren om te voltooien. U wilt niet dat uw terminal zo lang wordt vastgehouden.

Om een ​​dergelijke situatie te voorkomen, kunt u het programma uitvoeren en naar de achtergrond sturen, zodat de terminal voor u beschikbaar blijft. Laten we leren hoe we dit kunnen doen –

Een achtergrondproces uitvoeren

Fg

U kunt het commando “fg” gebruiken om een ​​gestopt programma voort te zetten en naar de voorgrond te brengen.

De eenvoudige syntaxis voor dit hulpprogramma is:

fg jobname

Voorbeeld

  1. Start de 'banshee'-muziekspeler
  2. Stop het met het commando 'ctrl +z'
  3. Ga verder met het hulpprogramma 'fg'.

Fg-opdracht

Laten we eens kijken naar andere belangrijke opdrachten om processen te beheren:

Top

Dit hulpprogramma vertelt de gebruiker over alle actieve processen op de Linux-machine.

Top Commando

Druk op 'q' op het toetsenbord om het procesdisplay te verlaten.

De terminologie volgt:

Veld Beschrijving Voorbeeld 1 Voorbeeld 2
PID De proces-ID van elke taak 1525 961
Gebruiker De gebruikersnaam van de taakeigenaar Home Root
PR Prioriteit

Kan 20 (hoogste) of -20 (laagste) zijn

20 20
NI De mooie waarde van een taak 0 0
GERESPECTEERD Gebruikt virtueel geheugen (kb) 1775 75972
RES Fysiek geheugen gebruikt (kb) 100 51
shr Gebruikt gedeeld geheugen (kb) 28 7952
S

Status

Er zijn vijf soorten:

'D' = ononderbroken slaap

'R' = rennen

'S' = slapen

'T' = getraceerd of gestopt

'Z' = zombie

S R
%CPU % van CPU-tijd 1.7 1.0
%MEM Fysiek geheugen gebruikt 10 5.1
TIJD+ Totale CPU-tijd 5:05.34 2:23.42
commando Opdrachtnaam Photoshop.exe Xorg

PS

Dit commando staat voor 'Processtatus'. Het is vergelijkbaar met “Taakbeheer” dat pop-ups in een Windows Machine wanneer we Cntrl+Alt+Del gebruiken. Deze opdracht is vergelijkbaar met de 'top'-opdracht, maar de weergegeven informatie is anders.

Om alle processen die onder een gebruiker draaien te controleren, gebruikt u de opdracht –

ps ux

PS-opdracht

U kunt ook de processtatus van een enkel proces controleren door de syntaxis te gebruiken:

ps PID 

PS-opdracht

Doden

Dit commando beëindigt lopende processen we hebben een Linux-machine.

Om deze hulpprogramma's te gebruiken, moet u de PID (proces-ID) kennen van het proces dat u wilt beëindigen

Syntaxis -

kill PID

Om de PID van een proces te vinden, typt u eenvoudigweg

pidof Process name

Laten we het proberen met een voorbeeld.

Dood het commando

NICE

Linux kan veel processen tegelijk uitvoeren, wat de snelheid van sommige processen met hoge prioriteit kan vertragen en tot slechte prestaties kan leiden.

Om dit te voorkomen, kunt u uw machine opdracht geven processen te prioriteren volgens uw vereisten.

Deze prioriteit wordt onder Linux Niceness genoemd en heeft een waarde tussen -20 en 19. Hoe lager de Niceness-index, hoe hoger de prioriteit die aan die taak wordt gegeven.

De standaardwaarde van alle processen is 0.

Om een ​​proces te starten met een niceness-waarde die anders is dan de standaardwaarde, gebruikt u de volgende syntaxis

nice -n 'Nice value' process name

Leuke opdracht

Als er al een proces op het systeem actief is, kunt u de waarde ervan 'reniceren' met behulp van syntaxis.

renice 'nice value' -p 'PID'

Om Niceness te wijzigen, kunt u het 'top'-commando gebruiken om de PID (proces-ID) en de Nice-waarde ervan te bepalen. Later gebruik het renice-commando om de waarde te wijzigen.

Laten we dit aan de hand van een voorbeeld begrijpen.

Leuke opdracht

DF

Dit hulpprogramma rapporteert de vrije schijfruimte (harde schijf) op alle bestandssystemen.

DF-commando

Als u de bovenstaande informatie in een leesbaar formaat wilt hebben, gebruik dan de opdracht

'df -h' 

DF-commando

Gratis

Deze opdracht toont het vrije en gebruikte geheugen (RAM) op het Linux-systeem.

Gratis commando

Je kunt de argumenten gebruiken

free -m om de uitvoer in MB weer te geven

free -g om de uitvoer in GB weer te geven

Overzicht:

  • Elk lopend programma of commando dat aan een Linux-systeem wordt gegeven, wordt een proces genoemd
  • Een proces kan op de voorgrond of op de achtergrond worden uitgevoerd
  • De prioriteitsindex van een proces wordt in Linux Nice genoemd. De standaardwaarde is 0 en kan variëren tussen 20 en -19
  • Hoe lager de Niceness-index, hoe hoger de prioriteit die aan die taak wordt gegeven
commando Beschrijving
bg Om een ​​proces naar de achtergrond te sturen
fg Om een ​​gestopt proces op de voorgrond uit te voeren
top Details over alle actieve processen
ps Geef de status van processen die voor een gebruiker worden uitgevoerd
ps PID Geeft de status van een bepaald proces weer
pidof Geeft de proces-ID (PID) van een proces
dood PID Doodt een proces
mooi Start een proces met een bepaalde prioriteit
nieren Wijzigt de prioriteit van een reeds lopend proces
df Geeft vrije ruimte op de harde schijf van uw systeem
gratis Geeft gratis RAM op uw systeem