#memory #bare-metal #memory-mapped #secure #memory-management #memory-mapping #no-std

no-std external-memory-tools

HAL 用于在无法直接映射到 RAM 的内存中保持数据

2 个版本

0.1.1 2024 年 2 月 9 日
0.1.0 2024 年 1 月 17 日

嵌入式开发 中排名第 562

Download history 10/week @ 2024-03-11 6/week @ 2024-03-18 45/week @ 2024-04-01 147/week @ 2024-04-15 17/week @ 2024-04-22 14/week @ 2024-04-29 15/week @ 2024-05-06 18/week @ 2024-05-20 19/week @ 2024-05-27 21/week @ 2024-06-03 11/week @ 2024-06-10 7/week @ 2024-06-17 16/week @ 2024-06-24

每月下载量 56
4 crates 中使用

GPL-3.0-or-later

16KB
112 代码行

外部内存工具

这是一个用于处理未直接映射到 RAM 的内存的小型工具集合。除非您确切知道自己在做什么,否则不要使用它,这种需求的情况非常有限,通常与非常特殊的裸金属系统有关。

简要说明

Rust 允许在无-std 系统中使用分配器抽象进行整洁的内存分配;然而,所有正常工具都假定该分配器所地址的内存可以被低级映射到某个地址空间。在某些罕见的情况下,这是不可能的(例如,在安全保险库中,映射任意内存会直接破坏系统安全模型)。

因此,如果您恰好在使用这些系统之一,并且发现自己反复重复相同的模式 - 使用此 crate。

使用

在您的目标内存上实现所需的缓冲区访问操作,享受吧!

要使用此 crate 与常规内存(以实现更简单的跨平台性),只需将 () 作为 External Memory - 功能已在此处实现。遗憾的是,您仍然需要在每个受影响的函数调用中包含 () 作为参数。

开发

目前仅支持读操作;如果您决定贡献并添加更多功能,如可写和读写缓冲区,请开始将它们隐藏在功能标志下,以保持内容精简和安全。

无运行时依赖

功能