[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OT: malloc [era: Re: OT Squid]



On Fri, Jan 18, 2002 at 01:27:49AM +0100, Daniele Cruciani wrote:
> On Thu, Jan 17, 2002 at 09:42:35PM +0100, Samu wrote:
> > no che centra ? 
> > qui si parla di strategie di allocazione per evitare di avere la memoria
> > frammentata e che quindi risulti + piena di quello che e' ... tutto
> > qua.
> 
> ?? non ho capito niente,
grazie :-))

> comunque la frammentazione c'e' se si chiama
> una free() non una malloc()
non necessariamente, specie in un contesto multitasking ....
per il tuo processo che fa una malloc ci sono due processi che fanno
una free o viceversa ... in questo contesto la frammentazione 
capita molto spesso .

> > beh se la strategia di allocazione e' buona serve abbastanza 
> 
> bisognerebbe mettersi tutti daccordo:
> 
> - processi A,B vede 10M liberi.
> 
> - processi A,B alloca 2M.
> 
> va bene, ma se i processi sono 6 o 15 o 100?
si procede col riempire tutta la memoria virtuale (quindi ram e swap)
quando tutto e' pieno ... inizi a trovarti scritto
"Resource temporarily unavailable" e il kernel parte con la "roulette russa" 
e ammazza processi a caso (non sono sicuro se a caso comunque li vedi su
console)
> 
> Se le cose stanno cosi' penso che la cosa migliore per servizi critici
> sia di avere server dedicati che fanno poco piu' di una cosa e non
> occupano mai piu' (100-((max_lung_blocco)*nserver)/sysmem)% di
> memoria, 

beh questo e' lapalissiano :-))

> dove max_lung_blocco e' la lunghezza massima di un blocco
> allocato da un qualunque processo, nserver e' il numero di processi
> che possono allocare memoria (10 dovrebbe andare) e sysmem e'
> ovviamente la memoria totale. Questa e' la strategia buona?


e' una strategia ... adottata anche tramite ulimit

ps. se non mi capisci stavolta mi arrabbio :-)))

ciao
Samuele 

-- 
Samuele Tonon  <samu@linuxasylum.net>   http://www.linuxasylum.net/~samu/
          	Acid -- better living through chemistry.
			       Timothy Leary



Reply to: