5个版本 (稳定版)
2.0.1 | 2023年9月13日 |
---|---|
2.0.0 | 2021年6月29日 |
1.1.0 | 2021年1月1日 |
1.1.0-pre0 | 2020年12月14日 |
1.0.0 | 2020年9月24日 |
#384 在 硬件支持 中
每月下载量:7,562
在 4 个 包中使用(直接使用2个)
19KB
209 行
Acpi
⚠️警告:该rsdp
包之前是acpi
生态系统的组成部分,但现在已被弃用。其功能现在完全由acpi
包支持,包括在无分配器环境中也能工作的功能子集。该包可能不会再收到更新⚠️
文档 (rsdp
)
文档 (acpi
)
文档 (aml
)
一个用于解析ACPI表和AML的库,使用纯Rust编写。设计用于从Rust引导加载程序和内核中轻松使用。该库分为三个包
rsdp
解析RSDP并能在BIOS平台上定位它。它不依赖于alloc
,因此适合在没有堆分配器的引导加载程序中使用。它所有的功能都通过acpi
重新导出。acpi
解析静态表(有用但功能不完整)。它可以从有分配器或无分配器(但功能减少)的环境中使用。aml
解析AML表(可能有用,但功能远不完整)。
此外,还有acpi-dumper
实用程序,可以轻松转储平台的ACPI表(目前仅在Linux上工作)。
贡献
我们非常欢迎贡献!你可以
- 编写代码 - ACPI规范很大,肯定有许多我们尚未支持的功能!
- 改进我们的文档!
- 在你的内核中使用这些包并提交错误报告和功能请求!
对于贡献有用的资源包括
您可以使用以下命令运行AML测试套件:cargo run --bin aml_tester -- -p tests
。您可以使用以下命令运行AML解析器的模糊测试:cd aml && cargo fuzz run fuzz_target_1
(您可能需要先执行cargo install cargo-fuzz
)。
许可协议
本项目采用以下双许可协议:
- Apache许可证,版本2.0(《LICENCE-APACHE》或https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(《LICENCE-MIT》或http://opensource.org/licenses/MIT)
除非您明确声明,否则根据Apache-2.0许可证定义的,您提交的任何贡献,将如上所述双许可,不附加其他条款或条件。
依赖项
~87KB