Oppdage maskinvaren ved hjelp av DMideCode
Automatisk maskinvareeteksjon har alltid vært litt som et lotteri, men det ble bedre i løpet av de siste årene ettersom mange produserer dokumenterer produktene sine mer detaljert og har spesifikk informasjon tilgjengelig på nettet også. For å finne ut om maskinvareinformasjonen angående RAM som er installert i maskinen din, bruk DMideCode
Kommando (pakke for Debian Gnu/Linux, Ubuntu og Linux Mint: DMideCode).
Blant annet informasjon rapporterer dette verktøyet detaljerte data om de installerte systemkomponentene som prosessoren, baseboard og RAM. Informasjonen er basert på Desktop Management Interface (DMI) [1], som er et rammeverk som klassifiserer enkeltkomponentene på en skrivebord, notisbok eller server ved å abstrahere disse komponentene fra programvaren som administrerer dem [2]. Valget --Skriv inn minne
refererer til minneenhetene. For andre DMI -klasser se på den manuelle siden til DMideCode.
Denne maskinen er for tiden utstyrt med 8G DDR3 RAM med en konfigurert klokkehastighet på 1600 MHz. Som du kan se er den maksimale tilgjengelige kapasiteten til RAM om bord 16G, noe som betyr at den kan utvides med en andre 8G-modul.
Grafisk informasjon om minnet
I tilfelle du foretrekker et grafisk grensesnitt for å hente denne informasjonen, kan verktøyene hardinfo [3] og maskinvare Lister (GTK+ versjon) [4] være av interesse for deg. På Debian Gnu/Linux, Ubuntu og Linux Mint er disse programmene tilgjengelige via pakkene HardInfo og LSHW-GTK. Figur 2 viser brukergrensesnittet til HardInfo som viser minneinformasjonen på en Xubuntu -installasjon.
Hvor mye minne er for øyeblikket tilgjengelig
Noen ganger er mindre mer. På kommandolinjen er informasjonen om minne tilgjengelig via gratis
kommando. På Debian Gnu/Linux, Ubuntu og Linux Mint er dette programmet en del av PROCPS -pakken [5]. Figur 2 viser utgangen i et terminalvindu.
Som et utvalg av de videre alternativene, gratis
aksepterer forskjellige parametere som:
-B (--bytes):
Vis utgangen som byte-K (--Kilo):
Vis utgangen som kilobyte-m (-mega):
Vis utgangen som megabyte-g (--giga):
Vis utgangen som gigabyte--Tera:
Vis utgangen som terabyte-H (--menneskelig):
Vis utgangen i menneskelig lesbart formatI figur 3 er utgangen vist i megabyte ved å bruke alternativet -m. Systemet har 4G RAM, mens 725m for øyeblikket er i bruk.
Minneinformasjon fra Linux Kernel synspunkt
Verktøyene nevnt ovenfor er avhengige av rå informasjon som holdes i PROC -filsystemet til Linux -kjernen. For å vise disse detaljene send inn innholdet i filen /proc/meminfo
bruker katt
verktøy i en terminal:
For mer statistisk informasjon om CPU -bruk, minne og prosesser kan du se på verktøyene VMSTAT
, og iostat
(Debian Packages Procps og SysStat).
Arbeider med prosesser - PS, HTOP og Pstree
For å vise de aktive prosessene i Linux -systemet ditt, bruk PS
kommando. Vanligvis er utgangen sortert alfabetisk. Men PS
Kommando kan gjøre mye mer. Bruke alternativene AUX --Sorter -rss
Utgangen fra prosesslisten sorteres etter deres minnebruk i en ovenfra og ned rekkefølge. Figur 4 viser prosessene som har den høyeste etterspørselen på minnet. Utgangen er sortert etter den 6. kolonnen med tittelen RSS som forkorter Resident Set Size. Verdien er gitt i kilobyte.
Kommandoene PS, Pstree
og htop
er nært beslektet med tanke på informasjonen disse verktøyene vises. Både Pstree
og htop
Vis en graf for å visualisere prosessavhengighetene. htop
fungerer som en interaktiv versjon som lar deg bla på prosesslisten opp og ned. Figur 5 viser htop
På et skrivebordssystem med et utvalg av prosesser sortert etter deres spesifikke minnebruk (5. kolonne).
Finne prosesser som bruker byttehukommelse
Jo flere prosesser blir lansert, jo mer minne er i bruk samtidig. Så snart Linux -systemet ditt går tom for ubrukte minnesider, bestemmer Linux -kjernen seg for å bytte minnesider til disk ved hjelp av den minst nylig brukte (LRU) -metoden. For å svare på spørsmålet, hvilke prosesser som bruker byttehukommelse og hvor mye som brukes spesielt, kan du se på utdataene fra toppprogrammet. I 2016 publiserte Erik Ljungstrom en kort beskrivelse av hvordan du kan hente denne informasjonen og utvide denne kolonnen til output av toppen [6]. Figur 6 viser denne utgangen på et system som har mange minnesider i RAM igjen og bruker ikke bytte for øyeblikket.
Videre publiserte han i 2011 et bash -skript som evaluerer informasjonen fra PROC -filsystemet for å vise bruken av bytteprosess etter prosess [7]. Selv 7 år senere og allerede beskrevet som foreldet, er manuset fremdeles utmerket og viser hvordan du automatiserer oppgaver på et Linux -system. Det er grunnen til at vi er sikre på at det er nyttig å vise det her igjen.
Utgangen til skriptet er som følger (kjører som rot
Bruker hent de fulle dataene):
Konklusjon
Linux -verktøykassen inneholder en endeløs liste over programmer som er tilgjengelige for å hjelpe deg med å analysere minnebruken til Linux -systemet ditt. Vi så bare et kort titt - fra rå data til forbehandlet informasjon - alt er der. Bare kjenne verktøyene dine. For å bli kjent med dem, ta litt tid og leke med dem.
Dette er del 2 av serien om Linux Kernel Memory Management. Del 1 diskuterer byttehukommelse, i del tre av denne serien vil vi diskutere hvordan du kan optimalisere bruken av minnet. Dette vil omfatte styring av ramdisker samt komprimerte byttefiler.
Forfatteren vil takke Mandy Neumeyer og Gerold Rupprecht for deres støtte mens han utarbeidet denne artikkelen.