rockchip ARM TrustZone

系统架构

分为安全世界和非安全世界。Loader、Trust 运行在安全世界;U-Boot、kernel、Android 运行在非安全世界里(安全的 driver、APP 除外)。

"hypervisor"常见释义为"管理程序""虚拟机监控器""超级监督者"。

它是一种可以创建、运行和管理多个虚拟机的软件或硬件组件,允许多个操作系统在同一台物理计算机上同时运行,实现计算资源的虚拟化和隔离。

CPU 特权等级

Android 系统的固件启动顺序

Maskrom -> Loader -> Trust -> U-Boot -> kernel -> Android

运行内存和生命周期

运行内存: ARM Trusted Firmware 运行在 DRAM 起始偏移 0M~2M 的空间,以 0x10000(64KB)作为程序入口地

址。
生命周期: Trust 自上电初始化之后就始终常驻于内存之中,完成着自己的使命。

问题

目前对外发布的固件只提供 Trust 的 binary 文件,不提供源代码。目前对于 Trust 的调试方式比较少,更

多需要借助专门的 jtag 工具来进行分析,当 Trust 出问题的时候普通使用者一般并不具备自行调试和解决

问题的能力,所以出现问题时请尽量保护好现场、收集足够多的信息反馈给负责 Trust 的 maintainer。因

此通常使用者应当知道哪些是 Trust 的打印信息、Trust 对应的版本号、哪些是 Trust 的 PANIC 信息等。

参考

[0] 开源代码下载:

ARM Trusted Firmware:https://github.com/ARM-software/arm-trusted-firmware

OP-TEE OS:https://github.com/OP-TEE/optee_os
[1] ARM TrustZone:

https://www.arm.com/products/security-on-arm/trustzone

https://developer.arm.com/technologies/trustzone
[2] op-tee 官网:https://www.op-tee.org/
[3] PSCI:http://infocenter.arm.com/help/topic/com.arm.doc.den0022c/DEN0022C_Power_State_Coordination_

Interface.pdf "Power State Coordination Interface PDD (ARM DEN 0022C)"

相关推荐
小狗爱吃黄桃罐头1 小时前
正点原子[第三期]Arm(iMX6U)Linux移植学习笔记-12.1 Linux内核启动流程简介
linux·arm开发·学习
m0_637146933 小时前
嵌入式全栈面试指南:TCP/IP、C 语言基础、STM32 外设与 RT‑Thread
arm开发
satadriver2 天前
Qemu arm操作系统开发环境
arm开发
待什么青丝3 天前
【TMS570LC4357】之相关驱动开发学习记录1
c语言·arm开发·驱动开发·学习
南玖yy4 天前
x86 汇编逻辑运算全解析:从【位操作】到实际应用(AND,OR,NOT,XOR,TEST)
开发语言·汇编·arm开发·后端·架构·策略模式
菜只因C5 天前
嵌入式系统:从技术原理到未来趋势(驱动程序篇)
arm开发
!chen7 天前
鲲鹏Arm+麒麟V10 K8s 离线部署教程
java·arm开发·kubernetes
ScilogyHunter7 天前
ARM P15协处理器指令详解:架构、编程与应用实践
arm开发·协处理器指令·cp15
apolloyhl8 天前
1-Wire 一线式总线:从原理到实战,玩转 DS18B20 温度采集
arm开发·stm32·单片机·嵌入式硬件
二进制coder9 天前
芯片:数字时代的算力引擎——鲲鹏、升腾、海光、Intel 全景解析
arm开发·架构·硬件架构