#virtual-memory #process #pid

bin+lib proc-maps

Helper crate for getting virtual memory maps from processes

14 releases

Uses old Rust 2015

0.4.0 Oct 17, 2024
0.3.2 Sep 27, 2023
0.3.1 Apr 26, 2023
0.3.0 Oct 2, 2022
0.1.5 Nov 20, 2018

#40 in Unix APIs

Download history 6206/week @ 2024-12-14 2518/week @ 2024-12-21 2706/week @ 2024-12-28 5011/week @ 2025-01-04 6700/week @ 2025-01-11 7211/week @ 2025-01-18 7815/week @ 2025-01-25 16034/week @ 2025-02-01 22018/week @ 2025-02-08 24733/week @ 2025-02-15 12462/week @ 2025-02-22 12914/week @ 2025-03-01 11823/week @ 2025-03-08 18172/week @ 2025-03-15 9692/week @ 2025-03-22 5515/week @ 2025-03-29

46,519 downloads per month
Used in 29 crates (19 directly)

MIT license

180KB
6K SLoC

proc-maps

Build Status crates.io docs.rs

This crate supports reading virtual memory maps from another process - and supports Linux, macOS, Windows, and FreeBSD operating systems.

Examples

use proc_maps::get_process_maps;

let maps = get_process_maps(pid)?;
for map in maps {
    println!("Filename {:?} Address {} Size {}", map.filename(), map.start(), map.size());
}
cargo run --example print_maps <PID>

Credits

This code was originally developed by Julia Evans as part of the rbspy project: https://github.com/rbspy/rbspy.

License

Released under the MIT License.

Dependencies

~0–7MB
~38K SLoC