[发明专利]一种校验内存中应用程序的方法和装置有效
申请号: | 201210313176.3 | 申请日: | 2012-08-29 |
公开(公告)号: | CN102799494A | 公开(公告)日: | 2012-11-28 |
发明(设计)人: | 刘群欣;陈小玄;华斌;顾广娟 | 申请(专利权)人: | 南车株洲电力机车研究所有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 412001 湖南省株洲市石峰区*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 校验 内存 应用程序 方法 装置 | ||
技术领域
本发明属于软件领域,尤其涉及一种校验内存中应用程序的方法和装置。
背景技术
嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。嵌入式软件是嵌入式处理器中的操作系统和开发工具软件,由应用程序和文档组成。
应用程序保存在FLASH或ROM等存储器中,当应用程序在内存中运行时,应用程序缓存在RAM等内存中。当应用程序首次运行时,应用程序从FLASH中读取出,并缓存在RAM中,后续运行该应用程序的过程中都是直接从RAM中读取,直至处理器断电RAM中缓存的应用程序消失。
当应用程序在内存中运行时,由于硬件某些偶然性错误、用户的一些非法操作等因素,会导致存储在RAM中一些不允许更改的数据如应用程序代码被改变。所以当RAM中的应用程序出现错误的时候,会对应用程序的运行产生影响,使得应用程序完整性或正确性受到损坏。
而在很多应用场合中,在嵌入式处理器中只采用一些简单的操作系统,如ucosll等,这些操作系统主要用于完成任务调度功能,在这些简单的操作系统中没有严格安全防护机制,所以无法保证RAM中的应用程序代码的完整性或正确性,进而对嵌入式系统的整体可靠性造成影响。
发明内容
有鉴于此,本发明的目的在于提供一种校验内存中应用程序的方法,对嵌入式系统缓存在内存中的应用程序进行检验并校正,提高应用程序运行的正确性和完整性。
为保证本发明提供的一种校验内存中应用程序的方法在实际中的实施,本发明还提供了一种校验内存中应用程序的装置。
一种校验内存中应用程序的方法,所述方法应用于嵌入式系统中,包括:
当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;
当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。
上述的方法,优选的,还包括:
当判定所述内存中的目标应用程序错误时,依据所述存储器中的初始应用程序对所述内存中缓存的目标应用程序进行刷新。
上述的方法,优选的,所述存储器中存储的与所述目标应用程序相对应的初始应用程序中预设有管理信息,所述管理信息包括:所述初始应用程序在存储器中的起始地址、所述初始应用程序的大小、和所述初始应用程序的校验和。
上述的方法,优选的,所述当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对包括:
依据所述管理信息中预设的所述存储器中的初始应用程序的起始地址和所述初始应用程序的大小,在所述存储器中获取所述初始应用程序;
依据预设的比较长度,将所述存储器中的初始应用程序划分为至少一个原代码段,将所述内存中对应的目标应用程序划分为与所述原代码段对应的比较代码段;
依次对所述原代码段和所述比较代码段进行比较。
上述的方法,优选的,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对之前还包括:
当所述嵌入式系统中没有应用程序正在运行时,依据管理信息中预设的所述存储器中的初始应用程序的起始地址和大小获取所述存储器中存储的初始应用程序;
计算获取的存储器中所述初始应用程序的校验和;
判断所述存储器中初始应用程序的校验和与管理信息中预设的校验和是否相同,如果相同,获取存储器中存储的初始应用程序,并且和在内存中缓存的目标应用程序进行比较;如果不同,判定存储器中的初始应用程序错误,发送停止所述嵌入式系统运行的信号停止所述嵌入式系统运行。
上述的方法,优选的,还包括:
当所述嵌入式系统开始运行,未启动运行任务时,依据管理信息中预设的所述存储器中的初始应用程序的起始地址和大小获取存储器中存储的初始应用程序;
计算获取的存储器中所述初始应用程序的校验和;
判断存储器中初始应用程序的校验和与管理信息中预设的校验和是否相同,如果相同,启动运行任务;如果不同,判定存储器中的初始应用程序错误,发送停止所述嵌入式系统运行的信号停止所述嵌入式系统运行。
一种校验内存中应用程序的装置,所述装置应用于嵌入式系统中,包括:
第一判断器,用于判断所述嵌入式软件是否空闲;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南车株洲电力机车研究所有限公司,未经南车株洲电力机车研究所有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210313176.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于显微镜的操作者控制单元
- 下一篇:一种高光照色牢度的转移印花的方法