#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 972/week @ 2024-04-21 974/week @ 2024-04-28 879/week @ 2024-05-05 811/week @ 2024-05-12 844/week @ 2024-05-19 960/week @ 2024-05-26 968/week @ 2024-06-02 681/week @ 2024-06-09 841/week @ 2024-06-16 681/week @ 2024-06-23 748/week @ 2024-06-30 698/week @ 2024-07-07 1050/week @ 2024-07-14 795/week @ 2024-07-21 886/week @ 2024-07-28 824/week @ 2024-08-04

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