【问题标题】:How to emulate TrustZone in QEMU?如何在 QEMU 中模拟 TrustZone?
【发布时间】:2015-06-06 02:21:34
【问题描述】:

我正在尝试在 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


    【解决方案1】:

    您可以查看以下链接: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。

    【讨论】:

      【解决方案2】:

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

      我写了一封 blog post 来说明为什么 QEMU 是进行 TrustZone 开发的一个不错的选择。

      【讨论】:

        猜你喜欢
        • 2015-05-06
        • 2014-04-30
        • 2013-08-07
        • 2013-09-01
        • 2021-07-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多