All Projects → rust-osdev → Acpi

rust-osdev / Acpi

Licence: other
Rust library for parsing ACPI tables and AML

Programming Languages

rust
11053 projects

Labels

Projects that are alternatives of or similar to Acpi

Ktf
Kernel Test Framework - a unit test framework for the Linux kernel
Stars: ✭ 81 (-18.18%)
Mutual labels:  kernel
Dgos
Operating System
Stars: ✭ 90 (-9.09%)
Mutual labels:  kernel
Hacksysextremevulnerabledriver
HackSys Extreme Vulnerable Windows Driver
Stars: ✭ 1,330 (+1243.43%)
Mutual labels:  kernel
Linux 0.11
A heavily commented linux kernel source code in Chinese.
Stars: ✭ 81 (-18.18%)
Mutual labels:  kernel
Theseus
A modern experimental OS written from scratch in Rust to explore novel OS structure, state management techniques, and how to maximally leverage the power of language by shifting OS responsibilities into the compiler.
Stars: ✭ 1,273 (+1185.86%)
Mutual labels:  kernel
Reactos
A free Windows-compatible Operating System
Stars: ✭ 10,216 (+10219.19%)
Mutual labels:  kernel
Zeke
A POSIX-like OS for ARM processors.
Stars: ✭ 79 (-20.2%)
Mutual labels:  kernel
Kernel Fuzzing
Fuzzers for the Linux kernel
Stars: ✭ 99 (+0%)
Mutual labels:  kernel
Falkon
Large-scale, multi-GPU capable, kernel solver
Stars: ✭ 88 (-11.11%)
Mutual labels:  kernel
Ipod Gadget
iPod usb gadget for audio playback
Stars: ✭ 94 (-5.05%)
Mutual labels:  kernel
Softiwarp
SoftiWARP: Software iWARP kernel driver and user library for Linux
Stars: ✭ 84 (-15.15%)
Mutual labels:  kernel
Mimiker
Simple unix-like operating system for education and research purposes
Stars: ✭ 85 (-14.14%)
Mutual labels:  kernel
Kernelgat
The source codes for Fine-grained Fact Verification with Kernel Graph Attention Network.
Stars: ✭ 92 (-7.07%)
Mutual labels:  kernel
Eggos
A Go unikernel running on x86 bare metal
Stars: ✭ 1,232 (+1144.44%)
Mutual labels:  kernel
Boneos
💥 BoneOS Kernel and Operating System Source Tree
Stars: ✭ 96 (-3.03%)
Mutual labels:  kernel
Deos
The distributed exokernel operating system
Stars: ✭ 80 (-19.19%)
Mutual labels:  kernel
Windows Kernel Explorer
A free but powerful Windows kernel research tool.
Stars: ✭ 1,299 (+1212.12%)
Mutual labels:  kernel
Neural Tangents
Fast and Easy Infinite Neural Networks in Python
Stars: ✭ 1,357 (+1270.71%)
Mutual labels:  kernel
Osee
Collection of resources for my preparation to take the OSEE certification.
Stars: ✭ 98 (-1.01%)
Mutual labels:  kernel
Ktf
Kernel Test Framework
Stars: ✭ 93 (-6.06%)
Mutual labels:  kernel

Acpi

Build Status Version

Documentation (rsdp)

Documentation (acpi)

Documentation (aml)

A library to parse ACPI tables and AML, written in pure Rust. Designed to be easy to use from Rust bootloaders and kernels. The library is split into three crates:

  • rsdp parses the RSDP and can locate it on BIOS platforms. It does not depend on alloc, so is suitable to use from bootloaders without heap alloctors. All of its functionality is reexported by acpi.
  • acpi parses the static tables (useful but not feature-complete)
  • aml parses the AML tables (can be useful, far from feature-complete)

There is also the acpi-dumper utility to easily dump a platform's ACPI tables (this currently only works on Linux).

Contributing

Contributions are more than welcome! You can:

  • Write code - the ACPI spec is huge and there are bound to be things we don't support yet!
  • Improve our documentation!
  • Use the crates within your kernel and file bug reports and feature requests!

Useful resources for contributing are:

You can run the AML test suite with cargo run --bin aml_tester -- -p tests. You can run fuzz the AML parser with cd aml && cargo fuzz run fuzz_target_1 (you may need to cargo install cargo-fuzz).

Licence

Acpi is dual-licenced under:

Unless you explicitly state otherwise, any contribution submitted for inclusion in this work by you, as defined in the Apache-2.0 licence, shall be dual licenced as above, without additional terms or conditions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].