L4Re - L4 Runtime Environment
|
Memory related constants, data types and functions. More...
Macros | |
#define | L4_PAGESIZE |
Minimal page size (in bytes). | |
#define | L4_PAGEMASK |
Mask for the page number. More... | |
#define | L4_LOG2_PAGESIZE |
Number of bits used for page offset. More... | |
#define | L4_SUPERPAGESIZE |
Size of a large page. More... | |
#define | L4_SUPERPAGEMASK |
Mask for the number of a large page. More... | |
#define | L4_LOG2_SUPERPAGESIZE |
Number of bits used as offset for a large page. More... | |
#define | L4_INVALID_PTR ((void *)L4_INVALID_ADDR) |
Invalid address as pointer type. | |
#define | L4_PAGESHIFT 12 |
Size of a page, log2-based. | |
#define | L4_SUPERPAGESHIFT 21 |
Size of a large page, log2-based. | |
#define | L4_PAGESHIFT 12 |
Size of a page, log2-based. | |
#define | L4_SUPERPAGESHIFT 21 |
Size of a large page, log2-based. | |
#define | L4_PAGESHIFT 12 |
Size of a page log2-based. | |
#define | L4_SUPERPAGESHIFT 22 |
Size of a large page log2-based. | |
Enumerations | |
enum | l4_addr_consts_t { L4_INVALID_ADDR = ~0UL } |
Address related constants. More... | |
Functions | |
l4_addr_t | l4_trunc_page (l4_addr_t address) L4_NOTHROW |
Round an address down to the next lower page boundary. More... | |
l4_addr_t | l4_trunc_size (l4_addr_t address, unsigned char bits) L4_NOTHROW |
Round an address down to the next lower flex page with size bits. More... | |
l4_addr_t | l4_round_page (l4_addr_t address) L4_NOTHROW |
Round address up to the next page. More... | |
l4_addr_t | l4_round_size (l4_umword_t value, unsigned char bits) L4_NOTHROW |
Round value up to the next alignment with bits size. More... | |
Memory related constants, data types and functions.
#define L4_LOG2_PAGESIZE |
Number of bits used for page offset.
Size of page in log2.
Definition at line 325 of file consts.h.
Referenced by L4Re::Rm::attach(), L4Re::Dataspace::map(), L4Re::Dataspace::map_region(), and L4Re::Util::Dataspace_svr::page_shift().
#define L4_LOG2_SUPERPAGESIZE |
#define L4_PAGEMASK |
Mask for the page number.
Definition at line 316 of file consts.h.
Referenced by l4_round_page(), l4_sleep_forever(), and l4_trunc_page().
#define L4_SUPERPAGEMASK |
#define L4_SUPERPAGESIZE |
enum l4_addr_consts_t |
Round address up to the next page.
The address is rounded up to the next minimal page boundary. On most architectures this is a 4k page. Check L4_PAGESIZE for the minimal page size.
address | The address to round up. |
Definition at line 389 of file consts.h.
References L4_NOTHROW, L4_PAGEMASK, L4_PAGESIZE, and l4_round_size().
Referenced by L4Re::Rm::attach(), l4_trunc_size(), L4Re::Dataspace::map(), and L4Re::Dataspace::map_region().
|
inline |
Round value up to the next alignment with bits size.
value | The value to round up to the next size-alignment. |
bits | The size of the alignment (log2). |
Definition at line 400 of file consts.h.
Referenced by cxx::List_alloc::alloc_max(), L4Re::Util::Dataspace_svr::is_static(), l4_round_page(), L4Re::Dataspace::map_region(), and L4virtio::Virtqueue::setup_simple().
Round an address down to the next lower page boundary.
The address is rounded down to the next lower mininmal page boundary. On most architectures this is a 4k page. Check L4_PAGESIZE for the minimal page size.
address | The address to round. |
Definition at line 364 of file consts.h.
References L4_NOTHROW, L4_PAGEMASK, and l4_trunc_size().
Referenced by l4_touch_ro(), l4_touch_rw(), L4Re::Dataspace::map(), and L4Re::Dataspace::map_region().
Round an address down to the next lower flex page with size bits.
address | The address to round. |
bits | The size of the flex page (log2). |
Definition at line 375 of file consts.h.
References L4_NOTHROW, and l4_round_page().
Referenced by cxx::List_alloc::alloc_max(), l4_fpage_max_order(), l4_trunc_page(), and L4Re::Dataspace::map_region().