Expand description
RISC-V 架构内存管理模块
此模块提供了针对 RISC-V 架构 的内存管理实现, 使用 SV39 分页方案 (SV39 Paging Scheme)。
§SV39 分页方案
SV39 是 RISC-V 上的一个 39 位虚拟地址分页方案:
- 虚拟地址 (Virtual address): 39 个有效位 (位 38-63 必须与位 38 匹配)
- 物理地址 (Physical address): 56 位 (位 0-55)
- 页大小 (Page size): 4 KiB
§地址转换
此模块使用直接映射 (direct mapping) 进行地址转换:
- 虚拟地址起始点 (Virtual address start):
0xffff_ffc0_0000_0000 - 提取物理地址 使用与
PADDR_MASK进行位与 (bitwise AND) 操作 - 创建虚拟地址 使用与
VADDR_START进行位或 (bitwise OR) 操作
Re-exports§
pub use page_table::PageTableInner;pub use page_table_entry::PageTableEntry;
Modules§
Constants§
- PADDR_
MASK - 物理地址掩码,用于从虚拟地址中提取物理地址
- VADDR_
START - SV39 中虚拟地址空间的起始地址
Functions§
- paddr_
to_ vaddr - 转换物理地址到虚拟地址
- vaddr_
to_ ⚠paddr - 转换虚拟地址到物理地址