optee开源项目的学习

来源:互联网 发布:十大网络剧排行榜2017 编辑:程序博客网 时间:2024/05/21 12:51

因为研究生阶段选的是trustzone的研究方向,所以最近在一直看这方面的东西。前不久在github上找到这个optee的开源项目,于是fork来学习一下。

地址:https://github.com/OP-TEE

发现optee有4个项目:

optee_os:包含了TEE操作系统本身的源代码,提供了TEE的内部接口。

optee_client:包含了TEE客户端库的源代码,提供了TEE的客户端接口。

optee_linuxdriver:包含了TEE驱动的源代码,提供了TEE的通用驱动程序。


在这张图上可以清楚地看出各部分的关系。

在optee_os中,作者很详细的介绍了这个项目的配置方法。你可以根据自己的需要,选择简易安装,使用某些硬件或者FVP,QEMU等平台来运行这个项目。因为没钱买硬件,我用了fast model作为平台来使用optee,所以我只介绍一下基于FVP的安装方式。

首先要确定一些依赖关系是否满足:

$ sudo apt-get install uuid-dev

如果你的是64位的linux系统还需要安装下面几个包:
$ sudo apt-get install libc6:i386 libstdc++6:i386 libz1:i386

之后要下载一个安装脚本,并运行:
$ wget https://raw.githubusercontent.com/OP-TEE/optee_os/master/scripts/setup_fvp_optee.sh$ chmod 711 setup_fvp_optee.sh$ ./setup_fvp_optee.sh

这个脚本的功能主要是克隆一些文件,比如linux内核,optee_os,optee_client,optee_driver以及一些工具链。因为其中几个文件比较大,所以可能需要比较长的时间。

中间,安装脚本会提示你去下载FVP。因为版权问题,你需要自己去http://www.arm.com/products/tools/models/fast-models/foundation-model.php下载foundation-model并放到指定的目录,并且把setup_fvp_optee.sh脚本中的SRC_FVP置为1。之后重新运行setup_fvp_optee.sh,等待大概一个小时就可以完成安装。看到 OP-TEE and FVP setup completed. 说明安装成功。

安装成功之后,会在你的home目录下生成一个devel文件,进入目录之后会看到一些脚本文件,其作用在github里有比较详细的描述,就不在这个重复了。之后运行如下命令:

$ ./build_secure.sh$ ./build_normal.sh

就可以编译这个项目了。

最后,通过

$ ./run_foundation.sh

启动模拟器,成功启动后,加载模块并启动tee-supplicant
root@FVP:/ modprobe optee_armtzroot@FVP:/ tee-supplicant &

现在optee就可以正常使用了。

tee-supplicant 是host端的一个守护程序,用于向optee加载或卸载ta。

tee-supplicant & 是让tee-supplicant程序后台执行。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 顺风快递收件人拒收怎么办 手机联系人没了怎么办 收件人号码错了怎么办 收件人写错了怎么办 快递联系不到收件人怎么办 小孩烫伤有水泡怎么办 被烫伤的疤痕怎么办 微店别人下单后怎么办 月经超了七天怎么办 收件人不在指定地址怎么办 2017款宝来熄火后异响怎么办 我身高一八米怎么办呀 规格型号错了发票怎么办 合同签错了怎么办 柜子背板起泡怎么办啊 显卡红灯不亮怎么办 小米设置全英文怎么办 小米手机变英文怎么办 阿迪贝壳头变黄怎么办 网友问我名字怎么办 护照姓名拼写错误怎么办 cfa报名时填错名字怎么办 机票拼音错了怎么办 evus忘填了怎么办 嘴唇有点歪了怎么办 淡奶油打发出水怎么办 怀孕第二次见红怎么办 孕妇第二次见红怎么办 微信不显示步数怎么办 小说父亲的名字怎么办 苹果手机芯片坏了怎么办 外地手机卡丢了怎么办 名字中点那个点怎么办 信用卡批不下来怎么办 菲律宾旅游签证过期怎么办 百香果施肥多了怎么办 激素脸毛孔变大怎么办 怀孕了下面痒怎么办 怀孕后湿气重怎么办 餐厅客人催单怎么办 夏天松子有味了怎么办