终于看到一款算是比较完善的安全OS。看它支持的平台就知道开发投入的工作量不小。
支持FastModels和QEMU两个虚拟模拟器,其他5款开发板。今天先看看QEMU运行起来效果怎么样吧。
- Foundation Models
- ARM Juno board
- QEMU
- STMicroelectronics boards
- Allwinner A80
- Mediatek MT8173 EVB
- HiKey Board
下面是编译说明。我就说一下关键点吧。下面的内容在git服务器optee-os的根目录下README.MD。
linux是3.18就可以,如果不好下载,下载3.18或者3.18rc1解压到qemu_optee下,把目录的名字改为linux即可。
第一步:
安装需要的包,apt-get解决。没有难度。如果有冲突的包,remove一下再安装即可。
第二步:
运行下载和编译环境脚本setup_qemu_optee.sh
执行完成之后,如果目录不变的话,应该在~/devel/qemu_optee目录下出现build.sh等一系列脚本。
如果有需要调整的,只需要编译对应的文件即可。如果你更换了linux的内核,或者文件系统。记得重新编译bios.bin,也就是运行buid_bios.sh。链接都在bios.bin里面。
第三步:
运行build.sh。主要是干几件事。bios.bin(qemu引导文件),nsec_blob.bin(非安全系统bin,调整过的zImage),nsec_rootfs.bin(linux文件系统,包含optee_client、TEE_Client的驱动和xtest测试程序等),secure_blob.bin(安全系统包含安全ta)。
具体的几个文件的关系是bios.bin,里面有后面三个文件的地址。需要调用的时候,切换到对应的地址去运行。