[so] Tema 3 - probleme testare (the nightmare continues)

Azure Dragon the_first_azure_dragon at yahoo.com
Sun May 11 11:35:33 EEST 2008


for (i = 0; i <  physicalPages * pageSize / sizeof (DWORD); i++) {
        ReadFile (
            ramHandle,
            &readValue,
            sizeof (DWORD),
            &bytes,
            NULL);
        if (readValue != RAM_POISON) {
            check = 0;
            break;
        }
    }

Din tester de la CheckRam0. Ok,correct me if i'm wrong dar asta nu verifica tot fisierul ram daca contine doar RAM_POISON si daca nu, pica testul? Nu de alta dar am incercat ca la prima accesare a unei pagini virtuale,la aducerea ei in RAM sa fac continutul paginii 0. Si pica testul. Daca initializez pagina cu ce am eu in RAM la locul respectiv trece fara probleme.

In testul 3 unde se verifica RamClean e cam asa:
PoisonRamSwap;
Citeste primele 3 pagini,vor cauza fault si vor fi toate aduse in memorie,fiind pt prima oara accesate.
RamSync.
CheckRam0.

Daca le facem 0 la prima accesare sigur va pica testul de RamClean,pt ca nu vor contine nici o valoare RAM_POISON.
Acu sper ca nu am gresit ceva prin rationamentele mele :D..dar chiar ma intreb cum il trece daca faci 0 pagina ? Sau nu te-ai referit la asta, si atunci e my bad :D.


----- Original Message ----
From: Alexandru Mosoi <brtzsnr at gmail.com>
To: Sisteme de Operare <so at cursuri.cs.pub.ro>
Sent: Sunday, May 11, 2008 4:17:08 AM
Subject: Re: [so] Tema 3 - probleme testare (the nightmare continues)

primul pas in rezolvarea bugului este.... somnul :)

ram_clean() verifica ca anumite pagini din memorie sunt 0 (uita-te peste test.c la check_ram0 si locul unde este folosita). ideea e ca atunci cand accesezi o pagina pentru prima data, ea trebuie curatata (4096 x 0). banuiesc ca uiti asta si aduci in ram niste garbage.



2008/5/11 George Dita <george.dita at gmail.com>:

Da, am incercat, dar nu stiu cum pot sa trec peste segmentation faulturile din librariile mele. In final am depistat problema:  nu aveam setat read_write pe ram cand incercam sa fac copierea. Din pacate tot imi pica testul ram_clean. Daca stii cumva ce ar trebui sa faca acel test te rog nu ezita sa imi spui. De mentionat ca este singurul test pe care nu il trece.

-- 
George Dita 
_______________________________________________
so mailing list
so at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so




-- 
Alexandru Moşoi
http://alexandru.mosoi.googlepages.com

Please avoid sending me Word or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html 


      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/so/attachments/20080511/6e00a3b4/attachment.html 


More information about the so mailing list