数据处理器制造技术

技术编号:15260324 阅读:105 留言:0更新日期:2017-05-03 13:08
本发明专利技术提供一种数据处理器,所述数据处理器包括可信内核和非可信内核,所述可信内核包括可信内核普通用户堆栈、可信内核超级用户堆栈和可信内核控制寄存器;所述非可信内核包括非可信内核普通用户堆栈、非可信内核超级用户堆栈和非可信内核控制寄存器;所述可信内核和所述非可信内核共享公用资源,所述公用资源,能够被所述可信内核和所述非可信内核访问。本发明专利技术通过虚拟内核的设计为数据安全提供了底层硬件保护机制,而且内核切换时通过将当前现场统一保存至当前内核超级用户堆栈的机制使得返回当前内核时无需考虑当前内核的用户模式,使得堆栈操作简化高效。

data processor

The invention provides a data processor, the data processor includes a trusted kernel and non trusted kernel, the trusted kernel includes trusted kernel stack, ordinary users trusted kernel super user stack and trusted kernel control register; the non trusted kernel including non trusted kernel super user stack and non trusted kernel trusted kernel common control register the user stack, the trusted kernel; and the non trusted kernel sharing common resources, the public resources can be the trusted kernel and the non trusted kernel access. Through the design of virtual kernel provides hardware protection mechanism for data security, and the kernel by switching mechanism of current field to preserve unity to the current super user kernel stack makes the return current kernel without considering the current kernel user mode, make the operation simple and efficient stack.

【技术实现步骤摘要】

本专利技术涉及数据安全
,尤其涉及一种数据处理器
技术介绍
在移动互联网以及物联网领域,数据处理器的系统安全正在变得越来越重要,传统基于软件层面的安全保护,在很多情况下已经无法给系统提供足够的安全性,黑客可以攻击操作系统从而越过软件保护,对敏感的软硬件资源进行攻击或者窃取。传统的数据处理器安全保护机制是通过超级用户和普通用户来区分寄存器的使用权限和能够执行的指令范围,而并非进行硬件隔离保护,由于超级用户和普通用户来控制访问权限更多的由操作系统完成,因而这种传统安全机制更偏向于软件层面的保护。一旦攻击者成功攻击操作系统就可绕过软件的保护机制,敏感信息变得容易获取。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下技术问题:现有数据处理器的安全保护机制缺乏对敏感信息进行硬件隔离保护,因此,有必要提供一种基于数据处理器的底层硬件保护机制。
技术实现思路
本专利技术提供的数据处理器,通过虚拟内核的设计为数据安全提供了底层硬件保护机制,而且内核切换时通过将当前现场统一保存至当前内核超级用户堆栈的机制使得内核切换调用或者中断响应后返回当前内核时无需考虑所述当前内核所处的用户模式,使得堆栈操作简化高效。本专利技术提供一种数据处理器,所述数据处理器包括可信内核和非可信内核,所述可信内核包括可信内核普通用户堆栈、可信内核超级用户堆栈和可信内核控制寄存器;所述非可信内核包括非可信内核普通用户堆栈、非可信内核超级用户堆栈和非可信内核控制寄存器;所述可信内核和所述非可信内核共享公用资源,所述公用资源,能够被所述可信内核和所述非可信内核访问;所述数据处理器,用于当所述数据处理器的当前内核为所述可信内核时将所述公用资源保存至所述可信内核超级用户堆栈中,进行内核切换以在所述非可信内核中执行相应处理,返回所述可信内核并将所述公用资源从所述可信内核超级用户堆栈中恢复;或者,当所述数据处理器的当前内核为所述非可信内核时将所述公用资源保存至所述非可信内核超级用户堆栈中,进行内核切换以在所述可信内核中执行相应处理,返回所述非可信内核并将所述公用资源从所述非可信内核超级用户堆栈中恢复。可选地,所述公用资源包括程序指针、程序状态寄存器和通用寄存器。可选地,所述内核切换通过内核切换调用方式来实现。可选地,所述内核切换通过中断响应方式来实现。可选地,所述数据处理器,用于当所述数据处理器在当前的非可信内核进行内核切换调用时将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈到所述非可信内核超级用户堆栈,进行内核切换以在所述可信内核中执行调用处理,待完成所述调用处理后返回至所述非可信内核并将所述程序指针、所述程序状态寄存器和所述通用寄存器从所述非可信内核超级用户堆栈中弹栈以恢复非可信现场。可选地,所述数据处理器还用于当所述数据处理器在当前的可信内核进行内核切换调用时将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈到所述可信内核超级用户堆栈,进行内核切换以在所述非可信内核中执行相应处理,返回所述可信内核并将所述程序指针、所述程序状态寄存器和所述通用寄存器从所述可信内核超级用户堆栈中弹栈以恢复可信现场。可选地,所述数据处理器,用于当所述数据处理器在所述非可信内核需要通过所述可信内核进行中断响应时将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈到所述非可信内核超级用户堆栈,进行内核切换以在所述可信内核中执行中断处理,待完成所述中断处理后返回至所述非可信内核并将所述程序指针、所述程序状态寄存器和所述通用寄存器从所述非可信内核超级用户堆栈中弹栈以恢复非可信现场。可选地,所述数据处理器,还用于当所述数据处理器在所述可信内核需要通过所述非可信内核进行中断响应时将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈到所述可信内核超级用户堆栈,对所述通用寄存器进行清零,进行内核切换以在所述非可信内核中执行中断处理,待完成所述中断处理后返回至所述可信内核并将所述程序指针、所述程序状态寄存器和所述通用寄存器从所述可信内核超级用户堆栈中弹栈以恢复可信现场。本专利技术实施例提供的数据处理器,与现有技术中软件保护机制相比,本专利技术提供了基于数据安全的底层硬件保护机制,一方面,通过可信虚拟内核和非可信虚拟内核的设计为对敏感信息进行了物理隔离保护;另一方面,内核切换时通过将当前现场统一保存至当前内核超级用户堆栈的机制使得内核切换调用或者中断响应后返回当前内核时无需考虑所述当前内核所处的用户模式,使得堆栈操作简化高效。附图说明图1为本专利技术一实施例数据处理器的结构示意图;图2为本专利技术另一实施例数据处理器的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供一种数据处理器,如图1所示,所述数据处理器包括可信内核1和非可信内核2,所述可信内核1包括可信内核普通用户堆栈12、可信内核超级用户堆栈11和可信内核控制寄存器13;所述非可信内核2包括非可信内核普通用户堆栈22、非可信内核超级用户堆栈21和非可信内核控制寄存器23;所述可信内核1和所述非可信内核2共享公用资源3,所述公用资源3,能够被所述可信内核1和所述非可信内核2访问;所述数据处理器,用于当所述数据处理器的当前内核为所述可信内核1时将所述公用资源3保存至所述可信内核超级用户堆栈11中,进行内核切换以在所述非可信内核2中执行相应处理,返回所述可信内核1并将所述公用资源3从所述可信内核超级用户堆栈11中恢复;或者,当所述数据处理器的当前内核为所述非可信内核2时将所述公用资源3保存至所述非可信内核超级用户堆栈21中,进行内核切换以在所述可信内核1中执行相应处理,返回所述非可信内核2并将所述公用资源3从所述非可信内核超级用户堆栈21中恢复。本专利技术实施例提供的数据处理器,与现有技术中软件保护机制相比,本专利技术提供了基于数据安全的底层硬件保护机制,一方面,通过可信虚拟内核和非可信虚拟内核的设计为对敏感信息进行了物理隔离保护;另一方面,内核切换时通过将当前现场统一保存至当前内核超级用户堆栈的机制使得内核切换调用或者中断响应后返回当前内核时无需考虑所述当前内核所处的用户模式,使得堆栈操作简化高效。可选地,如图2所示,所述公用资源3包括程序指针31、程序状态寄存器32和通用寄存器33。可选地,所述内核切换通过内核切换调用方式或者中断响应方式来实现。下面以通过内核切换调用方式进行内核切换为例,来说明本专利技术的数据处理器的工作原理:情况一:在非可信内核2通过内核切换调用方式进行内核切换1)将所述程序指针31、所述程序状态寄存器32和所述通用寄存器33压栈到所述非可信内核超级用户堆栈21。2)进行内核切换以在所述可信内核1中执行调用处理。具体为:获取内核切换调用所指示的可信内核服务的入口地址,切换至所述可信内核1并根据所述可信内核服务的入口地址进行调用处理。3)待完成所述调用处理后返回至所述非可信内核2并将所述程序指针31、所述程序状态寄存器32和所述通用本文档来自技高网...

【技术保护点】
一种数据处理器,其特征在于,所述数据处理器包括可信内核和非可信内核,所述可信内核包括可信内核普通用户堆栈、可信内核超级用户堆栈和可信内核控制寄存器;所述非可信内核包括非可信内核普通用户堆栈、非可信内核超级用户堆栈和非可信内核控制寄存器;所述可信内核和所述非可信内核共享公用资源,所述公用资源,能够被所述可信内核和所述非可信内核访问;所述数据处理器,用于当所述数据处理器的当前内核为所述可信内核时将所述公用资源保存至所述可信内核超级用户堆栈中,进行内核切换以在所述非可信内核中执行相应处理,返回所述可信内核并将所述公用资源从所述可信内核超级用户堆栈中恢复;或者,当所述数据处理器的当前内核为所述非可信内核时将所述公用资源保存至所述非可信内核超级用户堆栈中,进行内核切换以在所述可信内核中执行相应处理,返回所述非可信内核并将所述公用资源从所述非可信内核超级用户堆栈中恢复。

【技术特征摘要】
1.一种数据处理器,其特征在于,所述数据处理器包括可信内核和非可信内核,所述可信内核包括可信内核普通用户堆栈、可信内核超级用户堆栈和可信内核控制寄存器;所述非可信内核包括非可信内核普通用户堆栈、非可信内核超级用户堆栈和非可信内核控制寄存器;所述可信内核和所述非可信内核共享公用资源,所述公用资源,能够被所述可信内核和所述非可信内核访问;所述数据处理器,用于当所述数据处理器的当前内核为所述可信内核时将所述公用资源保存至所述可信内核超级用户堆栈中,进行内核切换以在所述非可信内核中执行相应处理,返回所述可信内核并将所述公用资源从所述可信内核超级用户堆栈中恢复;或者,当所述数据处理器的当前内核为所述非可信内核时将所述公用资源保存至所述非可信内核超级用户堆栈中,进行内核切换以在所述可信内核中执行相应处理,返回所述非可信内核并将所述公用资源从所述非可信内核超级用户堆栈中恢复。2.根据权利要求1所述的数据处理器,其特征在于,所述公用资源包括程序指针、程序状态寄存器和通用寄存器。3.根据权利要求2所述的数据处理器,其特征在于,所述内核切换通过内核切换调用方式来实现。4.根据权利要求2所述的数据处理器,其特征在于,所述内核切换通过中断响应方式来实现。5.根据权利要求3所述的数据处理器,其特征在于,所述数据处理器,用于当所述数据处理器在当前的非可信内核进行内核切换调用时将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈到所述非可信内核超级用户堆栈,进行内核切换以在所述可信内核中执行调用处理,待完成所述调用处理后返回...

【专利技术属性】
技术研发人员:江鹏
申请(专利权)人:杭州中天微系统有限公司
类型:发明
国别省市:浙江;33

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

1