.


[*]
[*]
[*]

[*]
index


   
A swap terület nagysága

Néhány ember azt mondja, hogy a fizikai memóriaméret kétszeresének megfelelő swap területet kell lefoglalni, de ez egy rossz szabály. A helyes eljárás a következő:

1.
Becsüljük meg a teljes memóriaigényt. Ez a legnagyobb memóriamennyiség, melyre egyszerre szükség lehet, azaz az egyszerre futtatni szándékozott programok memóriaigényeinek összege. Ezt legjobban kipróbálással lehet eldönteni; azaz futtassuk az összes programot egyszerre (esetleg egy már futó rendszeren), amiket valaha is egyszerre kívánunk futtatni, és mérjük a memóriaigényt. Másik módszer, hogy egyesével futtatjuk a használni kívánt programokat, majd összegezzük a memóriahasználatot.

Természetesen egy jó becslés is elegendő lehet. Például az X futtatása kb. 8 MB-nyi, a gcc 4-10 MB-nyi területet igényel, stb. A kernel maga kb. 1 MB-ot foglal le, a szokásos shellek valamelyike és pár segédprogram együtt kb. 1 MB-ot. Nem kell most pontosnak lennünk, durva becslések elegendőek, ha egy kicsit pesszimista módon inkább felülről becsüljük a memóriaigényt.

Figyelni kell arra is, ha feltehetően egyszerre több ember is dolgozni fog a rendszeren, akkor annak megfelelően növekszik a memóriaigény. Bár az is igaz, hogy ha egyszerre ketten ugyanazt a programot futtatják, a memóriaigény nem kétszeres, mivel a kódlapok és az osztott könyvtárak csak egy példányban léteznek. A free  és a ps  parancsoknak hasznát vehetjük a becsléskor.

2.

Adjunk egy kis biztonsági tartalékot az 1. lépés eredményéhez. Egyrészt rossz lehet az egyes programok memóriaigényének becslése, másrészt lehet, hogy elfeledkeztél egy majdan használandó programról, és különben is jó, ha van még egy kis szabad hely. Pár megabájt tartalék megfelelő lehet. Jobb, ha többet foglalunk, mintha keveset, de túlzásokba sem kell esni, mivel a kihasználatlan swap terület elvesztegetettnek tekinthető. Ha kell, később is adhatunk plusz swap területet a rendszerhez. Továbbá, mivel szebb kerek számokkal dolgozni, kerekítsünk a legközelebbi páros megabájtra.

3.

Az előbbi számítások eredményeként kapunk egy teljes memóriaigényt. Így ebből a fizikai memóriaméretet kivonva megkaphatjuk a szükséges swap méretét. (Néhány UNIX változat esetén a fizikai memória képmásának is helyet kell foglalni, így nem szabad megtenni ezt a kivonást.)

4.

Ha a kiszámolt swap méret sokkal nagyobb (mondjuk több, mint 3-szorosa) a fizikai memóriának, érdemes több fizikai memóriát beszerezni, mert a rendszer sebessége nagyon kicsi lesz különben.

Jó, ha van egy kicsi swap területünk, még akkor is, ha a fenti számítás azt mutatja, hogy nem kell semennyi sem. A Linux a swap területet elég aggresszíven használja, hogy a lehető legnagyobb fizikai memóriaterület legyen szabadon, még akkor is, ha pillanatnyilag nincs igény a fizikai memóriára. Ez hasznos lehet, ha később mégis swappelni kellene, mivel a lemezre írás már korábban megtörténik, amikor a lemez amúgy lustálkodna.

A swap terület néha több lemezen oszlik meg. Ez néha javítja a sebességet, a lemezek és azok elérési sebességének függvényében. Érdemes lehet néhány változatot kipróbálni, bár nehéz őket tökéletesen kivitelezni. Mindenesetre ne higyjünk a ''legjobb''-nak mondott recepteknek, mert nincs minden körülmények között működő ''szuper recept''.

[*]
Linux rendszeradminisztrátorok kézikönyve (első javított változat; SAG-HU 0.6b1)