双系统启动方法及计算机可读存储介质技术方案

技术编号:20517615 阅读:39 留言:0更新日期:2019-03-06 02:33
本发明专利技术公开了一种双系统启动方法及计算机可读存储介质,方法包括:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。本发明专利技术使用一个启动引导程序启动加载双系统,由第一个操作系统直接启动第二个操作系统,跳过了第二个启动引导程序的运行时间,大大缩短了启动时间,同时简化了启动流程,又能保证启动过程系统镜像的安全。

Dual System Startup Method and Computer Readable Storage Media

The invention discloses a dual-system startup method and a computer-readable storage medium. The method includes: running a ROM program; running the boot program if the ROM program verifies that the boot program has passed; loading the real-time operating system and the ordinary operating system into the memory area; running the real-time operating system; and passing the real-time operating system. Load and run the general operating system. The invention uses a boot boot program to start and load dual systems. The first operating system directly starts the second operating system, skips the running time of the second boot program, greatly shortens the starting time, simplifies the starting process, and ensures the security of the system image in the starting process.

【技术实现步骤摘要】
双系统启动方法及计算机可读存储介质
本专利技术涉及操作系统领域,尤其涉及一种双系统启动方法及计算机可读存储介质。
技术介绍
Trustzone技术(可信区域技术)是ARM处理器的一种安全扩展功能,该技术可以把系统设备上的硬件和软件划分成两个运行环境:可信环境和非可信环境。运行于可信环境下的软件可以访问处理器的所有资源,而运行于非可信环境下的软件只能访问处理器上的非安全资源。非可信环境下一般运行一个应用丰富的普通操作系统,比如linux操作系统和Android操作系统,可信环境下运行一个实时操作系统。目前基于trustzone双系统引导方法如下:设备上电后首先运行固化在处理器上的启动程序(ROM程序),之后加载并验证第一个启动引导程序,验证通过后,第一个启动引导程序开始执行。第一个启动引导程序加载实时操作系统和第二个启动引导程序到处理器的内存区域,并验证实时操作系统和第二个启动引导程序的身份,验证通过后,跳转到实时操作系统中运行,实时操作系统初始化完成后跳到第二个启动引导程序处运行,第二个启动引导程序再加载普通操作系统到内存区域,并验证普通操作系统的身份,验证通过后跳到普通操作系统的入口地址处开始运行普通操作系统。这个方法的缺点是需要运行两个启动引导程序(两个引导程序主体功能一样,只是启动的对象不一样),工程上测量到的一个启动引导程序的运行时间大致在600ms~700ms之间,在需要快速启动的场合,比如车载ECU模块要求在2s内启动,这个时间的花费代价是巨大的。
技术实现思路
本专利技术所要解决的技术问题是:提供一种双系统启动方法及计算机可读存储介质,简化启动流程,减少启动时间,同时不失安全性。为了解决上述技术问题,本专利技术采用的技术方案为:一种基于trustzone技术的双系统启动方法,包括:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。本专利技术还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。本专利技术的有益效果在于:只使用一个启动引导程序启动加载双系统,取消了第二个启动引导程序,而是由第一个操作系统直接启动第二个操作系统,跳过了第二个启动引导程序的运行时间,大大缩短了启动时间,同时简化了启动流程,又能保证启动过程系统镜像的安全,在需要快速启动的场合中具有很好的工程利用价值。附图说明图1为本专利技术一种基于trustzone技术的双系统启动方法的流程图;图2为本专利技术实施例一的方法流程图。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图详予说明。本专利技术最关键的构思在于:只使用一个启动引导程序启动加载双系统,由第一个操作系统直接启动第二个操作系统。请参阅图1,一种基于trustzone技术的双系统启动方法,包括:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。从上述描述可知,本专利技术的有益效果在于:简化启动流程,减少启动时间,同时不失安全性。进一步地,所述“若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序”具体为:所述ROM程序通过固化在设备上的根密钥对启动引导程序进行验证;若验证通过,则运行启动引导程序。进一步地,所述“运行所述实时操作系统”具体为:所述启动引导程序通过固化在设备上的根密钥对实时操作系统进行验证;若验证通过,则运行所述实时操作系统。由上述描述可知,通过使用根密钥对启动引导程序和实时操作系统进行验证,保证安全性。进一步地,所述“通过所述实时操作系统加载并运行所述普通操作系统”具体为:所述实时操作系统通过固化在设备上的根密钥对所述普通操作系统进行验证;若验证通过,则运行实时操作系统的监控模式程序;所述监控模式程序保存当前处理器的安全状态的上下文环境,所述安全状态的上下文环境包括ARM通用寄存器的值和状态寄存器的值;所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数;从所述入口地址开始运行,并根据所述启动参数启动普通操作系统。由上述描述可知,通过使用根密钥对普通操作系统进行验证,保证安全性;通过先保存处理器的安全状态的上下文环境,避免处理器切换到非安全状态后,安全状态下的当前关键寄存器值就会被非安全状态下的值所取代;将处理器从安全状态切换到非安全状态,以启动普通操作系统。进一步地,所述“所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数”具体为:所述监控模式程序将切换处理器为非安全状态后运行的第一条指令地址设置为所述普通操作系统的入口地址,并设置普通操作系统启动所需的启动参数,所述启动参数包括设备号和设备树地址;所述监控模式程序将所述入口地址和启动参数加载到处理器相应的寄存器中,并将协处理器CP15的SCR寄存器中的NS位设置为1。由上述描述可知,准备非安全状态的上下文环境,然后使处理器可从安全状态切换到非安全状态,从而启动普通操作系统。本专利技术还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。进一步地,所述“若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序”具体为:所述ROM程序通过固化在设备上的根密钥对启动引导程序进行验证;若验证通过,则运行启动引导程序。进一步地,所述“运行所述实时操作系统”具体为:所述启动引导程序通过固化在设备上的根密钥对实时操作系统进行验证;若验证通过,则运行所述实时操作系统。进一步地,所述“通过所述实时操作系统加载并运行所述普通操作系统”具体为:所述实时操作系统通过固化在设备上的根密钥对所述普通操作系统进行验证;若验证通过,则运行实时操作系统的监控模式程序;所述监控模式程序保存当前处理器的安全状态的上下文环境,所述安全状态的上下文环境包括ARM通用寄存器的值和状态寄存器的值;所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数;从所述入口地址开始运行,并根据所述启动参数启动普通操作系统。进一步地,所述“所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数”具体为:所述监控模式程序将切换处理器为非本文档来自技高网
...

【技术保护点】
1.一种基于trustzone技术的双系统启动方法,其特征在于,包括:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。

【技术特征摘要】
1.一种基于trustzone技术的双系统启动方法,其特征在于,包括:运行ROM程序;若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序;所述启动引导程序加载实时操作系统和普通操作系统到内存区域;运行所述实时操作系统;通过所述实时操作系统加载并运行所述普通操作系统。2.根据权利要求1所述的基于trustzone技术的双系统启动方法,其特征在于,所述“若所述ROM程序验证启动引导程序通过,则运行所述启动引导程序”具体为:所述ROM程序通过固化在设备上的根密钥对启动引导程序进行验证;若验证通过,则运行启动引导程序。3.根据权利要求1所述的基于trustzone技术的双系统启动方法,其特征在于,所述“运行所述实时操作系统”具体为:所述启动引导程序通过固化在设备上的根密钥对实时操作系统进行验证;若验证通过,则运行所述实时操作系统。4.根据权利要求1所述的基于trustzone技术的双系统启动方法,其特征在于,所述“通过所述实时操作系统加载并运行所述普通操作系统”具体为:所述实时操作系统通过固化在设备上的根密钥对所述普通操作系统进行验证;若验证通过,则运行实时操作系统的监控模式程序;所述监控模式程序保存当前处理器的安全状态的上下文环境,所述安全状态的上下文环境包括ARM通用寄存器的值和状态寄存器的值;所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数;从所述入口地址开始运行,并根据所述启动参数启动普通操作系统。5.根据权利要求4所述的基于trustzone技术的双系统启动方法,其特征在于,所述“所述监控模式程序设置并加载非安全状态的上下文环境,所述非安全状态的上下文环境包括普通操作系统的入口地址以及普通操作系统启动所需的启动参数”具体为:所述监控模式程序将切换处理器为非安全状态后运行的第一条指令地址设置为所述普通操作系统的入口地址,并设置普通操作系统启动所需的启动参数,所述启动参数包括设备号和设备树地址;所述监控模式程序将所述入口地址和启动参数加载到处理器相应的寄存器中,并将协处理器CP15...

【专利技术属性】
技术研发人员:刘炯钟赵国开涂岩恺池炜宾
申请(专利权)人:厦门雅迅网络股份有限公司
类型:发明
国别省市:福建,35

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

1