MMU之Translation Regime介绍

文摘   2024-11-13 07:28   上海  

思考:

1、系统里有多少个MMU?MMU在哪里?

2、一个core里有多少个MMU?多少个Translation regime ? MMU和Translation regime有啥关系?


Translation Regime概念总结在当前的ARMV8/ARMV9体系中(暂不考虑armv9的RME扩展), 至少存在以下9类Translation regime(注意是9类,不是9个):

  • Secure EL1&0 translation regime, when EL2 is disabled -- one stages,two VA range, 使用TTBR0EL1和TTBR1EL1

  • Non-secure EL1&0 translation regime, when EL2 is disabled -- one stages,two VA range, 使用TTBR0EL1和TTBR1EL1

  • Secure EL1&0 translation regime, when EL2 is enabled -- two stages,two VA range, 使用TTBR0EL1和TTBR1EL1

  • Non-secure EL1&0 translation regime, when EL2 is enabled -- two stages,two VA range, 使用TTBR0EL1和TTBR1EL1

  • Secure EL2&0 translation regime -- two VA range, 使用TTBR0EL2和TTBR1EL2

  • Non-secure EL2&0 translation regime -- two VA range, 使用TTBR0EL2和TTBR1EL2

  • Secure EL2 translation regime -- a single VA range, 使用TTBR0_EL2

  • Non-secure EL2 translation regime -- a single VA range, 使用TTBR0_EL2

  • Secure EL3 translation regime -- a single VA range, 使用TTBR0_EL3

相关寄存器的总结

  • TTBR0_EL1: Translation Table Base Register 0 (EL1) -- 在switch cpucontext by security的时候,会切换该寄存器,所以从软件的视角来看,安全和非安全侧各有一个TTBR0_EL1

  • TTBR0_EL2: Translation Table Base Register 0 (EL2) -- HCR_EL2.E2H=1时,只有TTBR0,不可以使用TTBR1。另外在switch cpucontext by security的时候,会切换该寄存器,所以从软件的视角来看,安全和非安全侧各有一个TTBR0_EL2

  • TTBR0_EL3: Translation Table Base Register 0 (EL3) -- 从软件视角来看,只有一个TTBR0_EL3。注意没有TTBR1_EL3寄存器。

  • TTBR1_EL1: Translation Table Base Register 1 (EL1) -- 在switch cpu_context by security的时候,会切换该寄存器,所以从软件的视角来看,安全和非安全侧各有一个TTBR1_EL1

  • TTBR1_EL2: Translation Table Base Register 1 (EL2) -- 只有Host Operating System is running in EL2( HCR_EL2.E2H=1)时,该寄存器才会被使用。另外在switch cpu_context by security的时候,会切换该寄存器,所以从软件的视角来看,安全和非安全侧各有一个TTBR1_EL2

  • VSTTBR_EL2: Virtualization Secure Translation Table Base Register -- 切换VM的时候会切换

  • VTCR_EL2: Virtualization Translation Control Register -- 切换VM的时候会切换

  • VTTBR_EL2: Virtualization Translation Table Base Register -- 切换VM的时候会切换

Translation Regime模型总结



(广告时间)

Arm架构类课程:


安全热销大课程:


安全类经典课程:


其它课程:


铂金VIP课程介绍


之最介绍

  • 招牌课程:Truszone标准版、Trustzone高配版

  • 销量前三课程:ARM三期、Secureboot、Android15安全架构

  • 持续更新的课程:ARM三期、铂金VIP

  • 非常好非常好但又被忽视的课程:CA/TA开发

  • 近期更新/力推的课程/重点课程:optee系统架构从入门到精通


说点心里话:

  • 1、不要再说课贵了,你看看咱这是啥课?别家的能比不?请不要拿通用的linux、android、python、C语言和咱这专业课比。

  • 2、咱们的VIP是数十门课程的集合。不要拿别人一门课程的价格对标咱这20门课程价格。

  • 3、这些知识很多人都会,但拿出来讲的有多少人? 愿意拿出来讲的有多少人?讲的又有多少人?

  • 4、价格都是认真计算的,并非随意定价。都是根据内容质量、核心知识点、时长和节数计算而来。从来不无缘无故涨价(涨价是需要理由的,如课程内容增加了....)。咱靠的是内容质量长期服务,而不是运营和营销(无脑涨价)。 

  • 5、如果你刷到此处,可能是老粉/铁粉,记得点赞、评论哦。感谢您的支持。


Arm精选
ARMv8/ARMv9架构、SOC架构、Trustzone/TEE安全、终端安全、SOC安全、ARM安全、ATF、OPTEE等
 最新文章