#memory #mlock #disk #paging #content #locked #locking

no-std lockedbox

A Box-like type that prevents paging its contents to disk

3 releases

0.1.2 Jul 14, 2024
0.1.1 Sep 12, 2023
0.1.0 Sep 12, 2023

#354 in Memory management

30 downloads per month
Used in 5 crates (via bonsaidb-local)

MIT/Apache

12KB
89 lines

LockedBox

A crate providing an mlock-locked Box<T>, preventing the contents of its memory from being paged to disk.

This crate prevents potential accidental unlocking of memory by ensuring the memory allocated by LockedBox<T> is always a multiple of the operating system's page size. Because mlock/munlock operate on pages of memory, this guarantees that each LockedBox<T> is guaranteed to have its own lock status.

LockedBox<T> is a thin, safe abstraction built atop memsec.

Alternatives

Open-source Licenses

This project, like all projects from Khonsu Labs, is open-source. This repository is available under the MIT License or the Apache License 2.0.

To learn more about contributing, please see CONTRIBUTING.md.

Dependencies

~19KB