Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


*** empty log message ***
[palacios.git] / palacios / include / geekos / vmm_mem.h
1 #ifndef __VMM_MEM_H
2 #define __VMM_MEM_H
3
4
5 #include <geekos/ktypes.h>
6
7
8 typedef struct mem_region {
9   ullong_t addr;
10   uint_t numPages;
11
12   struct mem_region * next;
13   struct mem_region * prev;
14 } mem_region_t;
15
16
17 typedef struct vmm_mem_map {
18   uint_t num_pages;
19   bool long_mode;
20
21   uint_t num_regions;
22   mem_region_t * head;
23   mem_region_t * tail;
24 } vmm_mem_map_t;
25
26
27 void init_mem_map(vmm_mem_map_t * map);
28
29 void add_mem_map_pages(vmm_mem_map_t * map, ullong_t addr, uint_t numPages);
30 int remove_mem_map_pages(vmm_mem_map_t * map, ullong_t addr, uint_t numPages);
31
32
33
34 #endif