如何在QEMU中模拟TrustZone?

问题描述 投票:5回答:2

我试图在Qemu中模拟TrustZone功能。我发现两个链接似乎解释了这个过程。

The First Reference没有附加支持TrustZone的图像内核(我在哪里可以找到它?)

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

./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模拟器?

android linux arm qemu trust-zone
2个回答
3
投票

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

我写了一篇关于为什么QEMU是进行TrustZone开发的不错选择的blog post


0
投票

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

是否有另一种方法来运行TrustZone模拟器?

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

© www.soinside.com 2019 - 2024. All rights reserved.