CN111897583A - 一种设备启动方法及嵌入式设备 - Google Patents

一种设备启动方法及嵌入式设备 Download PDF

Info

Publication number
CN111897583A
CN111897583A CN202010641557.9A CN202010641557A CN111897583A CN 111897583 A CN111897583 A CN 111897583A CN 202010641557 A CN202010641557 A CN 202010641557A CN 111897583 A CN111897583 A CN 111897583A
Authority
CN
China
Prior art keywords
boot system
identification information
boot
storage module
primary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010641557.9A
Other languages
English (en)
Inventor
柴新忠
严传续
扈春光
张帅
陈文龙
李文俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Cssc Shipbuilding Design Technology National Engineering Research Center Co ltd
Original Assignee
Shanghai Cssc Shipbuilding Design Technology National Engineering Research Center Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Cssc Shipbuilding Design Technology National Engineering Research Center Co ltd filed Critical Shanghai Cssc Shipbuilding Design Technology National Engineering Research Center Co ltd
Priority to CN202010641557.9A priority Critical patent/CN111897583A/zh
Publication of CN111897583A publication Critical patent/CN111897583A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/441Multiboot arrangements, i.e. selecting an operating system to be loaded

Abstract

本发明公开了一种设备启动方法及嵌入式设备,属于嵌入式技术领域,方法包括:加载启动一级引导系统;一级引导系统读取第一标识信息,判断二级引导系统是否正常启动,采用二级引导系统引导启动操作系统,判断二级引导系统是否为采用安全备份系统覆盖更新后的系统,采用安全备份系统以覆盖的方式对二级引导系统进行更新;设备包括:第一存储模块、第二存储模块、第三存储模块、第四存储模块、处理模块;有益效果是:避免了在通用引导软件出现问题时须用JTAG等特殊工具升级的问题,提升了客户使用满意度。

Description

一种设备启动方法及嵌入式设备
技术领域
本发明涉及嵌入式技术领域,尤其涉及一种设备启动方法及嵌入式设备。
背景技术
随着网络的飞速发展,网络设备运营商对设备的功能及安全性的要求也越来越高,为了满足相应的需求,需要频繁更新升级网络设备的软件,这就对设备的升级启动提出了更高的要求。
现有网络设备通常使用bootloader(如uboot等)软件来加载引导设备的启动运行,同时在设备出厂时会通过JTAG等特殊工具把bootloader等软件包以烧录的方式写到闪存(FLASH)等存储器件上。随着软件更新的频率提升,软件升级过程中出错的概率也越来越大;同时因为FLASH等存储器件存在读写错误等不可避免的潜在风险,这就使得bootloader等固化软件被破坏的几率越来越大。目前大部分嵌入式设备的操作系统都是采用bootloader、kernel(linux)以及业务软件包的形式存在,因此一旦系统中的bootloader出现异常将导致整个嵌入式设备无法启动和运行。其后果就是导致设备长时间无法恢复,影响工作效率;同时随之而来的是高额的维护成本,例如需要派人去现场通过JTAG烧写器烧写或者将设备拆下返厂维修等,大大降低了客户的使用满意度。
发明内容
根据现有技术中存在的上述问题,现提供一种设备启动方法及嵌入式设备,通过引入多级引导系统及安全备份系统增强了设备及软件的可靠性,避免了在通用引导软件出现问题时须用JTAG等特殊工具升级的问题,提升了客户使用满意度。
上述技术方案具体包括:
一种设备启动方法,应用于嵌入式设备,其中所述嵌入式设备中存储有一级引导系统、二级引导系统、所述二级引导系统的安全备份系统、操作系统和第一标识信息,所述第一标识信息用于记录所述二级引导系统启动失败的次数,所述设备启动方法进一步包括:
步骤S1,所述嵌入式设备加载启动所述一级引导系统;
步骤S2,所述一级引导系统读取所述第一标识信息,并根据所述第一标识信息判断所述二级引导系统的启动失败次数是否大于一预设阈值:
若是,则转向步骤S5;
若否,则转向步骤S3;
步骤S3,所述一级引导系统加载启动所述二级引导系统,并判断所述二级引导系统是否正常启动:
若是,则转向步骤S4;
若否,则所述一级引导系统将所述第一标识信息表示的失败次数加一,随后返回步骤S1;
步骤S4,采用所述二级引导系统引导启动所述操作系统,以启动所述嵌入式设备,随后退出;
步骤S5,判断所述二级引导系统是否为采用所述安全备份系统覆盖更新后的系统:
若是,则直接向用户发出错误报警,随后退出;
若否,则转向步骤S6;
步骤S6,采用所述安全备份系统以覆盖的方式对所述二级引导系统进行更新,并将所述第一标识信息中所述操作系统启动失败的次数清零,随后返回步骤S1。
优选地,其中,于执行完所述步骤S4后,还包括:
步骤A5,所述一级引导系统检测所述嵌入式设备是否存储有所述安全备份系统,并于所述安全备份系统不存在时,将所述二级引导系统复制备份为所述安全备份系统。
优选地,其中,于执行完所述步骤S4后,还包括:
步骤B5,所述一级引导系统检测所述安全备份系统的版本信息与所述二级引导系统的版本信息是否一致,并于版本信息不一致时将所述二级引导系统以覆盖的方式对所述安全备份系统进行更新。
优选地,其中,所述二级引导系统通过所述一级引导系统进行升级更新。
优选地,其中,所述嵌入式设备中还存储有一第二标识信息,所述第二标识信息用于记录所述二级引导系统是否为采用所述安全备份系统覆盖更新后的系统。
优选地,其中,所述步骤S5中,通过读取所述第二标识信息以判断所述二级引导系统是否是采用所述安全备份系统覆盖更新后的系统。
优选地,其中,所述步骤S6中,于返回所述步骤S1前,将所述第二标识信息设置为表示所述二级引导系统为采用所述安全备份系统覆盖更新后的系统。
优选地,其中,所述步骤S4中还包括:将所述第二标识信息设置为表示所述二级引导系统不是采用所述安全备份系统覆盖更新后的系统。
优选地,其中,所述一级引导系统通过烧录的方式存储于所述嵌入式设备中。
一种嵌入式设备,其中应用了上述的设备启动方法,还包括:
第一存储模块,用于存储所述一级引导系统,所述一级引导系统通过烧录的方式写入所述第一存储空间;
第二存储模块,用于存储所述二级引导系统,所述一级引导系统用于引导所述二级引导系统的启动;
第三存储模块,用于存储所述安全备份系统和所述第一标识信息;
第四存储模块,用于存储所述操作系统,所述第二引导系统用于引导所述操作系统的启动;
处理模块,分别连接所述第一存储模块、所述第二存储模块、所述第三存储模块和所述第四存储模块,用以于所述嵌入式设备启动时加载所述一级引导系统。
上述技术方案的有益效果在于:
提供一种设备启动方法及嵌入式设备,通过引入多级引导系统及安全备份系统增强了设备及软件的可靠性,避免了在通用引导软件出现问题时须用JTAG等特殊工具升级的问题,提升了客户使用满意度。
附图说明
图1是本发明的较佳实施例中,一种设备启动方法的步骤流程示意图;
图2是本发明的较佳实施例中,一种嵌入式设备的内部结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
一种设备启动方法,应用于嵌入式设备,其中嵌入式设备中存储有一级引导系统、二级引导系统、二级引导系统的安全备份系统、操作系统和第一标识信息,第一标识信息用于记录二级引导系统启动失败的次数,如图1所示,设备启动方法进一步包括:
步骤S1,嵌入式设备加载启动一级引导系统;
步骤S2,一级引导系统读取第一标识信息,并根据第一标识信息判断二级引导系统的启动失败次数是否大于一预设阈值:
若是,则转向步骤S5;
若否,则转向步骤S3;
具体的,在本实施例中,如果一级引导系统检测到用于标识二级引导系统启动失败的第一标识信息中的次数大于三次时,则检测安全备份存储区中是否存在安全备份系统,如果存在,则将安全备份系统更新覆盖现有的二级引导系统。
步骤S3,一级引导系统加载启动二级引导系统,并判断二级引导系统是否正常启动:
若是,则转向步骤S4;
若否,则一级引导系统将第一标识信息表示的失败次数加一,随后返回步骤S1;
步骤S4,采用二级引导系统引导启动操作系统,以启动嵌入式设备,随后退出;
步骤S5,判断二级引导系统是否为采用安全备份系统覆盖更新后的系统:
若是,则直接向用户发出错误报警,随后退出;
若否,则转向步骤S6;
具体的,在本实施例中,经过安全备份系统覆盖更新过的二级引导系统如果仍然无法启动,则向用户发出错误报警提示,提示提示需要人工介入通过串口或网口进行手动升级。
步骤S6,采用安全备份系统以覆盖的方式对二级引导系统进行更新,并将第一标识信息中操作系统启动失败的次数清零,随后返回步骤S1。
作为优选的实施方式,为了降低嵌入式设备因软件的异常导致的无法工作的问题,本方法中将常用的引导系统分为两个微系统,分别为一级引导系统和二级引导系统,一级引导系统负责引导二级引导系统,且一级引导系统在设备出厂时通过JTAG等相应的工具烧写在FLASH等存储器件上。通常情况下一级引导系统除非出现重大硬件变更,否则不再做任何变更修改或升级,从而可以大大降低了因嵌入式设备系统升级带来的故障风险的概率;二级引导系统仍然承担着通用的引导软件的功能,用来引导设备操作系统的启动,与现有就技术中的不同,二级引导系统不再是必须通过JTAG等特殊工具来固化到器件上,这就使得二级引导系统一方面可以通过一级引导系统来在线升级,另一方面也可以通过一级引导系统加载安全备份系统来进行自我修复,从而解决了现有技术中通用引导软件故障就必须用JTAG等特殊工具来烧写、或返厂处理的问题。
在本发明的一个具体实施例中,嵌入式设备在启动时首先通过内部的处理器读取一级引导系统,其中一级引导系统仅涉及最小的设备驱动,例如存储器等。一级引导系统将从存储器中读取加载二级引导系统,例如uboot等,二级引导系统则负责加载设备的操作系统,例如kernel等,以及业务软件包来完成设备的启动运行。其中,二级引导系统启动运行后,会将在存储器中记录二级引导系统的健康状况,即二级引导系统是否正常启动,如果启动失败,则启用失败计数,第一标识信息加一,如果启动成功,则清除失败计数,将第一标识信息清零,一级引导系统根据第一标识信息来判断是否需要备份和恢复二级引导系统。
在本发明的较佳实施例中,于执行完步骤S4后,还包括:
步骤A5,一级引导系统检测嵌入式设备是否存储有安全备份系统,并于安全备份系统不存在时,将二级引导系统复制备份为安全备份系统。
具体的,在本实施例中,如果一级引导系统检测到二级引导系统正常运行并且安全备份存储区中没有任何备份时,则将拷贝二级引导系统存储区的软件到安全备份存储区中,以备设备故障时启用。
在本发明的较佳实施例中,于执行完步骤S4后,还包括:
步骤B5,一级引导系统检测安全备份系统的版本信息与二级引导系统的版本信息是否一致,并于版本信息不一致时将二级引导系统以覆盖的方式对安全备份系统进行更新。
具体的,在本实施例中,如果一级引导系统检测到二级引导系统正常运行并且安全备份存储区中安全备份系统的版本信息较老时,则将拷贝二级引导系统存储区的软件到安全备份存储区中,覆盖较老版本的安全备份系统,以备设备故障时启用。
在本发明的较佳实施例中,二级引导系统通过一级引导系统进行升级更新。
在本发明的较佳实施例中,嵌入式设备中还存储有一第二标识信息,第二标识信息用于记录二级引导系统是否为采用安全备份系统覆盖更新后的系统。
在本发明的较佳实施例中,步骤S5中,通过读取第二标识信息以判断二级引导系统是否是采用安全备份系统覆盖更新后的系统。
在本发明的较佳实施例中,步骤S6中,于返回步骤S1前,将第二标识信息设置为表示二级引导系统为采用安全备份系统覆盖更新后的系统。
在本发明的较佳实施例中,步骤S4中还包括:将第二标识信息设置为表示二级引导系统不是采用安全备份系统覆盖更新后的系统。
在本发明的较佳实施例中,一级引导系统通过烧录的方式存储于嵌入式设备中。
一种嵌入式设备,其中应用了上述的设备启动方法,如图2所示,还包括:
第一存储模块1,用于存储一级引导系统,一级引导系统通过烧录的方式写入第一存储空间;
第二存储模块2,用于存储二级引导系统,一级引导系统用于引导二级引导系统的启动;
第三存储模块3,用于存储安全备份系统和第一标识信息;
第四存储模块4,用于存储操作系统,第二引导系统用于引导操作系统的启动;
处理模块5,分别连接第一存储模块1、第二存储模块2、第三存储模块3和第四存储模块4,用以于嵌入式设备启动时加载一级引导系统。
作为优选的实施方式,在通信设备闪存(FLASH)或其他信息存储介质中开辟相应的存储专区:一级引导系统存储专区对应第一存储模块1,二级引导系统存储专区对应第二存储模块2、安全备份系统存储专区对应第三存储模块3、kernel和软件包存储专区,即操作系统存储专区,对应第四存储模块4等。开辟的存储专区个数及大小根据软件需求等实际情况确定。一级引导系统是一个尽可能微小的软件系统,其仅仅支持所需要的设备驱动支持,比如FLASH和网口驱动。这样保证其在后续的软件升级过程中不需要频繁修改和升级,从而大大降低出错概率。
上述技术方案的有益效果在于:
提供一种设备启动方法及嵌入式设备,通过引入多级引导系统及安全备份系统增强了设备及软件的可靠性,避免了在通用引导软件出现问题时须用JTAG等特殊工具升级的问题,提升了客户使用满意度。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

Claims (10)

1.一种设备启动方法,应用于嵌入式设备,其特征在于,所述嵌入式设备中存储有一级引导系统、二级引导系统、所述二级引导系统的安全备份系统、操作系统和第一标识信息,所述第一标识信息用于记录所述二级引导系统启动失败的次数,所述设备启动方法进一步包括:
步骤S1,所述嵌入式设备加载启动所述一级引导系统;
步骤S2,所述一级引导系统读取所述第一标识信息,并根据所述第一标识信息判断所述二级引导系统的启动失败次数是否大于一预设阈值:
若是,则转向步骤S5;
若否,则转向步骤S3;
步骤S3,所述一级引导系统加载启动所述二级引导系统,并判断所述二级引导系统是否正常启动:
若是,则转向步骤S4;
若否,则所述一级引导系统将所述第一标识信息表示的失败次数加一,随后返回步骤S1;
步骤S4,采用所述二级引导系统引导启动所述操作系统,以启动所述嵌入式设备,随后退出;
步骤S5,判断所述二级引导系统是否为采用所述安全备份系统覆盖更新后的系统:
若是,则直接向用户发出错误报警,随后退出;
若否,则转向步骤S6;
步骤S6,采用所述安全备份系统以覆盖的方式对所述二级引导系统进行更新,并将所述第一标识信息中所述操作系统启动失败的次数清零,随后返回步骤S1。
2.根据权利要求1所述的设备启动方法,其特征在于,于执行完所述步骤S4后,还包括:
步骤A5,所述一级引导系统检测所述嵌入式设备是否存储有所述安全备份系统,并于所述安全备份系统不存在时,将所述二级引导系统复制备份为所述安全备份系统。
3.根据权利要求1所述的设备启动方法,其特征在于,于执行完所述步骤S4后,还包括:
步骤B5,所述一级引导系统检测所述安全备份系统的版本信息与所述二级引导系统的版本信息是否一致,并于版本信息不一致时将所述二级引导系统以覆盖的方式对所述安全备份系统进行更新。
4.根据权利要求1所述的设备启动方法,其特征在于,所述二级引导系统通过所述一级引导系统进行升级更新。
5.根据权利要求1所述的设备启动方法,其特征在于,所述嵌入式设备中还存储有一第二标识信息,所述第二标识信息用于记录所述二级引导系统是否为采用所述安全备份系统覆盖更新后的系统。
6.根据权利要求5所述的设备启动方法,其特征在于,所述步骤S5中,通过读取所述第二标识信息以判断所述二级引导系统是否是采用所述安全备份系统覆盖更新后的系统。
7.根据权利要求5所述的设备启动方法,其特征在于,所述步骤S6中,于返回所述步骤S1前,将所述第二标识信息设置为表示所述二级引导系统为采用所述安全备份系统覆盖更新后的系统。
8.根据权利要求5所述的设备启动方法,其特征在于,所述步骤S4中还包括:将所述第二标识信息设置为表示所述二级引导系统不是采用所述安全备份系统覆盖更新后的系统。
9.根据权利要求1所述的设备启动方法,其特征在于,所述一级引导系统通过烧录的方式存储于所述嵌入式设备中。
10.一种嵌入式设备,其特征在于,应用了如权利要求1所述的设备启动方法,还包括:
第一存储模块,用于存储所述一级引导系统,所述一级引导系统通过烧录的方式写入所述第一存储空间;
第二存储模块,用于存储所述二级引导系统,所述一级引导系统用于引导所述二级引导系统的启动;
第三存储模块,用于存储所述安全备份系统和所述第一标识信息;
第四存储模块,用于存储所述操作系统,所述第二引导系统用于引导所述操作系统的启动;
处理模块,分别连接所述第一存储模块、所述第二存储模块、所述第三存储模块和所述第四存储模块,用以于所述嵌入式设备启动时加载所述一级引导系统。
CN202010641557.9A 2020-07-06 2020-07-06 一种设备启动方法及嵌入式设备 Pending CN111897583A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010641557.9A CN111897583A (zh) 2020-07-06 2020-07-06 一种设备启动方法及嵌入式设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010641557.9A CN111897583A (zh) 2020-07-06 2020-07-06 一种设备启动方法及嵌入式设备

Publications (1)

Publication Number Publication Date
CN111897583A true CN111897583A (zh) 2020-11-06

Family

ID=73191771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010641557.9A Pending CN111897583A (zh) 2020-07-06 2020-07-06 一种设备启动方法及嵌入式设备

Country Status (1)

Country Link
CN (1) CN111897583A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115373906A (zh) * 2022-10-24 2022-11-22 北京智芯微电子科技有限公司 嵌入式系统架构的备份启动方法、装置、设备及芯片

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338701A (zh) * 2020-02-25 2020-06-26 邦彦技术股份有限公司 一种网络设备启动方法和网络设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338701A (zh) * 2020-02-25 2020-06-26 邦彦技术股份有限公司 一种网络设备启动方法和网络设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115373906A (zh) * 2022-10-24 2022-11-22 北京智芯微电子科技有限公司 嵌入式系统架构的备份启动方法、装置、设备及芯片
CN115373906B (zh) * 2022-10-24 2023-02-17 北京智芯微电子科技有限公司 嵌入式系统架构的备份启动方法、装置、设备及芯片

Similar Documents

Publication Publication Date Title
US6381694B1 (en) System for automatic recovery from software problems that cause computer failure
KR100750132B1 (ko) 부팅, 소프트웨어 자동 업데이트 및 에러 복원 방법과 그시스템, 그 방법을 기록한 컴퓨터 판독 가능한 기록매체
JP4482029B2 (ja) 無線基地局および無線基地局の運用方法
US7313682B2 (en) Method and system for updating boot memory that stores a fail-safe reset code and is configured to store boot code and boot updater code
CN111562934B (zh) 一种基于热补丁的软件系统升级方法、终端及存储介质
US6205561B1 (en) Tracking and managing failure-susceptible operations in a computer system
CN106775674B (zh) 一种基于通用引导加载程序的设备及其启动方法
CN113485764A (zh) 一种嵌入式系统及其控制方法、装置和存储介质
CN100395713C (zh) 自动修复基本输入输出系统元件的方法与模块
KR20000049321A (ko) 플래시 카드를 이용한 리눅스 자동복구시스템
CN111552592A (zh) 一种双备份启动方法及系统
CN114741096A (zh) 升级处理方法、设备及存储介质
CN101330695A (zh) 一种移动终端及其系统升级的方法和装置
CN111897583A (zh) 一种设备启动方法及嵌入式设备
CN113032183A (zh) 系统管理方法、装置、计算机设备和存储介质
JP2005284902A (ja) 端末装置、その制御方法及び制御プログラム、ホスト装置、その制御方法及び制御プログラム、遠隔更新システム、方法及びプログラム
CN112579179A (zh) 一种嵌入式系统的分区挂载方法
CN109086085B (zh) 一种操作系统启动管理方法和装置
CN116028084A (zh) 一种基于OpenStack云平台跨版本热升级的方法、系统及终端
KR100853941B1 (ko) 멀티미디어 저장장치와 데이터 복구방법
CN115481405A (zh) 一种嵌入式系统的安全启动和优化升级方法
JP3048792B2 (ja) オペレーティングシステムの自動入れ替え方法及びそれを利用した計算機システム
CN112394965B (zh) 电池管理系统升级和运行方法,控制器,电池管理系统及存储介质
CN108920210B (zh) 一种加载存储控制软件的方法、系统及相关组件
CN111338701A (zh) 一种网络设备启动方法和网络设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination