<div dir="ltr"><div>Salutare,</div><div><br></div><div>Am o <b>curiozitate</b>(prioritate scăzută) - <span class="gmail-word">mi</span> se <span class="gmail-word">pare</span> <span class="gmail-word">că</span> <span class="gmail-word">testele</span> nu <span class="gmail-word gmail-modified">verifică</span> un anumit caz, probabil pentru că este greu de simulat, dar cel puțin conceptual, <span class="gmail-word">vă</span> <span class="gmail-word">întreb</span>:</div><div><br></div><div>Corect este <span class="gmail-word">că</span> <span class="gmail-word gmail-modified">dacă</span> trebuie <span class="gmail-word">să</span> zeroiezez o <span class="gmail-word gmail-modified">zonă</span> de memorie, <span class="gmail-word">mai</span> <span class="gmail-word">întăi</span> <span class="gmail-word">să</span> mapez <span class="gmail-word">pagina</span> cu WRITE pentru a <span class="gmail-word">putea</span> zeroiza <span class="gmail-word">și</span> apoi <span class="gmail-word">să</span> <span class="gmail-word">îi</span> <span class="gmail-word">schimb</span> permisiunile <span class="gmail-word">în</span> cele <span class="gmail-word">corespunzătoare</span> segmentului din care face <span class="gmail-word">parte</span>, de acord?<br>Cu toate acestea, <span class="gmail-word gmail-modified">dacă</span> mapez de <span class="gmail-word">la</span> început cu permisiunile segmentului, totul este <span class="gmail-word">în</span> <span class="gmail-word gmail-modified">regulă</span>, trec <span class="gmail-word">testele</span>, pentru <span class="gmail-word">că</span> se testează doar pentru <span class="gmail-word">zona</span> de bss.<br>Exemplul care ar face cea din <span class="gmail-word gmail-modified">urmă</span> implementare <span class="gmail-word">să</span> "pice" ar fi <span class="gmail-word gmail-modified">ca</span> în executabilul pe care vreau <span class="gmail-word">să</span> <span class="gmail-word">îl</span> <span class="gmail-word">încarc</span> <span class="gmail-word">să</span> am un mmap cu READ și ANONYMOUS? <i><b>Alte idei de scenarii?</b></i></div><div><br></div><div><span class="gmail-word">Pentru asistenții indicați pe ocw[0] , puteți</span> vedea codul pt GitLab[1] - liniile 65-85.</div><div><span class="gmail-word gmail-modified">Dacă</span> mapez din <span class="gmail-word">prima</span> cu segment.perm <span class="gmail-word">și</span> <span class="gmail-word">scot</span> mprotect, all good, dar nu <span class="gmail-word">mi</span> se <span class="gmail-word">pare</span> tocmai corect.</div><div><br></div><div>Numai bine,</div><div>Dorin Geman, 331CA<br></div><div><br></div><div>[0] <a href="https://ocw.cs.pub.ro/courses/so/teme/folosire-gitlab#creare_proiect_nou">https://ocw.cs.pub.ro/courses/so/teme/folosire-gitlab#creare_proiect_nou</a></div><div>[1] <a href="https://gitlab.cs.pub.ro/dorin_andrei.geman/l3-so-assignments/blob/master/3-loader/skel-lin/loader/loader.c">https://gitlab.cs.pub.ro/dorin_andrei.geman/l3-so-assignments/blob/master/3-loader/skel-lin/loader/loader.c</a></div></div>