2 releases

0.9.1 Feb 23, 2021
0.9.0 Feb 21, 2021

#466 in Memory management

Download history 9/week @ 2023-12-04 17/week @ 2023-12-11 13/week @ 2023-12-18 6/week @ 2023-12-25 35/week @ 2024-01-01 48/week @ 2024-01-08 33/week @ 2024-01-15 29/week @ 2024-01-22 7/week @ 2024-01-29 14/week @ 2024-02-05 31/week @ 2024-02-12 40/week @ 2024-02-19 138/week @ 2024-02-26 58/week @ 2024-03-04 44/week @ 2024-03-11 54/week @ 2024-03-18

300 downloads per month
Used in 2 crates (via rust-fontconfig)

MIT/Apache

61KB
1K SLoC

mmapio

Fork of the great memmap and mapr library.

A Rust library for cross-platform memory mapped IO.

Documentation Crate

Features

  • file-backed memory maps
  • anonymous memory maps
  • synchronous and asynchronous flushing
  • copy-on-write memory maps
  • read-only memory maps
  • stack support (MAP_STACK on unix)
  • locked support (MAP_LOCKED on unix)
  • executable memory maps
  • huge page support

Platforms

mmapio should work on any platform supported by libc. mmapio requires Rust stable 1.13 or greater.

mmapio is continuously tested on:

  • x86_64-unknown-linux-gnu (Linux)
  • i686-unknown-linux-gnu
  • x86_64-unknown-linux-musl (Linux MUSL)
  • x86_64-apple-darwin (OSX)
  • i686-apple-darwin
  • x86_64-pc-windows-msvc (Windows)
  • i686-pc-windows-msvc
  • x86_64-pc-windows-gnu
  • i686-pc-windows-gnu

mmapio is continuously cross-compiled against:

  • arm-linux-androideabi (Android)
  • aarch64-unknown-linux-gnu (ARM)
  • arm-unknown-linux-gnueabihf
  • mips-unknown-linux-gnu (MIPS)
  • x86_64-apple-ios (iOS)
  • i686-apple-ios

License

mmapio is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, LICENSE-MIT for details.

Copyright (c) 2015 Dan Burkert.

Dependencies

~215KB