OP-TEE的安装

OP-TEE安装

OPTEE 是一个开源工程,完整的实现了一个可信执行环境。该项目最初由意法-爱立信所发起,是一个专门的解决方案,然后由ST半导体拥有和维护,2014年Linaro开始与意法半导体合作推出将这个专有的TEE解决方案转换成一个开源的TEE解决方案。
关于OPTEE就不赘述了,毕竟能找到这里的都是需要安装OP-TEE了~本文旨在为大家的提供帮助,如果失效还是参考官网安装教程。

  1. 准备工作
  • 安装依赖关系

sudo apt-get install android-tools-adb android-tools-fastboot autoconf
automake bc bison build-essential ccache cscope curl device-tree-compiler
expect flex ftp-upload gdisk iasl libattr1-dev libc6:i386 libcap-dev
libfdt-dev libftdi-dev libglib2.0-dev libhidapi-dev libncurses5-dev
libpixman-1-dev libssl-dev libstdc++6:i386 libtool libz1:i386 make
mtools netcat python-crypto python3-crypto python-pyelftools
python3-pyelftools python-serial python3-serial rsync unzip uuid-dev
xdg-utils xterm xz-utils zlib1g-dev -y

  • 安装repo

repo是一种代码版本管理工具,它是由一系列的Python脚本组成,封装了一系列的Git命令,用来统一管理多个Git仓库。 因为Android源码引用了很多开源项目,每一个子项目都是一个Git仓库,每个Git仓库都有很多分支版本,为了方便统一管理各个子项目的Git仓库,需要一个上层工具批量进行处理,因此repo诞生。

repo也会建立一个Git仓库,用来记录当前Android版本下各个子项目的Git仓库分别处于哪一个分支,这个仓库通常叫做:manifest仓库。

repo的版本与你要下的OP-TEE版本有关,像一些老版本的OP-TEE(如3.6.0之前的,这个我也不太确定,可以都是试一下),需要用repo1.x+python2.x,新版本的则repo2.x+python3.x。

安装方法:
可以用在速度较快的清华源,但是这里的版本比较单一。下载完得到一个git-repo文件夹。

$ curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
$chmod +x repo

或者你不希望通过源码下载的话,切换到清华源后使用apt下载安装会更方便。
如果你需要更多版本的repo,或是因为什么其他未知理由,可以从官网 https://gerrit.googlesource.com/git-repo/ 下载。

  • 代码下载
    以OP-TEE3.6.0为例,从这里同样可以从使用清华镜像站来更新repo。

$repo init -u https://github.com/OP-TEE/manifest.git -m default.xml -b 3.6 --repo-url=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo
$repo sync -j4 --no-clone-bundle

根据你需要的OP-TEE版本和平台,你可以选择不同的xml文件来同步代码,xml文件的选取可以参考下面:
新版本OP-TEE:
在这里插入图片描述

V1.1.0-V3.3.0在这里插入图片描述
这里同步代码的速度很慢,可以选择一个令人头秃的夜晚来慢慢同步~
但是为了尽可能地减少同步时间,我们可以在repo init指令之后,打开.repo文件中的manifest.xml文件,在每个project后面加上一个clone-depth=“1”,如图:
在这里插入图片描述

  • toolchains下载
    首先进入build目录下,

make -j2 toolchains

但是这个的速度特别慢,还总是失败,可以根据toolchain.mk中的下载网址直接下载后,方法参考https://optee.readthedocs.io/en/latest/building/toolchains.html

  • 安装
    请先确保你的代码拉取完整,可以对照manifest.xml文件中确认。
    为了加速安装速度,可以首先安装ccache,直接apt安装即可。
    安装时需要进入build目录中,使用下述指令:

make -j nproc

  • 运行OP-TEE
    在build目录下

运行:
make run
继续:
(qemu) c
停止:
(qemu) q

此时可以看到teminal中打开了一个normal world和一个security world,就说明你安装成功了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
#### 收益: 学习《optee系统开发精讲 》套餐的收益如下:1、全体系的掌握optee的核心知识点(多核多线程、启动流程、各类API、TA/PTA/STA、driver、service、各类设计思想、内存管理、中断管理...);2、掌握TEE OS的设计核心思想(不限与optee,对其它TEE也是如此),能够进入软件架构层次的各项设计;3、快速熟悉大系统软件的各项组件,能够进行大系统软件之间的设计或排查问题4、学习和理解理解Armv8/Armv9架构、Trustzone架构5、技术水平提升N个level, 掌握快速的学习方法;#### 课程简介和大纲 该课程包含但不限与以下章节:optee的组件介绍optee os启动流程optee os的初始化流程optee os线程向量表及其作用进入optee os的八种方式optee os的异常向量表和设计模型optee os对irq中断的处理optee os对fiq中断的处理optee os的内存管理optee os的MMU的使用optee os的根密钥(信任根)optee os的RPC机制optee os的存储系统optee os的SFS系统optee os的RPMB机制的实现optee os的Timer实现optee os中实现的GP APIoptee os中的系统调度optee os中密码学函数的支持optee os中的线程调度CA/TA的开发模型optee os中的serviceoptee os中的 PTAoptee os中的 secure driveroptee os中的 Early TAoptee中spinlock的实现原理详解optee中mutex的实现方式optee的栈指针和栈内存的介绍optee中使用虚函数(平台客制化)的设计模型共享内存的介绍optee os的标准错误码TA的签名和验签TA链接静态库的方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值