[发明专利]一种检测内存边界溢出错误的方法在审
申请号: | 201810101223.5 | 申请日: | 2018-02-01 |
公开(公告)号: | CN108197035A | 公开(公告)日: | 2018-06-22 |
发明(设计)人: | 殷萍;高翠芳 | 申请(专利权)人: | 江南大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 哈尔滨市阳光惠远知识产权代理有限公司 23211 | 代理人: | 张勇 |
地址: | 214122 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种检测内存边界溢出错误的方法,属于计算机领域。使用一种规整的存储对象的方法,方便获取并存储对象的边界信息;实现更高效占据内存更小的边界表,存储对象分配边界大小的对数;通过判断指针所指向地址的对数的二进制的值来确定指针是否边界溢出;通过以更弱前提为核心的循环检查优化方法,提前发现边界溢出的指针,提高检测效率。本发明支持C语言和C++语言程序的内存溢出错误的高效检查,能够解决所有的空间内存安全问题,有效的提高软件的可靠性。 | ||
搜索关键词: | 溢出 内存 种检测 指针 二进制 存储对象分配 获取并存储 计算机领域 安全问题 边界信息 存储对象 空间内存 内存溢出 语言程序 规整 指向 检查 占据 检测 优化 发现 | ||
【主权项】:
1.一种检测内存边界溢出错误的方法,其特征在于,包括如下步骤:步骤一:编码器读取待检测的源代码并将其转变成中间代码;步骤二:分析中间代码,采用基于对象的边界检测技术完成对象的对齐分配并实现边界表;步骤三:在中间代码中插入检测函数;步骤四:通过分析优化,简化冗余操作,生成优化后的中间代码;步骤五:将优化后的中间代码链接到二进制的库文件,生成可执行文件;步骤六:运行可执行文件,检测函数会在指针解引用其所指向对象之前判断当前指针是否越出对象边界,当遇到有指针越界,缓冲区溢出等内存安全错误,程序会调用终止执行并报错。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江南大学,未经江南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810101223.5/,转载请声明来源钻瓜专利网。