一种校验内存中应用程序的方法和装置制造方法及图纸

技术编号:8022297 阅读:193 留言:0更新日期:2012-11-29 04:32
本发明专利技术提供的一种校验内存中应用程序的方法,所述方法应用于嵌入式系统中,包括:当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。采用本发明专利技术提供的一种校验内存中应用程序的方法,能够在软件系统空闲的时候,对内存中存储的应用程序进行检验,保证了内存中存储的应用程序与存储器中的应用程序一致,系统运行该应用程序时,就能达到设置该应用程序的运行目的,提高应用程序运行的正确性和完整性。

【技术实现步骤摘要】

本专利技术属于软件领域,尤其涉及一种校验内存中应用程序的方法和装置
技术介绍
嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。嵌入式软件是嵌入式处理器中的操作系统和开发工具软件,由应用程序和文档组成。应用程序保存在FLASH或ROM等存储器中,当应用程序在内存中运行时,应用程序缓存在RAM等内存中。当应用程序首次运行时,应用程序从FLASH中读取出,并缓存在RAM中,后续运行该应用程序的过程中都是直接从RAM中读取,直至处理器断电RAM中缓存的应 用程序消失。当应用程序在内存中运行时,由于硬件某些偶然性错误、用户的一些非法操作等因素,会导致存储在RAM中一些不允许更改的数据如应用程序代码被改变。所以当RAM中的应用程序出现错误的时候,会对应用程序的运行产生影响,使得应用程序完整性或正确性受到损坏。而在很多应用场合中,在嵌入式处理器中只采用一些简单的操作系统,如ucosll等,这些操作系统主要用于完成任务调度功能,在这些简单的操作系统中没有严格安全防护机制,所以无法保证RAM中的应用程序代码的完整性或正确性,进而对嵌入式系统的整体可靠性造成影响。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种校验内存中应用程序的方法,对嵌入式系统缓存在内存中的应用程序进行检验并校正,提高应用程序运行的正确性和完整性。为保证本专利技术提供的一种校验内存中应用程序的方法在实际中的实施,本专利技术还提供了一种校验内存中应用程序的装置。一种校验内存中应用程序的方法,所述方法应用于嵌入式系统中,包括当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。上述的方法,优选的,还包括当判定所述内存中的目标应用程序错误时,依据所述存储器中的初始应用程序对所述内存中缓存的目标应用程序进行刷新。上述的方法,优选的,所述存储器中存储的与所述目标应用程序相对应的初始应用程序中预设有管理信息,所述管理信息包括所述初始应用程序在存储器中的起始地址、所述初始应用程序的大小、和所述初始应用程序的校验和。上述的方法,优选的,所述当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对包括依据所述管理信息中预设的所述存储器中的初始应用程序的起始地址和所述初始应用程序的大小,在所述存储器中获取所述初始应用程序;依据预设的比较长度,将所述存储器中的初始应用程序划分为至少一个原代码段,将所述内存中对应的目标应用程序划分为与所述原代码段对应的比较代码段;依次对所述原代码段和所述比较代码段进行 比较。上述的方法,优选的,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对之前还包括当所述嵌入式系统中没有应用程序正在运行时,依据管理信息中预设的所述存储器中的初始应用程序的起始地址和大小获取所述存储器中存储的初始应用程序;计算获取的存储器中所述初始应用程序的校验和;判断所述存储器中初始应用程序的校验和与管理信息中预设的校验和是否相同,如果相同,获取存储器中存储的初始应用程序,并且和在内存中缓存的目标应用程序进行比较;如果不同,判定存储器中的初始应用程序错误,发送停止所述嵌入式系统运行的信号停止所述嵌入式系统运行。上述的方法,优选的,还包括当所述嵌入式系统开始运行,未启动运行任务时,依据管理信息中预设的所述存储器中的初始应用程序的起始地址和大小获取存储器中存储的初始应用程序;计算获取的存储器中所述初始应用程序的校验和;判断存储器中初始应用程序的校验和与管理信息中预设的校验和是否相同,如果相同,启动运行任务;如果不同,判定存储器中的初始应用程序错误,发送停止所述嵌入式系统运行的信号停止所述嵌入式系统运行。一种校验内存中应用程序的装置,所述装置应用于嵌入式系统中,包括第一判断器,用于判断所述嵌入式软件是否空闲;比较器,用于当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;第二判断器,用于当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。上述的装置,优选的,还包括刷新器,用于当判定所述内存中的目标应用程序错误时,依据所述存储器中的初始应用程序对所述内存中缓存的目标应用程序进行刷新。上述的装置,优选的,所述比较器包括获取模块,用于依据所述管理信息中预设的所述存储器中的初始应用程序的起始地址和所述初始应用程序的大小,在所述存储器中获取所述初始应用程序;划分模块,用于依据预设的比较长度,将所述存储器中的初始应用程序划分为至少一个原代码段,将所述内存中对应的目标应用程序划分为与所述原代码段对应的比较代码段;比较模块,用于依次对所述原代码段和所述比较代码段进行比较。上述的装置,优选的,还包括校验器,用于当所述嵌入式系统开始运行,未启动运行任务时和/或当判定所述嵌入式系统中没有应用程序正在运行时,依据管理信息中预设的所述存储器中的初始应用程序的起始地址和大小获取存储器中存储的初始应用程序,计算获取的存储器中所述初始应用程序的校验和,并判断所述存储器中初始应用程序的校验和与管理信息中预设的校验和是否相同;发送器,用于当检验器判定存储器中初始应用程序的校验和与管理信息中预设的校验和不同时,发送停止所述嵌入式系统运行的信号。本专利技术提供的一种校验内存中应用程序的方法,所述方法应用于嵌入式系统中,包括当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。采用本专利技术提供的一种校验内存中应用程序的方法,能够在软件系统中没有应用程序正在运行的时候,对内存中存储的应用程序进行检验,保证了内存中存储的应用程序与存储器 中的应用程序一致,系统运行该应用程序时,就能达到设置该应用程序的运行目的,提高应用程序运行的正确性和完整性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是本专利技术提供的一种校验内存中应用程序的方法实施例I的流程图;图2是本专利技术提供的一种校验内存中应用程序的方法实施例I的一具体流程图;图3是本专利技术提供的一种校验内存中应用程序的方法实施例I的另一种流程图;图4是本专利技术提供的一种校验内存中应用程序的方法实施例2的流程图;图5是本专利技术提供的一种校验内存中应用程序的方法实施例3的流程图;图6是本专利技术提供的一种校验内存中应用程序的装置实施例I的结构示意图;图7是本专利技术提供的一种校验内存中应用程序的装置实施例I的一具体结构示意图;图8是本专利技术提供的一种校验内存中应用程序的装置实施例I的另一种结构示意图;图9是本专利技术提供本文档来自技高网...

【技术保护点】
一种校验内存中应用程序的方法,其特征在于,所述方法应用于嵌入式系统中,包括:当所述嵌入式系统空闲时,将内存中缓存的目标应用程序与存储器中存储的与所述目标应用程序相对应的初始应用程序进行比对;当所述内存中缓存的目标应用程序与所述存储器中的初始应用程序不满足预设比对条件时,判定所述内存中的目标应用程序错误。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘群欣陈小玄华斌顾广娟
申请(专利权)人:南车株洲电力机车研究所有限公司
类型:发明
国别省市:

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

1