#memory-allocator #嵌入式 #buddy #环境 #线程安全 #MMU #链表

buddy-alloc

Buddy-alloc 是用于无-std Rust 的内存分配器,适用于嵌入式环境

6 个版本

0.5.1 2023年4月26日
0.5.0 2023年3月29日
0.4.2 2023年3月7日
0.4.1 2020年11月14日
0.1.2 2020年1月15日

#106内存管理

Download history · Rust 包仓库 972/week @ 2024-04-21 · Rust 包仓库 974/week @ 2024-04-28 · Rust 包仓库 879/week @ 2024-05-05 · Rust 包仓库 811/week @ 2024-05-12 · Rust 包仓库 844/week @ 2024-05-19 · Rust 包仓库 960/week @ 2024-05-26 · Rust 包仓库 968/week @ 2024-06-02 · Rust 包仓库 681/week @ 2024-06-09 · Rust 包仓库 841/week @ 2024-06-16 · Rust 包仓库 681/week @ 2024-06-23 · Rust 包仓库 748/week @ 2024-06-30 · Rust 包仓库 698/week @ 2024-07-07 · Rust 包仓库 1050/week @ 2024-07-14 · Rust 包仓库 795/week @ 2024-07-21 · Rust 包仓库 886/week @ 2024-07-28 · Rust 包仓库 824/week @ 2024-08-04 · Rust 包仓库

3,629 每月下载量
用于 28 个 Crates (6 个直接使用)

MIT 许可证

35KB
832

Buddy-alloc

Crates.io

Buddy-alloc 是用于无-std Rust 的内存分配器,适用于嵌入式环境。

用法

查看 示例Rust 文档

  • 此分配器由基于链表的快速分配器和伙伴分配器组合而成。
  • 无系统调用,我们假设执行环境没有 MMU,您需要预先分配堆的内存范围。
  • 不支持线程安全;您需要自行实现锁。

原因

我的初衷是在不引入 LibC 的情况下,使 alloc crate 能够在 CKB-VM 中为无-std Rust 使用。我选择了伙伴分配算法,因为它简单、稳定且足够高效。此 crate 设计用于通用环境,它应该能够用于类似的嵌入式环境。

许可证

MIT

依赖关系

~205KB