CN105630534A - 基于TrustZone架构的应用程序执行方法、装置和终端 - Google Patents

基于TrustZone架构的应用程序执行方法、装置和终端 Download PDF

Info

Publication number
CN105630534A
CN105630534A CN201510204312.9A CN201510204312A CN105630534A CN 105630534 A CN105630534 A CN 105630534A CN 201510204312 A CN201510204312 A CN 201510204312A CN 105630534 A CN105630534 A CN 105630534A
Authority
CN
China
Prior art keywords
appointing system
virtual machine
trustzone
application
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510204312.9A
Other languages
English (en)
Inventor
申泽奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Original Assignee
Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yulong Computer Telecommunication Scientific Shenzhen Co Ltd filed Critical Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Priority to CN201510204312.9A priority Critical patent/CN105630534A/zh
Publication of CN105630534A publication Critical patent/CN105630534A/zh
Pending legal-status Critical Current

Links

Abstract

本发明提供了一种基于TrustZone架构的应用程序执行方法、装置和终端,其中,所述应用程序执行方法,包括:基于终端的TrustZone支持包和终端中的指定系统构建虚拟机;通过虚拟机中的编译器对应用程序的执行源文件进行编译,以形成字节码文件;通过类加载器将字节码文件加载至执行引擎,由执行引擎向指定系统申请分配内存,并通过指定系统将应用程序对应的进程装载至分配的内存中;由虚拟机中的解释器根据与指定系统相对应的指令集,将字节码文件解释为指定系统的执行指令,并将执行指令交由指定系统的内核进行执行。本发明的技术方案使得能够在确保安全系统中运行可信的应用程序的前提下,有效降低安全应用对系统平台的依赖性,提高了安全应用的可移植性。

Description

基于TrustZone架构的应用程序执行方法、装置和终端
技术领域
本发明涉及终端技术领域,具体而言,涉及一种基于TrustZone架构的应用程序执行方法和一种基于TrustZone架构的应用程序执行装置。
背景技术
在现有的TrustZone技术框架下,系统级的安全是通过将SoC(SystemonChips,片上系统)的软硬件资源划分到两个世界(world)中分别获得,即NormalWorld(正常世界)和SecureWorld(安全世界),这两个世界分别对应普通运行环境(RichExecutionEnvironment,REE)和可信运行环境(TrustedExecutionEnvironment,TEE)。具体如图1所示:
其中,在REE上运行普通的系统(OperatingSystem,OS),以及开放的应用程序(OpenApplication)。
在TEE中,TZBSP(TrustZoneBoardSupportPackage,TrustZone支持包)向上提供各种安全服务以及驱动,其内部的Monitor(监视器)模块处理REE与TEE之间上下文切换;SEE(SecureExecutionEnvironment,安全运行环境)在TZBSP的基础之上实现安全的运行环境并提供TEE内部的API(ApplicationProgrammingInterface,应用程序编程接口),供SAPP(SecureApplication,安全应用)运行,其中SAPP包括OEMAPP(OriginalEquipmentManufacturerApplication,原始设备制造商应用)以及厂商指定DRM(DigitalRightsManagement,数字权限管理技术)。
可见,图1中所示的框架实现了安全与非安全运行环境的分离,提高了系统级的安全性。但是,由于可运行于SEE之上的SAPP是来自各种OME的安全应用,且由C/C++语言实现,这样的SAPP对于平台依赖性较强,可移植性较差。
因此,如何能够在确保应用程序安全性的前提下,降低安全应用对平台的依赖性,提高安全应用的可移植性成为亟待解决的技术问题。
发明内容
本发明正是基于上述技术问题至少之一,提出了一种新的基于TrustZone架构的应用程序执行方案,使得能够在确保安全系统中运行可信的应用程序的前提下,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
有鉴于此,本发明提出了一种基于TrustZone架构的应用程序执行方法,适用于具有多系统的终端,包括:基于所述终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令,并将所述执行指令交由所述指定系统的内核进行执行。
在该技术方案中,通过基于TrustZone支持包(TrustZoneBoardSupportPackage,TZBSP)和终端的指定系统构建虚拟机,即以TZBSP作为系统硬件平台支持,以指定系统作为操作系统支持构建虚拟机,以实现对应用程序的运行,使得在上述指定系统为安全系统时,能够在安全系统中通过虚拟机运行可信的应用程序(如JAVA应用),同时由于是解释器根据与指定系统相对应的指令集,将字节码文件解释为该指定系统的执行指令后交由上述指定系统的内核进行执行,使得能够隐藏掉不同系统平台的底层差异,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
在上述技术方案中,优选地,由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体为:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
在上述技术方案中,优选地,所述指定系统为所述终端内的安全系统,则由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体还包括:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
在该技术方案中,通过由执行引擎向TrustZone支持包中的内存管理单元申请分配属于安全世界(SecureWorld)的内存,使得虚拟机在运行应用程序时,应用程序对应的所有进程的内存资源均属于可信运行环境(即TEE),进而能够保证应用程序的安全运行。
在上述技术方案中,优选地,还包括:在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
在该技术方案中,通过在对执行指令执行完成之后,回收上述指定系统分配的内存,并放入该指定系统的空闲内存堆,使得系统的内存资源能够得到合理的分配,提高了内存资源的利用率。
在上述技术方案中,优选地,还包括:通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能。
在该技术方案中,通过提供应用程序编程接口,使得开发人员能够方便地开发可信的适用于上述指定系统的应用程序。
其中,优选地,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
根据本发明的另一方面,还提出了一种基于TrustZone架构的应用程序执行装置,适用于具有多系统的终端,包括:构建单元,用于基于所述终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;编译单元,用于通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;处理单元,用于通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;解释单元,用于由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令;执行单元,用于将所述执行指令交由所述指定系统的内核进行执行。
在该技术方案中,通过基于TrustZone支持包(TrustZoneBoardSupportPackage,TZBSP)和终端的指定系统构建虚拟机,即以TZBSP作为系统硬件平台支持,以指定系统作为操作系统支持构建虚拟机,以实现对应用程序的运行,使得在上述指定系统为安全系统时,能够在安全系统中通过虚拟机运行可信的应用程序(如JAVA应用),同时由于是解释器根据与指定系统相对应的指令集,将字节码文件解释为该指定系统的执行指令后交由上述指定系统的内核进行执行,使得能够隐藏掉不同系统平台的底层差异,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
在上述技术方案中,优选地,所述处理单元具体用于:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
在上述技术方案中,优选地,所述指定系统为所述终端内的安全系统,则所述处理单元具体还用于:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
在该技术方案中,通过由执行引擎向TrustZone支持包中的内存管理单元申请分配属于安全世界(SecureWorld)的内存,使得虚拟机在运行应用程序时,应用程序对应的所有进程的内存资源均属于可信运行环境(即TEE),进而能够保证应用程序的安全运行。
在上述技术方案中,优选地,所述处理单元还用于:在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
在该技术方案中,通过在对执行指令执行完成之后,回收上述指定系统分配的内存,并放入该指定系统的空闲内存堆,使得系统的内存资源能够得到合理的分配,提高了内存资源的利用率。
在上述技术方案中,优选地,还包括:功能支持单元,用于通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能。
在该技术方案中,通过提供应用程序编程接口,使得开发人员能够方便地开发可信的适用于上述指定系统的应用程序。
其中,优选地,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
根据本发明的又一方面,还提出了一种终端,包括:如上述任一项技术方案中所述的基于TrustZone架构的应用程序执行装置。
通过以上技术方案,使得能够在确保安全系统中运行可信的应用程序的前提下,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
附图说明
图1示出了相关技术中的TrustZone架构的结构示意图;
图2示出了根据本发明的实施例的基于TrustZone架构的应用程序执行方法的示意流程图;
图3示出了根据本发明的实施例的基于TrustZone架构的应用程序执行装置的示意框图;
图4示出了根据本发明的实施例的在TrustZone架构下的TEE中构建JVM的示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
本发明中所述的基于TrustZone架构的应用程序执行方案适用于具有多系统的终端。
图2示出了根据本发明的实施例的基于TrustZone架构的应用程序执行方法的示意流程图。
如图2所示,根据本发明的实施例的基于TrustZone架构的应用程序执行方法,包括:步骤202,基于终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;步骤204,通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;步骤206,通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;步骤208,由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令,并将所述执行指令交由所述指定系统的内核进行执行。
在该技术方案中,通过基于TrustZone支持包(TrustZoneBoardSupportPackage,TZBSP)和终端的指定系统构建虚拟机,即以TZBSP作为系统硬件平台支持,以指定系统作为操作系统支持构建虚拟机,以实现对应用程序的运行,使得在上述指定系统为安全系统时,能够在安全系统中通过虚拟机运行可信的应用程序(如JAVA应用),同时由于是解释器根据与指定系统相对应的指令集,将字节码文件解释为该指定系统的执行指令后交由上述指定系统的内核进行执行,使得能够隐藏掉不同系统平台的底层差异,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
在上述技术方案中,优选地,由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体为:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
在上述技术方案中,优选地,所述指定系统为所述终端内的安全系统,则由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体还包括:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
在该技术方案中,通过由执行引擎向TrustZone支持包中的内存管理单元申请分配属于安全世界(SecureWorld)的内存,使得虚拟机在运行应用程序时,应用程序对应的所有进程的内存资源均属于可信运行环境(即TEE),进而能够保证应用程序的安全运行。
在上述技术方案中,优选地,还包括:在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
在该技术方案中,通过在对执行指令执行完成之后,回收上述指定系统分配的内存,并放入该指定系统的空闲内存堆,使得系统的内存资源能够得到合理的分配,提高了内存资源的利用率。
在上述技术方案中,优选地,还包括:通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能。
在该技术方案中,通过提供应用程序编程接口,使得开发人员能够方便地开发可信的适用于上述指定系统的应用程序。
其中,优选地,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
图3示出了根据本发明的实施例的基于TrustZone架构的应用程序执行装置的示意框图。
如图3所示,根据本发明的实施例的基于TrustZone架构的应用程序执行装置300,包括:构建单元302,用于基于终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;编译单元304,用于通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;处理单元306,用于通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;解释单元308,用于由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令;执行单元310,用于将所述执行指令交由所述指定系统的内核进行执行。
在该技术方案中,通过基于TrustZone支持包(TrustZoneBoardSupportPackage,TZBSP)和终端的指定系统构建虚拟机,即以TZBSP作为系统硬件平台支持,以指定系统作为操作系统支持构建虚拟机,以实现对应用程序的运行,使得在上述指定系统为安全系统时,能够在安全系统中通过虚拟机运行可信的应用程序(如JAVA应用),同时由于是解释器根据与指定系统相对应的指令集,将字节码文件解释为该指定系统的执行指令后交由上述指定系统的内核进行执行,使得能够隐藏掉不同系统平台的底层差异,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
在上述技术方案中,优选地,所述处理单元306具体用于:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
在上述技术方案中,优选地,所述指定系统为所述终端内的安全系统,则所述处理单元306具体还用于:通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
在该技术方案中,通过由执行引擎向TrustZone支持包中的内存管理单元申请分配属于安全世界(SecureWorld)的内存,使得虚拟机在运行应用程序时,应用程序对应的所有进程的内存资源均属于可信运行环境(即TEE),进而能够保证应用程序的安全运行。
在上述技术方案中,优选地,所述处理单元306还用于:在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
在该技术方案中,通过在对执行指令执行完成之后,回收上述指定系统分配的内存,并放入该指定系统的空闲内存堆,使得系统的内存资源能够得到合理的分配,提高了内存资源的利用率。
在上述技术方案中,优选地,还包括:功能支持单元312,用于通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能。
在该技术方案中,通过提供应用程序编程接口,使得开发人员能够方便地开发可信的适用于上述指定系统的应用程序。
其中,优选地,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
本发明还提出了一种终端(图中未示出),包括:如图3中所示的基于TrustZone架构的应用程序执行装置300。
具体地,以下结合图4,以设置JAVA虚拟机JVM(JAVAVirtualMachine)为例详细说明本发明的技术方案。
如图4所示,在TrustZone技术框架下的TEE中移植JVM,包括:
1)通过TZBSP作为系统硬件平台支持,安全系统作为操作系统支持,实现JVM中核心执行引擎的处理器计算,内存管理等功能;
2)JVM通过JNI(JavaNativeInterface)调用安全系统Kernel(内科)中的系统函数,隐藏底层差异;
3)JVM还包括具有适时加载安全系统library能力的ClassLoader(类加载器);
4)向上提供统一的JavaAPI,运行可信的JAVA安全应用。
其中,Java安全应用执行过程如下所述:
a)Java源文件(*.java)通过编译器形成字节码文件(*.class)。
b)字节码文件被JVM的类加载器Classloader加载,进入执行引擎。JVM进程向安全操作系统请求在内存中分配属于安全世界(SecureWorld)的内存区域给Java安全应用进程。
c)安全系统将Java安全应用进程装载进入相应的安全世界内存,建立堆空间和方法区。
d)解释器通过执行引擎提供的适应安全系统的指令集,将java字节码文件解释为安全系统指令,交由安全系统内核执行。
其中,根据TrustZone机制,在TEE中的Java安全应用进程由安全内核执行,该进程的内存分配由TZBSP中的安全内存管理单元(SecureMemoryManagementUnit,SMMU)进行内存映射管理。因此,Java安全应用进程的所有内存资源属于TEE,REE中的进程无权访问,从而保证了安全应用的安全性。另外,Java安全应用进程的生命周期结束后,所分配的内存由JVM收回,放入整个系统的空闲内存堆,可再由REE下的内存管理单元NMMU(NormalMemoryManagementUnit)映射为REE下的内存资源或由SMMU映射为TEE下的内存资源。
此外,为了提高安全应用的平台无关性,JVM中的执行引擎需要提供适应于安全系统的指令集,以由解释器将字节码翻译为对应安全系统的指令,从而隐藏底层差异,所有在JVM上层的Java安全应用不需要关心运行在何种操作系统。
为了提高安全应用的灵活性,在安全系统上实现的JVM需要向上层提供同一的API,从而实现第三方Java安全应用的开发。为实现安全系统上的JavaAPI,JVM通过JNI封装安全系统内核提供的系统调用,向上支持API,具体如下所示:
SecureJavaApplication(安全的Java应用程序)
SecureJavaAPI(安全的JavaAPI)
JNI
SecureOSSystemCall(安全系统的系统调用)
Java安全应用通过JVM中的JNI实现安全系统中的系统调用功能,从而确保Java安全应用对于系统资源的使用都具有TEE下的所有权限。
本发明的上述技术方案通过向TrustZone框架下的TEE中移植JVM,实现了运行可信的JAVA安全应用,消除了现有方案中C/C++实现的安全应用的较高的平台依赖性,提高了安全应用的可移植性,为第三方开发者开发可信的安全应用提供了可能。
以上结合附图详细说明了本发明的技术方案,考虑到现有的TrustZone架构中,由于可运行于SEE之上的SAPP是来自各种OME的安全应用,且由C/C++语言实现,这样的SAPP对于平台依赖性较强,可移植性较差。因此,本发明提出了一种新的基于TrustZone架构的应用程序执行方案,使得能够在确保安全系统中运行可信的应用程序的前提下,有效降低了目前的安全应用对系统平台的依赖性,提高了安全应用的可移植性。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种基于TrustZone架构的应用程序执行方法,适用于具有多系统的终端,其特征在于,包括:
基于所述终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;
通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;
通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;
由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令,并将所述执行指令交由所述指定系统的内核进行执行。
2.根据权利要求1所述的基于TrustZone架构的应用程序执行方法,其特征在于,由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体为:
通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
3.根据权利要求2所述的基于TrustZone架构的应用程序执行方法,其特征在于,还包括:
在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
4.根据权利要求2所述的基于TrustZone架构的应用程序执行方法,其特征在于,所述指定系统为所述终端内的安全系统,则由所述执行引擎向所述终端的指定系统申请分配内存的步骤具体还包括:
通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
5.根据权利要求1至4中任一项所述的基于TrustZone架构的应用程序执行方法,其特征在于,还包括:
通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能;
其中,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
6.一种基于TrustZone架构的应用程序执行装置,适用于具有多系统的终端,其特征在于,包括:
构建单元,用于基于所述终端的TrustZone支持包和所述终端中的指定系统构建虚拟机;
编译单元,用于通过所述虚拟机中的编译器对所述应用程序的执行源文件进行编译,以形成字节码文件;
处理单元,用于通过所述虚拟机中的类加载器将所述字节码文件加载至所述虚拟机中的执行引擎,由所述执行引擎向所述指定系统申请分配内存,并通过所述指定系统将所述应用程序对应的进程装载至所述指定系统分配的内存中;
解释单元,用于由所述虚拟机中的解释器根据与所述指定系统相对应的指令集,将所述字节码文件解释为所述指定系统的执行指令;
执行单元,用于将所述执行指令交由所述指定系统的内核进行执行。
7.根据权利要求6所述的基于TrustZone架构的应用程序执行装置,其特征在于,所述处理单元具体用于:
通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配内存。
8.根据权利要求7所述的基于TrustZone架构的应用程序执行装置,其特征在于,所述处理单元还用于:
在所述指定系统的内核对所述执行指令执行完成之后,由所述虚拟机回收所述指定系统分配的内存,并放入所述指定系统的空闲内存堆。
9.根据权利要求7所述的基于TrustZone架构的应用程序执行装置,其特征在于,所述指定系统为所述终端内的安全系统,则所述处理单元具体还用于:
通过所述执行引擎向所述TrustZone支持包中的内存管理单元申请分配属于所述终端中的安全世界的内存。
10.根据权利要求6至9中任一项所述的基于TrustZone架构的应用程序执行装置,其特征在于,还包括:
功能支持单元,用于通过所述虚拟机提供应用程序编程接口,以提供在所述指定系统中的应用程序开发功能;
其中,所述虚拟机为JVM,所述JVM通过JNI实现对所述指定系统的功能进行调用,以将所述执行指令交由所述指定系统的内核进行执行。
11.一种终端,其特征在于,包括:如权利要求6至10中任一项所述的基于TrustZone架构的应用程序执行装置。
CN201510204312.9A 2015-04-27 2015-04-27 基于TrustZone架构的应用程序执行方法、装置和终端 Pending CN105630534A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510204312.9A CN105630534A (zh) 2015-04-27 2015-04-27 基于TrustZone架构的应用程序执行方法、装置和终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510204312.9A CN105630534A (zh) 2015-04-27 2015-04-27 基于TrustZone架构的应用程序执行方法、装置和终端

Publications (1)

Publication Number Publication Date
CN105630534A true CN105630534A (zh) 2016-06-01

Family

ID=56045517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510204312.9A Pending CN105630534A (zh) 2015-04-27 2015-04-27 基于TrustZone架构的应用程序执行方法、装置和终端

Country Status (1)

Country Link
CN (1) CN105630534A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304246A (zh) * 2016-09-29 2018-07-20 联芯科技有限公司 识别目标文件的方法与设备
WO2018214850A1 (zh) * 2017-05-22 2018-11-29 华为技术有限公司 用于访问安全世界的方法、装置和系统
CN109426742A (zh) * 2017-08-23 2019-03-05 深圳市中兴微电子技术有限公司 一种基于可信执行环境的安全内存动态管理系统及方法
CN110162306A (zh) * 2018-02-14 2019-08-23 阿里巴巴集团控股有限公司 系统的提前编译方法和装置
WO2020000145A1 (en) * 2018-06-25 2020-01-02 Intel Corporation World-switch as a way to schedule multiple isolated tasks within a VM
CN111880806A (zh) * 2020-07-23 2020-11-03 深圳融卡智能科技有限公司 应用执行方法与应用执行系统
CN112306632A (zh) * 2020-10-21 2021-02-02 成都融微软件服务有限公司 一种Java Card虚拟机执行引擎及执行方法
CN112698912A (zh) * 2020-12-29 2021-04-23 成都融微软件服务有限公司 一种Java Card虚拟机运行环境及内存管理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096598A (zh) * 2010-12-30 2011-06-15 广州市聚晖电子科技有限公司 一种虚拟机系统及其实现方法
US20120059993A1 (en) * 2009-05-18 2012-03-08 Nxp B.V. Secure execution of native code
CN104102876A (zh) * 2014-07-17 2014-10-15 北京握奇智能科技有限公司 保障客户端运行安全的装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120059993A1 (en) * 2009-05-18 2012-03-08 Nxp B.V. Secure execution of native code
CN102096598A (zh) * 2010-12-30 2011-06-15 广州市聚晖电子科技有限公司 一种虚拟机系统及其实现方法
CN104102876A (zh) * 2014-07-17 2014-10-15 北京握奇智能科技有限公司 保障客户端运行安全的装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
汪卓: "基于ARM Trust Zone的嵌入式虚拟机研究和应用", 《万方数据知识服务平台》 *
罗净: "基于智能终端可信操作系统的安全支付研究与实现", 《万方数据知识服务平台》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304246A (zh) * 2016-09-29 2018-07-20 联芯科技有限公司 识别目标文件的方法与设备
WO2018214850A1 (zh) * 2017-05-22 2018-11-29 华为技术有限公司 用于访问安全世界的方法、装置和系统
CN109426742A (zh) * 2017-08-23 2019-03-05 深圳市中兴微电子技术有限公司 一种基于可信执行环境的安全内存动态管理系统及方法
CN109426742B (zh) * 2017-08-23 2022-04-22 深圳市中兴微电子技术有限公司 一种基于可信执行环境的安全内存动态管理系统及方法
CN110162306A (zh) * 2018-02-14 2019-08-23 阿里巴巴集团控股有限公司 系统的提前编译方法和装置
CN110162306B (zh) * 2018-02-14 2023-06-23 斑马智行网络(香港)有限公司 系统的提前编译方法和装置
WO2020000145A1 (en) * 2018-06-25 2020-01-02 Intel Corporation World-switch as a way to schedule multiple isolated tasks within a VM
CN111880806A (zh) * 2020-07-23 2020-11-03 深圳融卡智能科技有限公司 应用执行方法与应用执行系统
CN111880806B (zh) * 2020-07-23 2023-11-21 无锡融卡科技有限公司 应用执行方法与应用执行系统
CN112306632A (zh) * 2020-10-21 2021-02-02 成都融微软件服务有限公司 一种Java Card虚拟机执行引擎及执行方法
CN112698912A (zh) * 2020-12-29 2021-04-23 成都融微软件服务有限公司 一种Java Card虚拟机运行环境及内存管理方法
CN112698912B (zh) * 2020-12-29 2024-04-26 成都融微软件服务有限公司 一种Java Card虚拟机运行环境及内存管理方法

Similar Documents

Publication Publication Date Title
CN105630534A (zh) 基于TrustZone架构的应用程序执行方法、装置和终端
CA2768752C (en) Terminal device of non-android platform for executing android applications, and computer readable recording medium for storing program of executing android applications on non-android platform
US8490070B2 (en) Unified mobile platform
CN105138382B (zh) 一种Android系统升级的方法及终端
US9069656B2 (en) Obfuscating function resources while reducing stack consumption
CN106250124B (zh) 功能模块跨平台运行的实现方法和装置
EP3992796A1 (en) Inter-process communication method, apparatus and device
CN108733379B (zh) 基于dex字节码抽离映射混淆的安卓应用加固方法
US9164735B2 (en) Enabling polymorphic objects across devices in a heterogeneous platform
US20180129794A1 (en) Method for Protecting Dex File from Decompilation in Android System
KR101394780B1 (ko) 오버라이딩 가상 함수 호출에 대한 지원을 포함하는 isa 브릿징
CN104903859A (zh) 异构计算环境中的过程迁移方法和系统
CN103793255B (zh) 可配置的多主模式多os内核实时操作系统架构的启动方法
CN108334780A (zh) 基于上下文信息的隐私泄露检测方法
KR101015573B1 (ko) Rtos 기반의 안드로이드 어플리케이션 실행 장치
CN104598841A (zh) 一种面向终端安全的双系统引导方法和装置
CN101030241A (zh) 基于Keil C51的软件保护开发的方法和系统
CN106598647A (zh) 一种智能装置开发平台
Masmano et al. An overview of the XtratuM nanokernel
US10467027B1 (en) Dynamic script loading resource files
CN106557350B (zh) 应用程序安装包中java字节码转换方法、装置及设备
CN111381816A (zh) 应用程序的获取方法、装置、设备及存储介质
CN108304248A (zh) 一种多系统虚拟化的移动设备
Al-Sakran et al. An overview of the Internet of things closed source operating systems
WO2012015083A1 (ko) Rtos 기반의 안드로이드 어플리케이션 실행 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160601

RJ01 Rejection of invention patent application after publication