TrustZone之可信操作系统

有许多可信内核,包括商业和开源的。一个例子是OP-TEE,最初由ST-Ericsson开发,但现在是由Linaro托管的开源项目。OP-TEE提供了一个功能齐全的可信执行环境,您可以在OP-TEE项目网站上找到详细的描述。

OP-TEE的结构如下图所示:

OP-TEE内核在S.EL1中运行,托管Trusted应用程序在S.EL0中运行。Trusted应用程序通过TEE内部API与OP-TEE内核通信。TEE内部API是由GlobalPlatform组开发的标准API。GlobalPlatform致力于开发标准API,这些API得到了许多不同TEE的支持,不仅仅是OP-TEE。

【注意】:在前面的图中,Trusted应用程序未显示为OP-TEE组件。这是因为它们不是核心OP-TEE操作系统的一部分。OP-TEE项目确实提供了一些示例Trusted应用程序供人们进行实验。

在非安全状态下,内核空间中有一个低级别的OP-TEE驱动程序。这负责处理与OP-TEE内核的低级通信。

在非安全用户空间(EL0)中,有一个实现另一个GlobalPlatform API的用户空间库。TEE客户端API是应用程序用来访问Trusted应用程序或服务的API。在大多数情况下,我们不希望应用程序直接使用TEE客户端API。相反,可能会有另一个特定于服务的库提供更高级别的接口。

OP-TEE还包括一个被称为tee-supplicant的组件。tee-supplicant处理由OP-TEE支持且需要一定程度的rich OS交互的服务。其中一个例子是安全存储。

相关推荐
祖力5515 小时前
ARM时钟
嵌入式硬件·arm·时钟·imx6ull
koi77u15 小时前
嵌入式学习——ARM(3)
arm
学linux的QQ蛋17 小时前
i.MX6ULL GIC 中断整体知识点总结和ARM时钟重点总结
arm·时钟·中断
G.E.M.小白18 小时前
【IMX6ULL ARM内核启动与时钟系统超详解】PLL/PFD/分频/根时钟配置
嵌入式·arm·时钟·imx6ull
koi77u1 天前
嵌入式学习——ARM(1)
arm
myy-learn2 天前
ARM-点亮第一颗LED
arm
zbyyd2 天前
i.MX6ULL 裸机开发进阶|C 驱动、SDK、BSP 工程、链接脚本
arm
一直C2 天前
ARM裸机开发|IMX6ULL GIC中断详解,中断流程、GIC版本分类、CP15协处理器
arm·imx6ull·寄存器
myy-learn2 天前
ARM-复用寄存器以及电气寄存器深化-蜂鸣器
arm
祖力552 天前
ARM中断(IMX6ULL中断、GIC通用中断控制器)
嵌入式硬件·arm·imx6ull·中断·gic·通用中断控制器