Vmstat: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Dlohmus (talk | contribs)
Dlohmus (talk | contribs)
 
(135 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Sissejuhatus =
= Sissejuhatus =


Antud leheküljel on kirjeldatud UNIX süsteemides toimiva käsurea tööriista '''vmstat'''. Kirjutise eesmärgiks on tutvustada, kuidas see käsk toimib ning mille jaoks seda kasutatakse.
Antud leheküljel on kirjeldatud UNIX süsteemides toimivat käsurea tööriista '''vmstat'''. Kirjutise eesmärgiks on tutvustada, kuidas see käsk toimib ning mille jaoks seda kasutatakse.


Virtual memory statistics ehk '''vmstat''' on käsurea tööriist, mida kasutatakse arvuti mälu, protsessori, saalimise ja katkestuste jälgimiseks.  
Virtual memory statistics ehk '''vmstat''' on käsurea tööriist, mida saab kasutada oma arvuti mälu, protsessori, saalimise ja katkestuste jälgimiseks. '''Vmstat’i''' tööriist on saadaval enamikes UNIX[http://www.unix.org/what_is_unix.html] ja Unixi-taolistes operatsioonisüsteemides (näiteks Linuxis ja Solarises), kuid erinevates operatsioonisüsteemides võivad käsusüntaks ja väljastatava informatsiooni esitus olla veidi erinevad[http://www.dba-oracle.com/t_tuning_vmstat.htm]. '''Vmstat''' ei ole Linuxis jooksev protsess ning seda tööriista on võimalik kasutada ka tavakasutaja õigustes.[http://linuxcommand.org/man_pages/vmstat8.html]
 
'''Vmstat’i''' tööriist on saadaval enamikes UNIXi ja Unixi-taolistes operatsioonisüsteemides (näiteks Linuxis ja Solarises), kuid erinevates operatsioonisüsteemides võivad käsusüntaks ja väljastatava informatsiooni esitus olla veidi erinevad. '''Vmstat''' ei ole Linuxis jooksev protsess ning seda tööriista on võimalik kasutada ka tavakasutaja õigustes.


= Käsusüntaks =
= Käsusüntaks =
Line 15: Line 13:
       vmstat [-p disk partition]
       vmstat [-p disk partition]
       vmstat [-V]
       vmstat [-V]
[http://linuxcommand.org/man_pages/vmstat8.html]


= Lisavalikud =
= Lisavalikud =
Lisavalikuid ja käsusüntaksit on võimalik vaadata manuaali lehelt, vmstat käsku tutvustava manuaali lehe saab avada terminaliaknas käsu ''man vmstat'' abil.


'''vmstat -a''' -näitab aktiivset / mitte aktiivset mälu.  
'''vmstat -a''' -näitab aktiivset / mitte aktiivset mälu.  
Line 22: Line 24:
'''vmstat -f''' -näitab '''''fork[http://linux.die.net/man/2/fork] , vfork[http://linux.die.net/man/2/vfork]''''' ja '''''clone[http://linux.die.net/man/2/clone]''''' protsesside arvu alates viimasest alglaadimisest ning mis on võrdne loodud ülesannete kogusummaga. Iga protsess esindab ühte või mitut ülesannet, sõltuvalt täidetavate lõimede (täidetavate programmiosade)  hulgast. Raportis olevad kirjed ei kordu.
'''vmstat -f''' -näitab '''''fork[http://linux.die.net/man/2/fork] , vfork[http://linux.die.net/man/2/vfork]''''' ja '''''clone[http://linux.die.net/man/2/clone]''''' protsesside arvu alates viimasest alglaadimisest ning mis on võrdne loodud ülesannete kogusummaga. Iga protsess esindab ühte või mitut ülesannet, sõltuvalt täidetavate lõimede (täidetavate programmiosade)  hulgast. Raportis olevad kirjed ei kordu.
          
          
'''vmstat -m''' -kuvab segmendiinfot
'''vmstat -m''' -väljastab segmendiinfo
 
'''vmstat -n''' -perioodilise raporti puhul ei väljastata iga kord raporti päist. Kui raportisse midagi lisandub, on see uus rida ilma päiseta.


'''vmstat -n''' -päiseid ei kuvata perioodiliselt. Iga kord, kui raportisse midagi lisatakse, on see uus rida ilma päiseta.
'''vmstat -s''' - väljastab virtuaalmälus toimuvate sündmuste ja mälu statistika tabeli. See tabel ei kordu.


'''vmstat -s''' - kuvab virtuaalmälus toimuvate sündmuste ja mälu statistika tabeli. See tabel ei kordu.
'''vmstat -d''' -väljastab ketta statistika.


'''vmstat -d''' -kuvab ketta statistika.
'''vmstat -D''' -väljastab ketta informatsiooni tabeli kujul.


'''vmstat -p''' -kuvab valitud kettapartitsiooni detailse statistika.
'''vmstat -p''' -väljastab valitud kettapartitsiooni detailse statistika.


'''vmstat -S''' -väljastatud raportis saab kasutaja määrata, millistes ühikutes ta soovib raportit saada, kas k(1000 baiti), K(1024 baiti), m(1000000 baiti) või M(1048576 baiti)  
'''vmstat -S''' -väljastatud raportis saab kasutaja määrata, millistes ühikutes ta soovib raportit saada, kas k (1000 baiti), K (1024 baiti), m (1000000 baiti) või M (1048576 baiti)  


'''vmstat -V''' -kuvab versiooni informatsiooni.
'''vmstat -w''' -laiendatud väljundreziim, rohkem kui 80 tähemärki rea kohta. (Kasulik süsteemides, kus on kasutusel suurem mälu, et väljastatava rapori tulbad oleksid kõik näha.).
 
'''vmstat -V''' -väljastab versiooni informatsiooni.


Lisavalikute detailsemad kirjeldused on toodud peatükis '''vmstat'i''' kasutamise näited.
Lisavalikute detailsemad kirjeldused on toodud peatükis '''vmstat'i''' kasutamise näited.
Line 40: Line 46:
= Vmstat'i kasutamise näited =
= Vmstat'i kasutamise näited =


Allolevad pildid ja näited on tehtud kasutades Ubuntu 11.04 server versiooni Linuxist.  
Allolevad pildid ja näited on tehtud kasutades Linuxi terminali, täpsemalt Ubuntu 14.04 LTS versiooni.  
 




* '''Vmstat''' süntaks
* '''Vmstat''' süntaks


Kasutatud käsk: vmsat ?
Kasutatud käsk: vmsat --help
[[File:Vmstatkäsud.png | left | frame | Joonis 1- käsusüntaks]]
[[File:Vmstat --help.PNG | left| frame | Joonis 1 - käsusüntaks]]
< br/>
<br>
 
<br>
*==='''vmstat''' raporti väljastamine.===
<br>
 
<br>
[[File:Vmstat.png]]
<br>
 
<br>
 
<br>
Vmstat’i esimene raport kuvab keskmiseid näitajaid alates eelmisest taaskäivitusest. Protsessi ja mälu raportites väljastatakse hetkeseis.
<br>
 
<br>
'''procs:'''
<br>
 
<br>
r:  näitab palju protsesse ootavad käima minemist.
<br>
 
<br>
b: näitab palju on hõivatud protsesse.
<br>
 
<br>
'''memory:'''
<br>
 
swpd: kasutatud virtuaalne mälu
 
free: vaba virtuaalne mälu
 
buff: mälu, mida kasutatakse kui puhvrit
 
cache: mälu, mida kasutatakse vahemäluna
 
'''swap:'''


si: mälu swapitud kettalt (igaks sekundiks)
----
<br>
*'''vmstat''' raporti väljastamine.


so: mälu swapitud kettale (igaks sekundiks)
Kasutatud käsk: vmstat
[[File:Vmstatraport.PNG | left | frame | Joonis 2 - raport]]
<br>
<br>
<br>
<br>
<br>
<br>
Vmstat’i esimene raport kuvab keskmised näitajad alates eelmisest taaskäivitusest. Protsessi ja mälu raportites väljastatakse hetkeseis.


'''io:'''  
'''procs - protsessid:'''


bi: ''blocks in'' (iga sekundi kohta)
r: näitab palju protsesse ootavad käima minemist.<br />
b: näitab palju on hõivatud protsesse.<br />


bo: ''blocks out'' (iga sekundi kohta)
'''memory - mälu:'''


'''system:'''
swpd: kasutatud virtuaalne mälu<br />
free: vaba virtuaalne mälu<br />
buff: mälu, mis on kasutusel puhvermäluna<br />
cache: mälu, mis on kasutusel vahemäluna<br />


in: katkestused iga sekundi kohta
'''swap - saalimine:'''


cs: taustalülituste arv sekundi kohta
si: väljasaalimine kettalt (sekundis)<br />
so: sissesaalimine kettale (sekundis)<br />


'''cpu:'''
'''IO - sisend/väljund:'''  


us: user time ehk kasutaja aeg
bi: vastu võetud blokid (iga sekundi kohta)<br />
bo: välja saadetud blokid (iga sekundi kohta)<br />


sy: system time ehk süsteemi aeg
'''system - süsteem:'''


id: idle time ehk tegevusetu aeg
in: katkestused iga sekundi kohta<br />
 
cs: taustalülituste arv sekundi kohta<br />
wa: wait time ehk ooteaeg


'''cpu - protsessor:'''


us: user time ehk kasutaja aeg<br />
sy: system time ehk süsteemi aeg<br />
id: idle time ehk tegevusetu aeg<br />
wa: waiting time ehk ooteaeg<br />
<br>
----
<br>
*'''vmstat -V''' - väljastab versiooni informatsiooni
*'''vmstat -V''' - väljastab versiooni informatsiooni


[[File:Vmstat-V.png]]
Kasutatud käsk: vmstat -V


[[File:Vmstat_version.PNG | left | frame | Joonis 3 - Versiooni info]]
<br>
<br>
<br>
<br>
'''Procps'''[https://packages.debian.org/sid/procps] on Linuxi tarkvarapakett, mis sisaldab mitut erinevat utiliiti, mille abil on võimalik saada informatsiooni protsesside kohta /proc failisüsteemis.


Nagu ülalolevalt jooniselt nähtub, on siin tegemist versiooniga 3.3.9
<br>
<br>
----
<br>
*'''vmstat -n''' [aeg sekundites]  
*'''vmstat -n''' [aeg sekundites]  


[[File:Vmstat-n.png]]
Kasutatud käsk: vmstat -n 5
 
Iga kord, kui tuleb uus raport, lisandub ekraanile üks rida ilma päiseta.


[[File:Vmstat_n.PNG | left | frame | Joonis 4 - raporti loomine kindla intervalliga ]]
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
Iga 5 sekundi järel koostatakse uus raporti rida, nii on võimalik jälgida kas selle aja jooksul on toimunud süsteemis mingeid muudatusi. Raporti päist ei looda uuesti, lisanduvad vaid uued raporti read. Raproti katkestamiseks tuleb klaviatuuril vajutada CTRL+C.<br />
Parameetrit -n saab kasutada ka koos teiste parameetritega, näiteks vmstat [-a] [-n] [-t] [-S unit] [delay [ count]] .
<br>
<br>
----
<br>
*'''vmstat -a''':  näitab aktiivset/mitteaktiivset mälu.
Kasutatud käsk: vmstat -a


'''vmstat -a''': näitab aktiivset/mitteaktiivset mälu.  
[[File:Vmstat a.PNG | left | frame |Joonis 5 - mälu raport]]
<br>
<br>
<br>
<br>
<br>
<br />
'''memory - mälu:'''<br />
swpd: ''swap space''[https://www.linux.com/news/software/applications/8208-all-about-linux-swap-space] ehk saaleala<br />
free: vaba mälu<br />
inact: mitteaktiivne mälu<br />
active: aktiivne mälu<br />
<br>
----
<br>
*'''vmstat -d''': väljastab ketta statistika.


[[File:Vmstat-a.png]]
Kasutatud käsk: vmstat -d
 
 
'''vmstat -d''': väljastab ketta statistika – lugemised, kirjutamised, I/O statistika.
 
[[File:Vmstat-d.png]]


[[File:Vmstat-dsmall.png | left | frame | Joonis 6 - ketta statistika]]
<br>
<br>
<br>
<br>
<br>
<br />
<br>
<br>
<br>
<br>
<br>
<br />
<br>
<br>
<br>
<br>
<br>
<br />
<br>
<br>
<br />
<br>
<br />
<br />
Väljade kirjeldus:
Väljade kirjeldus:


'''Reads - lugemised:'''
'''Reads - kettalt lugemised:'''
 
Total: kõik lugemised, mis on edukalt lõpetatud.
 
Merged: grupeeritud lugemised (tulemusena ühes I/O-s)
 
Sectors: edukalt loetud sektorid
 
Ms:  lugemisele kulutatud aeg millisekundites.
 
'''Writes - kirjutamised:'''
 
Total: kõik kirjutamised, mis on edukalt lõpetatud


Merged: grupeeritud kirjutamised (tulemusena ühes I/O-s)
Total: kõik kettalt lugemised, mis on edukalt lõpetatud.<br />
Merged: kettalt lugemised grupeerituna(tulemusena ühes I/O-s)<br />
Sectors: edukalt loetud sektorid<br />
Ms:  lugemisele kulutatud aeg millisekundites.<br />


Sectors: edukalt kirjutatud sektorid
'''Writes - kettale kirjutamised:'''


Ms: kirjutamiseks kulunud aeg millisekundites
Total: kõik kettale kirjutamised, mis on edukalt lõpetatud<br />
Merged: kettale kirjutamised grupeeritult(tulemusena ühes I/O-s)<br />
Sectors: edukalt kirjutatud sektorid<br />
Ms: kirjutamiseks kulunud aeg millisekundites<br />


'''IO - Input Output:'''  
'''IO - Input/Output - Sisend/Väljund:'''  


Cur: I/O-d töös
Cur: I/O-d töös<br />
S: I/O jaoks kulunud aeg sekundites<br />
<br>
----
<br>


S: I/O jaoks kulunud aeg sekundites
*'''vmstat -D''': väljastab informatsiooni ketta kohta tabeli kujul.


Kasutatud käsk: vmstat -D


*'''vmstat -D''': väljastab ketta tabeli.  
[[File:Vmstat-Dbig.PNG | left | frame | Joonis 7- ketta info tabelina]]
<br>
<br>
<br>
<br />
<br>
<br>
<br />
<br>
<br />
<br>
<br />
Tabelis on näha kogu saadaolev info ketta kohta, näiteks ketta partitsioonide arv. Ülaloleval joonisel on see 4.<br />
<br>
----
<br>


[[File:Vmstat-Dsuur.png]]
*'''vmstat -p'''[ketta partsitsioon]


Kasutatud käsud: vmstat -p sbd5, vmstat -p sda1


*'''vmstat -p'''[ketta partsitsioon]: kasutatakse selleks, et väljastada ketta I/O statistikat ühe ketta partitsiooni kohta.
[[File:Vmstat-part.PNG | left | frame | Joonis 8 - partitsiooni statistika]]


[[File:Vmstat-pdisknumber.png]]
<br />
<br>
<br />
<br>
<br />
<br>
<br />
Käsku vmstat -p [ketta partitsioon] kasutatakse selleks, et väljastada ketta sisend/väljund statistikat ühe ketta partitsiooni kohta.
   
   
Väljade kirjeldus:
Väljade kirjeldus:
Line 168: Line 275:
'''Writes - kirjutamised:'''
'''Writes - kirjutamised:'''


Requested writes: selle partitsioonile tehtud kirjutamise taotluste koguarv
Requested writes: selle partitsioonile tehtud kirjutamise taotluste koguarv<br />
<br>
----
<br>


*'''vmstat -s''': Väljastab ''virtual memory'' (virtuaalmälu) kohta info tabeli kujul.


*'''vmstat -s''': väljastab tabeli, mis koosneb erinevatest sündmuste loenduritest ja mälu statistikast. See raport ei kordu.  Kasutatakse, et väljastada raportit tabeli kujul. Prindib vm (virtual memory) tabeli.
Kasutatud käsk: vmstat -s


[[File:Vmstat-s.png]]
[[File:Vmstat-svm.PNG | left | frame | Joonis 9 - virtuaalmälu info tabelina]]
<br />
<br>
<br />
<br>
<br />
<br>
<br />
<br />
<br>
<br />
<br>
<br />
<br>
<br />
<br />
<br>
<br />
<br>
<br />
<br />


Väljastab tabeli, mis koosneb erinevatest sündmuste loenduritest ja mälu statistikast. Kasutatakse, et väljastada raportit tabeli kujul. Sealt on võimalik leida andmeid näiteks vaba mälu, kasutusel oleva mälu ja ka katkestuste kohta. Andmeid näidatakse alates viimasest taaskäivitusest.
<br>
<br />
----
<br>


*'''vmstat –m''': väljastab segmendiinfot
*'''vmstat -S'''[ühik]


[[File:Vmstat-m.png]]
Kasutatud käsud: <br />
vmstat -S K<br />
vmstat -S M<br />
vmstat -S k<br />
vmstat -S m<br />
[[File:Vmsta-Sbig.PNG | left | frame | Joonis 10 - raporti väljastamine]]
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Väljastab vmstat’i raporti nii, et ühikud väljastatud raportis on kasutaja poolt valitud, näiteks k ( 1000 bitti), K (1024 bitti), m (1000000 bitti) või M (1048576 bitti). <br />
<br>
----
<br>


Väljade kirjeldus:
*'''vmstat –f'''


Cache: cache’i nimi
Kasutatud käsk: vmstat -f


Num: käesoleval hetkel aktiivsete objektide arv
[[File:Vmstat-forks.PNG | left | frame | Joonis 11 - protsesside koopiad]]


Total: saadaval olevate objektide koguarv
<br />
<br />
<br />
<br />
Väljastab protsesside koopiate ''(fork, vfork, clone)'' arvu, mida süsteem on teinud alates eelmisest alglaadimisest.<br />
<br>
----
<br>


Size: iga objekti suurus
*'''vmstat [delay[count]]''' : käsk, mis väljastab raporteid vastavalt valitud parameetritele.


Pages: vähemalt ühe aktiivse objektiga lehekülgede arv
Kasutatud käsk: vmstat 2 3


Totpages: reserveeritud lehekülgede koguarv
[[File:Vmstat_param.PNG | left | frame | Joonis 12- parameetrid]]


Palab: lehekülgede arv segmendi kohta
<br />
 
<br />
 
<br />
*'''vmstat -S'''[ühik]: väljastab vmstat’i raporti nii, et ühikud raportis on kasutaja poolt valitud ühikutena väljastatud, näiteks k või K või m või M.
<br />
 
<br />
[[File:Vmstat-Sunit.png]]
<br />
 
<br />
 
Delay – aeg uuenduste vahel sekundites. Kui seda ei ole eraldi välja toodud, siis väljastatakse ainult keskmised väärtused alates eelmisest taaskäivitusest.<br />
*'''vmstat –f''': väljastab protsesside koopiate arvu, mida süsteem on teinud alates eelmisest alglaadimisest.
 
[[File:Vmstat-f.png]]
 
 
*'''vmstat [delay[count]]''' : käsk, mis väljastab raporteid vastavalt valitud parameetritele.
 
[[File:Vmstat delay count.png]]
 
Delay – aeg uuenduste vahel sekundites. Kui seda ei ole eraldi välja toodud, siis väljastatakse ainult keskmised väärtused alates eelmisest taaskäivitusest.
Count – mitu uuendust soovitakse valitud aja jooksul saada.
Count – mitu uuendust soovitakse valitud aja jooksul saada.


= Kokkuvõtteks =
= Kokkuvõtteks =


'''Vmstat''' tööriista kasutamiseks Linuxi süsteemides ei ole vaja sisse logida juurkasutaja õigustes.  Vmstat ei ole Linuxis jooksev protsess. Kõik linuxi plokid on 1024 baidised. Vanadel tuumadel võib olla 512, 2048 või 40296 baidiseid plokke. Alates props 3.1.9 laseb vmstat valida ühikuid (k, K, m, M), vaikimisi on ühikuks K (1024 baiti). Raportid on mõeldud selleks, et aidata identifitseerida süsteemi kitsaskohti ehk niinimetatud süsteemi pudelikaelu.
'''Vmstat''' tööriista kasutamiseks Linuxi süsteemides ei ole vaja sisse logida juurkasutaja õigustes.  Vmstat ei ole Linuxis jooksev protsess. Kõik Linuxi blokid on 1024 baidised. Vanadel tuumadel võib olla 512, 2048 või 40296 baidiseid blokke. Alates props 3.1.9 laseb vmstat valida ühikuid (k, K, m, M), vaikimisi on ühikuks K (1024 baiti). Raportid on mõeldud selleks, et aidata identifitseerida süsteemi kitsaskohti ehk niinimetatud süsteemi pudelikaelu.[http://linux.die.net/man/8/vmstat]
 
Minu arvates on '''vmstat''' vajalik tööriist, mille abil saab jälgida kui palju virtuaalmälu süsteemis on, kui palju sellest hetkel on vaba ja palju kasutusel. Nagu eelnevatest näidetest näha, on vmstat abil võimalik saada päris palju erinevat informatsiooni oma süsteemis toimuva kohta. Vmstat käsu kohta on olemas manuaal, mida saab Linuxi puhul oma masina terminaliaknast vaadata käsu '''man vmstat''' abil. Samuti võimalik internetist leida palju informatsiooni ning näiteid. Kes soovib Linuxi operatsioonisüsteemis virtuaalmälust ja selle monitoorimisest vmstat käsu abil rohkem teada saada, võib alustada lugemist näiteks siit[http://www.linuxjournal.com/article/8178].


= Kasutatud materjalid =
= Kasutatud materjalid =


http://www.thegeekstuff.com/2011/07/iostat-vmstat-mpstat-examples/<br />
1. http://www.unix.org/what_is_unix.html 12.12.2015<br />
http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015<br />
2. http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015<br />
http://linux.die.net/man/8/vmstat 12.11.2015<br />  
3. http://www.dba-oracle.com/t_tuning_vmstat.htm 13.12.2015<br />
http://linux.about.com/library/cmd/blcmdl8_vmstat.htm 12.11.2015<br />
4. http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015<br />
5. http://linux.die.net/man/2/fork 12.12.2015<br />
6. http://linux.die.net/man/2/vfork 12.12.2015<br />  
7. http://linux.die.net/man/2/clone 12.12.2015<br />
8. https://packages.debian.org/sid/procps 13.12.2015<br />
9. https://www.linux.com/news/software/applications/8208-all-about-linux-swap-space 13.12.2015<br />
10. http://linux.die.net/man/8/vmstat 12.11.2015<br />
11. http://www.linuxjournal.com/article/8178


= Autor =
= Autor =

Latest revision as of 22:59, 14 December 2015

Sissejuhatus

Antud leheküljel on kirjeldatud UNIX süsteemides toimivat käsurea tööriista vmstat. Kirjutise eesmärgiks on tutvustada, kuidas see käsk toimib ning mille jaoks seda kasutatakse.

Virtual memory statistics ehk vmstat on käsurea tööriist, mida saab kasutada oma arvuti mälu, protsessori, saalimise ja katkestuste jälgimiseks. Vmstat’i tööriist on saadaval enamikes UNIX[1] ja Unixi-taolistes operatsioonisüsteemides (näiteks Linuxis ja Solarises), kuid erinevates operatsioonisüsteemides võivad käsusüntaks ja väljastatava informatsiooni esitus olla veidi erinevad[2]. Vmstat ei ole Linuxis jooksev protsess ning seda tööriista on võimalik kasutada ka tavakasutaja õigustes.[3]

Käsusüntaks

      vmstat [-a] [-n] [delay [ count]]
      vmstat [-f] [-s] [-m]
      vmstat [-S unit]
      vmstat [-d]
      vmstat [-p disk partition]
      vmstat [-V]

[4]

Lisavalikud

Lisavalikuid ja käsusüntaksit on võimalik vaadata manuaali lehelt, vmstat käsku tutvustava manuaali lehe saab avada terminaliaknas käsu man vmstat abil.

vmstat -a -näitab aktiivset / mitte aktiivset mälu.

vmstat -f -näitab fork[5] , vfork[6] ja clone[7] protsesside arvu alates viimasest alglaadimisest ning mis on võrdne loodud ülesannete kogusummaga. Iga protsess esindab ühte või mitut ülesannet, sõltuvalt täidetavate lõimede (täidetavate programmiosade) hulgast. Raportis olevad kirjed ei kordu.

vmstat -m -väljastab segmendiinfo

vmstat -n -perioodilise raporti puhul ei väljastata iga kord raporti päist. Kui raportisse midagi lisandub, on see uus rida ilma päiseta.

vmstat -s - väljastab virtuaalmälus toimuvate sündmuste ja mälu statistika tabeli. See tabel ei kordu.

vmstat -d -väljastab ketta statistika.

vmstat -D -väljastab ketta informatsiooni tabeli kujul.

vmstat -p -väljastab valitud kettapartitsiooni detailse statistika.

vmstat -S -väljastatud raportis saab kasutaja määrata, millistes ühikutes ta soovib raportit saada, kas k (1000 baiti), K (1024 baiti), m (1000000 baiti) või M (1048576 baiti)

vmstat -w -laiendatud väljundreziim, rohkem kui 80 tähemärki rea kohta. (Kasulik süsteemides, kus on kasutusel suurem mälu, et väljastatava rapori tulbad oleksid kõik näha.).

vmstat -V -väljastab versiooni informatsiooni.

Lisavalikute detailsemad kirjeldused on toodud peatükis vmstat'i kasutamise näited.

Vmstat'i kasutamise näited

Allolevad pildid ja näited on tehtud kasutades Linuxi terminali, täpsemalt Ubuntu 14.04 LTS versiooni.


  • Vmstat süntaks

Kasutatud käsk: vmsat --help

Joonis 1 - käsusüntaks



















  • vmstat raporti väljastamine.

Kasutatud käsk: vmstat

Joonis 2 - raport







Vmstat’i esimene raport kuvab keskmised näitajad alates eelmisest taaskäivitusest. Protsessi ja mälu raportites väljastatakse hetkeseis.

procs - protsessid:

r: näitab palju protsesse ootavad käima minemist.
b: näitab palju on hõivatud protsesse.

memory - mälu:

swpd: kasutatud virtuaalne mälu
free: vaba virtuaalne mälu
buff: mälu, mis on kasutusel puhvermäluna
cache: mälu, mis on kasutusel vahemäluna

swap - saalimine:

si: väljasaalimine kettalt (sekundis)
so: sissesaalimine kettale (sekundis)

IO - sisend/väljund:

bi: vastu võetud blokid (iga sekundi kohta)
bo: välja saadetud blokid (iga sekundi kohta)

system - süsteem:

in: katkestused iga sekundi kohta
cs: taustalülituste arv sekundi kohta

cpu - protsessor:

us: user time ehk kasutaja aeg
sy: system time ehk süsteemi aeg
id: idle time ehk tegevusetu aeg
wa: waiting time ehk ooteaeg



  • vmstat -V - väljastab versiooni informatsiooni

Kasutatud käsk: vmstat -V

Joonis 3 - Versiooni info





Procps[8] on Linuxi tarkvarapakett, mis sisaldab mitut erinevat utiliiti, mille abil on võimalik saada informatsiooni protsesside kohta /proc failisüsteemis.

Nagu ülalolevalt jooniselt nähtub, on siin tegemist versiooniga 3.3.9



  • vmstat -n [aeg sekundites]

Kasutatud käsk: vmstat -n 5

Joonis 4 - raporti loomine kindla intervalliga












Iga 5 sekundi järel koostatakse uus raporti rida, nii on võimalik jälgida kas selle aja jooksul on toimunud süsteemis mingeid muudatusi. Raporti päist ei looda uuesti, lisanduvad vaid uued raporti read. Raproti katkestamiseks tuleb klaviatuuril vajutada CTRL+C.
Parameetrit -n saab kasutada ka koos teiste parameetritega, näiteks vmstat [-a] [-n] [-t] [-S unit] [delay [ count]] .



  • vmstat -a: näitab aktiivset/mitteaktiivset mälu.

Kasutatud käsk: vmstat -a

Joonis 5 - mälu raport







memory - mälu:
swpd: swap space[9] ehk saaleala
free: vaba mälu
inact: mitteaktiivne mälu
active: aktiivne mälu



  • vmstat -d: väljastab ketta statistika.

Kasutatud käsk: vmstat -d

Joonis 6 - ketta statistika

























Väljade kirjeldus:

Reads - kettalt lugemised:

Total: kõik kettalt lugemised, mis on edukalt lõpetatud.
Merged: kettalt lugemised grupeerituna(tulemusena ühes I/O-s)
Sectors: edukalt loetud sektorid
Ms: lugemisele kulutatud aeg millisekundites.

Writes - kettale kirjutamised:

Total: kõik kettale kirjutamised, mis on edukalt lõpetatud
Merged: kettale kirjutamised grupeeritult(tulemusena ühes I/O-s)
Sectors: edukalt kirjutatud sektorid
Ms: kirjutamiseks kulunud aeg millisekundites

IO - Input/Output - Sisend/Väljund:

Cur: I/O-d töös
S: I/O jaoks kulunud aeg sekundites



  • vmstat -D: väljastab informatsiooni ketta kohta tabeli kujul.

Kasutatud käsk: vmstat -D

Joonis 7- ketta info tabelina












Tabelis on näha kogu saadaolev info ketta kohta, näiteks ketta partitsioonide arv. Ülaloleval joonisel on see 4.



  • vmstat -p[ketta partsitsioon]

Kasutatud käsud: vmstat -p sbd5, vmstat -p sda1

Joonis 8 - partitsiooni statistika








Käsku vmstat -p [ketta partitsioon] kasutatakse selleks, et väljastada ketta sisend/väljund statistikat ühe ketta partitsiooni kohta.

Väljade kirjeldus:

Reads - lugemised:

Read sectors: sellele partitsioonile loetud sektorite koguarv

Writes - kirjutamised:

Requested writes: selle partitsioonile tehtud kirjutamise taotluste koguarv



  • vmstat -s: Väljastab virtual memory (virtuaalmälu) kohta info tabeli kujul.

Kasutatud käsk: vmstat -s

Joonis 9 - virtuaalmälu info tabelina





















Väljastab tabeli, mis koosneb erinevatest sündmuste loenduritest ja mälu statistikast. Kasutatakse, et väljastada raportit tabeli kujul. Sealt on võimalik leida andmeid näiteks vaba mälu, kasutusel oleva mälu ja ka katkestuste kohta. Andmeid näidatakse alates viimasest taaskäivitusest.



  • vmstat -S[ühik]

Kasutatud käsud:
vmstat -S K
vmstat -S M
vmstat -S k
vmstat -S m

Joonis 10 - raporti väljastamine














Väljastab vmstat’i raporti nii, et ühikud väljastatud raportis on kasutaja poolt valitud, näiteks k ( 1000 bitti), K (1024 bitti), m (1000000 bitti) või M (1048576 bitti).



  • vmstat –f

Kasutatud käsk: vmstat -f

Joonis 11 - protsesside koopiad





Väljastab protsesside koopiate (fork, vfork, clone) arvu, mida süsteem on teinud alates eelmisest alglaadimisest.



  • vmstat [delay[count]] : käsk, mis väljastab raporteid vastavalt valitud parameetritele.

Kasutatud käsk: vmstat 2 3

Joonis 12- parameetrid








Delay – aeg uuenduste vahel sekundites. Kui seda ei ole eraldi välja toodud, siis väljastatakse ainult keskmised väärtused alates eelmisest taaskäivitusest.
Count – mitu uuendust soovitakse valitud aja jooksul saada.

Kokkuvõtteks

Vmstat tööriista kasutamiseks Linuxi süsteemides ei ole vaja sisse logida juurkasutaja õigustes. Vmstat ei ole Linuxis jooksev protsess. Kõik Linuxi blokid on 1024 baidised. Vanadel tuumadel võib olla 512, 2048 või 40296 baidiseid blokke. Alates props 3.1.9 laseb vmstat valida ühikuid (k, K, m, M), vaikimisi on ühikuks K (1024 baiti). Raportid on mõeldud selleks, et aidata identifitseerida süsteemi kitsaskohti ehk niinimetatud süsteemi pudelikaelu.[10]

Minu arvates on vmstat vajalik tööriist, mille abil saab jälgida kui palju virtuaalmälu süsteemis on, kui palju sellest hetkel on vaba ja palju kasutusel. Nagu eelnevatest näidetest näha, on vmstat abil võimalik saada päris palju erinevat informatsiooni oma süsteemis toimuva kohta. Vmstat käsu kohta on olemas manuaal, mida saab Linuxi puhul oma masina terminaliaknast vaadata käsu man vmstat abil. Samuti võimalik internetist leida palju informatsiooni ning näiteid. Kes soovib Linuxi operatsioonisüsteemis virtuaalmälust ja selle monitoorimisest vmstat käsu abil rohkem teada saada, võib alustada lugemist näiteks siit[11].

Kasutatud materjalid

1. http://www.unix.org/what_is_unix.html 12.12.2015
2. http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015
3. http://www.dba-oracle.com/t_tuning_vmstat.htm 13.12.2015
4. http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015
5. http://linux.die.net/man/2/fork 12.12.2015
6. http://linux.die.net/man/2/vfork 12.12.2015
7. http://linux.die.net/man/2/clone 12.12.2015
8. https://packages.debian.org/sid/procps 13.12.2015
9. https://www.linux.com/news/software/applications/8208-all-about-linux-swap-space 13.12.2015
10. http://linux.die.net/man/8/vmstat 12.11.2015
11. http://www.linuxjournal.com/article/8178

Autor

Nele Kiigemägi Rühm A21 2011

Täiendas:

Diana Lõhmus Rühm AK21 2015