[so] [Tema5] WriteRead
    Dragan Stefan 
    ph0enix1810 at gmail.com
       
    Tue Dec 26 20:35:49 EET 2006
    
    
  
In testul pentru scriere si apoi citire vad se asteapta 2 page fault-uri la
scriere. Nu inteleg de ce? Eu am facut ca la citire sa setez PAGE_READONLY
si la scriere PAGE_READWRITE intr-un singur PF si a mers bine pana am rulat
testul :P.
 
static void WriteRead (DWORD pageId, int expected, DWORD pageOffset)
{
      DWORD memoryValue;
      int expectedHandlerVar;
 
      /* write - two faults */
      gpfHandlerVar = 0;
      expectedHandlerVar = (expected == PAGE_FAULT) ? 2 : 0;
      memoryValue = pageId << 16 | pageOffset;
      * (PDWORD) ((PBYTE) baseAddress + pageId * pageSize + pageOffset) =
memoryValue;
      if (expected != NO_CHECK)
            test ("Access_", gpfHandlerVar == expectedHandlerVar);
 
      /* read - no faults */
      gpfHandlerVar = 0;
      expectedHandlerVar = 0;
      memoryValue = * (PDWORD) ((PBYTE) baseAddress + pageId * pageSize +
pageOffset);
      if (expected != NO_CHECK)
            test ("Access", gpfHandlerVar == expectedHandlerVar);
} 
 
Dragan Stefan
0723060629
http://ph0enix1810.lx.ro <http://ph0enix1810.lx.ro/> 
Desteapta-te romane!
Salveaza capra vecinului!
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/so/attachments/20061226/579d9c72/attachment.htm
    
    
More information about the so
mailing list