Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Zygoma::ia32::PageTableEntry Class Reference

#include <pagetable.h>

Inheritance diagram for Zygoma::ia32::PageTableEntry:

Inheritance graph
[legend]
Collaboration diagram for Zygoma::ia32::PageTableEntry:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Protection {
  kREAD_ONLY = 0,
  kREAD_WRITE = 1
}
enum  Privilege {
  kSUPERVISOR_PRIVILEGE = 0,
  kUSER_PRIVILEGE = 1
}

Public Member Functions

 PageTableEntry (void *baseAddress=0, Protection protection=kREAD_WRITE, Privilege privilege=kSUPERVISOR_PRIVILEGE)
bool isDirty () const
u32 baseAddress () const
void setBaseAddress (void *baseAddress)
void setIsPresent (bool isPresent)
void setProtection (Protection protection)
void setPrivilege (Privilege privilege)
bool wasAccessed () const

Static Public Member Functions

static u32 addressToBase (void *address)
 Converts a 32-bit address into a 10-bit selector for use in a page table or page directory.

Protected Attributes

u32 m_baseAddress: 20
u32 m_avail: 3
u32 m_isGlobal: 1
u32 m_pageSize: 1
u32 m_isDirty: 1
u32 m_wasAccessed: 1
u32 m_cacheDisabled: 1
u32 m_writeThrough: 1
u32 m_userMode: 1
u32 m_readWrite: 1
u32 m_isPresent: 1

Member Enumeration Documentation

enum Zygoma::ia32::PageBaseEntry::Privilege [inherited]
 

Enumeration values:
kSUPERVISOR_PRIVILEGE 
kUSER_PRIVILEGE 

enum Zygoma::ia32::PageBaseEntry::Protection [inherited]
 

Enumeration values:
kREAD_ONLY 
kREAD_WRITE 


Constructor & Destructor Documentation

Zygoma::ia32::PageTableEntry::PageTableEntry void *  baseAddress = 0,
Protection  protection = kREAD_WRITE,
Privilege  privilege = kSUPERVISOR_PRIVILEGE
[inline]
 


Member Function Documentation

static u32 Zygoma::ia32::PageBaseEntry::addressToBase void *  address  )  [inline, static, inherited]
 

Converts a 32-bit address into a 10-bit selector for use in a page table or page directory.

u32 Zygoma::ia32::PageBaseEntry::baseAddress  )  const [inline, inherited]
 

bool Zygoma::ia32::PageTableEntry::isDirty  )  const [inline]
 

void Zygoma::ia32::PageBaseEntry::setBaseAddress void *  baseAddress  )  [inline, inherited]
 

Here is the call graph for this function:

void Zygoma::ia32::PageBaseEntry::setIsPresent bool  isPresent  )  [inline, inherited]
 

void Zygoma::ia32::PageBaseEntry::setPrivilege Privilege  privilege  )  [inline, inherited]
 

void Zygoma::ia32::PageBaseEntry::setProtection Protection  protection  )  [inline, inherited]
 

bool Zygoma::ia32::PageBaseEntry::wasAccessed  )  const [inline, inherited]
 


Member Data Documentation

u32 Zygoma::ia32::PageBaseEntry::m_avail [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_baseAddress [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_cacheDisabled [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_isDirty [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_isGlobal [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_isPresent [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_pageSize [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_readWrite [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_userMode [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_wasAccessed [protected, inherited]
 

u32 Zygoma::ia32::PageBaseEntry::m_writeThrough [protected, inherited]
 


The documentation for this class was generated from the following file:
Generated on Fri Sep 2 10:45:15 2005 for zygoma by doxygen 1.4.2