一种基于中断向量的固件检测方法与装置制造方法及图纸

技术编号:27936145 阅读:46 留言:0更新日期:2021-04-02 14:16
本发明专利技术公开了一种基于中断向量的固件检测方法与装置,S1:启动嵌入式系统,进而运行校验单元对优化bin固件进行校验,获取优化bin固件的总字节数量记为N;S2:将优化bin固件的N字节按每4字节组成一个无符号整形数据,将若干无符号整形数据进行累加得到累加和校验值记为V;S3:判断校验和数据V是否为0,若V等于0,则校验通过,若V不等于0,则判定ARM芯片存在异常。本发明专利技术在固件中增加校验单元,代替常规的boot程序进行固件校验,不改变固件代码的结构,不通过外部存储器件获取固件的长度,因此本发明专利技术有设计简单,稳定可靠,无需运行boot程序,快速实现固件的校验,保证检测可靠执行。

【技术实现步骤摘要】
一种基于中断向量的固件检测方法与装置
本专利技术属于嵌入式系统
,尤其涉及一种基于中断向量的固件检测方法与装置。
技术介绍
在嵌入式系统中,保证可执行代码的正确性是十分重要的,它在系统可靠性中是不可或缺的。现有技术下,通常会先执行boot程序,通过boot程序获取固件的长度和校验码,经过计算后对固件进行校验,如果校验通过,则跳转到固件代码处执行;如果校验不通过,则不执行。通常,boot程序是严重地依赖于硬件而实现的,特别是在嵌入式平台。boot是嵌入式系统在加电后执行的第一段代码,在它完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行。对于嵌入式系统,boot是基于特定硬件平台来实现的,因此,几乎不可能为所有的嵌入式系统建立一个通用的boot,不同的处理器架构都有不同的boot。boot不但依赖于CPU的体系结构,而且依赖于嵌入式系统板级设备的配置。对于2块不同的嵌入式板而言,即使它们使用同一种处理器,要想让运行在一块板子上的boot程序也能运行在另一本文档来自技高网...

【技术保护点】
1.一种基于中断向量的固件检测方法,其特征在于,应用烧录于嵌入式系统的优化bin固件进行固件检测,所述优化bin固件包括用于实现固件自检的检测单元,包括如下步骤:/nS1:启动所述嵌入式系统,进而运行所述校验单元对所述优化bin固件进行校验,获取所述优化bin固件的总字节数量记为N;/nS2:将所述优化bin固件的N字节按每4字节组成一个无符号整形数据,将若干无符号整形数据进行累加得到累加和校验值记为V;/nS3:判断所述累加和校验值V是否为0,若V等于0,则校验通过,若V不等于0,则判定所述ARM芯片存在异常。/n

【技术特征摘要】
1.一种基于中断向量的固件检测方法,其特征在于,应用烧录于嵌入式系统的优化bin固件进行固件检测,所述优化bin固件包括用于实现固件自检的检测单元,包括如下步骤:
S1:启动所述嵌入式系统,进而运行所述校验单元对所述优化bin固件进行校验,获取所述优化bin固件的总字节数量记为N;
S2:将所述优化bin固件的N字节按每4字节组成一个无符号整形数据,将若干无符号整形数据进行累加得到累加和校验值记为V;
S3:判断所述累加和校验值V是否为0,若V等于0,则校验通过,若V不等于0,则判定所述ARM芯片存在异常。


2.根据权利要求1所述的基于中断向量的固件检测方法,其特征在于,在所述步骤S1之前还包括构建所述优化bin固件,具体包括以下步骤:
A1:构建所述优化bin固件的所述校验单元和功能单元,所述校验单元用于实现固件检测,所述功能单元用于实现所述嵌入式系统正常运行;
A2:将所述检验单元和所述功能单元通过交叉编译得到bin固件;
A3:修改所述bin固件的中断向量,得到所述优化bin固件;
A4:将所述优化bin固件烧录至所述嵌入式系统中ARM芯片的ROM。


3.根据权利要求2所述的基于中断向量的固件检测方法,其特征在于,在所述步骤A3中,所述修改所述bin固件的中断向量得到所述优化bin固件具体包括如下步骤:
B1:获取所述bin固件的总字节数量记为M,若M...

【专利技术属性】
技术研发人员:赵克安胡孟杰黄萍俞利明
申请(专利权)人:浙江中控技术股份有限公司浙江中控自动化仪表有限公司
类型:发明
国别省市:浙江;33

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

1