一种嵌入式系统升级失败的自动回退保护方法技术方案

技术编号:28672773 阅读:16 留言:0更新日期:2021-06-02 02:48
本发明专利技术公开了一种嵌入式系统升级失败的自动回退保护方法,本发明专利技术能够在无人值守的情况下,在嵌入式软件升级的过程中,有效的保护系统的正常工作,解决了升级过程中出现问题或者新软件包中的软件本身存在故障,导致新的主软件包无法正常启动工作,必须要人为干预,在引导程序中选择备软件包启动,否则系统将无法正常工作,造成升级事故。

【技术实现步骤摘要】
一种嵌入式系统升级失败的自动回退保护方法
本专利技术涉及互联网领域,具体是指一种嵌入式系统升级失败的自动回退保护方法。
技术介绍
嵌入式系统,是一种嵌入机械或电气系统内部、具有专一功能和实时计算性能的计算机系统。此类系统一般包含数字硬件和嵌入式软件,而嵌入式软件一般又包含操作系统和应用程序。在嵌入式系统工作的过程中,经常会需要对其嵌入式软件部分进行升级,又由于嵌入式系统硬件资源有限,造成嵌入式软件的操作系统和应用程序经常需要捆绑在一起进行升级。而如果升级失败,则有可能造成整个系统的瘫痪,所以这就需要对嵌入式软件的升级过程进行可靠实施,以确保其升级过程的安全。因此,上述反应的技术问题是本领域技术人员亟待解决的问题。
技术实现思路
本专利技术要解决的技术问题是克服上述技术的缺陷,提供一种嵌入式系统升级失败的自动回退保护方法。为解决上述技术问题,本专利技术提供的技术方案为一种嵌入式系统升级失败的自动回退保护方法:包括以下步骤:(1)嵌入式软件升级时,用新的软件包替代原主软件包,在系统重启之前,在掉电不失的存储器的文件系统中存入一个升级标志,并删除启动成功标志;(1)重启系统,引导程序在启动新的主软件包前检测是否存在升级标志;若存在,则证明是刚升级后第一次启动,此时删除升级标志,打开硬件看门狗,然后引导主软件包;(3)如果主软件包能够完全启动成功,就存入启动成功标志;(4)如果主软件包启动失败,则硬件看门狗会自动触发系统重启,引导程序在启动新的主软件包前,已经检测不到升级标志,同时也检测不到启动成功标志,由此证明升级的新软件包无法完全启动成功,此时引导程序就将备软件包替换到主软件包的位置并进行引导启动。作为改进,所述存储器包括硬盘、CF卡以及SD卡。作为改进,所述升级标志包括以下方式:A.若无文件系统,存入一个升级标志字节;B.若有文件系统,存入一个升级标志文件。作为改进,所述成功标志方式包括以下方式:a.若无文件系统,存入一个成功标志字节;b.若有文件系统,存入一个成功标志文件。作为改进,还包括步骤(5)系统被人为重启或掉电后重启,引导程序检测不到升级标志,同时检测到启动成功标志,则认为主软件包可以正常工作,继续使用主软件包启动系统。本专利技术与现有技术相比的优点在于:本专利技术能够在无人值守的情况下,在嵌入式软件升级的过程中,有效的保护系统的正常工作,解决了升级过程中出现问题或者新软件包中的软件本身存在故障,导致新的主软件包无法正常启动工作,必须要人为干预,在引导程序中选择备软件包启动,否则系统将无法正常工作,造成升级事故。附图说明图1是本专利技术一种嵌入式系统升级失败的自动回退保护方法的流程图。具体实施方式下面结合附图对本专利技术一种嵌入式系统升级失败的自动回退保护方法做进一步的详细说明。结合附图,一种嵌入式系统升级失败的自动回退保护方法,包括以下步骤:(1)嵌入式软件升级时,用新的软件包替代原主软件包,在系统重启之前,在掉电不失的存储器的文件系统中存入一个升级标志,并删除启动成功标志;(1)重启系统,引导程序在启动新的主软件包前检测是否存在升级标志;若存在,则证明是刚升级后第一次启动,此时删除升级标志,打开硬件看门狗,然后引导主软件包;(3)如果主软件包能够完全启动成功,就存入启动成功标志;(4)如果主软件包启动失败,则硬件看门狗会自动触发系统重启,引导程序在启动新的主软件包前,已经检测不到升级标志,同时也检测不到启动成功标志,由此证明升级的新软件包无法完全启动成功,此时引导程序就将备软件包替换到主软件包的位置并进行引导启动。所述存储器包括硬盘、CF卡以及SD卡。所述升级标志包括以下方式:A.若无文件系统,存入一个升级标志字节;B.若有文件系统,存入一个升级标志文件;所述成功标志方式包括以下方式:a.若无文件系统,存入一个成功标志字节;b.若有文件系统,存入一个成功标志文件;还包括步骤(5)系统被人为重启或掉电后重启,引导程序检测不到升级标志,同时检测到启动成功标志,则认为主软件包可以正常工作,继续使用主软件包启动系统。本专利技术在具体实施时,在嵌入式软件升级时,当用新的软件包替代原主软件包后,在系统重启之前,在掉电不失的存储器(如硬盘、CF卡、SD卡等)的文件系统中存入一个升级标志文件(如无文件系统,可以写一个升级标志字节),并删除启动成功标志文件或字节(如果存在的话)。然后重启系统,引导程序在启动新的主软件包前,先检测是否存在升级标志文件或字节,如果存在,则证明是刚升级后第一次启动,此时删除升级标志文件或字节,打开硬件看门狗,然后引导主软件包。如果主软件包能够完全启动成功,就存入启动成功标志文件或字节。此后如果系统被人为重启或掉电后重启,引导程序检测不到升级标志或字节,同时检测到启动成功标志或字节,则认为主软件包可以正常工作,继续使用主软件包启动系统。如果主软件包启动失败,则硬件看门狗会自动触发系统重启。此时引导程序在启动新的主软件包前,已经检测不到升级标志文件或字节,同时也检测不到启动成功标志文件或字节,由此证明升级的新软件包无法完全启动成功,此时引导程序就将备软件包替换到主软件包的位置并进行引导启动。由此就实现了嵌入式系统升级失败的自动回退保护机制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本专利技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本专利技术中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本专利技术中的具体含义。在本专利技术中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”,“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本专利技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,本文档来自技高网...

【技术保护点】
1.一种嵌入式系统升级失败的自动回退保护方法,其特征在于:包括以下步骤:/n(1)嵌入式软件升级时,用新的软件包替代原主软件包,在系统重启之前,在掉电不失的存储器的文件系统中存入一个升级标志,并删除启动成功标志;/n(2)重启系统,引导程序在启动新的主软件包前检测是否存在升级标志;若存在,则证明是刚升级后第一次启动,此时删除升级标志,打开硬件看门狗,然后引导主软件包;/n(3)如果主软件包能够完全启动成功,就存入启动成功标志;/n(4)如果主软件包启动失败,则硬件看门狗会自动触发系统重启,引导程序在启动新的主软件包前,已经检测不到升级标志,同时也检测不到启动成功标志,由此证明升级的新软件包无法完全启动成功,此时引导程序就将备软件包替换到主软件包的位置并进行引导启动。/n

【技术特征摘要】
1.一种嵌入式系统升级失败的自动回退保护方法,其特征在于:包括以下步骤:
(1)嵌入式软件升级时,用新的软件包替代原主软件包,在系统重启之前,在掉电不失的存储器的文件系统中存入一个升级标志,并删除启动成功标志;
(2)重启系统,引导程序在启动新的主软件包前检测是否存在升级标志;若存在,则证明是刚升级后第一次启动,此时删除升级标志,打开硬件看门狗,然后引导主软件包;
(3)如果主软件包能够完全启动成功,就存入启动成功标志;
(4)如果主软件包启动失败,则硬件看门狗会自动触发系统重启,引导程序在启动新的主软件包前,已经检测不到升级标志,同时也检测不到启动成功标志,由此证明升级的新软件包无法完全启动成功,此时引导程序就将备软件包替换到主软件包的位置并进行引导启动。


2.根据权利要求1所述的一种嵌入式系统升级失败的自动...

【专利技术属性】
技术研发人员:王琳
申请(专利权)人:上海弘积信息科技有限公司
类型:发明
国别省市:上海;31

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

1