X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=misc%2Ftest_vm%2Finclude%2Fgeekos%2Fdefs.h;fp=misc%2Ftest_vm%2Finclude%2Fgeekos%2Fdefs.h;h=07981f7fae56043f42d016d8f8fa72b251830635;hp=0000000000000000000000000000000000000000;hb=ddc16b0737cf58f7aa90a69c6652cdf4090aec51;hpb=626595465a2c6987606a6bc697df65130ad8c2d3 diff --git a/misc/test_vm/include/geekos/defs.h b/misc/test_vm/include/geekos/defs.h new file mode 100644 index 0000000..07981f7 --- /dev/null +++ b/misc/test_vm/include/geekos/defs.h @@ -0,0 +1,113 @@ +/* + * Misc. kernel definitions + * Copyright (c) 2001,2004 David H. Hovemeyer + * $Revision: 1.1 $ + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "COPYING". + */ + +#ifndef GEEKOS_DEFS_H +#define GEEKOS_DEFS_H + + + + +/* + * Kernel code and data segment selectors. + * Keep these up to date with defs.asm. + */ +#define KERNEL_CS (1<<3) +#define KERNEL_DS (2<<3) + + +/* + * Address where kernel is loaded INITIALLY + * we move it up in memory soon + */ +#define KERNEL_START_ADDR 0x100000 + +/* + * Kernel and user privilege levels + */ +#define KERNEL_PRIVILEGE 0 +#define USER_PRIVILEGE 3 + + +/* + * Software interrupt for syscalls + */ +#define SYSCALL_INT 0x90 + +/* + * The windows versions of gcc use slightly different + * names for the bss begin and end symbols than the Linux version. + */ +#if defined(GNU_WIN32) +# define BSS_START _bss_start__ +# define BSS_END _bss_end__ +#else +# define BSS_START __bss_start +# define BSS_END end +#endif + +/* + * x86 has 4096 byte pages + */ +#define PAGE_POWER 12 +#define PAGE_SIZE (1<