Low-level, cross-platform page allocation library.
This crate provides a cross-platform interface to the operating system's virtual memory
allocation, such as mmap on Unix and VirtualAlloc on Windows. It allows allocating pages of
memory, clearing them, marking them as free, and changing memory protections.
The API is mostly unsafe, and an optional buffer feature is provided to enable a safe wrapper
around page allocation.
Read more in the official crate documentation.
UNIX-like systems and Windows are currently supported.
The following platforms are tested in CI:
- Windows
- Linux
- macOS
Contributions to support other platforms are welcome.
Currently the Minimum Supported Rust Version (MSRV) is 1.85. This version may be increased in the future with a minor release bump.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.