Expand description
ax-plat
This crate provides a unified abstraction layer for diverse hardware platforms
English | 中文
§Introduction
ax-plat provides This crate provides a unified abstraction layer for diverse hardware platforms. It is maintained as part of the TGOSKits component set and is intended for Rust projects that integrate with ArceOS, AxVisor, or related low-level systems software.
ax-plat was derived from https://github.com/arceos-org/axplat_crates
§Quick Start
§Installation
Add this crate to your Cargo.toml:
[dependencies]
ax-plat = "0.5.1"§Run Check and Test
# Enter the crate directory
cd components/axplat_crates/axplat
# Format code
cargo fmt --all
# Run clippy
cargo clippy --all-targets --all-features
# Run tests
cargo test --all-features
# Build documentation
cargo doc --no-deps§Integration
§Example
use ax_plat as _;
fn main() {
// Integrate `ax-plat` into your project here.
}§Documentation
Generate and view API documentation:
cargo doc --no-deps --openOnline documentation: docs.rs/ax-plat
§Contributing
- Fork the repository and create a branch
- Run local format and checks
- Run local tests relevant to this crate
- Submit a PR and ensure CI passes
§License
Licensed under the Apache License, Version 2.0. See LICENSE for details.
Modules§
- console
- Console input and output.
- init
- Platform initialization.
- irq
irq - Interrupt request (IRQ) handling.
- mem
- Physical memory information.
- percpu
- CPU-local data structures and accessors.
- power
- Power management.
- time
- Time-related operations.
Macros§
- assert_
str_ eq - Checks that two strings are equal. If they are not equal, it will cause a compile-time error. And the message will be printed if it is provided.
- console_
print - Simple console print operation.
- console_
println - Simple console print operation, with a newline.
Functions§
- call_
main - Call the function decorated by
ax_plat::mainfor the primary core. - call_
secondary_ main smp - Call the function decorated by
ax_plat::secondary_mainfor secondary cores.
Attribute Macros§
- impl_
plat_ interface - Implement the crate interface for a struct.
- main
- Marks a function to be called on the primary core after the platform initialization.
- secondary_
main smp - Marks a function to be called on the secondary cores after the platform initialization.