Re:Memory Management: non-contineuos/contineuos
Posted: Thu Apr 07, 2005 5:32 am
What the...looks like you're right for the GDTR, it holds a _linear_ address.No. Look at section 2.4.1 and 2.4.3 in the Intel manuals: both GDTR and IDTR contains linear address, not physical address. That clearly means (according to figure 3-1) that this address still has to go through paging system before resolved.GDT calculations are based on physical references and is also done before any paging and (of course) any segmentation is done.
(don't take it hardly: i did the same mistake one year ago)
But what about the base address in a segment descriptor? I'm fairly sure it holds a physical addres.
Lets say for instance that you have segment descriptor for a data segment that is read-only, if it refers to a read/write page, it will be read-only, not read/write.What do you mean with "a GDT permission" ? and how should i interprete "override" ? ... If a segment descriptor tells i can write to a segment but the page isn't writable, i cannot write. And similarily, if a segment tells i cannot write, i cannot write regardless of what the page can do. So you actually AND permissions together to know what you can do.A GDT permission can override a page permission, but not the contrary.
Indeed, IDT works as GDT (that is, affected by paging)Same things apply for IDT.
[quote
no reference to "PDT" found in the intel manual. What are you talking about, exactly ? page tables ?And as for PDT...as long as they are physically 4096 byte alligned, they can be non-continuous.
Page Directory Tables and Page tables.