Commit 2c60b9f
committed
feat: add submodules
chore: update submodule commits for various modules
feat: add axplat-aarch64-dyn submodule
feat(axalloc): introduce a global memory allocator with buddy system
- Added `axalloc` crate with a global allocator implementation.
- Implemented `GlobalAllocator` using a buddy system allocator.
- Provided functions for memory initialization, allocation, and deallocation.
- Added `GlobalPage` struct for managing contiguous memory pages.
feat(axvm-types): define address types and device access structures
- Introduced `GuestVirtAddr` and `GuestPhysAddr` types for guest memory addressing.
- Created traits for device address handling and defined `DeviceAddr` and `DeviceAddrRange`.
- Implemented `Port` and `SysRegAddr` types for I/O operations and system registers.
fix(vmm): update VM reference handling
- Changed `push_vm` function to accept `axvm::Vm` directly and return an `Arc<axvm::Vm>`.
- Updated global VM list management to use `Arc` for thread-safe reference counting.
chore: update submodules and dependencies
- Updated submodules for `arm_vcpu`, `axvm`, and `axvmconfig`.
- Added `memory_addr` dependency to `axruntime` and `axvm-types`.
- Updated `Cargo.toml` files to reflect new dependencies and features.
chore: update axplat-aarch64-dyn submodule to latest commit
chore: update axplat-aarch64-dyn submodule to latest commit
fix: update memory mapping type in build_vmconfig function
chore: update dependencies to version hv-0.4.3 and sync submodule axvm
chore: update dependencies and refactor task management in the kernel
chore: update fdt-parser submodule to latest commit
chore: update fdt-edit and fdt-raw packages to latest versions and adjust dependencies
chore: update fdt-edit package to version 0.1.3 and adjust checksum
chore: update Cargo.lock and axplat-aarch64-dyn submodule to latest commits
Add initial documentation and diagram for refactoring process
- Created a new markdown file `refactor.md` to outline the refactoring strategy.
- Added a binary image `refactor.png` to visually represent the refactoring process.
Add refactor documentation for AxVisor architecture evolution
- Introduced a comprehensive analysis report detailing the transition from axvisor-dev3 to axvsior-dev2.
- Documented key architectural changes, including modularization, multi-architecture support, and improved dependency management.
- Highlighted the benefits of the refactor, such as enhanced maintainability, stability, and development efficiency.
- Provided a detailed comparison of the old and new architecture, including directory structure and module responsibilities.
- Included design principles, performance optimizations, and future development recommendations.
Refactor AxVisor architecture: Transition from monolithic to modular design
- Removed detailed execution summary and key improvements from refactor.md to streamline documentation.
- Deleted outdated diagram (refactor.png) to eliminate redundancy.
- Updated submodule reference for axvm to the latest commit for improved consistency.
Refactor code structure for improved readability and maintainability
更新 Cargo.lock 和 Cargo.toml,移除 fdt-parser 版本限制并添加 ranges-ext 依赖
更新 fdt-edit 依赖版本至 0.1.4,移除 ept-level-4 特性,并更新 axvm 子模块
更新 axalloc 依赖版本至 0.2.0,修复依赖冲突并移除过时的 zerocopy 依赖
更新 GitHub Actions 工作流,升级 checkout 动作至 v6 并启用子模块递归更新;更新 axvm 子模块至最新提交
update ci
删除不再使用的 NimbOS 和 QEMU 设置工作流;移除多个配置文件中的 ept-level-4 特性
refactor: Enhance AxVm design and state management
- Introduced a detailed design for AxVm, illustrating its internal structure and lifecycle management through state machines.
- Defined the overall architecture, including the relationship between AxVisor and Vm instances.
- Elaborated on the state management within VmData, detailing the three core states: InitData, VmRunData, and StoppedData.
- Clarified the VCPU and threading model, emphasizing resource migration and lifecycle safety through Arc/Weak references.
refactor: 清理未使用的导入和模块,优化代码结构
更新 fdt-edit 包至版本 0.1.5,移除 build_vmconfig 函数中的冗余设备配置,更新 axvm 子模块至最新提交
更新 axvm 子模块至最新提交
更新 axvm 子模块至最新提交
更新 linux-aarch64-qemu-smp1.toml 配置,移除冗余物理 CPU ID 和内核相关注释,更新 axvm 子模块至最新提交
更新 axvm 和 arm_vcpu 子模块至最新提交
更新 axvm 子模块至最新提交
更新 axvm 和 arm_vcpu 子模块至最新提交
更新 axvm 子模块至最新提交
更新 axvm 和 arm_vcpu 子模块至最新提交
更新 axvm 和 arm_vcpu 子模块至最新提交
更新 axvm 子模块至最新提交
更新 arceos 和 linux 虚拟机配置文件,注释掉物理 CPU ID 和内核相关参数
在虚拟机配置中添加内核中断模式设置为“passthrough”
调整 arceos 虚拟机配置,移动中断模式设置至设备规格部分,并更新内核路径和内存区域配置
更新 uboot.toml 成功正则表达式,添加 "Hello, world!";更新 arm_vcpu 和 axvm-types 子模块至最新提交
更新 arceos 和 linux 虚拟机配置,注释掉物理 CPU ID 和内核相关参数
更新 axvm 子模块至最新提交
更新 axvm 子模块至最新提交;修复内存映射类型为保留类型的配置;更新 axconfig 和 axruntime 的版本号至 0.1.0
更新依赖项,添加 axplat-x86-qemu-q35 和 x86_vcpu;修复多处理器启动页设置中的指针计算
更新 arm_vcpu 子模块至最新提交
更新 arm_vcpu 和 axvm 子模块至最新提交
更新依赖项,添加 raw-cpuid 和 axaddrspace;公开 load_images_fs 函数;更新子模块至最新提交
doc: update uml
更新版本号至 0.3.0,优化 load_images_fs 函数,简化内存映像加载逻辑
fmt
chore: clean up Cargo.lock by removing unused packages and updating dependencies1 parent 10ca6d5 commit 2c60b9f
File tree
76 files changed
+1831
-2243
lines changed- .cargo
- .devspace
- .github/workflows
- actions
- setup-nimbos-guest-image
- setup-qemu
- configs
- board
- vms
- doc
- kernel
- src
- hal
- arch
- aarch64
- x86_64
- vmm
- images
- modules
- axalloc
- src
- axconfig
- axruntime
- src
- axvm-types
- src
- device
- platform
- x86-qemu-q35/src
- xtask
- src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
76 files changed
+1831
-2243
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
Lines changed: 0 additions & 72 deletions
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
40 | | - | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
41 | 42 | | |
42 | 43 | | |
43 | 44 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
34 | | - | |
35 | | - | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
34 | 33 | | |
35 | 34 | | |
36 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
0 commit comments