半旁路审核结构的微处理器的制作方法

文档序号:17664210发布日期:2019-05-15 22:35阅读:133来源:国知局
半旁路审核结构的微处理器的制作方法

本发明属于计算机安全领域,尤其涉及一种具有半旁路审核结构的微处理器。



背景技术:

随着近年来计算机和智能终端的广泛普及,以及互联网技术的高速发展,设备安全的问题也更是日益凸显。而处理器作为计算设备的关键核心,处理器的安全问题将严重影响整个计算设备的安全性。

目前,针对处理器的安全技术主要有硬件虚拟化技术和trustzone技术。例如intel、amd等cpu厂商,利用硬件虚拟化技术来实现cpu的安全;硬件虚拟化技术是一种基于指令调度权限管理和控制的安全机制,如虚拟机监视器(vmm,virtualmachinemonitor,也被称为hypervisor),专指在使用硬件虚拟化技术时创建出的特权层,该层提供给虚拟机开发者,用来实现虚拟硬件与真实硬件的通信和事件处理,vmm的权限级别要大于操作系统的权限。如图1所示,在intel虚拟化技术架构中,vmm的权限可被视为处于ring-1级。arm架构cpu的trustzone技术,为用户模式和特权模式引入了安全状态标识和判断机制,以决定系统是运行在非安全的“普通”执行环境下,还是运行在安全可信任的“安全”环境下。安全监控器(monitor)控制着安全与“普通”环境之间的转换,图2为trustzone模式下两个并行安全环境的示意图。

但无论是intel硬件虚拟化技术,还是arm的trustzone技术,本质上都是基于度量验证和安全执行环境构建,无法做到在cpu运行时直接干预cpu核心流水线上的指令执行的实时控制,缺少安全机制直接参与核心流水线的cpu架构。



技术实现要素:

有鉴于此,本发明的一个目的是提出一种具有安全架构的微处理器,以解决现有处理器没有直接参与流水线的安全机制的的问题。

在一些说明性实施例中,所述微处理器,处理器核心为流水线结构,在流水线上执行逻辑部件与提交逻辑部件之间设置审核逻辑部件;所述审核逻辑部件由筛选单元、审核单元组成;其中,所述筛选单元被配置与所述执行逻辑部件连接,用于分离流水线上经过执行逻辑部件处理后的指令流;所述审核单元被配置与所述筛选单元和提交逻辑部件交互,用于审核被分离出的指令流,并将审核后的指令流送入所述提交逻辑部件执行。

在一些优选地实施例中,所述的微处理器,还包括:存放被分离出的指令流的待审核区域;所述审核单元被配置与所述筛选单元交互,具体包括:所述筛选单元被配置为访问待审核区域,用于向待审核区域送入被分离出的指令流,作为待审核的指令流;所述审核单元被配置为访问待审核区域,用于从待审核区域提取待审核的指令流。

在一些优选地实施例中,所述的微处理器,还包括:存放基准值的基准区域;其中,所述基准值用于审核指令流;所述比对单元还被配置为访问基准区域,用于从基准区域提取审核指令流的基准值。

在一些优选地实施例中,所述审核单元中包括:审核微电路和修改微电路;所述审核微电路用于审核被分离的指令流;所述修改微电路至少用于对待审核区域的指令流设置第一标志位,以指示该指令流已完成审核。

在一些优选地实施例中,所述审核逻辑部件,还包括:提交单元;所述提交单元被配置访问所述待审核区域,以及与所述提交逻辑部件连接,用于将待审核区域内具有所述第一标志位的指令流送入所述提交逻辑部件执行。

在一些优选地实施例中,所述审核逻辑部件,还包括:收集单元;所述收集单元被配置访问所述基准区域,以及与所述提交逻辑部件连接,用于旁路采集所述提交逻辑部件提交的指令流,作为所述基准值送入所述基准区域。

在一些优选地实施例中,所述审核逻辑部件,还包括:分发单元;所述分发单元被配置为访问待审核区域和基准区域,以及与所述筛选单元和所述收集单元连接,用于将所述筛选单元和所述收集单元获取到的指令流以特定的结构写入相应的区域。

在一些说明性实施例中,所述审核单元中的修改微电路还用于对基准区域的基准值设置第二标志位,以指示该基准值已使用;

在一些优选地实施例中,所述审核逻辑部件,还包括:删除单元;所述删除单元被配置访问所述基准区域,用于删除所述基准区域内具有所述第二标志位的基准值。

在一些优选地实施例中,所述待审核区域和/或所述基准区域为不同的高速缓存cache或寄存器。

本发明的另一个目的在于提出一种具有栈保护结构的微处理器,处理器核心为流水线结构,在流水线上执行逻辑部件与提交逻辑部件之间设置栈保护逻辑部件,以及分配部分cache作为待审核区域和基准区域;所述栈保护逻辑部件由筛选单元、审核单元、收集单元、删除单元、提交单元、分发单元;其中,所述筛选单元被配置与所述执行逻辑部件与所述分发单元连接,用于将流水线上经过执行逻辑部件处理后的出栈指令送入所述分发单元;所述收集单元被配置与所述提交逻辑部件与所述分发单元连接,用于旁路采集流水线上经过提交逻辑部件提交后的入栈指令,送入所述分发单元;所述分发单元被配置为访问待审核区域和基准区域,用于将获取到的入栈指令和出栈指令以特定的结构写入相应的区域;所述审核单元被配置访问待审核区域和基准区域,用于利用入栈指令审核出栈指令,并设置标志位以指示审核结果;所述提交单元被配置访问待审核区域,以及与所述提交逻辑部件连接,用于将所述待审核区域中具有标志位的出栈指令送入提交逻辑部件执行;所述删除单元被配置访问基准区域,用于删除所述基准区域中具有标记为的入栈指令。

本发明的再一个目的在于提出一种计算设备,该计算设备装配有上述任一项所述的微处理器。

与现有技术相比,本发明具有以下优点:

1.提出了具有安全机制的处理器架构,可实现安全的处理器流水线,从核芯解决计算设备安全性的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是现有技术中硬件虚拟化技术的示意图;

图2是现有技术中trustzone技术的示意图;

图3是现有技术中5级流水线的结构示意图;

图4是现有技术中7级流水线的结构示意图;

图5是本发明中审核逻辑部件的结构示意图;

图6是本发明中审核逻辑部件的结构示意图;

图7是本发明中元数据的结构示意图;

图8是本发明中核逻辑部件的结构示意图;

图9是本发明中方法的流程图;

图10是本发明处理器的结构框图。

具体实施方式

以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。其他实施方案可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选地,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,本发明的这些实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。

在以下详细描述中,会提出大量特定细节,以便于提供对本发明的透彻理解。但是,本领域的技术人员会理解,即使没有这些特定细节也可实施本发明。在其它情况下,没有详细描述众所周知的方法、过程、组件和电路,以免影响对本发明的理解。

微处理器(又称中央处理器cpu)从微电子电路的角度描述,微处理器是一块超大规模的集成电路,是计算设备的运算核心和控制核心,主要由运算器(alu,arithmeticandlogicunit)和控制器(cu,controlunit)两大部件组成,除此之外,还配置若干寄存器、高速缓冲存储器cache(含cachel1、cachel2、共享cache)、以及实现数据及状态交互的总线,微处理器的功能主要是解释计算机指令和处理计算机软件的数据。

微处理器从逻辑功能的角度描述,可以将微处理器描述成由若干功能各异的逻辑部件组成,按照一定规则执行的流水线,各功能如取指、译码、执行、……、提交等,以流水线的形式分级完成对指令及数据的解析/处理,并且处理器技术的不断发展,核心流水线上的流水级得到了较大的扩展,又加入了调度、寄存器重命名、分支预测等。图3示出了现有技术中5级流水线的结构,该流水线100上具有取指101、译码102、发射103、执行104和提交105;图4示出了现有技术中7级流水线的结构,该流水线100上具有取指101、译码102、寄存器重命名106、调度107、发射103、执行104、提交105,以及作为待提交区的重排序缓存108。

本发明的主要目的在于针对现有处理器的流水线架构上改进设计,提出一种具有安全结构的微处理器,以满足可在处理器内对流水线上处理的指令进行干预、审核,降低计算设备的安全风险,提高计算机整体的安全性。

现在参照图5,图5示出了本发明中具有安全结构的微处理器的流水线的结构示意图,如该结构示意图所示,本发明公开了一种微处理器,其处理器核心为流水线结构,在流水线100上设置有半旁路工作的审核逻辑部件109;所述审核逻辑部件109由筛选单元1091、审核单元1092组成;其中,所述筛选单元1091被配置在流水线上,用于分离流水线上的指令流;所述审核单元1092被配置与所述筛选单元1091和流水线交互,用于审核被分离出的指令流,并将审核后的指令流送回流水线。

该实施例中的筛选单元1091内置以特定操作码为筛选类型的控制微电路,例如该控制微电路可以以读写指令的操作码作为筛选类型,在流水线的指令流经过该筛选单元后,读写指令从指令流中被分离,导入审核单元进行审核,而其它未被关注的指令流则被放行。本领域技术人员应该可以理解的是除筛选读写指令之外,还可以根据实际关注点设置为筛选跳转指令、栈指令等cpu指令。

该实施例中的所述审核单元被配置与所述筛选单元和流水线交互的具体结构,可以采用如下连接结构:筛选单元1091被配置与审核单元1092连接,审核单元1092被配置与流水线连接。

该实施例中的审核单元的操作可以配置为根据审核结果对指令设置标志位,以指示该指令可被提交或不可被提交。

本发明中实施例中的微处理器的可以实现对关注指令的逐个审核,实现在处理器内部判断指令的安全性的机制。

现在参照图6,图6示出了本发明中具有安全结构的微处理器的流水线的结构示意图,如该结构示意图所示,本发明公开了一种微处理器,其处理器核心为流水线结构,在流水线100上设置有半旁路工作的审核逻辑部件109;所述审核逻辑部件109由筛选单元1091、审核单元1092组成;其中,所述筛选单元1091被配置在流水线上,用于分离流水线上的指令流;所述审核单元1092被配置与所述筛选单元1091和流水线交互,用于审核被分离出的指令流,并将审核后的指令流送回流水线。

进一步的,该实施例中的微处理器还包括:存放被分离出的指令流的待审核区域201、以及存放基准值的基准区域202;其中,所述基准值用于审核指令流;

优选地,所述筛选单元1091被配置为访问待审核区域201,用于向待审核区域201送入被分离出的指令流,作为待审核的指令流;所述审核单元1092被配置为访问待审核区域201,用于从待审核区域201提取待审核的指令流;所述审核单元1092还被配置为访问基准区域202,用于从基准区域202提取审核指令流的基准值。

优选地,审核单元的工作过程,例如审核单元按照待审核区域内的待审核指令的排列顺序,提取待审核指令;将待审核指令的信息与基准区域内的每条基准值进行比对/匹配,根据规则输出审核结果;

优选地,审核单元1092由审核微电路和修改微电路组成;其中,审核微电路用于执行待审核指令的信息与基准区域内的每条基准值进行比对/匹配,以及向修改微电路发送控制信号:修改微电路用于在接收到控制信号后,执行在待审核区域内对待审核指令的修改及标记操作。

进一步的,该实施例中的审核逻辑部件109,还包括:收集单元1093;所述收集单元1093被配置访问所述基准区域202,以及与流水线连接,用于旁路采集经过流水线处理后生效的指令流,作为所述基准值送入所述基准区域202。

其中,该实施例中的收集单元1093同样内置以特定操作码为筛选类型的控制微电路,例如该控制微电路可以以读写指令的操作码作为筛选类型,在流水线的指令流经过该收集单元1093后,读写指令不仅按照其正常的路径流转,而且还旁路送入了基准区域202;本领域技术人员应该可以理解的是除筛选读写指令之外,还可以根据实际关注点设置为筛选跳转指令、栈指令等cpu指令。

进一步的,该实施例中的审核逻辑部件109,还包括:分发单元1094,所述分发单元1094被配置为访问待审核区域201和基准区域202,以及与所述筛选单元1091和所述收集单元1093连接,用于将所述筛选单元1091和所述收集单元1093获取到的指令流以元数据结构写入相应的区域。

优选地,待审核区域和基准区域的元数据结构可以如图7所示,具有栈地址、数据、标志位match、标志位valid;

其中,标志位match可用于表示该指令已完成审核,标志valid可用于表示该指令数据已使用。

进一步的,该实施例中的审核逻辑部件109,还包括:提交单元1095;所述提交单元1095被配置访问所述待审核区域,以及与流水线连接,用于将待审核区域201内具有第一标志位(例如标志位match)的指令流提交回流水线执行。

进一步的,该实施例中的审核逻辑部件109,还包括:删除单元1096;所述删除单元1096被配置访问所述基准区域202。用于删除所述基准区域202内具有所述第二标志位(例如标志位valid)的基准值。

该实施例中的待审核区域201和基准区域202可以通过分配高速缓存cache的部分使用,其中,待审核区域和基准区域为不重合的cache区域;本发明的实施例中还可以使用寄存器作为待审核区域和基准区域,相比而言,利用cache构建的存储区域相比寄存器的容量更大,更适于cpu使用处理。

本发明中实施例中的微处理器的可以实现对关注指令的逐个审核的基础上的扩展,利用待审核区域可将待审核指令扩展至几十个,另一方面通过动态更新基准值与待审核指令,以实现自动维护基准区域的要求。

现在参照图8,图8示出了本发明中具有安全结构的微处理器的流水线的结构示意图,如该结构示意图所示,本发明针对上述实施例提出一种优选地微处理器,其处理器核心为流水线结构,在流水线上执行逻辑部件104与提交逻辑部件105之间设置有半旁路工作的审核逻辑部件109;所述审核逻辑部件109由筛选单元1091、审核单元1092组成;其中,所述筛选单元1091被配置在流水线上执行逻辑部件104与提交逻辑部件105之间的路径上,用于分离流水线上的指令流;所述审核单元1092被配置与所述筛选单元1091和流水线交互,用于审核被分离出的指令流,并将审核后的指令流送回流水线。

进一步的,该实施例中的微处理器还包括:存放被分离出的指令流的待审核区域201、以及存放基准值的基准区域202;其中,所述基准值用于审核指令流;

优选地,所述筛选单元1091被配置为访问待审核区域201,用于向待审核区域201送入被分离出的指令流,作为待审核的指令流;所述审核单元1092被配置为访问待审核区域201,用于从待审核区域201提取待审核的指令流;所述审核单元1092还被配置为访问基准区域202,用于从基准区域202提取审核指令流的基准值。

优选地,审核单元的工作过程,例如审核单元按照待审核区域内的待审核指令的排列顺序,提取待审核指令;将待审核指令的信息与基准区域内的每条基准值进行比对/匹配,根据规则输出审核结果;

优选地,审核单元1092由审核微电路和修改微电路组成;其中,审核微电路用于执行待审核指令的信息与基准区域内的每条基准值进行比对/匹配,以及向修改微电路发送控制信号;修改微电路用于在接收到控制信号后,执行在待审核区域内对待审核指令的修改及标记操作。

进一步的,该实施例中的审核逻辑部件109,还包括:收集单元1093;所述收集单元1093被配置访问所述基准区域,以及与提交逻辑部件105连接,用于旁路采集经过流水线处理后生效的指令流,作为所述基准值送入所述基准区域202。

进一步的,该实施例中的审核逻辑部件109,还包括:分发单元1094,所述分发单元1094被配置为访问待审核区域201和基准区域202,以及与所述筛选单元1091和所述收集单元1093连接,用于将所述筛选单元1091和所述收集单元1093获取到的指令流以特定的结构(例如元数据)写入相应的区域。

优选地,待审核区域201和基准区域202的元数据结构可以如图7所示,具有栈地址、数据、标志位match、标志位valid;

其中,标志位match可用于表示该指令已完成审核,标志valid可用于表示该指令数据已使用。

进一步的,该实施例中的审核逻辑部件109,还包括:提交单元1095;所述提交单元1095被配置访问所述待审核区域201,以及与流水线连接,用于将待审核区域201内具有第一标志位(例如标志位match)的指令流提交回流水线执行。

进一步的,该实施例中的审核逻辑部件109,还包括:删除单元1096;所述删除单元1096被配置访问所述基准区域202,用于删除所述基准区域202内具有所述第二标志位的基准值。

该实施例中的待审核区域201和基准区域202可以通过分配高速缓存cache的部分使用,其中,待审核区域和基准区域为不重合的cache区域;本发明的实施例中还可以使用寄存器作为待审核区域和基准区域,相比而言,利用cache构建的存储区域相比寄存器的容量更大,更适于cpu使用处理。

本发明中实施例中的微处理器的可以实现对关注指令的逐个审核的基础上的扩展,利用待审核区域可将待审核指令扩展至几十个,另一方面通过动态更新基准值,已实现自动维护基准区域的要求。

栈溢出(stack-basedbufferoverflows)算是安全界常见的漏洞。一方面是因为程序员的疏忽,使用了strcpy、sprintf等不安全的函数,增加了栈溢出漏洞的可能。另一方面,因为栈上保存了函数的放回地址等信息,因此如果攻击者能任意覆盖栈上的数据,通常情况下就意味着他能修改程序的执行流程,从而造成更大的破坏。这种攻击方法就栈溢出攻击(stacksmashingattacks)。

本发明从栈指令本身的角度出发进行考虑,栈指令是指入栈指令和出栈指令,并且同一线程的入栈指令与出栈指令是存在关联性的,入栈指令的函数返回地址即是出栈指令的出栈地址,为了保证防止因攻击产生栈溢出的现象,因此本发明考虑在处理器内保证入栈指令的函数返回地址与其对应的出栈指令的出栈地址是一致的。

本发明的另一个目的在于基于上述安全处理器的架构,设计一种针对栈溢出问题的安全处理器,在安全处理器内设置栈保护结构,保证出栈时的地址与入栈时记录的地址的一致性。

本发明针对上述实施例提出一种具有栈保护结构的微处理器,处理器核心为流水线结构,在流水线上执行逻辑部件与提交逻辑部件之间设置栈保护逻辑部件,以及分配部分cache作为待审核区域和基准区域;所述栈保护逻辑部件由筛选单元、审核单元、收集单元、删除单元、提交单元、分发单元;其中,所述筛选单元被配置与所述执行逻辑部件与所述分发单元连接,用于将流水线上经过执行逻辑部件处理后的出栈指令送入所述分发单元;所述收集单元被配置与所述提交逻辑部件与所述分发单元连接,用于旁路采集流水线上经过提交逻辑部件提交后的入栈指令,送入所述分发单元;所述分发单元被配置为访问待审核区域和基准区域,用于将获取到的入栈指令和出栈指令以特定的结构写入相应的区域;所述审核单元被配置访问待审核区域和基准区域,用于利用入栈指令审核出栈指令,并设置标志位以指示审核结果;所述提交单元被配置访问待审核区域,以及与所述提交逻辑部件连接,用于将所述待审核区域中具有标志位的出栈指令送入提交逻辑部件执行;所述删除单元被配置访问基准区域,用于删除所述基准区域中具有标记为的入栈指令。

针对上述实施例中微处理器的结构,对栈保护结构的工作流程进行说明:

计算机处理线程的相互关联的栈指令时,一定是先执行入栈指令、再执行出栈指令,因此,在上述微处理器的结构中首先是由收集单元启动,收集单元检测到入栈指令后,通过旁路将入栈指令送往分发单元进行指令解析处理,将入栈指令的函数返回地址的存放在栈中的位置(即栈指针)、函数返回地址写入基准区域中的一条记录中,以此类推,基准区域中对于每一条入栈指令进行收集记录;而筛选单元检测到出栈指令时,将出栈指令分流到分发单元,分发单元将出栈指令的出栈地址的存放在栈中的位置(即栈指针)、出栈地址写入待审核区域中的一条记录中,以此类推,基准区域中对于每一条入栈指令进行收集记录;审核单元从待审核区域中按顺序提取一条记录,将这条记录与基准栈中的每一条记录进行比对,首先比对栈地址,如果栈地址一致,再比对出栈地址与函数返回地址是否一致;此时有3种情况,第一种是栈地址不一致的情况,此时审核单元直接将待审核区域中的该记录置第一标志位;第二种是栈地址一致、出栈地址与函数返回地址也一致的情况,此时审核单元直接将待审核区域中的该记录置第一标志位和将基准区域中的匹配成功的记录置第二标志位;第三种是栈地址一致,但出栈地址与函数返回地址不一致的情况,此时审核单元将待审核区域中的该记录的出栈地址修改为基准区域中使用的对应记录的函数返回地址,再分别对两个记录置第一标志位和第二标志位。提交单元检测到待审核区域中具有第一标志位的出栈指令时,将该出栈指令送入提交逻辑部件;(也可以将具有第一标志位的出栈指令送入重排序缓存区域);删除单元检测到基准区域中具有第二标志位的入栈指令时,将该入栈指令进行清除。

本发明实施例中的栈并非内存中建立的内存栈,其出栈指令和入栈指令均是指在流水线上处理的cpu指令,不涉及与内存栈的交互。通过上述实施例,本发明可以保证栈指令的一致性,从而避免由于攻击、破坏造成的栈溢出现象的发生。

实施例中的提交单元还可以设计如下结构与流水线交互,例如:

可选方案1,所述提交单元的输出接口与所述核心流水线连接的结构可以是:所述提交单元的输出接口被配置与所述筛选单元的输入接口连接,用于将具有第一标志位的出栈指令送入所述筛选单元;其中,所述筛选单元放行具有第一标志位的出栈指令。

可选方案2,所述提交单元的输出接口与所述核心流水线连接的结构可以是:所述提交单元的输出接口被配置与所述执行逻辑电路的输入接口连接,用于将具有第一标志位的出栈指令送入所述筛选单元;其中,所述筛选单元放行具有第一标志位的出栈指令。

可选方案3,所述提交单元的输出接口与所述核心流水线连接的结构可以是:所述提交单元的输出接口被配置为访问重排序缓存,用于将具有第一标志位的出栈指令送入重排序缓存的指令列表中。

如图9所示,本发明的再一个目的在于提出一种防止栈溢出的方法,包括:

步骤s11.拦截出栈指令;

步骤s12.调取与该出栈指令对应的入栈指令;

步骤s13.判断该出栈指令与该入栈指令的栈数据是否一致;

其中,所述判断该出栈指令与所述入栈指令的栈数据是否一致,可以包括两次判断:

1).判断所述跳转地址的栈地址是否与所述函数返回地址的栈地址一致;

通过判断栈地址可以有效判断出是否是相关联的的出栈地址和函数返回地址,如果栈地址不一致,则表示两者没有关联性;

2).判断该出栈指令的跳转地址(出栈地址)是否与该入栈指令的函数返回地址一致。

通过判断出栈地址与函数返回地址可以有效的检测栈溢出现象的发生。

通过上述两个判断,可以得到以下3种判断结果的情况:

1).栈地址不一致;此时,表示所比对的出栈指令和入栈指令无关联性;

2).栈地址一致,但出栈地址与函数返回地址不一致;此时,表示出栈指令的出栈地址已经发生篡改;

3).栈地址一致,且出栈地址与函数返回地址也一致;此时,表示出栈指令与入栈指令的地址吻合,即出栈指令未被篡改。

步骤s14.根据判定结果对该出栈指令进行相应处理。

针对上述3种判定结果,可以对出栈指令进行如下处理:

1).栈地址不一致;直接执行该出栈指令;

2).栈地址一致,但出栈地址与函数返回地址不一致;将所述出栈指令的跳转地址按照所述函数返回地址进行修改,执行修改后的出栈指令;

3).栈地址一致,且出栈地址与函数返回地址一致;直接执行该出栈指令;

该实施例中在所述栈地址一致,而所述跳转地址与所述函数返回地址不一致的情况下,还包括:触发攻击报警。

本发明利用入栈指令作为判断基准,可以避免栈溢出现象的发生,且即使发生了栈溢出现象也会将出栈指令自我修复为入栈时的地址。

本发明实施例中的防止栈溢出的方法还可以适运行在图9所示的微处理器中,其流程可依照微处理器的工作流程推导,在此不再赘述。

现在参照图10,图10示出了本发明中一种微处理器的结构框图,如该结构框图所示,公开了一种微处理器,该微处理器包括拦截出栈指令的筛选模块301;调取与该出栈指令对应的入栈指令的调用模块302;判断该出栈指令与该入栈指令的栈数据是否一致的匹配模块303;根据判定结果对该出栈指令进行相应处理的执行模块304。

本发明还公开了一种计算设备,该计算设备装配有上述具有安全机制的微处理器,该计算设备可以为计算机主机、一体机、携带式计算机、智能手持终端、智能穿戴设备等可装配处理器的智能设备。

本领域技术人员还应当理解,结合本文的实施例描述的各种说明性的逻辑框、模块、电路和算法步骤均可以实现成电子硬件、计算机软件或其组合。为了清楚地说明硬件和软件之间的可交换性,上面对各种说明性的部件、框、模块、电路和步骤均围绕其功能进行了一般地描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本公开的保护范围。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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