52 void protect_noaccess_prefix(const size_t size); |
52 void protect_noaccess_prefix(const size_t size); |
53 |
53 |
54 public: |
54 public: |
55 // Constructor |
55 // Constructor |
56 ReservedSpace(); |
56 ReservedSpace(); |
57 // Initialize the reserved space with the given size. If prefer_large_pages is |
57 // Initialize the reserved space with the given size. If preferred_page_size |
58 // set, if the given size warrants use of large pages, try to force them by |
58 // is set, use this as minimum page size/alignment. This may waste some space |
59 // passing an alignment restriction further down. This may waste some space |
59 // if the given size is not aligned to that value, as the reservation will be |
60 // if the given size is not aligned, as the reservation will be aligned up |
60 // aligned up to the final alignment in this case. |
61 // to large page alignment. |
61 ReservedSpace(size_t size, size_t preferred_page_size = 0); |
62 ReservedSpace(size_t size, bool prefer_large_pages = false); |
|
63 ReservedSpace(size_t size, size_t alignment, bool large, |
62 ReservedSpace(size_t size, size_t alignment, bool large, |
64 char* requested_address = NULL, |
63 char* requested_address = NULL, |
65 const size_t noaccess_prefix = 0); |
64 const size_t noaccess_prefix = 0); |
66 ReservedSpace(size_t size, size_t alignment, bool large, bool executable); |
65 ReservedSpace(size_t size, size_t alignment, bool large, bool executable); |
67 |
66 |