ARMV8架构-AArch64执行状态下的4级页表

在AArch64 体系结构中,因为地址总线位宽最多支持 48 位,所以虚拟地址空间被划分为两个空间,每个空间最多支持 256 TB。

(1)低位的虚拟地址空间位于 0x0000000000000000 到 0x0000FFFFFFFFFFFF。如果虚拟地址的最高位等于 0,就使用这个虚拟地址空间,并且使用 TTBR0_ELx 来存放页表的基地址。

(2)高位的虚拟地址空间位于 0xFFFF000000000000 到 0xFFFFFFFFFFFFFFFF。如果虚拟地址的最高位等于 1,就使用这个虚拟地址空间,并且使用 TTBR1_ELx 来存放页表的基地址。

AArch64体系结构页表最多支持4级页表,输入、输出地址的最大有效位宽度为48,支持4KB、16KB和64KB的页面大小。

下面以4KB物理页面及48位地址宽度为例,MMU的页表遍历单元(Table Walk Unit, TWU)的查询过程如下图所示。

当MMU的TLB未命中时,处理器的页表查询过程如下:

(1)处理器根据虚拟地址来判断使用TTBR0

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式学习专栏 文章被收录于专栏

7年嵌入式软、硬件开发经验,分享嵌入式软件开发相关资料,简历、工作、技术支持!!!

全部评论

相关推荐

网安已死趁早转行:山东这地方有点说法
点赞 评论 收藏
分享
评论
5
2
分享

创作者周榜

更多
牛客网
牛客企业服务