Logo Search packages:      
Sourcecode: virtualbox-ose version File versions  Download package

pgm.h File Reference


Detailed Description

PGM - Page Monitor / Monitor. (VMM)

Definition in file pgm.h.

#include <VBox/cdefs.h>
#include <VBox/types.h>
#include <VBox/sup.h>
#include <VBox/vmapi.h>
#include <VBox/x86.h>
#include <VBox/hwacc_vmx.h>
#include <VBox/VMMDev.h>
#include <VBox/gmm.h>
#include <VBox/feature.h>

Go to the source code of this file.

Defines

#define PGM_DYNAMIC_CHUNK_BASE_MASK   (~(RTGCPHYS)PGM_DYNAMIC_CHUNK_OFFSET_MASK)
#define PGM_DYNAMIC_CHUNK_OFFSET_MASK   0xfffff
#define PGM_DYNAMIC_CHUNK_SHIFT   20
#define PGM_DYNAMIC_CHUNK_SIZE   (1*1024*1024)
#define PGMIsUsingLargePages(pVM)   (pVM->fUseLargePages)
#define PGMMODE_IS_LONG_MODE(enmMode)   ((enmMode) == PGMMODE_AMD64_NX || (enmMode) == PGMMODE_AMD64)
#define PGMMODE_WITH_PAGING(enmMode)   ((enmMode) >= PGMMODE_32_BIT)
#define PGMROMPROT_IS_ROM(enmProt)

Typedefs

typedef RTGCPHYS void void size_t cbBuf
typedef RTGCPHYS void void
size_t PGMACCESSTYPE 
enmAccessType
typedef RTGCPTR RTGCPTR
PGMRELOCATECALL 
enmMode
typedef RTGCPHYS GCPhys
typedef RTGCUINT PCPUMCTXCORE
RTGCPTR RTGCPHYS 
GCPhysFault
typedef RTGCPTR GCPtr
typedef RTGCPTR RTGCPTR GCPtrNew
typedef RTGCPTR GCPtrOld
typedef RTGCUINT PCPUMCTXCORE
RTGCPTR RTGCPTR uintptr_t 
offRange
typedef FNPGMR0PHYSHANDLER * PFNPGMR0PHYSHANDLER
typedef FNPGMR3PHYSHANDLER * PFNPGMR3PHYSHANDLER
typedef FNPGMR3VIRTHANDLER * PFNPGMR3VIRTHANDLER
typedef FNPGMR3VIRTINVALIDATE * PFNPGMR3VIRTINVALIDATE
typedef FNPGMRCPHYSHANDLER * PFNPGMRCPHYSHANDLER
typedef FNPGMRCVIRTHANDLER * PFNPGMRCVIRTHANDLER
typedef FNPGMRELOCATE * PFNPGMRELOCATE
typedef RTGCUINT PCPUMCTXCORE pRegFrame
typedef RTGCPHYS void void * pvBuf
typedef RTGCUINT PCPUMCTXCORE
RTGCPTR 
pvFault
typedef RTGCPHYS void * pvPhys
typedef RTGCPTR void * pvPtr
typedef RTGCUINT PCPUMCTXCORE
RTGCPTR RTGCPTR 
pvRange
typedef RTGCPTR RTGCPTR
PGMRELOCATECALL void * 
pvUser
typedef RTGCUINT uErrorCode

Enumerations

enum  PGMACCESSTYPE { PGMACCESSTYPE_READ = 1, PGMACCESSTYPE_WRITE }
enum  PGMMODE {
  PGMMODE_INVALID = 0, PGMMODE_REAL, PGMMODE_PROTECTED, PGMMODE_32_BIT,
  PGMMODE_PAE, PGMMODE_PAE_NX, PGMMODE_AMD64, PGMMODE_AMD64_NX,
  PGMMODE_NESTED, PGMMODE_EPT, PGMMODE_MAX, PGMMODE_32BIT_HACK = 0x7fffffff
}
enum  PGMRELOCATECALL { PGMRELOCATECALL_SUGGEST = 1, PGMRELOCATECALL_RELOCATE }
enum  PGMVIRTHANDLERTYPE { PGMVIRTHANDLERTYPE_WRITE = 1, PGMVIRTHANDLERTYPE_ALL, PGMVIRTHANDLERTYPE_HYPERVISOR }
enum  PGMPHYSHANDLERTYPE { PGMPHYSHANDLERTYPE_MMIO = 1, PGMPHYSHANDLERTYPE_PHYSICAL_WRITE, PGMPHYSHANDLERTYPE_PHYSICAL_ALL }

Functions

typedef DECLCALLBACK (int) FNPGMRCPHYSHANDLER(PVM pVM
typedef DECLCALLBACK (bool) FNPGMRELOCATE(PVM pVM
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR 
R0PTRTYPE (PFNPGMR0PHYSHANDLER) pfnHandlerR0
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR RTR0PTR
RTRCPTR 
R3PTRTYPE (const char *) pszDesc)
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS 
R3PTRTYPE (PFNPGMR3PHYSHANDLER) pfnHandlerR3
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR RTR0PTR 
RCPTRTYPE (PFNPGMRCPHYSHANDLER) pfnHandlerRC
 VMMDECL (const char *) PGMGetModeName(PGMMODE enmMode)
 VMMDECL (PGMMODE) PGMGetGuestMode(PVMCPU pVCpu)
 VMMDECL (X86PDPE) PGMGstGetPaePDPtr(PVMCPU pVCpu
 VMMDECL (RTHCPHYS) PGMGetHyperCR3(PVMCPU pVCpu)
 VMMDECL (void) PGMDeregisterStringFormatTypes(void)
 VMMDECL (int) PGMRegisterStringFormatTypes(void)
 VMMDECL (bool) PGMIsLocked(PVM pVM)

Variables

RTGCPTR Addr
RTGCPTR uint64_t cb
RTGCPTR RTHCPHYS uint32_t cbPages
RTGCPHYS RTUINT cbRange
RTGCPHYS void size_t cbRead
RTGCPTR uint32_t cbSize
RTGCPHYS const void size_t cbWrite
uint64_t cr0
uint64_t cr3
uint64_t uint64_t uint64_t cr4
uint64_t uint64_t uint64_t efer
PGMMODE enmShadowMode
PGMPHYSHANDLERTYPE enmType
RTGCPTR uint32_t uint32_t fAccess
RTGCPTR RTHCPHYS uint32_t unsigned fFlags
uint64_t bool fGlobal
RTGCPTR size_t uint64_t uint64_t fMask
PCPUMCTXCORE void RTGCUINTPTR
size_t bool 
fRaiseTrap
bool fUseLargePages
RTGCPHYS GCPhys1
RTGCPHYS RTGCPHYS GCPhys2
RTGCPHYS GCPhysCurrent
RTGCPHYS GCPhysDst
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS 
GCPhysLast
RTGCPHYS RTGCPHYS GCPhysPage
RTGCPHYS RTGCPHYS RTGCPHYS GCPhysPageRemap
RTGCPHYS RTGCPHYS GCPhysSplit
void RTGCPHYS GCPhysSrc
RTGCPTR GCPtrDst
RTGCPTR GCPtrPage
void RTGCPTR GCPtrSrc
RTGCPTR RTHCPHYS HCPhys
RTGCPHYS RTGCPHYS RTHCPHYS HCPhysPageRemap
unsigned iPdPt
PCPUMCTXCORE pCtxCore
RTGCPTR uint64_t * pfFlags
RTGCPTR uint64_t PRTGCPHYS pGCPhys
RTGCPTR uint64_t PRTHCPHYS pHCPhys
RTGCPHYS void PPGMPAGEMAPLOCK pLock
RTGCPHYS void ** ppv
RTGCPHYS RTUINT PRTR3PTR pR3Ptr
PVMCPU pVCpu
void * pvDst
RTGCPHYS const void * pvSrc
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR RTR0PTR 
pvUserR0
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR 
pvUserR3
PGMPHYSHANDLERTYPE RTGCPHYS
RTGCPHYS RTR3PTR RTR0PTR
RTRCPTR 
pvUserRC
RTGCUINT uErr


Generated by  Doxygen 1.6.0   Back to index