X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_types.h;h=e4f8ed40f73d209ee85706ea02d90038b0caccca;hb=d57b407f9d05a21303bc2c94cbd5142de130be48;hp=f885bf217d7adf80e7f286113c72367d56f90004;hpb=a109eb919a162bd7de58d62020801bc2e633be50;p=palacios.git diff --git a/palacios/include/palacios/vmm_types.h b/palacios/include/palacios/vmm_types.h index f885bf2..e4f8ed4 100644 --- a/palacios/include/palacios/vmm_types.h +++ b/palacios/include/palacios/vmm_types.h @@ -1,25 +1,85 @@ +/* + * This file is part of the Palacios Virtual Machine Monitor developed + * by the V3VEE Project with funding from the United States National + * Science Foundation and the Department of Energy. + * + * The V3VEE Project is a joint project between Northwestern University + * and the University of New Mexico. You can find out more at + * http://www.v3vee.org + * + * Copyright (c) 2008, Jack Lange + * Copyright (c) 2008, The V3VEE Project + * All rights reserved. + * + * Author: Jack Lange + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "V3VEE_LICENSE". + */ + #ifndef __VMM_TYPES_H #define __VMM_TYPES_H -#include +#ifdef __V3VEE__ +//#include -/* -typedef signed char s8; + + +typedef enum {SHADOW_PAGING, NESTED_PAGING} v3_paging_mode_t; +typedef enum {VM_INVALID, VM_RUNNING, VM_STOPPED, VM_PAUSED, VM_ERROR, VM_SIMULATING, VM_RESETTING } v3_vm_operating_mode_t; +typedef enum {CORE_INVALID, CORE_RUNNING, CORE_STOPPED, CORE_RESETTING } v3_core_operating_mode_t; + +typedef enum {REAL, /*UNREAL,*/ PROTECTED, PROTECTED_PAE, LONG, LONG_32_COMPAT, LONG_16_COMPAT} v3_cpu_mode_t; +typedef enum {PHYSICAL_MEM, VIRTUAL_MEM} v3_mem_mode_t; + + +#define NULL ((void *)0) + + +typedef signed char schar_t; typedef unsigned char uchar_t; -typedef signed short s16; +typedef signed short sshort_t; typedef unsigned short ushort_t; -typedef signed int s32; +typedef signed int sint_t; typedef unsigned int uint_t; -typedef signed long long s64; +typedef signed long long sllong_t; typedef unsigned long long ullong_t; +typedef signed long slong_t; typedef unsigned long ulong_t; typedef unsigned long size_t; +typedef long ssize_t; + +#define false 0 +#define true 1 +typedef uchar_t bool; + + + +typedef unsigned long long uint64_t; +typedef long long sint64_t; + +typedef unsigned int uint32_t; +typedef int sint32_t; + + +typedef unsigned short uint16_t; +typedef short sint16_t; + +typedef unsigned char uint8_t; +typedef char sint8_t; + +typedef ulong_t addr_t; +typedef ullong_t v3_reg_t; + +typedef uint8_t v3_xmm_reg_t[16]; +typedef uint8_t v3_fp_mmx_reg_t[10]; + +#endif /* ! __V3VEE__ */ -*/ #endif