【技术实现步骤摘要】
【国外来华专利技术】标签检查装置及方法
[0001]本技术涉及数据处理领域。更具体地,本专利技术涉及执行标签检查。
[0002]待由数据处理装置执行的软件通常可以高级编程语言编写,然后根据由待在其上执行软件的装置支持的指令集架构编译成代码。例如,软件最初可以较高级别的语言诸如Java、C或C++编写,并且随后被编译成本地支持的指令集架构(ISA),诸如x86或一些较高级别的编程语言,诸如Java,被认为是内存安全语言,因为它们包括用于检查与内存访问相关的某些错误的运行时间错误检测检查。相比之下,内存不安全语言,诸如C和C++,不包括此类运行时间错误检查。长期以来盛行使用内存不安全语言意味着在根据给定指令集架构的编译代码中,可能存在大量存储器相关错误,其可能容易被攻击者或其它恶意方利用。此类错误可以包括:
[0003]●
边界违例,其中由代码提供的阵列索引在阵列的合法边界之外;
[0004]●
释放后使用错误,其中对存储器位置的访问是在该存储器位置已经被解除分配或释放之后进行的;
[0005]●
返回后使用,其中对与在函数内 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种装置,所述装置包括:标签检查电路,所述标签检查电路响应于目标地址以:识别防护标签,所述防护标签与一个或多个存储器位置的块相关联地被存储在存储器系统中,所述块包含由所述目标地址识别的目标存储器位置;基于所述防护标签和与所述目标地址相关联的地址标签来执行标签检查;以及响应于在所述标签检查中检测到失配,执行错误响应动作;以及标签映射存储电路,所述标签映射存储电路用于存储指示防护标签值与对应的地址标签值之间的映射的映射信息;其中所述标签检查电路被配置为:基于由所述标签映射存储电路存储的所述映射信息来重新映射所述防护标签和所述地址标签中的至少一者,以生成在所述标签检查中使用的重新映射的标签。2.根据权利要求1所述的装置,其中:所述标签检查电路被配置为重新映射所述地址标签,并且所述重新映射的标签是重新映射的地址标签。3.根据权利要求1所述的装置,其中:所述标签检查电路被配置为重新映射所述防护标签,并且所述重新映射的标签是重新映射的防护标签。4.根据任一前述权利要求所述的装置,其中:所述重新映射的标签比所述地址标签和所述防护标签中的所述至少一者长。5.根据任一前述权利要求所述的装置,其中:所述标签检查电路被配置为响应于指定所述目标地址的存储器访问请求来执行所述标签检查,所述存储器访问请求具有多种访问类型中的一种访问类型;并且对于提供给定防护标签值与给定地址标签值之间的映射的给定映射信息项目,所述标签检查电路被配置为:当存储器访问请求的所述地址标签指定所述给定地址标签值时,限制所述存储器访问请求的所述多种访问类型中的哪些访问类型被允许访问在块中的存储器位置,所述块与具有所述给定防护标签值的防护标签相关联。6.根据任一前述权利要求所述的装置,其中:所述映射信息指定多个重新映射的标签值字段;并且所述标签检查电路被配置为:基于所述防护标签和所述地址标签中的所述至少一者的值来选择所述多个重新映射的标签值字段中的一个重新映射的标签值字段,并且基于在所选择的重新映射的标签值字段中指定的重新映射的标签值来确定所述重新映射的标签。7.根据权利要求6所述的装置,其中:所述标签检查电路被配置为响应于指定所述目标地址的存储器访问请求来执行所述标签检查,所述存储器访问请求具有多种访问类型中的一种访问类型;并且所述标签检查电路被配置为:基于在所选择的重新映射的标签值字段中指定的许可信息来确定所述多种访问类型中的所述一种访问类型是否被许可。8.根据任一前述权利要求所述的装置,其中:所述标签检查电路被配置为响应于指定所述目标地址的存储器访问请求来执行所述标签检查,所述存储器访问请求具有多种访问类型中的一种访问类型;
所述标签映射存储电路被配置为存储对应于不同的访问类型的不同的映射信息集;并且所述标签检查电路被配置为:基于所述多种访问类型中的与所述存储器访问请求相关联的所述一种访问类型,选择要使用哪个映射信息集来生成在所述标签检查中使用的所述重新映射的标签。9.根据任一前述权利...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。