X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_types.h;h=0dee998aac2f536d527f980c9a217be5b3164cc0;hb=57de08049d9a345445d26741c5ee0f7f9e5c2fcc;hp=6f1aadef5ab7eab6bf97fc34f2dac7baee68b8dc;hpb=20ddb33d7c999c03239f76e76e202c50b4740f8c;p=palacios.git diff --git a/palacios/include/palacios/vmm_types.h b/palacios/include/palacios/vmm_types.h index 6f1aade..0dee998 100644 --- a/palacios/include/palacios/vmm_types.h +++ b/palacios/include/palacios/vmm_types.h @@ -1,10 +1,38 @@ -/* (c) 2008, Jack Lange */ -/* (c) 2008, The V3VEE Project */ +/* + * 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 #ifdef __V3VEE__ +#include + + + + +typedef enum {SHADOW_PAGING, NESTED_PAGING} v3_paging_mode_t; +typedef enum {VM_RUNNING, VM_STOPPED, VM_SUSPENDED, VM_ERROR, VM_EMULATING} v3_vm_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; + typedef signed char schar_t; @@ -22,7 +50,7 @@ typedef unsigned long long ullong_t; typedef signed long slong_t; typedef unsigned long ulong_t; -typedef unsigned long size_t; +//typedef unsigned long size_t; #define false 0 @@ -45,7 +73,7 @@ typedef unsigned char uint8_t; typedef char sint8_t; typedef ulong_t addr_t; - -#endif +typedef ullong_t v3_reg_t; +#endif // ! __V3VEE__ #endif