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