Am rezolvat problema. Eu doar schimbam zona de protectie. Trebuia sa demapez si
sa remapez in fisierul corespunzator.
________________________________
From: Stanciu Alexandru <[email protected]>
To: "[email protected]" <[email protected]>
Sent: Saturday, April 21, 2012 3:14 PM
Subject: Re: Tema 3 Linux test 24
________________________________
From: Stanciu Alexandru <[email protected]>
To: "[email protected]" <[email protected]>
Sent: Saturday, April 21, 2012 2:36 AM
Subject: Tema 3 Linux test 24
Problema la mine este ca face cele 2 page faulturi, schimb protectiile, din
none in read si din read in write, dar cand e sa copiez continutul din memoria
virtuala in ram, nu-mi vede numarul magic; vede 0. Pentru paginile virtuale
folosesc un vector din stl de page_table_entry; e vreo problema cu asta? se
poate sa nu se actualizeze acel start? Care ar putea fi problema?
Problema e ca pur si simplu, dupa ce dau drepturi de write, nu imi pune la
adresa respectiva numarul MAGIC. Nu inteleg de ce. Am o variabila memory, care
e de tip vm_map_t, care vm_alloc o initializez cu map, paginile virtuale le
pastrez, cum am zis intr-un vector, si cand e ceva, actualizez campurile
potrivite. Chiar daca modific drepturile zonei din memory, sau elementului din
vector corespunzator page faultului, nu-mi vede ce scriu? Trebuie sinconizare?
Problema e ca lucrez cu vector? Care ar fi problema? Ma poate ajuta cineva?
_______________________________________________
http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii