[so] [tema5] rezolvarea dilemei

Andrei Deftu andreideftu at yahoo.com
Mon Jan 7 01:32:28 EET 2008


Intrebam pentru ca in mod normal, cand se face acces
la o pagina care nu este nici RAM, nici in swap,
aceasta pagina inseamna ca se gaseste pe o memorie
externa (ex. disk), deci se stie o adresa de unde sa
se mapeze datele. Asta e de fapt si mecanismul paging
on demand: se incarca paginile la cerere dar maparea
se face in momentul page fault-ului. Am inceput sa
aberez ?

Inca ceva: Razvan, modifica te rog testul CheckRam0 de
pe win32 din

if (readValue != RAM_POISON && readValue != 0) 
{
	check = 0;
	break;
}

in

if (readValue != RAM_POISON) 
{
	check = 0;
	break;
}  

--- Andrei Deftu <andreideftu at yahoo.com> wrote:

> Merci
> 
> --- Catalina Caloian <catalina.caloian at gmail.com>
> wrote:
> 
> > On Sunday 06 January 2008 23:35:41 Andrei Deftu
> > wrote:
> > > De la ce adrese din fisierul RAM se aduc
> paginile
> > > astea ?
> > 
> > Cand accesezi pentru prima oara o pagina virtuala,
> > gasesti o pagina fizica 
> > disponibila si faci asocierea intre cele doua. Cel
> > mai simplu ar fi ca prima 
> > pagina virtuala accesata sa o mapezi peste prima
> > pagina fizica (deci la 
> > offset-ul 0 in fisier), pagina virtuala in care se
> > face al doilea acces sa 
> > fie mapata peste a doua pagina fizica (deci la
> > offset-ul 'page_size') 
> > s.a.m.d.
> > Daca la un acces ai nevoie de o pagina fizica si
> nu
> > gasesti una disponibila 
> > (fiindca de la accesele anterioare s-au umplut
> > toate), swap-ezi o pagina 
> > virtuala si folosesti pagina fizica astfel
> > "eliberata" ca sa faci asocierea 
> > cu pagina virtuala tocmai accesata.
> > 
> > Catalina


      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs


More information about the so mailing list