数据处理器的制作方法

文档序号:16391049发布日期:2018-12-22 11:39阅读:145来源:国知局
数据处理器的制作方法

本发明涉及数据处理技术领域,尤其涉及一种数据处理器。

背景技术

随着移动互联网以及物联网技术的迅速发展,系统可信性变得越来越重要。现有的系统可信性手段有两种,分别为基于软件层面的可信性保护和基于处理器架构的可信性架构,其中,基于软件层面的可信性保护,在很多情况下已经无法给系统提供足够的可信性,黑客可以攻击操作系统从而越过软件保护,对敏感资源进行攻击或者获取;而基于处理器架构的可信性架构,能够为系统提供软件保护之外的底层硬件保护机制,将系统中的敏感信息(例如秘钥、密码等)通过硬件进行隔离保护,构建一个安全可信的编程环境。具体地,基于处理器架构的可信性架构是将处理器的物理内核虚拟出可信内核和非可信内核两种属性的内核,其中,可信内核用于存储和处理敏感信息,非可信内核用于存储和处理除敏感信息以外的信息;相应地,基于可信性架构的中断机制分为可信中断机制和非可信中断机制,分别用于处理属性为可信和非可信的中断请求,具体地,在处理器工作的当前内核为可信内核的情况下,如果接收到的中断请求为非可信属性,则保护现场至可信内核,然后进行内核切换,即将当前内核切换为非可信内核,并由切换后的非可信内核响应与处理该中断请求,处理完中断请求后处理器再切换返回可信内核继续执行。

在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:

现有技术中的可信内核响应非可信中断的处理机制是在非可信内核处理中断请求后会切换返回可信内核,而在很多应用场合,将当前内核切换到非可信内核处理完该中断请求后,需要继续停留在非可信内核继续执行其他任务以满足系统的实时性,显然,现有技术中的可信内核响应非可信中断的处理机制无法满足系统实时性的要求,也就是说,现有的基于可信处理器架构下的中断处理机制缺乏灵活性。



技术实现要素:

本发明实施例提供的数据处理器,能够灵活处理在非可信内核响应可信中断或者在可信内核响应非可信中断时的上下文切换,从而能够提高基于可信处理器架构下中断处理机制的灵活性。

本发明实施例提供一种数据处理器,所述数据处理器包括可信内核和非可信内核,所述可信内核包括非可信内核上下文内存、非可信内核堆栈和内核切换管理模块;

所述非可信内核上下文内存,用于存放非可信内核上下文;

所述非可信内核堆栈,用于提供非可信内核上下文;

所述内核切换管理模块,用于管理可信内核现场和非可信内核现场,进行内核切换。

可选地,所述非可信内核堆栈,用于所述数据处理器在当前非可信内核响应可信中断请求时提供非可信内核上下文。

可选地,当处于当前非可信内核的所述数据处理器接收到可信中断请求时,所述数据处理器将所述非可信内核上下文写入所述非可信内核堆栈,进入可信内核中断服务程序入口,通过可信内核中断服务程序调用所述内核切换管理模块;所述内核切换管理模块从所述非可信内核堆栈中取出所述非可信内核上下文,将所述非可信内核上下文写入所述非可信内核上下文内存,并恢复可信内核上下文以及通过调用内核任务切换返回指令返回可信内核现场。

可选地,所述非可信内核堆栈,用于所述数据处理器在当前可信内核响应非可信中断请求时提供非可信内核上下文。

可选地,当处于当前可信内核的所述数据处理器接收到非可信中断请求时,所述数据处理器进入可信内核中断服务程序入口,通过可信内核中断服务程序调用所述内核切换管理模块;所述内核切换管理模块保存可信内核上下文后,从所述非可信内核上下文内存取出所述非可信内核上下文,并写入所述非可信内核堆栈以及通过调用内核任务切换返回指令返回非可信内核现场。

本发明实施例提供的数据处理器,通过在可信内核中设置非可信内核上下文内核、非可信内核堆栈和内核切换管理模块,能够灵活处理在非可信内核响应可信中断或者在可信内核响应非可信中断时的上下文切换,从而能够提高基于可信处理器架构下中断处理机制的灵活性,以及满足系统实时性要求。

附图说明

图1为本发明一实施例数据处理器的结构示意图。

图2为本发明另一实施例数据处理器的结构示意图。

图3为本发明另一实施例数据处理器的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种数据处理器,如图1所示,所述数据处理器包括可信内核和非可信内核,所述可信内核包括非可信内核上下文内存、非可信内核堆栈和内核切换管理模块;

所述非可信内核上下文内存,用于存放非可信内核上下文;

所述非可信内核堆栈,用于提供非可信内核上下文;

所述内核切换管理模块,用于管理可信内核现场和非可信内核现场,进行内核切换。

可选地,所述非可信内核堆栈,用于所述数据处理器在当前非可信内核响应可信中断请求时提供非可信内核上下文。

进一步地,当处于当前非可信内核的所述数据处理器接收到可信中断请求时,所述数据处理器将所述非可信内核上下文写入所述非可信内核堆栈,进入可信内核中断服务程序入口,通过可信内核中断服务程序调用所述内核切换管理模块;所述内核切换管理模块从所述非可信内核堆栈中取出所述非可信内核上下文,将所述非可信内核上下文写入所述非可信内核上下文内存,并恢复可信内核上下文以及通过调用内核任务切换返回指令返回可信内核现场。

如图2所示,为本发明的数据处理器在非可信内核响应可信中断的情况说明图,数据处理器进行内核切换的流程如下:

①数据处理器当前工作在非可信内核。

②可信内核触发了一个可信中断。

③数据处理器把非安全内核上下文存入非可信内核堆栈,进入可信内核中断服务程序入口,可信内核中断服务程序调用内核切换管理模块。

④内核切换管理模块负责从非可信内核堆栈取出非安全内核上下文,并写入非可信内核上下文内存,然后恢复可信内核上下文。

⑤内核切换管理模块调用内核任务切换返回指令返回可信内核现场。

可选地,所述非可信内核堆栈,用于所述数据处理器在当前可信内核响应非可信中断请求时提供非可信内核上下文。

进一步地,当处于当前可信内核的所述数据处理器接收到非可信中断请求时,所述数据处理器进入可信内核中断服务程序入口,通过可信内核中断服务程序调用所述内核切换管理模块;所述内核切换管理模块保存可信内核上下文后,从所述非可信内核上下文内存取出所述非可信内核上下文,并写入所述非可信内核堆栈以及通过调用内核任务切换返回指令返回非可信内核现场。

如图3所示,为本发明的数据处理器在可信内核响应非可信中断的情况说明图,数据处理器进行内核切换的流程如下:

①数据处理器当前工作在可信内核执行。

②非可信内核触发了一个非可信中断。

③数据处理器进入可信内核中断服务程序入口,可信内核中断服务程序调用内核切换管理模块。

④内核切换管理模块保存可信内核上下文后,然后从非可信内核上下文内存取出非安全内核上下文,并写入从非可信内核堆栈。

⑤内核切换管理模块调用内核任务切换返回指令返回非可信内核现场。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1