Hur man Använder vmstat-Kommandot i Linux

0
451
Fatmawati Achmad Zaenuri/Shutterstock.kom

Din Linux eller mac os-dator är att använda virtuellt minne. Upptäck hur det är att påverka ditt system använder sig av fysiskt minne, CPU, hårddisk och resurser.

Vad Är Virtuellt Minne?

Datorn är utrustad med en ändlig mängd fysiskt minne som heter random access memory (RAM-minne). Denna RAM måste hanteras av kärnan och delas mellan operativsystem och vilket program råkar vara igång. Om dessa kombinerade krav kräver mer minne än vad som är fysiskt installerad i din dator, vad kan kärnan göra?

Linux och Unix-liknande operativsystem såsom macOS kan använda utrymmet på din hårddisk för att hjälpa dem att hantera minne krav. Ett reserverat område på hårddisken som heter “växlingsutrymme” kan användas som om det vore en förlängning av RAM-minne. Detta är virtuellt minne.

Linux-kärnan kan skriva innehållet i ett block i minnet i växlingsutrymme, och gratis upp att regionen RAM-minne för användning av en annan process. De bytte ut—även kallad “växlas” ut—minnet kan hämtas från swap-utrymme och återställas till RAM-minnet när det behövs.

Naturligtvis, snabbare tillgång till växlas ut minnet är långsammare än i minne, som hölls i RAM-minne. Och det är inte den enda trade-off. Samtidigt som virtuellt minne ger ett sätt för Linux för att hantera sitt minne krav, att använda virtuellt minne platser ökade bördor på andra ställen på datorn.

Din hårddisk måste utföra fler läser och skriver. Kärnan—och därmed, CPU—måste göra mer för att fungera som det swappar minne ut, swappar minne i, och håller alla plattorna snurrar för att tillfredsställa de behov minne av de olika processerna.

Linux är ett sätt för dig att övervaka all denna verksamhet i form av vmstat-kommandot, som rapporterar om virtuellt minne statistik.

Vmstat Kommandot

Om du skriver vmstat som kommandot utan parametrar, det kommer att visa en uppsättning av värderingar. Dessa värden är medelvärden för var och en av statistiken eftersom din dator var sista startas om. Dessa siffror är inte en spegling av de värderingar “just nu.”

vmstat

En kort tabell av värden visas.

Det finns kolumner Procs, Minne, Byta, IO, System och CPU. Den sista kolumnen (högra kolumnen) innehåller uppgifter som hänför sig till CPU.

Här är en lista med data i varje kolumn.

Proc

  • r: antalet körbara processer. Detta är processer som har startats och är antingen löpning eller väntar på deras nästa gång-skivad explosion av CPU-cykler.
  • b: antalet processer i kontinuerlig sömn. Processen är inte att sova, det är att utföra en blockering systemet samtal, och det kan inte avbrytas förrän den har avslutat sin nuvarande åtgärder. Typiskt processen är en drivrutin väntar en resurs för att komma fri. Köade avbrott för att processen hanteras när processen återgår till sin vanliga verksamhet.

Minne

  • swpd: mängden virtuellt minne som används. Med andra ord, hur mycket minne har bytts ut.,
  • gratis: mängden av tomgång (outnyttjade) minne.
  • buff: mängden minne som används som buffertar.
  • cache: mängden minne som används som cache.

Swap

  • si: Mängden virtuellt minne bytte från swap-utrymme.
  • så: Mängden virtuellt minne bytte ut att byta plats.

IO

  • bi: Block fått från en blockenhet. Antalet datablock som används för att byta virtuellt minne tillbaka till RAM-minnet.
  • bo: det Block som skickas till ett block enhet. Antalet datablock som används för att byta virtuellt minne av RAM-minne och i swap-utrymme.

Systemet

  • i: antalet avbrott per sekund, inklusive klockan.
  • cs: antalet sammanhang växlar per sekund. En context switch är när kärnan swappar från systemet mode-bearbetning i user mode-bearbetning.

CPU

Dessa värden är alla procentsatser av den totala CPU-tid.

  • usa: Tid som tillbringas kör icke-kod i kärnan. Det är, hur mycket tid spenderas i tid för användaren bearbetning och i bra tid för bearbetning.
  • sy: Tid att köra kod i kärnan.
  • id: Tid som tillbringas på tomgång.
  • wa: väntetiden för in-eller utgång.
  • st: Tid som stulits från en virtuell maskin. Detta är den tid en virtuell maskin har att vänta hypervisor till finish servicing andra virtuella maskiner innan det kan komma tillbaka och delta i den virtuella maskinen.

Med hjälp av ett Tidsintervall

Vi kan ha vmstat tillhandahåller regelbundna uppdateringar till dessa siffror med hjälp av en försening värde. Förseningen värde anges i sekunder. Att ha statistiken uppdateras var femte sekund, skulle vi använda följande kommando:

vmstat 5

Alla fem sekunder vmstat kommer att lägga till ytterligare en rad med data till tabellen. Du måste trycka på Ctrl+C för att stoppa detta.

Med hjälp av en Greve Värde

Du använder en för låg fördröjning värde kommer att lägga ytterligare en börda på ditt system. Om du behöver ha snabba uppdateringar försöka diagnostisera ett problem, det är rekommenderat att du använder en count värde samt en försening värde.

Räkna värdet berättar vmstat hur många uppdateringar för att utföra innan det matas ut och återgår du till kommandotolken. Om du inte anger ett värde räknas, vmstat kommer att köra tills den stoppas genom att trycka Ctrl+C.

Att ha vmstat ge en uppdatering varje fem sekunder—men bara för fyra uppdateringar, använd följande kommando:

vmstat 5 4

Efter fyra uppdateringar vmstat stannar av sig själv.

Ändra Enheter

Du kan välja att ha som minne och swap-statistik som visas i kilobyte eller megabyte att använda -S (enhet-karaktär) alternativ. Detta måste följas av en av k , K , m eller M. Dessa representerar:

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

Att ha statistiken uppdateras var 10 sekunder med minne och swap-statistik som visas i megabyte, använd följande kommando:

vmstat 10 -S-M

Minne och swap statistik visas nu i megabyte. Observera att alternativet-S inte påverkar IO block statistik. Dessa visas alltid i block.

Aktiva och Inaktiva Minne

Om du använder-en (aktiv) alternativ buff och cache-minne kolumner ersättas med “inakt” och “aktiv” kolumner. Som de föreslår, dessa visar hur mycket inaktiva och aktiva minne.

Att se dessa två kolumner i stället för buff och cache kolumner, som inkluderar en option som visas:

vmstat 5-a -S-M

Den inakt och aktiva kolumner påverkas av -S (enhet-karaktär) alternativ.

Gafflar

Växeln-f visar antalet gafflar som har hänt sedan datorn startat upp.

Med andra ord, detta visar hur många uppgifter som har lanserats (och, för den största delen av dem, stängt igen) eftersom systemet startades upp. Varje process startas från kommandoraden skulle öka denna siffra. Varje gång en aktivitet eller process leker eller kloner en ny uppgift, denna siffra kommer att öka.

vmstat -f

Gafflarna displayen uppdateras inte.

Visa Slabinfo

Kärnan har sin egen minneshantering att oroa sig liksom minneshantering för operativsystemet och alla program.

Som ni kanske förstår kärnan är att fördela och deallocating minne om och om för många olika typer av data objekt som man måste sköta. För att göra detta så effektivt som möjligt använder ett system som kallas plattor. Detta är en form av cachning.

Minne fördelas, används och inte längre behövs för en viss typ av kärna data objekt kan återanvändas för annan data objekt av samma typ utan minne är borttagna och omfördelas. Tänk på plattor som redan har anslagits, gjord för att mäta delar av RAM för kärnan ‘ s egna behov.

För att se statistik för plattor, använd-m (plattor) alternativ. Du kommer att behöva använda sudo, och du kommer att bli ombedd att ange ditt lösenord. Som resultat kan vara ganska långa, vi är rykande det genom mindre.

sudo vmstat -m | mindre

Produktionen har fem kolumner. Dessa är:

  • Cache: Namnet på cachen.
  • num: antalet aktiva objekt i denna cache.
  • totalt: Det totala antalet tillgängliga objekt i denna cache.
  • storlek: storleken på varje objekt i cache-minnet.
  • sidor: Det totala antalet sidor i minnet att ha (minst) ett objekt som för närvarande är förknippade med denna cache.

Tryck på q för att lämna mindre.

Visning av Händelse Räknare och Statistik Minne

För att visa en sida av händelsen räknare och minne statistik, använda växeln-s (statistik) alternativ. Observera att det är ett litet “s.”

vmstat -s

Även om den statistik som redovisas är i stort sett samma information som gör upp i den standard vmstat produktionen, vissa av dem är att dela ut mer i detalj.

Till exempel, standard output kombinerar både den fina och den icke-trevligt användargränssnitt CPU-tid i “oss” – kolumnen. -S (statistik) visa listor statistiken separat.

Visa Disk Statistik

Du kan få en liknande lista över disk statistik hjälp -d (disk) alternativ.

vmstat -d | mindre

För varje disk, tre kolumner som visas, detta är Läser, Skriver och IO.

IO är kolumnen längst till höger. Observera att sec kolumn i IO mäts i sekunder, men tiden-baserad statistik i att läsa och skriva kolumner mäts i millisekunder.

Detta är vad kolumner menar:

Läser

  • totalt: Det totala antalet diskläsningar.
  • samman: Det totala antalet grupperade läser.
  • sektorer: Det totala antalet sektorer som har lästs in.
  • ms: Totalt antal tid i millisekunder som kunde användas för att läsa data från skivan.

skriver

  • totalt: Det totala antalet disk skriver.
  • samman: Det totala antalet grupperade skriver.
  • sektorer: Det totala antalet sektorer som skrivs till.
  • ms = Totalt antal tid i millisekunder som användes för att skriva data till disk.

IO

  • cur: Antal aktuella disken läser eller skriver.
  • sek: Tid i sekunder för alla pågående läser eller skriver.

Visa Sammanfattning Disk Statistik

Att se en snabb visning av sammanfattande statistik för din disk, använd-D (disk-summan) alternativ. Observera versalt “D”.

vmstat -D

Antal diskar kan se något onormalt hög. Datorn används till forskning denna artikel är att köra Ubuntu. Med Ubuntu, varje gång du installerar ett program från ett Kick, en squashfs pseudo-filsystem skapas som är knuten till en /dev/loop-enhet.

Irriterande dessa enheten poster räknas som hårddisk enheter av många av Linux-kommandon och verktyg.

Visa Partition Statistik

För att se statistik relaterad till en specifik partition använder -p (partition) och ge den partition identifierare som en kommandoraden som en parameter.

Här kommer vi att titta på den partition sda1. Siffran ett anger att detta är den första partition på enheten sda, som är den största hårddisken för den här datorn.

vmstat -p sda1

Den information som returneras visar det totala antalet diskläsningar och disk skriver till och från den partition, och antalet sektorer som ingår i läs disk och disk skriva åtgärder.

En Titt Under Huven

Det är alltid bra att veta hur motorhuven och se vad som händer under. Ibland kommer du att vara att försöka lösa problemet, ibland ska det vara av intresse för att du vill veta hur din dator fästingar.

vmstat kan ge dig massor av nyttig information. Nu vet du hur man får tillgång till det och vad det innebär. Och förvarnad är förberedd—när du behöver kavla upp ärmarna och göra några diagnostik, du vet att du har fått vmstat på din sida.

LÄS NÄSTA

  • “Hur man söker (eller Skanna) För Kanaler på Din TV
  • “Varför Video Ringklockor Är den Bästa Smarthome Gadget
  • “Hur att Rapportera om Lösenordsfiske och Skadlig Webbplatser i Google Chrome
  • “Hur Söker du Alla Dina PC-Filer i Windows 10 Start-Menyn
  • “Hur till Hålla Din Mac och Appar uppdaterade