5

我正在尝试在 Qemu 中模拟 TrustZone 功能。我找到了两个似乎可以解释这个过程的链接。

第一个参考没有附加支持 TrustZone 的图像内核(我在哪里可以找到它?)

第二个参考解释了如何编译内核,但它不是从第一个网站中编写的命令行开始的,如下所示

./arm-softmmu/qemu-system-arm -kernel $PATH_TO_KERNEL/zImage -M vexpress-a15 -cpu cortex-a15 -dtb PATH_TO_DTB/vexpress-v2p-ca15-tc1.dtb -m 1024 -append 'console=ttyAMA0,38400n8' -serial stdio -initrd $PATH_TO_INITRD/initrd.img

是否有其他方法可以运行 TrustZone 模拟器?

4

2 回答 2

4

使用OP-TEE(一种开源 TEE),在 QEMU 上运行 TrustZone 非常容易。您拥有从普通世界用户空间和 Linux 内核到安全世界的整个堆栈运行代码,同时运行 TEE 本身以及受信任的应用程序。QEMU + OP-TEE 适用于 ARMv7-A 和 ARMv8-A。如果您想在本地 PC 上试用它,我鼓励您前往optee_os/README.md并按照第 4.1、5(仅与 QEMU 相关)和第 6 节中的说明进行操作。总而言之,我们谈论的是更少在一个 shell 中执行超过 10 个命令,您将下载、编译所有源代码,并在您的 PC 上本地启动和运行所有内容。

我写了一篇关于为什么 QEMU 是进行 TrustZone 开发的不错选择的博客文章。

于 2016-12-15T22:24:45.093 回答
0

您可以查看以下链接:https ://github.com/OP-TEE/build和文档(https://optee.readthedocs.io/building/gits/build.html)来构建所有图像和BSP 需要运行 Linux。

是否有其他方法可以运行 TrustZone 模拟器?

除了 QEMU,您还可以查看使用 Fastmodel 的 Arm System Guidance ( https://developer.arm.com/ip-products/system-ip/reference-design )。还有一个make方法可以构建所需的所有 BSP。

于 2019-04-15T08:41:09.297 回答