On Fri, 31 Mar 2000, Parker, Ron wrote:

> Perhaps I missed something in the reading, but Kevin said, "They are
> exclusive enough". Which I would agree with looking at names of the defines.
> However, I think the point was that the values used are not exclusive,
> rather in their current form they may be or'd together to form combinations.
> I don't think a page can be GuestPageGDT|GuestPageLDT. If I understand
> properly, what Jullian was getting at was that some of these could be
> changed like this:
> 
> // Attributes which change dynamically, depending on the
> // code that is running at the time.
> #define GuestPageData             0x0010 // Has been accessed with R/W
> #define GuestPageCode             0x0020 // Has associated prescanned code
> #define GuestPageHostSwapEligible 0x0040 // Page marked so host can swap
> #define GuestPagePDir             0x0080 // Contains Page Directory
> #define GuestPagePTbl             0x0100 // Contains a Page Table
> #define GuestPageIDT              0x0180 // Contains current IDT
> #define GuestPageGDT              0x0200 // Contains current GDT
> #define GuestPageLDT              0x0280 // Contains current LDT
> #define GuestPageTSS              0x0300 // Contains current TSS

What makes you think a page can't contain a gdt and ldt?
Might not be standard practice, but it's certainly doable.
Same with some other structures.  I don't want to dirty
up the code to save a few bits unless we need to.

-Kevin


Reply via email to