在TEE侧实现多核并行的方法、装置及系统制造方法及图纸

技术编号:21513573 阅读:36 留言:0更新日期:2019-07-03 08:55
本申请提供一种在TEE侧实现多核并行的方法、装置及计算机系统等。该方法包括TEE创建多个子线程,所述子线程用于实现TEE侧部署的TA的子功能;针对每一个子线程,所述TEE触发富执行环境REE生成与该子线程对应的影子线程,所述影子线程的运行促使运行所述影子线程的核进入所述TEE;所述TEE将创建的子线程调度到对应的影子线程所在的核上执行。利用该方法,具备高性能要求的业务中的多个业务逻辑能够在TEE中并行运行,而且TEE触发REE生成线程并自动进入TEE侧,通过该方式实现了在TEE侧主动加核,提高了TEE侧并行的灵活性。

Method, Device and System of Multi-Core Parallel Implementation on TEE Side

【技术实现步骤摘要】
在TEE侧实现多核并行的方法、装置及系统
本申请涉及操作系统技术,尤其涉及在多域操作系统中实现多核并行的方法、装置及系统。
技术介绍
为了保证终端设备的安全性,出现了以ARM(advancedRISCmachines)为代表的终端设备安全框架(其中RISC的英文全称为reducedinstructionsetcomputer)。在框架下,系统级的安全是通过将片上系统(systemonchips,SoC)的软硬件资源划分到两个世界中获得的。这两个世界即正常世界(normalworld)和安全世界(secureworld)(也可以叫安全域和非安全域),这两个世界分别对应富执行环境(richexecutionenvironment,REE)和可信执行环境(trustedexecutionenvironment,TEE)。REE和TEE运行于同一台物理设备上,分别运行一套操作系统。REE运行安全性要求低的客户端应用(clientapplication,CA);TEE则运行需要保障其安全性的可信应用(trustedapplication,TA),为授权的可信应用TA提供安全的执行环境。CA和T本文档来自技高网...

【技术保护点】
1.一种计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述TEE部署有TA,所述TA的功能包括多个子功能,其特征在于,所述TEE还部署有线程创建模块、通知模块、以及TEE调度模块,其中,所述线程创建模块用于在所述TA的调用下创建子线程,所述子线程用以实现所述多个子功能中的一个子功能;所述通知模块用于触发所述REE生成影子线程,所述影子线程的运行促使运行所述影子线程的核进入所述TEE;所述TEE调度模块用于将所述子线程调度到所述核上运行。

【技术特征摘要】
1.一种计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述TEE部署有TA,所述TA的功能包括多个子功能,其特征在于,所述TEE还部署有线程创建模块、通知模块、以及TEE调度模块,其中,所述线程创建模块用于在所述TA的调用下创建子线程,所述子线程用以实现所述多个子功能中的一个子功能;所述通知模块用于触发所述REE生成影子线程,所述影子线程的运行促使运行所述影子线程的核进入所述TEE;所述TEE调度模块用于将所述子线程调度到所述核上运行。2.根据权利要求1所述的计算机系统,其特征在于,所述REE还部署有通知处理模块,则:所述通知模块具体用于在所述子线程被创建后产生通知,并将所述通知发送到所述通知处理模块;以及所述通知处理模块用于根据所述通知创建所述影子线程。3.根据权利要求1或2所述的计算机系统,其特征在于,所述TEE调度模块具体用于:当确定所述影子线程为首次进入所述TEE时,将新创建的所述子线程调度到所述运行所述影子线程的核上运行。4.根据权利要求1-3任意一项所述的计算机系统,其特征在于,所述TEE调度模块还用于:记录所述影子线程与所述子线程的对应关系。5.根据权利要求4所述的计算机系统,其特征在于,所述TEE调度模块具体用于:为所述子线程创建第一线程标识,所述第一线程标识用于指示访问所述子线程的线程;并且在将所述子线程调度到所述核上运行之后将所述第一线程标识的值设置为所述影子线程的标识。6.根据权利要求4或5所述的计算机系统,其特征在于,所述TEE调度模块还用于:当确定所述影子线程为再次进入所述TEE时,根据记录的所述影子线程与所述子线程的对应关系,将所述子线程调度到运行所述影子线程的当前核上运行。7.根据权利要求6所述的计算机系统,其特征在于,所述影子线程通过调用安全监视指令SMC以使得运行所述影子线程的核首次进入或再次进入所述TEE,所述SMC指令中包含一个参数,所述参数用于指示所述核是首次进入所述TEE或再次进入所述TEE;相应的,所述TEE调度模块用于根据所述参数确定所述影子线程为再次进入所述TEE。8.根据权利要求1-7任意一项所述的计算机系统,其特征在于,所述TEE调度模块还用于:记录运行所述影子线程的当前核与所述影子线程的对应关系。9.根据权利要求8所述的计算机系统,其特征在于,所述TEE调度模块具体用于:在运行所述影子线程的当前核进入所述TEE后,在所述当前核在全局状态数组中对应的元素处记录所述影子线程的标识,其中,所述全局状态数组包含N个元素,每个元素对应所述计算机系统的一个核;在运行所述影子线程的当前核离开所述TEE后,将所述当前核在所述全局状态数组中对应的元素清空。10.根据权利要求9所述的计算机系统,其特征在于,所述TEE调度模块具体用于:在运行所述影子线程的当前核进入所述TEE后,在所述当前核在所述全局状态数组中对应的元素处记录所述影子线程的标识,并查找目标子线程,将所述目标子线程调度到所述当前核上运行,其中,所述目标子线程对应的第一线程标识为所述当前核在所述全局状态数组中对应的元素处所记录的标识。11.根据权利要求1-10任意一项所述的计算机系统,其特征在于,所述通知为软中断。12.根据权利要求1-11任意一项所述的计算机系统,其特征在于,所述TEE还部署有神经网络处理单元NPU驱动;所述NPU驱动用于在所述...

【专利技术属性】
技术研发人员:姚冬冬李雨
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1