Het Gebruik van de vmstat Opdracht op Linux

0
343
Fatmawati Achmad Zaenuri/Shutterstock.com

Je Linux of macOS computer gebruikt het virtuele geheugen. Ontdek hoe het van invloed is op uw systeem gebruik van het fysieke geheugen, CPU en harde schijf middelen.

Wat Is Virtueel Geheugen?

Uw computer is uitgerust met een bepaalde hoeveelheid fysiek geheugen, genaamd random access memory (RAM). Deze RAM moet beheerd worden door de kernel en gedeeld tussen het besturingssysteem en welke toepassingen gebeuren te worden uitgevoerd. Als de combinatie van deze eisen zijn op te vragen voor meer geheugen dan fysiek is geïnstalleerd in uw computer, wat kan de kernel doen?

Linux en Unix-achtige besturingssystemen, zoals mac os kunt gebruik maken van de ruimte op uw harde schijf om hen te helpen geheugen beheren eisen. Een gereserveerd gebied op de vaste schijf die de zogenaamde “swap ruimte” kan gebruikt worden alsof het een uitbreiding van het RAM-geheugen. Dit is het virtuele geheugen.

De Linux-kernel kan het schrijven van de inhoud van een blok van het geheugen naar swap en gratis tot die regio RAM voor gebruik door een ander proces. De buiten liggende—ook wel “opgeroepen” uit het geheugen kan worden opgehaald van de swap ruimte en hersteld naar de RAM als het nodig is.

Natuurlijk is de snelheid van de toegang voor het wisselbaar uit het geheugen is langzamer dan die van het geheugen gehouden in het RAM-geheugen. En dat is niet de enige trade-off. Hoewel virtueel geheugen is een manier voor Linux te beheren zijn geheugen eisen, met behulp van het virtuele geheugen stelt hogere lasten elders op de computer.

Je harde schijf moet doen, leest en schrijft. De kernel—en daarmee de CPU—moet meer doen als het swaps geheugen, swap-geheugen in, en houdt al het platen draaien om te voldoen aan het geheugen van de behoeften van de verschillende processen.

Linux biedt een manier voor u om te controleren van alle van deze activiteit in de vorm van de vmstat opdracht, die verslag doet van het virtuele geheugen statistieken.

De vmstat Opdracht

Als u vmstat als een opdracht zonder parameters, het zal u tonen een set van waarden. Deze waarden zijn de gemiddelden voor elk van de statistieken, omdat uw computer werd het laatst herstart. Deze cijfers zijn niet een momentopname van de waarden “en nu”.

vmstat

Een korte tabel met waarden wordt weergegeven.

Er zijn kolommen Processor, Geheugen, Swap, IO, het Systeem en de CPU. De laatste kolom (meest rechtse kolom) bevat de gegevens met betrekking tot de CPU.

Hier is een lijst van de gegevens in elke kolom.

Proc

  • r: Het aantal gekoppelde processen. Dit zijn processen die al gelanceerd en zijn of wachten op hun volgende keer gesneden uitbarsting van CPU-cycli.
  • b: Het aantal processen in ononderbroken slaap. Het proces is niet van slapen, het is het uitvoeren van een blocking system call, en het kan niet worden onderbroken totdat het klaar is met zijn huidige actie. Meestal kan het proces is een stuurprogramma voor het apparaat te wachten op een bron om te komen gratis. In de wachtrij onderbreekt voor dat proces worden verwerkt wanneer het proces hervat de normale activiteiten.

Geheugen

  • swpd: de hoeveelheid virtueel geheugen gebruikt. In andere woorden, hoeveel geheugen is verwisseld.,
  • gratis: de hoeveelheid inactief zijn (momenteel ongebruikte) geheugen.
  • buff: de hoeveelheid geheugen die wordt gebruikt als buffers.
  • cache: de hoeveelheid geheugen die wordt gebruikt als cache.

Wissel

  • si: de Hoeveelheid virtueel geheugen verwisseld in van swap ruimte.
  • dus: de Hoeveelheid virtueel geheugen uitgewisseld swap ruimte.

IO

  • bi: Blokken ontvangen van een blok-apparaat. Het aantal data blokken gebruikt om te wisselen virtuele geheugen terug in het RAM-geheugen.
  • bo: Blokken verzonden naar een blok apparaat. Het aantal data blokken gebruikt om te wisselen virtueel geheugen uit de RAM naar de swap ruimte.

Systeem

  • in: Het aantal interrupts per seconde, met inbegrip van de klok.
  • cs: Het aantal context switches per seconde. Een context switch is als de kernel swaps uit het systeem modus verwerking in de gebruiker-modus verwerking.

CPU

Deze waarden zijn alle percentages van de totale CPU-tijd.

  • ons: Tijd besteed aan het uitvoeren van niet-kernel-code. Dat is, hoeveel tijd wordt besteed in de gebruiker tijd verwerkt en in mooie tijd in de verwerking.
  • sy: Tijd besteed draaiende kernel code.
  • id: bestede Tijd inactief.
  • wa: wachttijd voor input of output.
  • st: Tijd gestolen van een virtuele machine. Dit is de tijd die een virtuele machine heeft om te wachten voor de hypervisor te voltooien onderhoud van andere virtuele machines voor het terug kunnen komen en deelnemen aan deze virtuele machine.

Met behulp van een Tijdsinterval

We hebben vmstat bieden regelmatige updates aan deze cijfers met behulp van een waarde voor de vertraging. De waarde voor de vertraging is bepaald in seconden. Om de statistieken bijgewerkt elke vijf seconden, zouden we het volgende commando gebruiken:

vmstat 5

Elke vijf seconden vmstat zal het toevoegen van een andere lijn van gegevens aan de tabel. Je moet druk op Ctrl+C om te stoppen met dit.

Met behulp van een Graaf Waarde

Met behulp van een te lage waarde voor de vertraging zal extra druk op uw systeem. Als u nodig hebt om snel updates te proberen om de diagnose van een probleem, het is aanbevolen dat u een count waarde als een waarde voor de vertraging.

De graaf waarde geeft vmstat hoe veel updates uit te voeren voordat het wordt afgesloten en u keert terug naar de opdrachtprompt. Als u geen waarde voor aantal, vmstat zal lopen tot deze wordt gestopt door op Ctrl+C.

Om vmstat een update elke vijf seconden—maar slechts voor vier updates—gebruik het volgende commando:

vmstat 5 4

Na vier updates vmstat stopt vanzelf.

Het wijzigen van de Eenheden

U kunt ervoor kiezen om het geheugen en swap statistieken weergegeven in kilobytes of megabytes met behulp van de -S (unit-teken) optie. Dit moet worden gevolgd door een van de k , k , m of M. Deze vertegenwoordigen:

  • k:1000 bytes
  • K: 1024 bytes
  • m: 1000000 bytes
  • M: 1048576 bytes

Om de statistieken bijgewerkt om de 10 seconden met het geheugen en swap statistieken weergegeven in megabytes, gebruik je het volgende commando:

vmstat 10 -S M

Het geheugen en swap statistieken zijn nu weergegeven in megabytes. Merk op dat de optie-S heeft geen invloed op de IO blok statistieken. Deze worden altijd weergegeven in blokken.

Actief en Inactief Geheugen

Als u de -a (actief) optie de buff en cache geheugen kolommen vervangen door de “n. act” en de “actieve” kolommen. Als zij zouden voorstellen, deze tonen de hoeveelheid inactief en het actieve geheugen.

Om deze twee kolommen in plaats van de buff en cache kolommen, onder de optie-a, zoals weergegeven:

vmstat 5 -a-S-M

De n. act en actieve kolommen worden beïnvloed door de -S (unit-teken) optie.

Vorken

De -f optie geeft u het nummer van de vorken die zijn gebeurd nadat de computer is opgestart.

In andere woorden, dit laat zien dat het aantal taken dat zijn gelanceerd (en, voor het grootste deel van hen, weer gesloten), omdat het systeem is opgestart. Elk proces gestart vanaf de opdrachtregel stijging van dit cijfer. Elke keer dat een taak of proces paait of klonen van een nieuwe taak, dit cijfer zal stijgen.

vmstat -f

De vorken display niet bijwerken.

Weergeven Slabinfo

De kernel heeft een eigen geheugen management zorgen over te maken alsmede het beheer van het geheugen voor het besturingssysteem en alle toepassingen.

Zoals je je kunt voorstellen de kernel is het toewijzen en het vrijgeven van het geheugen over en voor de vele verschillende types van data-object dat het moet verwerken. Om dit zo efficiënt mogelijk te werken, het maakt gebruik van een systeem genaamd platen. Dit is een vorm van caching.

Geheugen is toegewezen, gebruikt, en niet langer nodig is voor een specifiek type van de kernel data object kan opnieuw gebruikt worden voor andere data object van hetzelfde type zonder het geheugen worden opgeheven en overgeheveld. Denk aan platen als vooraf toegewezen, op maat gemaakt segmenten van de RAM voor de kernel van de eigen behoeften.

Om de statistieken te zien voor de platen, gebruikt u de -m (platen) optie. U moet gebruik maken van sudo, en u zal worden gevraagd om uw wachtwoord. Als de output kan heel lang duren, we zijn leidingen door minder.

sudo vmstat -m | minder

De output heeft vijf kolommen. Deze zijn:

  • Cache: Naam van de cache.
  • num: Het nummer van de momenteel actieve objecten in deze cache.
  • totaal: Het totaal aantal beschikbare objecten in deze cache.
  • grootte: De grootte van elk object in de cache.
  • pagina ‘s: Het totale aantal geheugen pagina’ s die (ten minste) een object dat momenteel in verband met deze cache.

Druk op q om te vertrekken minder.

Weergeven Event-Tellers en Geheugen Statistieken

Een pagina weer te geven van event-tellers en geheugen statistieken, gebruik je de-s (stats) optie. Merk op dat een kleine “s.”

vmstat -s

Hoewel de statistieken die worden gerapporteerd zijn grotendeels dezelfde als de informatie die in de standaard uitvoer van vmstat, sommige van hen zijn gesplitst in meer detail.

Bijvoorbeeld, de standaard uitvoer van een combinatie van zowel de leuke en niet-leuke gebruiker CPU-tijd in de “ons” – kolom. De -s (stats) display worden deze statistieken afzonderlijk.

Schijf Statistieken

U kunt het verkrijgen van een soortgelijke lijst van schijf-statistieken met behulp van de -d (drive) optie.

vmstat -d | minder

Voor elke schijf, drie kolommen weergegeven, deze zijn Leest, Schrijft, en IO.

IO is de meest rechtse kolom. Merk op dat de sec kolom in IO wordt gemeten in seconden, maar de tijd op basis van de statistieken in het lezen en schrijven van de kolommen worden gemeten in milliseconden.

Dit is wat de kolommen betekenen:

Leest

  • totaal: Het totaal van de schijf leest.
  • samengevoegd: Het totaal aantal gegroepeerd leest.
  • sectoren: Het totaal van de sectoren die zijn gelezen.
  • ms: het Totaal van de telling van de tijd in milliseconden die gebruikt werden voor het lezen van gegevens van de schijf.

schrijft

  • totaal: Het totaal van de schijf schrijft.
  • samengevoegd: Het totaal aantal gegroepeerd schrijft.
  • sectoren: Het totaal van de sectoren geschreven.
  • ms = Totaal van de telling van de tijd in milliseconden die gebruikt werden bij het schrijven van gegevens naar de schijf.

IO

  • cur: Nummer van de huidige schijf leest of ernaar schrijft.
  • sec: Tijd in seconden voor een in-progress leest of schrijft.

Weergeven Samenvatting Schijf Statistieken

Om een snelle weergave van de samenvatting van de statistische gegevens van de schijf activiteit, gebruikt u de -D (drive-som) optie. Let op de hoofdletters “D”

vmstat -D

Het aantal schijven kan er abnormaal hoog. De computer gebruikt voor het onderzoek in dit artikel draait Ubuntu. Met Ubuntu, elke keer als u een toepassing installeren van een Module, een squashfs pseudo-bestandssysteem gemaakt die gekoppeld is aan een /dev/lus-apparaat.

Irritant dit apparaat items worden geteld als de harde schijf apparaten door veel van de Linux commando ‘s en hulpprogramma’ s.

Weergeven Partitie Statistieken

Om de statistieken te zien die gerelateerd zijn aan een specifieke partitie, gebruik de -p (partitie) optie en geef de partitie identifier als een command line parameter.

Hier zijn we gaan kijken naar de partitie hda1. Het cijfer dat men geeft aan dat dit de eerste partitie op het apparaat sda, dat is de belangrijkste harde schijf van deze computer.

vmstat -p sda1

De informatie die toont de totale telling van de schijf leest en schrijfacties naar een schijf en van die partitie, en het aantal sectoren opgenomen in het lezen van schijf en schijf schrijven acties.

Een Kijkje Onder De Motorkap

Het is altijd goed om te weten hoe te heffen van de kap en zien wat er onder. Soms zult u proberen het probleem op te lossen, soms zal het uit zijn van belang omdat u wilt weten hoe u uw computer teken.

vmstat kunnen u voorzien van een heleboel nuttige informatie. Nu weet je hoe het is en wat het betekent. En een gewaarschuwd mens is forearmed—wanneer je het nodig hebt om te rollen je mouwen op en doe wat diagnostics, weet je dat je hebt vmstat aan uw kant.

LEES VERDER

  • “Hoe om te Scannen (of Opnieuw) Voor Kanalen op Uw TV
  • “Waarom Video Deurbellen Zijn de Beste Smarthome Gadget
  • “Het Melden van Phishing en Schadelijke Websites in Google Chrome
  • “Hoe om te Zoeken in Al Je PC’ s Bestanden in Windows 10 Menu Start
  • “Hoe Houd Je Mac en de Apps Up-To-Date