39个版本 (20个重大变更)
新 0.22.1 | 2024年8月20日 |
---|---|
0.21.0 | 2024年8月17日 |
0.20.2 | 2024年5月26日 |
0.19.0 | 2023年9月21日 |
0.3.1 | 2016年10月31日 |
#59 in 操作系统
每月下载量 4,259
在 3 crates 中使用
235KB
5K SLoC
multiboot2
方便且安全地解析Multiboot2启动信息(MBI)结构和包含的信息标签。在no_std
环境中可用,如内核。可选的构建器特性还允许构建相应的结构。
它遵循在https://www.gnu.org/software/grub/manual/multiboot2/multiboot.html的多启动2.0规范和在http://www.uclibc.org/docs/elf-64-gen.pdf的ELF 64规范。
功能和no_std
兼容性
此库始终为no_std
,但无alloc
。然而,默认的builder
功能需要alloc
-crate和一个#[global_allocator]
。您只需要在运行时构建新的启动信息结构时才需要builder
。对于解析,这并不重要,您可以禁用默认功能。
背景:Multiboot 2信息结构
多启动信息结构如下所示
字段 | 类型 |
---|---|
总大小 | u32 |
保留 | u32 |
标签 | 可变 |
结束标签 = (0, 8) | (u32, u32) |
有许多不同类型的标签,但它们都有相同的开始
字段 | 类型 |
---|---|
类型 | u32 |
大小 | u32 |
其他字段 | 可变 |
MSRV
MSRV是1.70.0稳定版。
许可证 & 贡献
请参阅主README文件。
依赖关系
~2MB
~43K SLoC