#include <geekos/string.h>
#include <geekos/vmm_mem.h>
+//#include <geekos/vmm_paging.h>
+#include <geekos/vm_guest.h>
/* utility definitions */
#define PrintDebug(fmt, args...) \
-typedef struct guest_info {
- ullong_t rip;
- ullong_t rsp;
-
- vmm_mem_list_t mem_list;
- vmm_mem_layout_t mem_layout;
- // device_map
-
- void * vmm_data;
-} guest_info_t;
void (*print_debug)(const char * format, ...);
void (*print_trace)(const char * format, ...);
- void *(*Allocate_Pages)(int numPages);
- void (*Free_Page)(void * page);
+ void *(*allocate_pages)(int numPages);
+ void (*free_page)(void * page);
void *(*malloc)(uint_t size);
void (*free)(void * addr);
+ void *(*paddr_to_vaddr)(void *addr);
+ void *(*vaddr_to_paddr)(void *addr);
+
void (*start_kernel_thread)(); // include pointer to function
};