<div>Cred ca inteleg ce vrei sa spui... Eu mapez initial o zona de virt_pages, peste care &quot;remapez&quot; pagina cu pagina fisierul RAM? Aducerea in memorie a unei pagini din swap se face in urmatorii pasi?<br></div><div>
1. Copierea in swap a unei pagini fizice (alese in functie de algoritmul de swaping).</div><div>2. Demaparea acesteia</div><div>3. Remaparea acesteia peste &quot;adresa&quot; paginii virtuale care trebuie adusa din memorie.</div>
<div>4. Copierea din swap la adresa nou mapata</div><div>Daca da, atunci cum fac exact aceasta remapare. In man mmap zice asa:</div><div></div><div>MAP_FIXED<br>       Don&#39;t interpret addr as a hint: place  the  mapping  at  exactly<br>
       that address.  addr must be a multiple of the page size.  If the<br>       memory region specified by addr and len overlaps  pages  of  any<br>       existing  mapping(s),  then  the overlapped part of the existing<br>
       mapping(s) will be discarded.  If the specified  address  cannot<br>       be  used,  mmap()  will fail.  Because requiring a fixed address<br>       for a mapping is less portable, the use of this option  is  dis-<br>
       couraged.<br></div><div></div><div>Folosesc MAP_FIXED si suprascriu vechea mapare? Este... safe?</div><div>Sau exista alta metoda de a rezerva un spatiu continuu de memorie?<br></div><div></div><div>Andrei B.</div>
<div></div><div class="gmail_quote">2009/4/21 George Milescu <span dir="ltr">&lt;<a href="mailto:george.milescu@gmail.com">george.milescu@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
2009/4/21 Andrei Bucur &lt;<a href="mailto:andrei.bucur@gmail.com">andrei.bucur@gmail.com</a>&gt;:<br>
<div class="im">&gt; Salut!<br>
&gt; &quot;Paginile de memorie virtuala (din spatiul de adresa al procesului) se vor<br>
&gt; mapa direct peste fișierul de RAM folosind apelurile mmap si MapViewOfFile.&quot;<br>
&gt; Nu inteleg cum as putea sa fac mapare directa a memoriei virtuala care are<br>
&gt; virt_pages pagini peste fisierul RAM care contine phys_pages pagini.<br>
<br>
</div>Salut.<br>
<br>
Maparea poti sa o faci pagina - la - pagina, nu to fisierul RAM &quot;in bloc&quot;.<br>
<br>
--<br>
<font color="#888888">George Milescu<br>
</font><div><div class="h5">_______________________________________________<br>
so mailing list<br>
<a href="mailto:so@cursuri.cs.pub.ro">so@cursuri.cs.pub.ro</a><br>
<a href="http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so" target="_blank">http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so</a><br>
</div></div></blockquote></div><br><div><br></div>