【技术实现步骤摘要】
【国外来华专利技术】转换禁用指示符
[0001]本技术涉及数据处理领域。
技术介绍
[0002]处理电路可支持在多个安全性域的一个安全性域中执行数据处理,这多个安全域至少包括安全域和不太安全(less secure)域。这可允许保护与安全域相关联的敏感数据或代码免受在不太安全域中操作的不太安全代码的不适当访问。
技术实现思路
[0003]至少一些示例提供了一种装置,该装置包括:处理电路,用于在多个安全性域的一个安全性域中执行数据处理,这多个安全性域至少包括安全域和不太安全域,并且在给定安全性域内,用于在多个模式的一个模式中执行数据处理,这多个模式包括用于异常处理的处理者(handler)模式和用于背景处理的线程模式;存储器访问检查电路,用于根据处理电路的当前安全性域来检查是否允许存储器访问;以及异常控制电路,响应于异常条件来执行多个异常进入转换的一个异常进入转换,该异常进入转换是基于处理电路的当前模式和当前安全性域以及与异常条件相关联的安全性域而选择的,这多个异常进入转换包括至少一个安全线程模式向安全处理者模式异常进入转换;其中:异常控制电路响应于异常返回条件而执行多个异常返回转换的一个异常返回转换,该异常返回转换是基于与异常返回条件相关联的模式和安全性域而选择的;响应于至少一个安全线程模式向安全处理者模式异常进入转换,异常控制电路被配置为设置转换禁用指示符;并且当转换禁用指示符被设置时,对于向安全域并且线程模式中的处理的至少一种类型的异常返回转换,异常控制电路被配置为触发用信号通知故障。
[0004]至少一些示 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种装置,包括:处理电路,用于在多个安全性域的一个安全域性中执行数据处理,所述多个安全域至少包括安全域和不太安全域,并且在给定安全性域内用于在多个模式的一个模式中执行数据处理,所述多个模式包括用于异常处理的处理者模式和用于背景处理的线程模式;存储器访问检查电路,用于根据所述处理电路的当前安全性域来检查是否允许存储器访问;以及异常控制电路,响应于异常条件来执行多个异常进入转换的一个异常进入转换,该异常进入转换是基于所述处理电路的当前模式和所述当前安全性域以及与所述异常条件相关联的安全性域而选择的,所述多个异常进入转换包括至少一个安全线程模式向安全处理者模式异常进入转换;其中:所述异常控制电路响应于异常返回条件而执行多个异常返回转换的一个异常返回转换,该异常返回转换是基于与所述异常返回条件相关联的模式和安全性域而选择的;响应于所述至少一个安全线程模式向安全处理者模式异常进入转换,所述异常控制电路被配置为设置转换禁用指示符;并且当所述转换禁用指示符被设置时,对于向所述安全域并且所述线程模式中的处理的至少一种类型的异常返回转换,所述异常控制电路被配置为触发用信号通知故障。2.根据权利要求1所述的装置,其中向所述安全域并且所述线程模式中的处理的所述至少一种类型的异常返回转换包括以下转换中的至少一者:从所述不太安全域并且所述处理者模式中的处理向所述安全域并且所述线程模式中的处理的转换;以及当所述异常返回转换与异常返回信息相关联时从所述安全域并且所述处理者模式中的处理向所述安全域并且所述线程模式中的处理的转换,所述异常返回信息指定所述异常返回转换对应于进入所述不太安全域并且所述处理者模式的先前异常进入条件。3.根据权利要求1和2中任一项所述的装置,其中响应于至少一个安全线程模式向不太安全处理者模式异常进入转换,所述异常控制电路被配置为执行至少一个保护动作,所述至少一个保护动作对于所述至少一个安全线程模式向安全处理者模式异常进入转换来说被省区。4.根据前述权利要求中任一项所述的装置,包括至少一个堆栈指针寄存器,所述至少一个堆栈指针寄存器用于存储至少一个堆栈指针,所述至少一个堆栈指针用于指向存储器系统中的相应堆栈数据结构,所述至少一个堆栈指针包括与安全进程堆栈数据结构相关联的安全进程堆栈指针,所述安全进程堆栈指针在当所述处理电路处于所述安全域和所述线程模式的组合时能被所述处理电路访问。5.根据权利要求4所述的装置,包括多个寄存器以存储架构状态数据;其中:所述异常控制电路响应于所述异常条件而将来自所述寄存器的架构状态数据的至少一个子集保存到由所述至少一个堆栈指针中的一个堆栈指针所标识的堆栈数据结构,以在该堆栈数据结构上提供第一异常堆栈帧和第二异常堆栈帧中的一者,所述第二异常堆栈帧包括来自所述寄存器的架构状态数据的子集,该子集从所述第一异常堆栈帧被省去。6.根据权利要求5所述的装置,其中所述第二异常堆栈帧包括完整性签名,该完整性签名从所述第一异常堆栈帧被省去;并且
对于所述多个异常返回转换的子集,所述异常控制电路被配置为执行完整性签名检查,该完整性签名检查包括从给定堆栈数据结构访问针对该异常返回转换而选择的堆栈帧,并且当在出栈的堆栈帧中的预定位置处的值和所述完整性签名之间检测到不匹配时触发故障。7.根据权利要求6所述的装置,其中所述异常控制电路被配置为响应于向所述安全域并且所述线程模式中的处理的异常返回转换而清除所述转换禁用指示符,对于该异常返回转换,不执行完整性签名检查并且利用所述安全进程堆栈指针执行出栈。8.根据权利要求6和7中任一项所述的装置,其中向所述安全域并且所述线程模式中的处理的所述至少一种类型的异常返回转换包括一种异常返回转换,对于该异常返回转换,要从所述安全进程堆栈数据结构恢复架构状态并且要执行所述完整性签名检查。9.根据权利要求5至8中任一项所述的装置,其中所述至少一个安全线程模式向安全处理者模式异常进入转换包括:从所述安全域并且所述线程模式向所述安全域并且所述处理者模式的异常进入转换,对于该异常进入转换,在所述安全进程堆栈数据结构上提供了所述第一异常堆栈帧。10.根据权利要求5至9中任一项所述的装置,其中所述异常控制电路被配置为当所述安全进程堆栈数据结构上存储的所述第一异常堆栈帧被升级以在所述安全进程堆栈数据结构上提供所述第二异常堆栈帧时,清除所述转换禁用指示符。11.根据权利要求4至10中任一项所述的装置,其中所述转换禁用指示符包括安全进程堆栈禁用指示符,当所述安全进程堆栈禁用指示符被设置时,该安全进程堆栈禁用指示符指示禁止对所述安全进程堆栈指针的访问。12.根据权利要求4至11中任一项所述的装置,包括安全进程堆栈指针限制寄存器,用于存储安全进程堆栈指针限制值,其中:所述异常控制电路被配置为响应于检测到以下项中的一者而触发用信号通知故障:所述安全进程堆栈数据结构延伸超出所述安全进程堆栈指针限制值;以及将所述...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。