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

vmm.h File Reference


Detailed Description

VMM - The Virtual Machine Monitor. (VMM)

Definition in file vmm.h.

#include <VBox/cdefs.h>
#include <VBox/types.h>
#include <VBox/vmapi.h>
#include <VBox/sup.h>
#include <VBox/log.h>
#include <iprt/stdarg.h>

Go to the source code of this file.

Classes

struct  GCFGMVALUEREQ

Defines

#define VMMIsHwVirtExtForced(pVM)   ((pVM)->fHwVirtExtForced)
#define VMMR0LogFlushDisable(pVCpu)   do { } while(0)
#define VMMR0LogFlushEnable(pVCpu)   do { } while(0)

Typedefs

typedef FNATOMICHANDLER * PFNATOMICHANDLER
typedef FNVMMEMTRENDEZVOUS * PFNVMMEMTRENDEZVOUS
typedef GCFGMVALUEREQPGCFGMVALUEREQ
typedef PVMCPU pVCpu
typedef void * pvUser

Enumerations

enum  VMMCALLRING3 {
  VMMCALLRING3_INVALID = 0, VMMCALLRING3_PDM_LOCK, VMMCALLRING3_PDM_QUEUE_FLUSH, VMMCALLRING3_PGM_LOCK,
  VMMCALLRING3_PGM_POOL_GROW, VMMCALLRING3_PGM_MAP_CHUNK, VMMCALLRING3_PGM_ALLOCATE_HANDY_PAGES, VMMCALLRING3_PGM_ALLOCATE_LARGE_HANDY_PAGE,
  VMMCALLRING3_MMHYPER_LOCK, VMMCALLRING3_REM_REPLAY_HANDLER_NOTIFICATIONS, VMMCALLRING3_VMM_LOGGER_FLUSH, VMMCALLRING3_VM_SET_ERROR,
  VMMCALLRING3_VM_SET_RUNTIME_ERROR, VMMCALLRING3_VM_R0_ASSERTION, VMMCALLRING3_VM_R0_PREEMPT, VMMCALLRING3_32BIT_HACK = 0x7fffffff
}
enum  VMMR0OPERATION {
  VMMR0_DO_RAW_RUN = SUP_VMMR0_DO_RAW_RUN, VMMR0_DO_HWACC_RUN = SUP_VMMR0_DO_HWACC_RUN, VMMR0_DO_NOP = SUP_VMMR0_DO_NOP, VMMR0_DO_SLOW_NOP,
  VMMR0_DO_GVMM_CREATE_VM, VMMR0_DO_GVMM_DESTROY_VM, VMMR0_DO_GVMM_SCHED_HALT, VMMR0_DO_GVMM_SCHED_WAKE_UP,
  VMMR0_DO_GVMM_SCHED_POKE, VMMR0_DO_GVMM_SCHED_WAKE_UP_AND_POKE_CPUS, VMMR0_DO_GVMM_SCHED_POLL, VMMR0_DO_GVMM_QUERY_STATISTICS,
  VMMR0_DO_GVMM_RESET_STATISTICS, VMMR0_DO_GVMM_REGISTER_VMCPU, VMMR0_DO_VMMR0_INIT, VMMR0_DO_VMMR0_TERM,
  VMMR0_DO_HWACC_SETUP_VM, VMMR0_DO_HWACC_ENABLE, VMMR0_DO_CALL_HYPERVISOR, VMMR0_DO_PGM_ALLOCATE_HANDY_PAGES,
  VMMR0_DO_PGM_ALLOCATE_LARGE_HANDY_PAGE, VMMR0_DO_GMM_INITIAL_RESERVATION, VMMR0_DO_GMM_UPDATE_RESERVATION, VMMR0_DO_GMM_ALLOCATE_PAGES,
  VMMR0_DO_GMM_FREE_PAGES, VMMR0_DO_GMM_FREE_LARGE_PAGE, VMMR0_DO_GMM_QUERY_HYPERVISOR_MEM_STATS, VMMR0_DO_GMM_QUERY_MEM_STATS,
  VMMR0_DO_GMM_BALLOONED_PAGES, VMMR0_DO_GMM_MAP_UNMAP_CHUNK, VMMR0_DO_GMM_SEED_CHUNK, VMMR0_DO_GMM_REGISTER_SHARED_MODULE,
  VMMR0_DO_GMM_UNREGISTER_SHARED_MODULE, VMMR0_DO_GMM_RESET_SHARED_MODULES, VMMR0_DO_GMM_CHECK_SHARED_MODULES, VMMR0_DO_GCFGM_SET_VALUE,
  VMMR0_DO_GCFGM_QUERY_VALUE, VMMR0_DO_PDM_DRIVER_CALL_REQ_HANDLER, VMMR0_DO_SRV_START, VMMR0_DO_INTNET_OPEN,
  VMMR0_DO_INTNET_IF_CLOSE, VMMR0_DO_INTNET_IF_GET_BUFFER_PTRS, VMMR0_DO_INTNET_IF_SET_PROMISCUOUS_MODE, VMMR0_DO_INTNET_IF_SET_MAC_ADDRESS,
  VMMR0_DO_INTNET_IF_SET_ACTIVE, VMMR0_DO_INTNET_IF_SEND, VMMR0_DO_INTNET_IF_WAIT, VMMR0_DO_SRV_END,
  VMMR0_DO_TESTS, VMMR0_DO_TEST_SWITCHER3264, VMMR0_DO_32BIT_HACK = 0x7fffffff
}
enum  VMMSWITCHER {
  VMMSWITCHER_INVALID = 0, VMMSWITCHER_32_TO_32, VMMSWITCHER_32_TO_PAE, VMMSWITCHER_32_TO_AMD64,
  VMMSWITCHER_PAE_TO_32, VMMSWITCHER_PAE_TO_PAE, VMMSWITCHER_PAE_TO_AMD64, VMMSWITCHER_AMD64_TO_32,
  VMMSWITCHER_AMD64_TO_PAE, VMMSWITCHER_AMD64_TO_AMD64, VMMSWITCHER_MAX, VMMSWITCHER_32BIT_HACK = 0x7fffffff
}

Functions

typedef DECLCALLBACK (VBOXSTRICTRC) FNVMMEMTRENDEZVOUS(PVM pVM
typedef DECLCALLBACK (int) FNATOMICHANDLER(PVM pVM
 VMMDECL (void) VMMTrashVolatileXMMRegs(void)
 VMMDECL (VMMSWITCHER) VMMGetSwitcher(PVM pVM)
 VMMDECL (uint32_t) VMMGetSvnRev(void)
 VMMDECL (PVMCPU) VMMGetCpu(PVM pVM)
 VMMDECL (RTRCPTR) VMMGetStackRC(PVM pVM)
 VMMR0DECL (void) VMMR0EntryFast(PVM pVM
 VMMR0DECL (int) VMMR0EntryInt(PVM pVM

Variables

VMMR0OPERATION enmOperation
VMCPUID idCpu
PGVM pGVM
VMCPUID VMMR0OPERATION
PSUPVMMR0REQHDR 
pReq
VMCPUID VMMR0OPERATION
PSUPVMMR0REQHDR uint64_t 
PSUPDRVSESSION
VMMR0OPERATION void * pvArg
VMCPUID VMMR0OPERATION
PSUPVMMR0REQHDR uint64_t 
u64Arg


Generated by  Doxygen 1.6.0   Back to index