Expand description
ax-page-table-multiarch
Generic page table structures for various hardware architectures
English | 中文
§Introduction
ax-page-table-multiarch provides Generic page table structures for various hardware architectures. 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-page-table-multiarch was derived from https://github.com/arceos-org/page_table_multiarch
§Quick Start
§Installation
Add this crate to your Cargo.toml:
[dependencies]
ax-page-table-multiarch = "0.8.1"§Run Check and Test
# Enter the crate directory
cd memory/page_table_multiarch
# 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_page_table_multiarch as _;
fn main() {
// Integrate `ax-page-table-multiarch` into your project here.
}§Documentation
Generate and view API documentation:
cargo doc --no-deps --openOnline documentation: docs.rs/ax-page-table-multiarch
§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.
Re-exports§
pub use ax_page_table_entry::GenericPTE;pub use ax_page_table_entry::MappingFlags;
Modules§
- aarch64
AArch64 - AArch64 specific page table structures.
- arm
ARM - ARMv7-A specific page table structures.
- loongarch64
LoongArch64 - LoongArch64 specific page table structures.
- riscv
RISC-V RV32 or RISC-V RV64 - RISC-V specific page table structures.
- x86_64
x86-64 - x86 specific page table structures.
Structs§
- Page
Table32 32-bit or docsrs - A generic page table struct for 32-bit ARM platform (ARMv7-A).
- Page
Table64 64-bit or docsrs - A generic page table struct for 64-bit platform.
- Page
Table32 Cursor 32-bit or docsrs - A cursor created by
PageTable32::cursorto modify the page table. - Page
Table64 Cursor 64-bit or docsrs - A cursor created by
PageTable64::cursorto modify the page table.
Enums§
- Page
Size - The page sizes supported by the hardware page table.
- Paging
Error - The error type for page table operation failures.
Traits§
- Paging
Handler - The low-level OS-dependent helpers that must be provided for
PageTable64. - Paging
Meta Data - The architecture-dependent metadata that must be provided for
PageTable64.
Type Aliases§
- Paging
Result - The specialized
Resulttype for page table operations.