[发明专利]分支指令的处理方法、装置、设备和存储介质有效
申请号: | 201911248656.4 | 申请日: | 2019-12-06 |
公开(公告)号: | CN111061512B | 公开(公告)日: | 2022-11-15 |
发明(设计)人: | 张军;花俏枝;王普;杭波 | 申请(专利权)人: | 湖北文理学院 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 唐文波 |
地址: | 441053 湖北省襄*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分支 指令 处理 方法 装置 设备 存储 介质 | ||
本发明公开了一种分支指令的处理方法,包括:在获取到分支指令时,获取所述分支指令的当前上下文信息;查询所述分支指令对应的预存上下文信息;判断所述当前上下文信息和所述预存上下文信息是否一致;若一致,则获取所述分支指令对应的预存跳转地址,以执行从所述预存跳转地址内预取的预取指令。本发明还公开了一种分支指令的处理装置、设备和存储介质。本发明能够防止被攻击后按照错误的分支程序进行指令执行的问题发生。
技术领域
本发明涉及计算机领域,尤其涉及一种分支指令的处理方法、装置、设备和存储介质。
背景技术
分支预测(Branch Prediction)是从P5时代开始的一种先进的,解决处理分支指令(if-then-else)导致流水线失败的数据处理方法,由处理器来预判程序分支的进行方向,能够加快运算速度。目前的分支预测方式通常是直接根据分支预测器预测的目标跳转地址进行取指令和指令执行操作。而攻击者通过操作分支预测器,可以使预测执行的代码读取保密数据,在此过程中,尽管错误分支预测的结果没有被提交,但预测执行时读取的数据可以改变处理器微架构状态,如将保密数据读到缓存中,这类攻击被称为幽灵(Spectre)攻击。当前处理器的预测执行可提前执行上百条指令,使得攻击者有足够的时间基于错误的处理器微架构状态改变实施Spectre攻击。根据攻击者诱导分支预测方式,Spectre攻击可分为两类:诱导条件分支跳转方向预测错误攻击与诱导间接跳转分支目标地址预测错误攻击。攻击通过不断提供满足跳转语句条件的值,使处理器总是预测分支条件为真,从而使处理器按错误预测的路径执行,或者通过在相同的地址空间或不同的地址空间重复执行间接分支跳转,从而诱导对间接跳转分支目标地址的预测,使处理器按错误预测的间接跳转分支目标地址进行取指令操作。
因此,目前的对分支指令的处理方法中,存在容易被攻击从而按照错误的分支程序进行指令执行的问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种分支指令的处理方法、装置、设备和存储介质,旨在解决存在容易被攻击从而按照错误的分支程序进行指令执行的技术问题。
为实现上述目的,本发明提供一种分支指令的处理方法,包括:在获取到分支指令时,获取所述分支指令的当前上下文信息;查询所述分支指令对应的预存上下文信息;判断所述当前上下文信息和所述预存上下文信息是否一致;若一致,则获取所述分支指令对应的预存跳转地址,以执行从所述预存跳转地址内预取的预取指令。
可选地,所述获取所述分支指令的当前上下文信息的步骤,具体包括:查询所述分支指令所在的基本块所对应的栈,获取栈顶指针;获取所述分支指令所在的线程的线程号,以及所述线程所属的进程的进程号;将所述栈顶指针、所述线程号和所述进程号作为当前上下文信息。
可选地,所述将所述栈顶指针、所述线程号和所述进程号作为当前上下文信息的步骤,具体包括:将所述栈顶指针、所述线程号和所述进程号作为输入信息,利用哈希算法对所述输入信息进行计算,获得对应的哈希值,将所述哈希值作为当前上下文信息。
可选地,所述查询所述分支指令对应的预存上下文信息的步骤,具体包括:查询所述分支指令所在的基本块对应的分支目标缓冲器和返回地址栈,从所述分支目标缓冲器或所述返回地址栈中读取所述分支指令对应的预存上下文信息;其中,所述分支目标缓冲器和所述返回地址栈中的记录项均用于记录所述基本块中已执行过的分支指令所对应的预存跳转地址和预存上下文信息;所述获取所述分支指令对应的预存跳转地址的步骤,具体包括:根据所述分支指令查询所述分支目标缓冲器和所述返回地址栈,从所述分支目标缓冲器中读取与所述分支指令对应的预存跳转地址。
可选地,所述判断所述当前上下文信息和所述预存上下文信息是否一致的步骤之后,所述分支指令的处理方法还包括:若不一致,则从地址寄存器中读取所述分支指令对应的实际跳转地址,以执行从所述实际跳转地址内的指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖北文理学院,未经湖北文理学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911248656.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有冷却结构的顶头
- 下一篇:一种空调压缩机频率控制方法