1 |
/* VM map. |
/* VM map. |
2 |
Copyright 1999, 2000, 2001 Johan Rydberg, jrydberg@opencores.org. |
Copyright 1999, 2000, 2001, 2002 Johan Rydberg, jrydberg@rtmk.org. |
3 |
|
|
4 |
This program is free software; you can redistribute it and/or modify |
This program is free software; you can redistribute it and/or modify |
5 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
48 |
vm_prot_t protection; /* Protection bits. */ |
vm_prot_t protection; /* Protection bits. */ |
49 |
vm_prot_t max_protection; /* Maximum protection bits. */ |
vm_prot_t max_protection; /* Maximum protection bits. */ |
50 |
vm_inherit_t inherit; /* Inherit flags. */ |
vm_inherit_t inherit; /* Inherit flags. */ |
51 |
bool copy_on_write_p; /* Copy-on-write shared? */ |
bool copy_on_write_p: 1; /* Copy-on-write shared? */ |
52 |
bool submap_p; /* Entry is a submap? */ |
bool submap_p: 1; /* Entry is a submap? */ |
53 |
|
bool static_p: 1; /* Static entry? */ |
54 |
}; |
}; |
55 |
|
|
56 |
/* Address space. ??? more comments here. */ |
/* Address space. ??? more comments here. */ |
64 |
struct pmap *pmap; /* Physical map. */ |
struct pmap *pmap; /* Physical map. */ |
65 |
vm_address_t min; /* Start of address space. */ |
vm_address_t min; /* Start of address space. */ |
66 |
vm_address_t max; /* Top of address space. */ |
vm_address_t max; /* Top of address space. */ |
67 |
|
unsigned int flags; /* Flags for map. */ |
68 |
|
#define VM_MAP_INTRSAFE 0x01 /* Interrupt safe. */ |
69 |
}; |
}; |
70 |
|
|
71 |
/* Convenience macros. */ |
/* Convenience macros. */ |
90 |
vm_address_t max); |
vm_address_t max); |
91 |
|
|
92 |
|
|
93 |
|
/* Release reference to MAP. If reference counter drops to zero, |
94 |
|
release all resourecs held by map. */ |
95 |
|
|
96 |
|
extern void vm_map_release (struct vm_map *map); |
97 |
|
|
98 |
/* Fork SRC_MAP. Return clone of it. We loop though all the map entries |
/* Fork SRC_MAP. Return clone of it. We loop though all the map entries |
99 |
and clone them according to the inherit flag. */ |
and clone them according to the inherit flag. */ |
100 |
|
|