请阅读【ARM Cache 及 MMU/MPU 系列文章专栏导读】
及【嵌入式开发学习必备专栏】
<hr>
MMU Table 表分配原理及其代码实现
在做映射的时候所映射的地点范围最大只能是某一级 level table 中 entry 所能支持的最大范围,假如高出这个范围需要在对应 level table 中新增一个entry,这里还是以映射虚拟地点0x0000_0000 -- 0x8000_0000为例,我们知道 Level0 table 中的一个 Entry 指向 512G地点空间,然而0x0000_0000 -- 0x8000_0000才占用 2G的地点空间,所以在 Level0 table 中只会使用一个 Entry,但是在 Level1 table 中就不一样了,因为 Level1 table 中的一个 Entry 最大只支持1G的地点空间,所以需要将0x0000_0000 -- 0x8000_0000 地点分配在 Level1 table 中的 2个 Entry 中,如文章【ARM Cache 与 MMU 系列文章 7.7 – ARMv8/v9 MMU Table 表分配原理及其代码实现 1】 图 1-1 所示。 此中:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |