Zaneřáděná paměť
Dan Lukes
dan at obluda.cz
Thu Mar 15 17:11:03 CET 2007
Divacky Roman napsal/wrote, On 03/15/07 16:49:
>> > tak to nevim jestli je te sdilene pameti TOLIK. vetsinu pameti zaberou data
>> > a ta by mela byt ruzna pro ruzne procesy.
> tak ciste logicky.. pokud 2 procesy bezi ten samy kod a operuji nad temi samymy
> daty tak jsou ty procesy identicke...
Abych nekonstruoval teoreticke pripady - mam tu program na pocitani
toku dat nasich uzivatelu. To je dost velka datova struktura. Jednou za
cas se program forkne a do souboru (ktery si otevre a na to se skutecne
musi naalokovat par dalsich byte pameti navic) zapise (na coz potrebuej
dalsich par byte na pomocne promenne) kopii teto ohromne datove
struktury - kterou ovsem nemeni. Dela to proto, aby po pripadnem padu
mohl restartnuty proces obnovit svuj vnitrni stav. V okamziku forku
maji ty dva procesy oba naalokovano nekolik mega pameti na data - a pro
oba je ta pamet shodna, tedy neni v systemu zabrana dvakrat. Behem
cinnosti se "oddeli" cca jedna stranka pameti pro pomocne promenne a pro
otevreni souboru - a dale se tu a tam oddeli stranka jak otcovsky proces
aktualizuje tabulku. Zapis al eprobehne dost ryhle a tak v okamziku koce
synvskeho procesu je naprosta vetsina dat stale jeste spolecnych a v
pameti proste dvakrat nejsou.
Takovy Apache, obzvlast pokud se omezuje na podavani statickych dat, ma
take skoro vic pameti spotrebovano na konfigurace a podobne veci nez na
"proces-specific" operace. A tak datova pamet vsech tech apachovskych
synu je take ze znacne casti v systemu ve skutecnosti jen jednou.
Jen jsem si dovolil upozornit, ze sdilena data mezi procesy nejsou az
tak vyjimecna vec, jak's tu prezentoval.
Predpokladam, ze to tvoje "vetsinou" nemas podlozeno zadnou statistikou
- jen ti to tak proste pripadalo. Ani ja nema zadnou statistiku - ale
zda se, ze rozdil je v tom, ze ja to vim a tak jen vyjadruju pochybnosti
- nemam zadna sebevedoma tvrzeni ...
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