sprava pameti / volna pamet
Dan Lukes
dan at obluda.cz
Wed Aug 9 22:50:40 CEST 2006
Miroslav Lachman napsal/wrote, On 08/09/06 14:20:
> mel bych obecny dotaz ohledne spravy pameti (RAM) ve FreeBSD (6.+).
> Co jsem tak poruznu vycetl na internetu, tak se FreeBSD snazi mit co
> nejvic informaci dostupnych v RAM a tudiz hodnota "free" (napriklad v
> top) je vzdy velmi nizka.
No, to je tak, ze kdyz by mu nejaka pamet mela zbyt free a ladem, pak
ji pouzije na cache pristupu na disk.
> me vsak, jestli se da nejak vypozorovat, ze se system blizi k okamziku,
> kdy bude mit nedostatek pameti. Mam tim namysli napriklad webserver,
> nebo mailserver, na kterem se postupem casu zvysuje provoz.
Obavam se, ze to je natolik slozity dotaz, ze na nej nepujde ziskat
rozumna odpoved zadnym jednoduchym zpusobem. Mozna nejaka heuristika ...
Stranky se berou prednostne z "free" poolu - dokud jejich pocet
nepoklesne pod stanovenou mez. Pak se mohou dal brat z free poolu - ale
jen v pripade, ze zadajici je "SYSTEM" - a zase, nez jejich pocet
poklesne pod (jinou) stanovenou mez. Pak uz se z free poolu bere pamet
jen v pripade, ze ji zada rutina obsluhy preruseni.
Kdyz se takhle pamet neziska, tak kvuli normalnim a systemovym procesum
(nikoli vsdak kvuli obsluzen preruseni) je mozne zkusit pamet ziskat na
ukor cache - ta se presune do FREE stranek - a cely rozhodujici cyklus
se opakuje (to jest, uvolneni stranky z cache poolu nemusi znamenat, ze
se procesu podari tuhle stranku ziskat - treba bude stale pod stanovenym
limitem pro pocet free stranek ...).
Pokud stranku nelze ziskat na ukor cache, vola se swapovaci logika.
A prave swapovaci logikou je to jeste komplikovanejsi - pokud pcoet
volnych stranek poklesne pod stanovenou mez (jinou nez drive zminene),
pak to uz take znamena duvod ke swapovani.
Ke swapovani tak muze dojit i v pripade, ze si nejaky proces vyzada
najednou tak velke mnozstvi pameti, ze se pocet free-stranek dostane pod
pageout mez - prestoze se pozadavek pravdepodobne drive uspokoji
uvolnenim pameti z cache-poolu, muze mezitim i tak dojit k odswapovani
nekterych stranek.
Coz je, michochodem, pravdepodobne odpoved na nedavnou Romanovu utazku,
jak je mozne, ze na stroji se spoustou pameti je swap presto pouzity.
Takze - kdyby swap k dispozici vubec nebyl, rekl bych, ze je mozne
sledovat soucet cache a free pameti - ale nezajima nas jeji pokles k
nule, ale k onem limitum.
Pokud ovsem swap k dispozici je - i pri sebevetsim mnozstvi pameti se
patrne muze stat, ze si system "hrabne".
A pokud se mu podari vyhodit do swapu stranky nepouzivane (a o to by se
prinejmensim mel snazit) tak budou mit tendenci ve swapu uz naporad
zustat (coz je znovu poznamka spis pro Romana; unless swapoff -a &&
swapon -a ). Samozrejme, takto vyuzity swap nema na vykon realny dopad.
Dan
--
Dan Lukes SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz,dan at kolej.mff.cuni.cz
More information about the Users-l
mailing list