Kako preveriti uporabo pomnilnika Linux

How Check Linux Memory Usage



Pomnilnik ali RAM (pomnilnik z naključnim dostopom) sta za računalnik zelo pomembna. Programi, ki jih izvajate v računalniku, shranijo majhne koščke informacij v pomnilnik RAM, tako da lahko do njih dostopa čim hitreje.

RAM je zelo hiter in je bližje procesorju (centralni procesorski enoti) računalnika. Ker je RAM bližje CPU -ju računalnika, ima CPU neposreden dostop do RAM -a. Tako je zakasnitev dostopa do podatkov zelo majhna v primerjavi s pomnilniškimi napravami, kot sta trdi disk ali trdi disk. Zato vsi programi uporabljajo RAM za shranjevanje podatkov v predpomnilniku.







Na žalost je RAM zelo drag in omejen. Brez dovolj prostega RAM -a računalnik ne bo deloval pravilno. Zagnani programi v računalniku se lahko ustavijo ali ustavijo. Morda ne boste mogli zagnati novih programov. V najslabšem primeru se bo celoten sistem obesil in postal neuporaben.



Preverjanje porabe RAM -a je ena najpomembnejših nalog v Linuxu. Številne težave Linuxa lahko diagnosticirate, če lahko spremljate porabo RAM -a v sistemu Linux.



Obstaja veliko orodij za preverjanje porabe pomnilnika v Linuxu. V tem članku vam bom pokazal nekaj najpogostejših načinov preverjanja porabe pomnilnika v Linuxu. Torej, začnimo.





Enote računalniškega pomnilnika:

V tem članku boste videli izraze kilobajti, megabajti, gigabajti, kibibajti, mebibajti, gibibajti itd. Ne bodite zmedeni. Razložil jih bom v tem razdelku.

Vse računalniške shrambe uporabljajo isto enoto. To je zelo pomembno razumeti.



Spodaj so navedene računalniške pomnilniške enote.

  • Bit: Najmanjša enota računalniškega pomnilnika je malo. Košček lahko vsebuje 0 ali 1. To je to.
  • Bajt: 8 bitov tvori bajt.
  • Kilobajti: 1.000 bajtov tvori kilobajt.
  • Megabajt: 1.000 kilobajtov tvori megabajt.
  • Gigabajt: 1.000 megabajtov tvori gigabajt.
  • Terabajt: 1.000 gigabajtov tvori terabajt.
  • Petabajt: 1.000 terabajtov tvori petabajt.
  • kibibajti: 1.024 bajtov tvori kibibajt.
  • Mebibajt: 1.024 kibibajtov tvori mebibajt.
  • Gibibajt: 1.024 mebibajtov tvori gibibajt.
  • Tebibajt: 1.024 gibibajtov tvori tebibyte.
  • Pebibajt: 1.024 tebibajtov tvori pebibajt.

V smislu bajtov so računalniške pomnilniške enote naslednje.

  • Kilobajti: 1.000 bajtov ali 103bajtov.
  • Megabajt: 1.000.000 bajtov ali 106bajtov.
  • Gigabajt: 1.000.000.000 bajtov ali 109bajtov.
  • Terabajt: 1.000.000.000.000 bajtov ali 1012bajtov.
  • Petabajt: 1.000.000.000.000.000 bajtov ali 10petnajstbajtov.
  • kibibajti: 1024 bajtov ali 210bajtov.
  • Mebibajt: 1.048.576 bajtov ali 2dvajsetbajtov.
  • Gibibajt: 1.073.741.824 bajtov ali 230bajtov.
  • Tebibajt: 1.099.511.627.776 bajtov ali 240bajtov.
  • Pebibajt: 1.125.899.906.842.624 ali 2petdesetbajtov.

Zdaj, ko poznate računalniške pomnilniške enote, bi morali zelo enostavno pretvoriti eno enoto v drugo.

Upoštevajte, da so kilobajt, megabajt, gigabajt, terabajt in petabajt moči 10 bajtov. Kibibajt, mebibajt, gibibajt, tebibajt in pebibajt sta po 2 bajta. Za nas ljudi je enostavno izračunati z močjo 10 (decimalni številski sistem), saj imamo 10 prstov. Toda za računalnike je lažje izračunati po 2 (binarni številski sistem). Tako računalniki uporabljajo moč 2 za prikaz količine pomnilnika ali pomnilnika.

Enote imajo stenografske zapise ali simbole. Med preverjanjem porabe pomnilnika v Linuxu jih boste videli zelo pogosto.

Stenografske oznake ali simboli so podani spodaj.

  • Bajti: B
  • Kilobajti: KB ali kB
  • Megabajt: MB
  • Gigabajt: GB
  • Terabajt: TUDI
  • Petabajt: PB
  • Bajti: B
  • kibibajti: KiB ali K.
  • Mebibajt: MiB ali M.
  • Gibibajt: GiB ali G
  • Tebibajt: TiB ali T.
  • Pebibajt: PiB ali P

Nekateri programi morda ne upoštevajo tega standarda in uporabljajo te stenografije ali simbole zamenljivo. Razlika med temi enotami (to je kilobajt v primerjavi s kibibajtom) ni tako velika. Naj vas to ne skrbi.

Pomnilnik proti zamenjavi v Linuxu:

V Linuxu se imenuje fizični pomnilnik spomin . Ko se fizični pomnilnik napolni, Linux inteligentno premakne manj redke podatke iz pomnilnika na določen del diska (trdi disk ali trdi disk). Ta del diska se imenuje zamenjava.

Če ni na voljo prostega fizičnega pomnilnika, se nekateri podatki, ki so manj dostopni, premaknejo v zamenjavo. S tem se sprosti fizični pomnilnik in s tem sistem reši pred zrušitvami.

Zamenjava diska je zelo počasna v primerjavi z RAM -om ali fizičnim pomnilnikom. Če sistem Linux veliko uporablja prostor za zamenjavo, lahko postane zelo počasen in se ne odziva. Torej sistem Linux ne bi smel uporabljati prostora za zamenjavo. Temu se želimo čim bolj izogniti. Ko sistem Linux začne zapolnjevati prostor za zamenjavo, je to znak, da sistem Linux potrebuje več fizičnega pomnilnika. Priporočljivo je, da sistemu dodate več RAM -a ali fizičnega pomnilnika.

Brezplačno preverjanje uporabe pomnilnika:

prost je ukaz, ki prikazuje podatke o skupni porabi pomnilnika v sistemu. prost je privzeto dobavljen s skoraj vso distribucijo Linuxa.

Uporabo pomnilnika lahko preverite z prost ukaz na naslednji način:

$prost

The prost ukaz brez možnosti ukazne vrstice prikaže podatke o pomnilniku in zamenjavi uporabe v enoti Kibibajtov.

Privzeto je prost ukaz prikazuje uporabo medpomnilnikov in predpomnilnika v datoteki buff / cache stolpec. Če želite videti medpomnilnike in predpomnilnik ločeno, zaženite brezplačni ukaz z -v možnost, kot sledi:

$prost -v

Kot lahko vidite, odbojniki in predpomnilnik podatki o uporabi pomnilnika so prikazani v različnih stolpcih.

Brezplačni ukaz prikazuje naslednje podatke:

skupaj: To je skupni razpoložljivi fizični pomnilnik in prostor za zamenjavo (v kibibajtih) vašega sistema Linux.

uporabljeno: To je količina fizičnega pomnilnika in prostora za zamenjavo, ki ga uporablja vaš sistem Linux. Upoštevajte, da je v mojem računalniku Ubuntu 0 KiB prostora za zamenjavo. Torej swap sploh ne uporablja. To je zelo dobro.

prost: To je količina fizičnega pomnilnika, ki je še vedno neuporabljen.

v skupni rabi: To je količina pomnilnika, ki si jo delijo različni procesi ali programi. Eden ali več programov za Linux lahko uporablja isto knjižnico ali klice funkcij. Namesto da bi večkrat dodelil pomnilnik za iste stvari, Linux inteligentno deli skupne stvari med te procese ali programe. To prihrani fizični spomin. The tmpfs datotečni sistemi (tj. /dev/shm , /teči , /run/lock , /run/user/ , /sys/fs/cgroup itd.) uporabljajo tudi nekaj fizičnega pomnilnika, ki je v skupni rabi z vsemi procesi in programi v Linuxu.

odbojniki: To je količina pomnilnika, ki jo uporabljajo vmesniki jedra. Medpomnilnik je blok pomnilnika, v katerem se začasno hranijo podatki med premikanjem podatkov z enega mesta na drugega.

predpomnilnik: To je količina fizičnega pomnilnika, ki se uporablja za podatke v predpomnilniku.

buff / cache: To je skupna količina fizičnega pomnilnika, uporabljenega za medpomnilnike in predpomnilnik.

na voljo: To je ocenjeni razpoložljivi fizični pomnilnik, ki ga je mogoče uporabiti za zagon novih aplikacij brez zamenjave.

Uporabite lahko tudi različne možnosti ukazne vrstice, če si želite ogledati pomnilnik in zamenjati podatke o uporabi v različnih enotah.

Če želite na primer videti pomnilnik in zamenjati podatke o uporabi v bajtih, zaženite datoteko prost ukaz z -b ali - Bajti možnost, kot sledi:

$prost -b

Če si želite ogledati pomnilnik in zamenjati podatke o uporabi v kibibatih (privzeto), zaženite datoteko prost ukaz z -za ali - Kibi možnost, kot sledi:

$prost -za

Če si želite ogledati pomnilnik in zamenjati podatke o uporabi v mebibajtih, zaženite datoteko prost ukaz z -m ali - Mebi možnost, kot sledi:

$prost -m

Če si želite ogledati pomnilnik in zamenjati podatke o uporabi v gibibajtih, zaženite datoteko prost ukaz z -g ali -kot možnost, kot sledi:

$prost -g

Na enak način lahko uporabite -tebi in - pebi možnosti ukazne vrstice za prikaz pomnilnika in zamenjavo podatkov o uporabi v tebibytes in pebibytes.

Če želite prikazati pomnilnik in zamenjati podatke o uporabi v kilobajtih, zaženite datoteko prost ukaz z -kilo možnost, kot sledi:

$prost --kilo

Če želite prikazati pomnilnik in zamenjati podatke o uporabi v megabajtih, zaženite datoteko prost ukaz z -mega možnost, kot sledi:

$prost --mega

Če želite prikazati pomnilnik in zamenjati podatke o uporabi v gigabajtih, zaženite datoteko prost ukaz z - giga možnost, kot sledi:

$prost --giga

Na enak način lahko uporabite –Tera in -zemljevid možnosti ukazne vrstice za prikaz pomnilnika in zamenjavo podatkov o uporabi v terabajtih oziroma petabajtih.

The prost ukaz ima tudi človeško berljivo možnost izhoda. Ta možnost bo natisnila zelo enostavno razumljiv (za ljudi) pomnilnik in zamenjala podatke o uporabi na zaslonu.

Za človeško berljiv izpis zaženite datoteko prost ukaz z -h ali -človek možnost, kot sledi:

$prost -h

Kot lahko vidite, je človeku berljiv format res lahko razumljiv.

The -h ali -človek možnost privzeto natisne pomnilnik in zamenja podatke o uporabi v bajtih, kibibatih, mebibajtih, gibibajtih, tebibajtih ali pebibajtih. Te enote uporabljajo osnovo-2 ali binarni numerični sistem (moči 2).

Če želite videti človeško berljiv izhod v sistemu base-10 ali decimalnem numeričnem sistemu (moči 10), zaženite brezplačni ukaz z -h ali -človek možnost ukazne vrstice, pa tudi -Da možnost ukazne vrstice, kot sledi:

$prost --človek --Da

The prost ukaz bo natisnil pomnilnik in zamenjal podatke o uporabi v bajtih, kilobajtih, megabajtih, gigabajtih, terabajtih ali petabajtih. Te enote uporabljajo osnovo-10 ali decimalni numerični sistem (moči 10).

Če želite prikazati skupni pomnilnik in zamenjati podatke o uporabi, zaženite brezplačni ukaz z možnostjo -t ali –total na naslednji način:

$prost -t

Kot lahko vidite, so na koncu izpisa prikazane informacije o skupni uporabi pomnilnika (fizični + zamenjava).

Lahko tudi zaženete prost ukaz v načinu spremljanja. V tem načinu je prost ukaz bo neprekinjeno tiskal pomnilnik in po določenem časovnem intervalu (v sekundah) zamenjal podatke o uporabi.

Lahko zaženete prost ukaz v načinu spremljanja z -s ali - sekunde možnost ukazne vrstice, kot sledi:

$prost -s <zamuda>

Ali,

$prost- sekunde<zamuda>

Tukaj, je število sekund, po katerem bodo na zaslonu natisnjeni novi podatki o uporabi pomnilnika in zamenjavi.

Če želite na primer natisniti pomnilnik in neprekinjeno zamenjati podatke o uporabi v intervalu 5 sekund, zaženite prosti ukaz na naslednji način:

$prost -s 5

Kot lahko vidite, se podatki o uporabi pomnilnika in zamenjave tiskajo vsakih 5 sekund.

Če želite ustaviti prost ukaz, pritisnite + C .

V načinu spremljanja je prost ukaz bo privzeto tiskal pomnilnik in zamenjal podatke o uporabi. Uporabite lahko -c ali - štetje možnost ukazne vrstice, da omejite število natisov novih podatkov o uporabi pomnilnika in zamenjavi na zaslonu.

Na primer, če želite natisniti pomnilnik in 5 -krat zamenjati podatke o uporabi v intervalu 10 sekund, zaženite datoteko prost ukaz na naslednji način:

$prost -s 10 -c 5

Kot lahko vidite, prost ukaz je natisnil pomnilnik in podatke o uporabi zamenjal le 5 -krat v intervalu 10 sekund.

To je skoraj vse, kar morate vedeti, da preverite pomnilnik in zamenjate uporabo z prost ukaz. Če pa želite izvedeti več, si oglejte stran strani prost ukaz na naslednji način:

$človek prost

Priročnik strani prost mora biti prikazan ukaz.

Preverjanje uporabe pomnilnika z branjem datoteke /proc /meminfo:

Podatke o uporabi pomnilnika v sistemu Linux lahko preverite tudi tako, da preberete /proc/meminfo mapa.

Lahko preberete /proc/meminfo datoteko z naslednjim ukazom:

$mačka /odstotkov/meminfo

Datoteka vsebuje veliko informacij o uporabi pomnilnika. Uporaba pomnilnika je v kibibajtni enoti.

Najpomembnejši podatki o uporabi pomnilnika v /proc/meminfo datoteka so:

MemTotal: To je skupni nameščeni pomnilnik ali fizični pomnilnik (RAM) sistema Linux.

MemFree: To je količina neporabljenega fizičnega pomnilnika (RAM).

Mem Na voljo: To je ocenjena količina fizičnega pomnilnika (RAM), ki je na voljo za nove programe.

Odbojniki: To je količina fizičnega pomnilnika, ki je rezerviran za medpomnilnike jedra. Medpomnilniki se uporabljajo za začasno shranjevanje podatkov med premikanjem z ene lokacije na drugo.

Predpomnjeno: To je količina fizičnega pomnilnika, ki se uporablja kot predpomnilnik.

Zamenjaj v predpomnilniku: To je količina pomnilnika, ki je bil premaknjen na nadomestni disk in premaknjen nazaj v fizični RAM. Toda podatki so še vedno predpomnjeni na zamenjalnem disku.

Aktivno: To je količina fizičnega pomnilnika, ki se uporablja in običajno ni mogoče obnoviti, razen če je to potrebno.

Neaktivno: To je količina fizičnega pomnilnika, ki ga uporabljajo in po potrebi zlahka popravijo drugi procesi ali programi.

Aktivno (ne): To je količina fizičnega pomnilnika, ki ga uporabljajo anonimni datotečni sistemi tmpfs in skupni pomnilnik.

Neaktivno (ne): To je količina fizičnega pomnilnika, ki ga uporabljajo anonimni datotečni sistemi tmfs in skupni pomnilnik, ki ga je mogoče obnoviti.

Aktivno (datoteka): To je količina predpomnilnika, ki se aktivno uporablja.

Neaktivno (datoteka): To je količina predpomnilnika, ki je na novo naložen ali ga je mogoče obnoviti.

Neizbrisno: To je količina pomnilnika, ki je ni mogoče obnoviti, saj jo zaklenejo uporabniški programi.

Zaklenjeno: To je skupna količina pomnilnika, ki je ni mogoče obnoviti, saj jo zaklenejo uporabniški programi.

SwapTotal: To je skupna velikost nadomestnega diska.

Brez zamenjave: To je količina prostega prostora za zamenjavo.

Umazano: Skupna količina pomnilnika, ki čaka na zapis na disk.

Povratek: Skupna količina pomnilnika, ki se zapiše nazaj na disk.

AnonPages: Skupna količina pomnilnika, ki jo uporabljajo strani in so preslikane v tabele strani uporabniškega prostora.

Preslikano: Količina pomnilnika, ki se uporablja za datoteke, ki jih je jedro Linuxa oblikovalo, na primer knjižnice, ki jih uporabljajo različni programi.

Primer: To je količina pomnilnika, ki jo delijo in uporabljajo datotečni sistemi tmpfs.

KRPrijava: Količina pomnilnika, ki jo zahteva jedro in jo je mogoče po potrebi obnoviti.

Plošča: To je količina pomnilnika, ki ga jedro uporablja za predpomnjenje podatkovnih struktur za uporabo jedra.

SR, ki jih je mogoče zahtevati: To je količina pomnilnika iz plošče, ki jo je mogoče obnoviti.

SUnreclaim: To je količina pomnilnika iz plošče, ki je ni mogoče obnoviti, tudi če je to potrebno.

KernelStack: To je količina pomnilnika, ki se uporablja za dodelitev sklada jedra.

Tabele strani: To je količina pomnilnika, ki je namenjen tabelam strani. Tabela strani je podatkovna struktura, ki jo računalnik uporablja za preslikavo med navideznim in fizičnim pomnilnikom.

Odskok: To je količina pomnilnika, ki se uporablja za medpomnilnik blokovskih naprav (tj. Pomnilniških naprav, kot sta trdi disk ali SSD).

Povratni zapisTmp: Količina pomnilnika, ki se uporablja za začasne vmesne pomnilnike FUSE.

V. Obstaja veliko drugih informacij o uporabi pomnilnika /proc/meminfo mapa. Če vas zanima, si lahko ogledate, kaj so na strani strani odstotkov .

Če želite odpreti stran uporabnika odstotkov , zaženite naslednji ukaz:

$človek 5odstotkov

Odpreti je treba stran proc.

Vtipkaj /proc/meminfo in pritisnite . Usmeril bi vas v razdelek /proc /meminfo, kot vidite na spodnjem posnetku zaslona. Opise vsakega polja najdete v /proc/meminfo datoteko tukaj.

Preverjanje uporabe pomnilnika z vrhom:

The vrh je program, ki prikazuje sprotne procese in njihovo porabo virov v realnem času. The vrh je vnaprej nameščen v večini distribucij Linuxa.

Lahko tečete vrh z naslednjim ukazom:

$vrh

The vrh program bi se moral zagnati. Na zgornjem delu datoteke vrh program, kot je označeno na spodnjem posnetku zaslona, ​​bi morali videti zbirko pomnilnika in zamenjave v enoti mebibajtov (privzeto).

The vrh ukaz bo prikazal naslednje podatke o fizičnem pomnilniku:

skupaj: Skupni razpoložljivi fizični pomnilnik sistema.

prost: Količina fizičnega pomnilnika je še neuporabljena.

uporabljeno: Količina fizičnega pomnilnika, ki ga uporablja sistem.

buff / cache: Količina fizičnega pomnilnika, ki se uporablja kot predpomnilnik in medpomnilnik.

izkoristi Mem: Količina fizičnega pomnilnika, ki je na voljo za nove programe.

The vrh ukaz bo pokazal naslednje informacije o zamenjavi:

skupaj: Skupni razpoložljivi swap pomnilnik sistema.

prost: Količina prostega pomnilnika sistema za zamenjavo.

uporabljeno: Količina nadomestnega pomnilnika, ki jo uporablja sistem.

Lahko pritisnete m preklapljanje med različnimi načini povzemanja pomnilnika.

Na primer s pritiskom m enkrat preklopi na naslednji način. V tem načinu je vrh prikazuje fizični pomnilnik in podatke o uporabi zamenjave kot odstotkov_pominov_uporabljenih/skupnih_pominov_in_mebibajtov .

Pritisk m spet spremeni slog vrstic napredovanja. Podatki bodo enaki kot prej.

The vrh ukaz prikazuje tudi podatke o porabi pomnilnika za vsak proces, ki se izvaja v računalniku v realnem času. Zgornji ukaz privzeto prikazuje podatke o uporabi pomnilnika procesov v enoti kibibajtov.

Privzeto je vrh ukaz prikazuje naslednje podatke o uporabi pomnilnika:

SPOŠTOVANO: To je velikost navideznega pomnilnika postopka. Navidezni pomnilnik je skupni fizični pomnilnik in pomnilniški pomnilnik, ki ga uporablja proces.

GOVEDINA: To je velikost stalnega pomnilnika procesa. Rezidenčni pomnilnik je količina fizičnega pomnilnika, ki ga proces uporablja.

SHR: To je velikost pomnilnika v skupni rabi procesa. To je količina pomnilnika, ki ga uporablja proces, ki je deljena tudi z nekaterimi drugimi procesi.

%MEM: Odstotek fizičnega pomnilnika, ki ga proces uporablja.

Lahko konfigurirate vrh ukaz za prikaz več informacij o uporabi pomnilnika, na primer,

KODA: To je velikost kode procesa. To je količina fizičnega pomnilnika, namenjenega izvršljivi kodi procesa. Znan je tudi kot Text Resident Set ali TRS.

PODATKI: To je velikost podatkov in skladov procesa. To je količina pomnilnika, ki jo rezervira proces. Morda še ni preslikan v fizični spomin. Vendar se bo vedno prikazal v navideznem pomnilniku (VIRT) procesa. Znan je tudi kot Data Resident Set ali DRS.

RSan: To je velikost stalnega anonimnega pomnilnika postopka. Je podskupina fizičnega pomnilnika (RES), ki predstavlja zasebne strani, ki še niso preslikane v datoteko.

RSfd: To je Resident File-Backed Memory Memory velikosti procesa. Je podmnožica fizičnega pomnilnika (RES), ki predstavlja strani v skupni rabi in podpira podobe programov, knjižnice v skupni rabi, preslikave datotek itd.

RSsh: To je Resident Shared Memory velikost procesa. Je podskupina fizičnega pomnilnika (RES), ki predstavlja anonimne strani v skupni rabi.

RSlk: To je Resident Locked Memory velikost procesa. To je količina fizičnega pomnilnika (RES), ki je ni mogoče zamenjati. Ostati mora v fizičnem spominu.

ZAMENJANJE: To je zamenjana velikost postopka. To je količina informacij o fizičnem pomnilniku (RES), ki se iz fizičnega pomnilnika premakne v prostor za zamenjavo diska.

UPORABLJENO: To je skupna količina pomnilnika (fizični + zamenjava), ki ga proces uporablja.

UPORABLJENO = RES + SWAP.

Upoštevajte, da je fizični pomnilnik (RES), ki ga uporablja proces, seštevanje velikosti stalnega anonimnega pomnilnika (RSan), stalne velikosti pomnilnika, podprte z datoteko (RSfd), in velikosti stalnega pomnilnika v skupni rabi (RSsh).

RES = RSan + RSfd + RSsh

Če želite omogočiti te stolpce s podatki o pomnilniku, zaženite vrh in pritisnite f .

S puščičnimi tipkami se pomaknite do označenih stolpcev in pritisnite da ga preklopite. Omogočeni stolpci bodo imeli * oznaka na levi.

Ko končate, pritisnite kaj za vrnitev na zgornje okno za spremljanje procesa. Kot lahko vidite, so prikazani stolpci z informacijami o uporabi pomnilnika SWAP, CODE, DATA, USED, RSan, RSfd, RSlk, RSsh.

Privzeto je vrh ukaz prikazuje podatke o uporabi pomnilnika v enoti kibibajta. Če želite videti podatke o uporabi pomnilnika v drugi enoti, kot so mebibyte, gibibyte, tebibyte ali pebibyte, lahko to storite tudi vi.

Za preklapljanje med različnimi pomnilniškimi enotami (kibibajt, mebibajt, gibibajt, tebibyte ali pebibajt) zaženite vrh in pritisnite In .

vrh podatki o uporabi pomnilnika so prikazani v mebibajtih.

vrh podatki o uporabi pomnilnika so prikazani v gibibajtih.

vrh podatki o uporabi pomnilnika so prikazani v tebibajtih.

vrh podatki o uporabi pomnilnika so prikazani v pebibajtih.

V operacijskem sistemu Linux se izvaja veliko procesov. Zgornji ukaz ne more prikazati vseh naenkrat. Lahko pritisnete in držite tipko in puščične tipke za krmarjenje po seznamu procesov vrh prikaže ukaz.

Izhod zgornjega ukaza lahko razvrstite tudi po določenem stolpcu.

Recimo, želite videti, kateri postopek porabi največ prostora za zamenjavo. Če želite to narediti, zaženite vrh in pritisnite f .

Nato s puščičnimi tipkami na tipkovnici izberite stolpec SWAP in pritisnite s .

Polje razvrščanja vrh ukaz je treba spremeniti v SWAP. Pritisnite kaj za vrnitev v okno za spremljanje procesa.

Kot lahko vidite, so najprej navedeni procesi, ki uporabljajo največ prostora za zamenjavo.

Ko konfigurirate datoteko vrh ukaz, lahko pritisnete + v shranite konfiguracijo v toprc konfiguracijsko datoteko. Na ta način vam ni treba znova konfigurirati vrh vsakič, ko ga uporabljate.

Preverjanje uporabe pomnilnika z uporabo htop:

htop je pregledovalnik procesov v realnem času za Linux, tako kot vrh . Toda htop ima dodatne funkcije vrh ne. Najbolj očitna nova lastnost htop je označevanje sintakse in boljši uporabniški vmesnik. Lahko rečeš htop je razširjen vrh .

Kot vrh , htop ni vnaprej nameščen na večini distribucije Linuxa. Na voljo pa je v uradnem skladišču paketov skoraj vseh distribucij Linuxa. Tako ga lahko preprosto namestite na želeno distribucijo Linuxa.

Za namestitev htop v Ubuntu/Debian zaženite naslednje ukaze:

$sudoapt posodobitev
$sudoaptnamestite htop -in

OPOMBA: Na CentOS/RHEL, htop je na voljo v skladišču EPEL. Preden namestite htop , morate imeti skladišče EPEL ( epel-sprostitev paket), nameščen v sistemu CentOS/RHEL.

Za namestitev htop na CentOS 7/RHEL 7 zaženite naslednje ukaze:

$sudo yum installepel-sprostitev-in
$sudo yum install htop -in

Za namestitev htop na CentOS 8/RHEL 8 zaženite naslednje ukaze:

$sudodnfnamestiteepel-sprostitev-in
$sudodnfnamestite htop -in

Enkrat htop je nameščen, ga lahko zaženete z naslednjim ukazom:

$htop

Htop bi se moralo začeti.

Na vrh, htop prikaže fizični pomnilnik in povzetek uporabe zamenjave. Prav tako prikazuje pomnilnik in uporabo zamenjave v lepem stolpčnem grafikonu.

Podatki o uporabi pomnilnika in zamenjave so v obliki rabljeno / skupaj . htop se bo samodejno odločil, da bo enota (kibibajt, mebibajt, gibibajt, tebibajt ali pebibajt) najbolje opisala pomnilnik in zamenjala podatke o uporabi.

Vrstice uporabe pomnilnika in zamenjave so predstavljene v različnih barvah. Barve imajo pomen.

Če želite vedeti, kaj predstavlja vsaka barva, zaženite htop in pritisnite h pojdite na okno za pomoč htop .

Kot lahko vidite, zelena barva predstavlja fizični pomnilnik, ki ga uporabljajo različni programi/procesi, modra barva predstavlja fizični pomnilnik, ki se uporablja kot odbojnik, rumena barva predstavlja fizični pomnilnik, ki se uporablja kot predpomnilnik, rdeča pa uporabljeni zamenjati prostor.

Če se vrnemo k glavnemu htop okno, pritisnite kaj .

Kot vrh , htop program prikazuje tudi podatke o uporabi pomnilnika za vse procese, ki se izvajajo v sistemu Linux. htop se bo samodejno odločil, da bo enota (kibibajt, mebibajt, gibibajt, tebibajt ali pebibajt) najbolje opisala uporabo pomnilnika vsakega od procesov.

Privzeto je htop ukaz prikazuje naslednje podatke o uporabi pomnilnika:

VIRT/M_SIZE: To je velikost navideznega pomnilnika procesa. Navidezni pomnilnik je skupni fizični pomnilnik in pomnilniški pomnilnik, ki ga uporablja proces.

RES/M_RESIDENT: To je rezidenčna nastavljena velikost procesa. Rezidenčni pomnilnik je količina fizičnega pomnilnika, ki ga proces uporablja. Enako je besedilo + podatki + sklad ali M_TRS + M_DRS.

SHR/M_SHARE: To je velikost pomnilnika v skupni rabi procesa. To je količina pomnilnika, ki ga proces uporablja, in ga delijo tudi nekateri drugi procesi.

%MEM/PERCENT_MEM: Odstotek fizičnega pomnilnika, ki ga proces uporablja.

Lahko konfigurirate htop ukaz za prikaz več informacij o uporabi pomnilnika, na primer,

KODA / M_TRS: To je velikost kode procesa. To je količina fizičnega pomnilnika, namenjenega izvršljivi kodi procesa.

DATA/M_DRS: To je velikost podatkov in skladov procesa. To je količina pomnilnika, ki jo rezervira proces. Morda še ni preslikan v fizični spomin. Vendar se bo vedno prikazal v navideznem pomnilniku (VIRT/M_SIZE) procesa.

LIB/M_LRS: To je velikost knjižnice postopka. To je količina fizičnega pomnilnika, ki ga uporablja knjižnična koda (ki jo uporablja proces/program).

DIRTY/M_DT: To je velikost umazanih strani postopka. Razdelek/stran, ki je spremenjen v medpomnilniku, se imenuje umazana stran.

Če želite omogočiti te stolpce s podatki o pomnilniku, zaženite htop in pritisnite F2 .

Nato se pomaknite do Stolpci Iz Nastaviti v razdelku izberite stolpec, pred katerim želite dodati nove stolpce Aktivni stolpci v razdelku izberite stolpec, ki ga želite dodati Razpoložljivi stolpci razdelku in pritisnite da dodate stolpec.

Stolpec je treba dodati v Aktivni stolpci razdelek.

Na enak način dodajte druge pomnilniške stolpce (stolpce, ki se začnejo z M_ ). Ko končate, pritisnite da se vrnem na glavno htop okno.

Kot lahko vidite, so dodani dodatni stolpci z informacijami o uporabi pomnilnika.

Procese si lahko ogledate v pogled na drevo . V tem pogledu so procesi organizirani v odnosu starš-otrok.

Za preklop na drevesni prikaz pritisnite t . Kot lahko vidite, so procesi zelo lepo organizirani glede na njihov odnos starš-otrok. V tem načinu lahko vidite, katere podrejene procese sproži nadrejeni proces, in njihovo uporabo pomnilnika.

Za izhod iz drevesnega pogleda pritisnite t ponovno. Vrniti se morate na privzeti pogled.

Procese lahko razvrstite tudi po različnih stolpcih uporabe pomnilnika. Procesi so privzeto razvrščeni glede na porabo procesorja (CPU%).

Če želite razvrstiti procese po določenem stolpcu, pritisnite F6 .

Nato iz stolpca izberite stolpec, po katerem želite razvrstiti procese Razvrsti po razdelek in pritisnite .

Postopke bom razvrstil po M_RESIDENT / GOVEDINA stolpec za predstavitev.

Kot lahko vidite, so procesi lepo razvrščeni glede na porabo stalnega pomnilnika.

The htop program našteva veliko procesov. Vseh teh procesov ni mogoče prikazati v omejeni velikosti okna/zaslona. Lahko pa pritisnete tipko in puščične tipke za preprosto krmarjenje po seznamu procesov.

Preverjanje uporabe pomnilnika s smemom:

Programi za preverjanje porabe pomnilnika, kot so vrh , htop, itd. prikazuje celoten skupni pomnilnik za vsak proces. To pomeni, da čeprav si nekateri procesi delijo pomnilnik, šteje ta porabljeni pomnilnik za vsakega od procesov, ki si delijo ta pomnilnik. Tako dobite napačne podatke o uporabi pomnilnika.

V matematiki je videti takole

poraba fizičnega pomnilnika procesa = poraba pomnilnika v skupni rabi + uporaba pomnilnika v skupni rabi

smem se poskuša temu izogniti in pravilno poročati o uporabi pomnilnika. Skupni pomnilnik deli s številom procesov, ki uporabljajo ta skupni pomnilnik, in vsakemu procesu, ki si deli ta pomnilnik, doda rezultat. Tako se poraba pomnilnika lepo poveča. Skupna poraba pomnilnika bo seštevek porabe pomnilnika vseh procesov. To se ne bo zgodilo v htop ali vrh .

V matematiki je videti takole

poraba fizičnega pomnilnika procesa =(skupna uporaba pomnilnika/število procesov, ki si delijo pomnilnik)
+ nerazdeljen spomin

smem ni privzeto vnaprej nameščen v večini distribucij Linuxa. Na voljo pa je v uradnem skladišču večine distribucije Linuxa.

Na Ubuntu/Debian lahko namestite smem z naslednjimi ukazi:

$sudoapt posodobitev
$sudoaptnamestitesmem-in

Na CentOS/RHEL 7, smem je na voljo v skladišču paketov EPEL. Zato morate za namestitev dodati skladišče EPEL na CentOS/RHEL 7 smem .

Na CentOS/RHEL 7 lahko namestite smem z naslednjimi ukazi:

$sudo yum installepel-sprostitev-in
$sudo yum installsmem-in

Na žalost smem ni na voljo v uradnem skladišču paketov ali skladišču EPEL CentOS/RHEL 8. Morali bi biti sposobni sestaviti smem iz vira ali prenesite smem binarni iz uradna spletna stran smema .

Če želite sestaviti smem iz vira, nato lahko prenesete izvorno kodo smem iz uradna stran vira smem .

Če želite prenesti smem vnaprej sestavljeno binarno datoteko, nato pa jo lahko prenesete iz smem uradna stran za prenos .

smem lahko prikaže porabo pomnilnika vsakega uporabnika.

Če želite vedeti, koliko pomnilnika uporabnik Linuxa porabi, zaženite smem kot sledi:

$sudosmem-ti

Tukaj, -za možnost se uporablja, da enoti prikaže to smem uporablja za prikaz podatkov o uporabi pomnilnika.

smem uporablja naslednje enote:

K - Kibibajt

M - Mebibajt

G - Gibibajt

T - Tebibajt

P - Pebibajt

The -za možnost se uporablja za prilagajanje izhodnih stolpcev glede na velikost okna terminala. Na ta način lahko popravite izhod smem zelo enostavno, če se obreže katero koli pomembno besedilo.

The -u možnost se uporablja za prikaz informacij o uporabi uporabniškega pomnilnika.

Kot lahko vidite, smem poročali o podatkih o uporabi pomnilnika in zamenjave vsakega uporabnika mojega računalnika Ubuntu.

smem prikazuje naslednje podatke o uporabi pomnilnika uporabnika:

Uporabnik: Uporabniško ime za Linux, za katerega se poroča o uporabi pomnilnika.

Štetje: Število procesov, ki jih uporabnik trenutno izvaja.

Zamenjava: Količina nadomestnega prostora na disku, ki jo uporabnik uporablja.

USS: To je skupna velikost edinstvenega niza uporabniških procesov. To je skupna količina fizičnega pomnilnika, ki ga uporabljajo procesi v lasti uporabnika, ki ni deljena z drugimi procesi.

PSS: To je skupna velikost sorazmernega nabora uporabniških procesov. To je skupna količina fizičnega pomnilnika in enakomerno razdeljen skupni fizični pomnilnik, ki ga uporabljajo procesi v lasti uporabnika.

RSS: To je skupna velikost nabora rezidentov uporabniških procesov. To je skupna količina fizičnega pomnilnika in skupnega fizičnega pomnilnika, ki ga uporabljajo procesi v lasti uporabnika. Podatki o uporabi pomnilnika RSS za smem je enako podatkom o uporabi pomnilnika RSS v vrh ali htop .

Privzeto, smem prikazuje podatke o porabi pomnilnika v naraščajočem vrstnem redu (od najnižjega do najvišjega). Če želite podatke o uporabi pomnilnika videti v padajočem vrstnem redu (od najvišjega do najnižjega), uporabite datoteko -r možnost smem kot sledi:

$sudosmem-kaur

Kot lahko vidite, smem prikazali iste podatke o uporabi pomnilnika uporabnika. Toda po padajočem vrstnem redu.

Če želite videti podatke o skupni porabi pomnilnika uporabnika, zaženite smem z -t možnost, kot sledi:

$sudosmemskozi

Kot lahko vidite, smem doda podatke vseh vrstic za vsak stolpec in prikaže podatke o skupni uporabi pomnilnika vsakega od stolpcev na koncu.

Privzeto, smem prikazuje podatke o uporabi pomnilnika v enoti kibibajtov. Če uporabljate -za možnost, smem bo samodejno izbral najboljšo enoto za prikaz podatkov o uporabi pomnilnika.

Če želite prikazati podatke o uporabi pomnilnika kot odstotek celotnega razpoložljivega fizičnega pomnilnika ali zamenjati prostor na disku, lahko uporabite -str možnost namesto -za možnost, kot sledi:

$sudosmem-pau

Kot lahko vidite, smem prikaže podatke o porabi uporabniškega pomnilnika v odstotkih celotnega fizičnega pomnilnika in zamenjajo prostor na disku.

Če želite videti informacije o uporabi sistemskega pomnilnika ali povzetek uporabe sistemskega pomnilnika, zaženite smem z -v možnost, kot sledi:

$sudosmem-ostro

Kot lahko vidite, smem prikaže podatke o uporabi pomnilnika v celotnem sistemu.

smem prikaže naslednje informacije o uporabi pomnilnika v celotnem sistemu:

Območje: Del sistema, za katerega se uporablja pomnilnik.

Uporabljeno: Količina fizičnega pomnilnika, uporabljenega za to področje.

Predpomnilnik: Količina fizičnega pomnilnika, ki se uporablja kot predpomnilnik za to področje.

Brez predpomnilnika: Količina fizičnega pomnilnika, uporabljenega za to področje, ki ni predpomnjena.

Na enak način kot prej lahko uporabite -t možnost, da si ogledate tudi podatke o skupni uporabi pomnilnika v celotnem sistemu.

$sudosmem-previdno

Ogledate si lahko tudi porabo pomnilnika procesov, ki se izvajajo v sistemu Linux smem .

Če želite to narediti, zaženite smem kot sledi:

$sudosmem-kar

Kot lahko vidite, smem prikazuje podatke o uporabi pomnilnika za vse procese, ki se izvajajo na mojem računalniku Ubuntu.

smem prikaže naslednje procesne informacije o uporabi pomnilnika:

PID: ID procesa procesa.

Uporabnik: Uporabniško ime uporabnika, ki je začel postopek ali je lastnik procesa.

Ukaz: Ukaz, ki se uporablja za zagon procesa.

Zamenjava: Količina prostora na disku, ki ga proces uporablja.

USS: To je edinstvena velikost procesa. To je količina fizičnega pomnilnika, ki ga proces uporablja, ki ni v skupni rabi z drugimi procesi.

PSS: To je sorazmerna velikost procesa. To je količina fizičnega pomnilnika in enakomerno razdeljen skupni fizični pomnilnik, ki ga proces uporablja.

RSS: To je velikost stalnega nabora procesa. To je količina fizičnega pomnilnika in skupnega fizičnega pomnilnika, ki ga proces uporablja.

Ogledate si lahko tudi podatke o uporabi pomnilnika za vsako datoteko knjižnice, s katero procesi uporabljajo smem .

Če si želite ogledati podatke o uporabi pomnilnika za vsako datoteko knjižnice, naloženo v fizični pomnilnik računalnika, zaženite smem z -m možnost, kot sledi:

$sudosmem-kamr

smem bo prikazal podatke o uporabi pomnilnika za vsako datoteko knjižnice, naloženo v fizični pomnilnik vašega računalnika, kot lahko vidite na spodnjem posnetku zaslona.

smem prikazuje naslednje knjižnične podatke o uporabi pomnilnika:

Zemljevid: Knjižnična datoteka, ki je preslikana v fizični pomnilnik vašega računalnika.

PID: Skupno število procesov, ki uporabljajo to datoteko knjižnice.

PSS: To je skupna velikost sorazmernega nabora procesov, ki uporabljajo datoteko knjižnice. To je količina fizičnega pomnilnika in enakomerno razdeljen skupni fizični pomnilnik, ki ga uporabljajo procesi (z uporabo te knjižnične datoteke).

AVGPSS: To je povprečna velikost sorazmernega niza procesov, ki uporabljajo to datoteko knjižnice. To je povprečni fizični pomnilnik, ki si ga deli vsak proces (ki uporablja to datoteko knjižnice). Lahko rečete tudi, AVGPSS = PSS/PID (približno).

Preverjanje uporabe pomnilnika z vmstat:

vmstat je še en program za preverjanje porabe pomnilnika v Linuxu. Prikazuje skoraj enake podatke kot v /proc/meminfo mapa.

Če si želite ogledati podatke o uporabi pomnilnika, zaženite vmstat kot sledi:

$vmstat -s

vmstat mora prikazati podatke o uporabi pomnilnika v celotnem sistemu v enoti kibibajtov, kot je prikazano na spodnjem posnetku zaslona.

vmstat prikazuje naslednje podatke o uporabi pomnilnika:

skupni pomnilnik: Skupni razpoložljivi fizični pomnilnik vašega računalnika.

porabljen spomin: Skupna poraba fizičnega pomnilnika vašega računalnika.

prosti spomin: Skupni prosti fizični pomnilnik vašega računalnika.

skupna zamenjava: Skupni razpoložljivi prostor za zamenjavo diska.

rabljena zamenjava: Količina uporabljenega prostora na disku.

brezplačna menjava: Količina prostora za zamenjavo diska je še prosta.

zamenjaj predpomnilnik: Količina prostora za zamenjavo diska, ki se uporablja kot predpomnilnik.

vmesni pomnilnik: Količina fizičnega pomnilnika, ki se uporablja kot vmesni pomnilnik za začasno shranjevanje podatkov med premikanjem z enega mesta na drugega.

aktivni pomnilnik: Količina fizičnega pomnilnika, ki se uporablja, vendar je ni mogoče obnoviti, če to zahtevajo drugi programi.

neaktiven spomin: Količina fizičnega pomnilnika, ki ga drugi programi po potrebi zlahka povrnejo.

Preverjanje uporabe pomnilnika s sistemskim monitorjem GNOME:

GNOME System Monitor je grafična programska oprema za spremljanje porabe pomnilnika, izvajanih procesov in uporabe diska. Vnaprej je nameščen v namiznih okoljih GNOME 3, Ubuntu MATE, Cinnamon in Budgie.

Podatke o uporabi pomnilnika in zamenjavo si lahko ogledate v Viri zavihek GNOME System Monitor kot lahko vidite na spodnjem posnetku zaslona.

Prikazuje lep spomin v realnem času in zamenja grafikon uporabe za zadnjih 60 sekund. Iz tega grafa lahko vidite, koliko pomnilnika in uporabe zamenjave se je razlikovalo od nadure.

Prikazal bo skupni razpoložljivi fizični pomnilnik, količino uporabljenega fizičnega pomnilnika, odstotek uporabljenega fizičnega pomnilnika in količino fizičnega pomnilnika, ki se uporablja kot predpomnilnik. Prikazal vam bo tudi lep grafikon o uporabi fizičnega pomnilnika.

Prikazal bo tudi skupni razpoložljivi prostor na disku za zamenjavo, količino prostora za zamenjavo, odstotek uporabljenega prostora za zamenjavo in lep grafikon uporabe zamenjave.

V Procesi zavihek GNOME System Monitor , si lahko ogledate podatke o uporabi pomnilnika za vse procese, ki se izvajajo v vašem računalniku.

Če želite videti več informacij o uporabi pomnilnika za procese, z desno miškino tipko kliknite (RMB) v naslovni vrstici in preverite Virtualni spomin , Stalni spomin , in Skupni pomnilnik kot je prikazano na spodnjem posnetku zaslona.

Podatki o uporabi procesov navideznega (VIRT), stalnega (RES) in skupnega (RSS) pomnilnika morajo biti prikazani, kot lahko vidite na spodnjem posnetku zaslona.

Ti podatki o uporabi pomnilnika so enaki kot v vrh ali htop .

GNOME System Monitor privzeto prikazuje samo procese, ki so v lasti vašega uporabnika za prijavo. Če želite videti seznam vseh procesov, ki so v lasti vsakega uporabnika vašega sistema, kliknite meni hamburgerja (

) in izberite Vsi procesi kot je prikazano na spodnjem posnetku zaslona.

Če želite videti procese v drevesnem pogledu (odnos starš-otrok), kliknite meni hamburgerja (

) in preverite Pokaži odvisnosti kot je prikazano na spodnjem posnetku zaslona.

V drevesnem pogledu lahko vidite, kateri proces (nadrejeni) se je začel kateri proces (podrejen) v vrstnem redu, v katerem so bili zagnani. Prav tako lahko vidite, koliko pomnilnika porabi vsak od nadrejenih procesov in koliko pomnilnika porabi vsak od otrok.

Preverjanje uporabe pomnilnika s programom KSysGuard:

KSysGuard je grafična programska oprema za spremljanje porabe pomnilnika in tekočih procesov. Vnaprej je nameščen v namiznem okolju KDE Plasma.

Podatke o uporabi pomnilnika in zamenjavo si lahko ogledate v Nalaganje sistema zavihek KSysGuard kot lahko vidite na spodnjem posnetku zaslona.

V Tabela procesov zavihek KSysGuard , si lahko ogledate podatke o uporabi pomnilnika za vse procese, ki se izvajajo v vašem računalniku.

KSysGuard privzeto prikazuje podatke o fizičnem pomnilniku in uporabi pomnilnika v skupni rabi za vsakega od izvajanih procesov.

Z desno miškino tipko kliknite (RMB) v naslovni vrstici in kliknite na Pokaži stolpec »Navidezna velikost« in Pokaži stolpec »Skupni pomnilnik« če želite videti več informacij o uporabi pomnilnika.

Kot lahko vidite, KSysGuard zdaj prikazuje tudi velikost navideznega pomnilnika (VIRT) in skupno porabo fizičnega pomnilnika za vsakega od tekočih procesov.

KSysGuard privzeto prikazuje vse tekoče procese, ki so v lasti vsakega uporabnika v Tabela procesov zavihek. V spustnem meniju v zgornjem desnem kotu KSysGuarda lahko spremenite, katere procese želite videti, kot je prikazano na spodnjem posnetku zaslona.

Za drevesni pogled izberite Vsi procesi, drevo iz spustnega menija.

V drevesnem pogledu lahko vidite, kateri proces (nadrejeni) se je začel kateri proces (podrejen) v vrstnem redu, v katerem so bili zagnani. Prav tako lahko vidite, koliko pomnilnika porabi vsak od nadrejenih procesov in koliko pomnilnika porabi vsak od otrok.

Če želite videti samo procese na ravni sistema, izberite Sistemski procesi iz spustnega menija. Ti procesi so običajno v lasti koren uporabnik.

Če želite videti procese na ravni uporabnika, izberite Uporabniški procesi iz spustnega menija. Ti procesi so običajno v lasti navadnih uporabnikov (nekorenski).

Če želite videti samo procese, ki so v lasti uporabnika za prijavo, izberite Lastni procesi .

Če želite videti samo programe, ki se izvajajo v vašem računalniku, ne procesov, izberite Samo programi iz spustnega menija. Na seznamu bodo samo aplikacijski programi, ki se izvajajo v vašem računalniku.

Zaključek:

V tem članku sem obravnaval najpogostejše načine preverjanja porabe pomnilnika v Linuxu. Pokazal sem, kako preveriti porabo pomnilnika sistemov Linux iz ukazne vrstice kot tudi iz grafičnih namiznih okolij. Pojasnil sem, kako uporabljati programe, kot so prost , vrh , htop , smem , vmstat , GNOME System Monitor , in KSysGuard za preverjanje uporabe pomnilnika Linux. Govoril sem tudi o izhodni obliki teh ukazov in programov. Ta članek vam bo pomagal začeti s preverjanjem porabe pomnilnika Linux in vam dal poglobljeno znanje o orodjih za preverjanje uporabe pomnilnika Linux.