Step 2

In step 2, a general protection exception occurs when attempting to access 1200 integers for read/write. Since each addressable memory location is a double word (4 bytes), there are a maximum of 1024 addressable locations in a single page. Attempting to access 1200 integers resulted in a general protection exception when the 1025th location was accessed.

Should the program have done a second DosAllocMem, the page following the page containing the memory object used in the exercise would have also been valid in the process address space. The protection exception would then not have been generated. 32-bit programs see the process address as a single segment.


[Back: Step 1]
[Next: Step 3]