GDT based questions
Posted: Wed Aug 06, 2008 7:24 pm
What would happen if your GDT placed a section at the 3gig mark and the user only had 2gig? What happens to the latter half of the 2 gig data section if a gig is missing?
When two sections overlap which DPL is followed?
Both the setups explained in the GDT tutorial seem sketchy to my under informed brain. Flat setup especially has no restrictions anywhere in the memory. Meaning that ring 0 data is stored next to and can be accessed by user level programs. Shouldnt some sections be set up for 0-2 ring only access? Or is there something in paging that is going to protect my kernel's stacks from open corruption?
When two sections overlap which DPL is followed?
Ummmm.... I check the Intel manual and thats not a valid choice (assuming 0x denotes it as hexidecimal). Infact that would not fit in the 4 bits allowed. Im pretty sure its means 0010b or 0x2 which is readable/writeable data.GDT Tutorial wrote:// Selector 0x10 will be our data
Both the setups explained in the GDT tutorial seem sketchy to my under informed brain. Flat setup especially has no restrictions anywhere in the memory. Meaning that ring 0 data is stored next to and can be accessed by user level programs. Shouldnt some sections be set up for 0-2 ring only access? Or is there something in paging that is going to protect my kernel's stacks from open corruption?