为了允许软件确定内存位置的安全属性,使用了TT指令(Test Target)。
Test Target(TT)查询内存位置的安全状态和访问权限。
Test Target Unprivileged(TTT)查询内存位置的安全状态和访问权限,以进行对该位置的非特权访问。
Test Target Alternate Domain(TTA)和Test Target Alternate Domain Unprivileged(TTAT)查询内存位置的安全状态和访问权限,以进行对该位置的非安全访问。这些指令仅在安全状态下执行时有效,如果从非安全状态使用,则为UNDEFINED。
在安全状态下执行时,此指令的结果被扩展以返回特定地址处的Security Attribution Unit(SAU)和Implementation Defined Attribution Unit(IDAU)配置。
对于由SAU和IDAU定义的每个内存区域,都有一个由SAU或IDAU生成的相关区域号。此区域号由软件用于确定内存的连续范围是否具有共同的安全属性。
TT指令返回安全属性和区域号,以及地址值的MPU区域号。通过在内存范围的起始和结束地址上使用TT指令,并确定两者都位于相同的区域号中,软件可以快速确定内存范围(例如,数据数组或数据结构)完全位于非安全空间中,如下图所示:
注意&#