用于堆过流保护的软件存储器标签制造技术

技术编号:39974912 阅读:16 留言:0更新日期:2024-01-09 01:04
本文总体上讨论的是用于提供缓冲区溢出保护的软件存储器标签的设备、系统和方法。一种方法可以包括响应于将数据写入存储器的堆的存储器写入操作,标识位图中与存储器写入操作的第一地址相关联的第一标签值;针对受存储器写入操作影响的第一地址之后的每个地址,将存储器的位图中的各自的标签值与所标识的第一标签值进行比较;以及如果各自的标签值中的任一标签值与第一标签值不匹配,停止应用的执行。

【技术实现步骤摘要】
【国外来华专利技术】


技术介绍

1、当写入缓冲区(存储器的一部分,诸如运行时分配)的数据损坏了与目标缓冲区相邻的存储器地址中的数据值时,就会发生缓冲区溢出。当存储器写入操作的边界检查不足时,就会发生缓冲区溢出。通过检查要写入的数据是否适合目标缓冲区,可以防止缓冲区溢出。


技术实现思路

1、本文提供的用于缓冲区溢出保护的解决方案改进了现有的缓冲区溢出技术。各方面提供了一种基于软件的缓冲区溢出解决方案,其具有有限的存储器和处理开销。各方面可以包括维护第一地址空间、不同的第二地址空间以及不同的第三地址空间,第一地址空间存储包括多个不相交堆存储器分配的堆;第二地址空间存储定义第一地址空间的标签值的位图;第三地址空间存储软件应用的指令,指令在由处理电路执行时,使处理电路执行用于缓冲区溢出保护的操作。该操作可以包括响应于将数据写入堆的存储器写入操作,标识位图中与存储器写入操作的第一地址相关联的第一标签值。该操作可以包括针对受存储器写入操作影响的第一地址之后的每个地址,将各自的标签值与所标识的第一标签值进行比较。该操作还可以包括如果各自的标签本文档来自技高网...

【技术保护点】

1.一种计算设备,具有缓冲区溢出保护,所述计算设备包括:

2.根据权利要求1所述的计算设备,还包括:

3.根据权利要求2所述的计算设备,其中所述标签值中的每个标签值是单个位。

4.根据权利要求3所述的计算设备,其中由所述运行时的每个最小存储器分配的所述地址包括与其相关联的相等的标签值。

5.根据权利要求4所述的计算设备,其中所述运行时针对每个最小存储器分配在所述位图中存储仅单个位标签值。

6.根据权利要求1所述的计算设备,其中所述写入操作是存储器复制。

7.根据权利要求6所述的计算设备,其中所述操作还包括:加载标签值...

【技术特征摘要】
【国外来华专利技术】

1.一种计算设备,具有缓冲区溢出保护,所述计算设备包括:

2.根据权利要求1所述的计算设备,还包括:

3.根据权利要求2所述的计算设备,其中所述标签值中的每个标签值是单个位。

4.根据权利要求3所述的计算设备,其中由所述运行时的每个最小存储器分配的所述地址包括与其相关联的相等的标签值。

5.根据权利要求4所述的计算设备,其中所述运行时针对每个最小存储器分配在所述位图中存储仅单个位标签值。

6.根据权利要求1所述的计算设备,其中所述写入操作是存储器复制。

7.根据权利要求6所述的计算设备,其中所述操作还包括:加载标签值并且将所述标签值同与被写入的数据交织的所述第一标签值进行比较,使得比较和写入两者并行发生。

8.根据权利要求7所述的计算设备,其中多个标签值利用单个加载操作被加载,并且所述多个...

【专利技术属性】
技术研发人员:J·N·比亚莱克M·J·帕金森
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1