[发明专利]计算机存储器的维护方法无效
| 申请号: | 201210499440.7 | 申请日: | 2012-11-20 |
| 公开(公告)号: | CN103049372A | 公开(公告)日: | 2013-04-17 |
| 发明(设计)人: | 葛冠男 | 申请(专利权)人: | 葛冠男 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 461200*** | 国省代码: | 河南;41 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 计算机 存储器 维护 方法 | ||
技术领域
本发明涉及计算机技术,具体地说,涉及计算机存储器的维护方法。
背景技术
在程序运行过程中,各程序段都可能会经常地申请一个或多个存储空间,以存储程序运行中需要和/或产生的中间数据和/或最终数据,在使用完毕后又释放该存储空间。这样,一个存储器就被划分出或干动态的存储块,每个存储块应该只由相应的程序段进行存取操作。但是,在某些情况下,向存储块存储数据会发生“越界”现象。也就是说,本来程序段A的数据应该存储在相应的存储块A′中,程序段B的数据应该存储在相应的存储块B′中,但是,由于程序员的误操作或者由于程序本身的错误,程序段A存储在存储块A′中的数据,被程序段B越界修改了,这一类非法存储的错误属于通常所说的逻辑错误。
在现有技术中,也有许多关于存储器的错误检测和修正方法,例如在专利号为5291498,名称为“具有多位输出存储电路的计算机存储器的错误检测方法及装置”的美国专利中,就介绍了一种存储器错误的检测方法。该方法用一个检测电路,检测存储过程中发生的错误。该方法存在以下缺陷:(1)检测的只是存储器中的物理错误,即存储器被物理破坏、存储的数据被物理改变而发生的错误等,不能检测上述逻辑错误;(2)需要设置一个检测电路,硬件上要改变,实现起来不方便、不灵活。
发明内容
本发明的目的,就是克服现有技术中的不足,提供一种用软件实现方法,能够方便、灵活地检测计算机存储中发生“越界”的逻辑错误。
为此,由本发明提供的一种存储器的维护方法,设置了一个初始为空的检测链,一个存储管理模块和一个错误检测模块,存储管理模块为每一个存储块设置检测头,在检测头中设置合法标记,并建立检测链;错误检测模块按照检测链中的顺序检测每一个存储块的检测头,根据检测头中存储的值是否为合法标记来判断该存储块是否被合法操作。
所述存储管理模块包括以下步骤:(1)分配一个空闲存储块:(2)设置检测头和合法标记;(3)添加检测链;(4)返回所述检测头的后一位的地址。
其中步骤(2)与步骤(3)的顺序是可以互换的。
所述错误检测模块包括以下步骤:a、将所述检测链中的链头所指向的检测头定为待检检测头;b、提取所述待检检测头中的数据;c、判断上述提取的数据是否与步骤(3)所设置的合法标记相一致;d、如果c的判断结果为不一致,则给出错告警信息和退出信号;e、如果c的判断结果为一致,则判断指向所述待检检测头的是否为所述检测链的链尾;f、如果e的判断结果为不是链尾,则将所述检测链中的下一个检测头置为待检检测头,执行步骤b;g、如果e的判断结果为是链尾,则结束检测。
本发明所称存储器,主要指计算机内存器,也可应用于计算机网络服务器的存储器、计算机硬盘,或者外部存储器,如U盘等,以及其它可用作存储功能的介质。
通过本发明所提供的计算机存储器的维护方法,无需增加任何硬件,也无需对现有硬件进行任何改造,就可以很方便地对存储器存储中的逻辑错误进行检测,能够及时地检测出编程和计算机程序运行过程中发生的存储越界错误,提示开发、维护人员进行跟踪解决,在一些需要连续运行程序的环境中,如程控交换机的维护管理中,具有很实际的意义和良好的效果。
附图说明
图1为实施本发明方法的总体过程示意图
图2a为应用本发明方法中存储管理模块对存储器进行管理后存储器和存储块的结构示意图
图2b为本发明所述的一个检测链结构示意图
图3为实现本发明所述存储管理模块的程序流程图
图4为实现本发明所述错误检测模块的程序流程图
图5是实现对一个存储块进行错误检测的程序流程图
具体实施方式
下面结合附图和实施例,进一步说明本发明的技术方案。
图1说明了本发明具体实施中的整个过程。当程序段101申请一个存储块时,计算机的CPU102接受申请存储块的指令,调用存储管理模块103,分配、设置存储块106,添加检测链104;当需要检测存储器错误时,调用错误检测模块105,根据检测链104提供的地址对存储块106进行错误检测,当检测到存储错误时,通知CPU,并由CPU发出告警提示和退出信息。
在存储管理和错误检测之前,先建立一个初始检测链,其初始指针为空指针。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于葛冠男,未经葛冠男许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210499440.7/2.html,转载请声明来源钻瓜专利网。





