<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2014-04-07 18:22 GMT+03:00 Istrate Roxana <span dir="ltr"><<a href="mailto:istrateroxana2006@gmail.com" target="_blank">istrateroxana2006@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Buna, as vrea si eu sa ma asigur ca am inteles ce inseamna STATE_NOT_ALLOC.<div>
<br></div><div>Atunci cand a fost apelat vm_alloc sa zicem cu 7 pagini virtuale si 5 fizice, voi aloca cele 7 pagini virtuale initial cu acest flag STATE_NOT_ALLOC in campul pte.prev_state si pte.state ?</div>
<div>Si daca da, el inseamna ca deocamdata in paginile alea e garbage, iar cand va fi un page fault sigur procesul va cere sa scrie in paginile astea, adica se vor genera de fapt 2 page faulturi si abia apoi va citi? Ca altfel.. citeste ce e acolo adica initial nimic bun.</div>
<div><br></div><div>Deasemenea, as vrea sa stiu si ce face flagul SEGV_MAPPER si daca este echivalent cu STATE_NOT_ALLOC.</div></div></blockquote></div><div class="gmail_extra"><br></div>Încep prin a sublinia faptul că headerul helper.h este doar o sugestie de implementare, nu trebuie să aliniați programul vostru la structura respectivă. El este menit doar să vă ajute, nu să vă încurce.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">STATE_NOT_ALLOC este un flag pe care îl poți folosi pentru a indica faptul că pagina respectivă nu este alocată. Într-adevăr paginile care nu au fost alocate, conțin garbage și nimeni n-ar trebui să aibe acces la ea.</div>
<div class="gmail_extra">Conform mecanismului de demand paging, în momentul în care un proces face o operație pe pagina respectivă (citire sau scriere), pagina respectivă trebuie alocată în RAM și conform enunțului curățată (sau umplută cu zero).</div>
<div class="gmail_extra"><div><br></div><div>Da, cele două flaguri sunt "teoretic" echivalente. </div><div><br></div><div>Spor!</div>-- <br>Răzvan Crainea
</div></div>