Free: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Ltoomet (talk | contribs)
Ltoomet (talk | contribs)
Line 48: Line 48:


<pre>
<pre>
free --si -m
free --si -m #If a conversion option like -m, -b, etc.. is not specified, then the --si option is ignored
</pre>
</pre>



Revision as of 20:55, 23 November 2015

Autor

Autor: Leila Toomet

Rühm: AK21

Esitamise kuupäev: 24.10.2015

Sissejuhatus

“Free”, mida kasutatakse Linuxil baseeruvatel operatsioonisüsteemidel, näiteks nagu Ubuntu, on võimas käsk ja selle abil saab vaadelda mälu eraldamist. See on üks nendest käskudest, mida serveri administraator peaks hästi teadma, kuid mis võib tekitada segadust. Seletan ära “free” käsurea väljundi ja mõningaid tüüpilisemaid viise, kuidas seda käsku kasutada.

“Free” käsu alused

Kõige tavalisem viis “free'd” kasutada on:

free

Käsu käivitamisel kuvatakse midagi sarnast:

Mõned lihtsamad faktid, mida kuvatakse käivitamisel:

  • Single shot -Kõik numbrid on algselt kilobaitides (KB) (st 1024 baiti), kuid seda saab muuta (vt allpool)
  • Väljundis kuvatakse mälu suuruseid, muutmälu (RAM) jaotust ja (swap) saalemälu, aga ka seletatakse kui palju sellest füüsilisest muutmälust on jaotatud puhverdamise ja vahemälu vahel, kui see ei ole kasutusel mõne rakenduse poolt.

Käsul “free” on mõned kasulikud valikud:

free -b       #Displays output in Bytes

free -k       #Displays output in Kilobytes

free -m       #Displays output in Megabytes

free -g       #Displays output in Gigabytes

free --tera   #Displays output in Terabytes

free -h       #Displays output in a human readable format (e.g. 1.5M)


free -t       #Add s a total row to the output

Vaikimisi käsk “free” kasutab 1024 baiti, üksuste vahel toimuva konventeerimise käigus. See on tavaliselt tüüpiline, kui rääkida mälust või ketta suurusest, kuid see võib kaasa tuua ootamatuid suuruseid, kui võrrelda numbreid, mis põhinevad tuhandel (st 1KB = 1000 bitti). Käsureal võib konverteerida 1000-ga kui lisada “-si”.

free --si -m  #If a conversion option like -m, -b, etc.. is not specified, then the --si option is ignored

“Free” käsu mälu väljund

“Free” käsu väljund võib alguses segadust tekitada. Tuleks veenduda, et see fakt jääb meelde: Linux võtab kasutamata mälu (a.k.a mälu mis ei ole kasutusel rakenduste ja operatsioonisüsteemi poolt) ja kasutab seda ketta puhverdamises ja vahemälus siis, kui saab.

Pole mõtet lasta vabal mälul raisku minna mitte midagi tehes. Mälu pannakse tööle kuni rakendus seda vajab. Kui rakendus vajab mälu ja nõuab osa kasutatavast mälust, mis on kasutusel puhverdamises ja vahemälus, siis Linux annab mälu rakendusele. Protsess on automaatne ja seda ei ole vaja välja lülitada (ilmselt ei ole ka võimalik).

Seda kõike meeles pidades vaatleme “free” käsu väljundit. Käivitades “free -m” genereerib järgmisi jaotusi megabaitides:

Selles näites, kollases kastis, on kogu muutmälu (RAM) süsteemil.

Enamus inimesed lähevad segadusse, kui nad vaatavad kasutusel (used) vs vaba mälu (free memory). Nad eksikombel vaatavad sinisesse kasti ja määravad selle abil kasutatud mälu kogust. Siis nad vaatavad paremale ja näevad väga väikest numbrit. Seal, kus on punane kast, ja määravad selle abil vaba mälu.

Mälu on ajutiselt kasutusel puhverdamises ja vahemälus nii, et see on kaasa arvatud sinisesse kasti. Oranźid kastid hoiavad vaba mälu puhveramisele ja vahemälule.

Kui palju mälu on tegelikult kasutusel Linuxis?

Kui ollakse huvitatud serveri mälu jaotusest, siis ei olda huvitatud, kui palju mälu on kasutuses puhverdamises ja vahemälus. Siis on vaja teada, mis on rakenduste poolt kasutusel ja mis on saadaval rakendustele. Teise rea väljud lahendab probleemi.

Lilla kast esindab seda, mis on määratud rakendustele ja operatsioonisüsteemile. Seda võib kergelt üle kontrollida, kui sinisest kastist lahutad oraanźide kastide kogu summa. See on päriselt kasutatud mälu süsteemis.

Kui palju mälu on tegelikult Linuxis vaba?

Vaba mälu tegelik summa on rohelises kastis. See on arvutatud, kui kollase kasti sisu lahutatakse lilla kastist. Võib ka arvutada nii: punane kast liita kahe oraanźi kastiga - tulemus on sama.

Ümardamise vead

Kui proovida arvutada ülalolevaid kaste, ilmselt on märgata, et “Free” eksib ühe megabaidiga. “Free” kärbib mälu enne, kui mälu raporteeritakse. Kasutades “Free’s” kilobaite, saab täpsema tulemuse.

Saalemälust

Saalemälu on osa kõvakettast, mis on määratud käituma nagu muutmälu (RAM). Oleks mõttetu kasutada ketast puhverdamises ja vahemälus nii, et Linux ei kasuta seda ja käsk “free” näitab ainult tegelikku mälu, mis on kasutusel. Tagasi näite juurde:

7 megabaiti on hetkel kasutuses kettal nagu mälu. See on tõenäoliselt ruum, mis on reserveeritud operatsioonisüsteemi poolt, et jälgida ülejäänud saalemälu. Kui saalemälu on kasutusel, siis see ei ole hea. Serveri jaoks see on liiga aeglane. Kui süsteem kasutab saalemälu, siis on tõenäoliselt midagi valesti või masinas ei ole piisavalt mälu. Enamasti kasutatakse käsku “Free”, et kinnitada Linux saalemälu mitte kasutamist.

Näpunäited Linux’i “Free” käsu kasutamiseks

Selle asemel, et terminali korduvalt kirjutada käsku “free”, võib kasutada ühte nendest kahest käsust, et aeg-ajalt seda käsku käivitada.

free -s  #Leaves old values on screen until they scroll off

watch -n <interval in seconds> free  #Overwrites old values

Kokkuvõte

Käsk “free” kuvab informatsiooni mälu kohta. Käsuga “free” on võimalik muuta megabaidid kilobaitideks või mõneks muuks summaks. Referaadis on välja toodud võimalused, mida “free” käsuga on võimalik teha ja kuidas see kasulik on.

Viited

1. http://corlewsolutions.com/articles/article-6-understanding-the-free-command-in-ubuntu-and-linux