Get the page size for the system.
#include <zircon/syscalls.h>
uint32_t zx_system_get_page_size(void);
zx_system_get_page_size()
returns the base memory page size of the system in
bytes. This number cannot change during a run of the system, only at boot time,
and is guaranteed to be an exact power of 2.
The page size represents the allocation and alignment granularity of VMOs in
zx_vmo_create()
and the smallest unit that can be mapped via zx_vmar_map()
.
For every architecture there are well defined minimum and maximum values,
ZX_MIN_PAGE_SIZE
and ZX_MAX_PAGE_SIZE
, that this will return.
Architecture | ZX_MIN_PAGE_SIZE |
ZX_MAX_PAGE_SIZE |
---|---|---|
ARM | 4KiB | 64KiB |
X86-64 | 4KiB | 2MiB |
TODO(fxbug.dev/32253)
zx_system_get_page_size()
returns the page size in bytes.
zx_system_get_page_size()
cannot fail.