【技术实现步骤摘要】
防止无效的存储器引用
技术介绍
[0001]本公开涉及计算设备,并且更具体地,涉及促进针对堆对象的基于硬件的存储器错误减轻的技术。
技术实现思路
[0002]以下给出了概述以提供对本专利技术的一个或多个实施例的基本理解。本概述并不旨在标识关键或重要元素,或描绘特定实施例的任何范围或权利要求的任何范围。其唯一目的是以简化形式呈现概念,作为稍后呈现的更详细描述的序言。在本文描述的一个或多个实施例中,描述了促进针对堆对象的基于硬件的存储器错误减轻的系统、设备、计算机实现的方法和/或计算机程序产品。
[0003]根据实施例,一种系统可以包括执行被存储在非暂时性计算机可读介质中的计算机可执行组件的处理器。计算机可执行组件包括:条目组件;以及重新利用(re
‑
purpose)组件。当在存储器中分配对象时,条目组件可以在表中分配条目以存储界限信息。重新利用组件可以重新利用对象地址的未使用位以存储对表条目的索引。
[0004]根据另一个实施例,一种计算机实现的方法可包括:当在存储器中分配对象时,使用处理器在表中分配条 ...
【技术保护点】
【技术特征摘要】
1.一种系统,包括:处理器,其执行被存储在非暂时性计算机可读介质中的以下计算机可执行组件:条目组件,当在存储器中分配对象时,所述条目组件在表中分配条目以存储界限信息;以及重新利用组件,其重新利用对象地址的未使用位以存储对所述表条目的索引。2.根据权利要求1所述的系统,还包括:检查组件,所述检查组件通过使用地址中的索引位以访问界限信息来在硬件中对加载和存储指令执行界限检查。3.根据权利要求1所述的系统,还包括:传播组件,所述传播组件在经由赋值语句或指针算术导出后续对象地址时自动传播所述索引。4.根据权利要求2所述的系统,其中,所述检查组件检查数组界限。5.根据权利要求2所述的系统,其中,所述检查组件确定数组引用是在界内还是越界,并减轻越界数组引用的发生。6.根据权利要求1所述的系统,其中,所述重新利用组件利用所述对象地址中的未使用位来跟踪能够被访问的存储器地址的范围。7.根据权利要求1所述的系统,其中,当所述对象地址被复制在赋值语句中时,所述传播组件在未使用位中传播额外信息。8.根据权利要求1所述的系统,其中,当所述对象地址作为函数调用中的自变量被传递时,所述传播组件在未使用位中传播额外信息。9.根据权利要求1所述的系统,其中,当所述对象地址被用于计算地址时,所述传播组件在未使用位中传播额外信息。10.根据权利要求1所述的系统,其中,保护位在地址中介于索引位与地址位之间。11.根据权利要求1所述的系统,其中,管理被存储在所述表中的所述界限信息包括对存储器分配函数或释放库函数的修改。12.根据权利要求1所述的系统,其中,当应用程序包括超过所述表的大小的活动对象数量时,或者当支持所述活动对象数量所需的索引位数量超过已被分配的索引位数量时,所述界限信息的子集被存储在溢出表中。13.根据权利要求12所述的系统,还包括:检查组件,当地址...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。