Skip to main content

Crate arm_vcpu

Crate arm_vcpu 

Source
Expand description

arm_vcpu

AArch64 vCPU implementation for ArceOS Hypervisor

Crates.io Docs.rs Rust License

English | 中文

§Introduction

arm_vcpu provides AArch64 vCPU implementation for ArceOS Hypervisor. 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.

§Quick Start

§Installation

Add this crate to your Cargo.toml:

[dependencies]
arm_vcpu = "0.5.0"

§Run Check and Test

# Enter the crate directory
cd components/arm_vcpu

# 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 arm_vcpu as _;

fn main() {
    // Integrate `arm_vcpu` into your project here.
}

§Documentation

Generate and view API documentation:

cargo doc --no-deps --open

Online documentation: docs.rs/arm_vcpu

§Contributing

  1. Fork the repository and create a branch
  2. Run local format and checks
  3. Run local tests relevant to this crate
  4. Submit a PR and ensure CI passes

§License

Licensed under the Apache License, Version 2.0. See LICENSE for details.

Structs§

Aarch64PerCpu
Per-CPU data. A pointer to this struct is loaded into TP when a CPU starts. This structure
Aarch64VCpu
A virtual CPU within a guest
Aarch64VCpuCreateConfig
Configuration for creating a new Aarch64VCpu
Aarch64VCpuSetupConfig
Configuration for setting up a new Aarch64VCpu

Functions§

has_hardware_support
Return if current platform support virtualization extension.
max_guest_page_table_levels
Returns the maximum guest page table levels supported by the hardware.

Type Aliases§

TrapFrame
context frame for aarch64