Egy előkészített swap területet a swapon paranccsal tudunk
aktívvá tenni. Ez mondja meg a kernelnek, hogy ezután ezt a területet
is használhatja swap célokra. Argumentumként meg kell adni a swap
terület elérési útját, mint azt a következő példa mutatja az előzőleg
előkészített swap fájl esetére:
A swap területek automatikusan is használatba vehetők ha megfelelő
módon felsoroljuk őket a /etc/fstab fájlban:
Az intídó szkriptek lefuttatják a swapon -a parancsot, ami a
/etc/fstab -beli swap területeket használatba veszi. Ezért
általában a swapon parancsot kézzel csak extra swap terület
bekapcsolásakor kell kiadni.
A swap területeket a free paranccsal lehet megfigyelni, ami
megmondja, mennyi swap terület van használatban:
A kimenet első sora (Mem: ) a fizikai memóriát mutatja. A
total oszlop nem jelzi ki a kernel által használt területet,
ami általában kb. 1 MB. A used oszlop a használt memória
mennyiségét mutatja. A free oszlop a teljesen használaton
kívüli memóriát mutatja. A shared oszlopban a több processz
által közösen használt memóriaterület nagyságát láthatjuk; minél
nagyobb, annál jobb. A buffers oszlopban pedig a lemez cache
pufferének méretét mutatja meg a parancs.
A második sor két bejegyzése a megfelelő oszlopok pufferek nélküli
méreteit mutatja; ez kicsit jobban jellemzi az igaziból használt
illetve szabad terület nagyságát, mert a Linux a pufferméretet az
igényeknek megfelelően dinamikusan állítja.
Az utolsó sor (Swap: ) hasonlít az elsőre, csak a swap területre
vonatkozik, és nem a fizikai memóriára. Ha ez csupa nullákból áll, a
swap terület nincs aktiválva.
Ugyanez érhető el a top -on, vagy a /proc/meminfo fájlon
keresztül. Pillanatnyilag körülményes egy megadott swap területről
információt szerezni, ha több is van belőlük.
A swap területek kikapcsolhatók a swapoff
paranccsal. (Természetesen ezt csak ideiglenes swap terület esetén
szokás kézzel csinálni.) Az argumentumként megadott swap területről a
lapokat a rendszer beolvassa a fizikai memóriába, vagy ha ott nincs
elég hely, akkor egy másik swap területre ki is lapozza egyből. Ha nem
lenne elég virtuális memória a kiszedett lapok elhelyezésére, a Linux
szemetelni kezd; egy adott idő múlva ez helyrehozható, de addig a
rendszer használhatatlan. Célszerű inkább előre megnézni (használva a
free parancsot), hogy az adott swap terület kikapcsolásával
marad-e elég virtuális memóriánk, és csak akkor kikapcsolni, ha marad.
A swapon -a paranccsal automatikusan aktivált swap
területeket a swapoff -a kikapcsolja a /etc/fstab
tartalma alapján, a kézzel bekapcsoltakat pedig békén hagyja.
Néha sok swap terület lehet használatban még akkor is, ha sok szabad
fizikai memóriánk van. Ez pl. úgy eshet meg, hogy egy adott
időpontban szükség volt nagy swap használatra, majd egy olyan processz
leállt, amely sor fizikai memóriát használt és felszabadította a
memóriát. A swap területre tett adatok viszont csak akkor kerülnek be
a fizikai memóriába, ha szükség van rájuk, és ha ez soká következik
be, akkor sokáig marad szabad memóriánk. Ez természetesen nem rontja a
rendszer hatékonyságát, csak jó tudni, mi történik a gépünkben.
|