CN112601075B - 一种基于双镜像的网络摄像机升级故障恢复***及方法 - Google Patents
一种基于双镜像的网络摄像机升级故障恢复***及方法 Download PDFInfo
- Publication number
- CN112601075B CN112601075B CN202011430165.4A CN202011430165A CN112601075B CN 112601075 B CN112601075 B CN 112601075B CN 202011430165 A CN202011430165 A CN 202011430165A CN 112601075 B CN112601075 B CN 112601075B
- Authority
- CN
- China
- Prior art keywords
- module
- recovery
- flag bit
- unit
- image
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/002—Diagnosis, testing or measuring for television systems or their details for television cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于双镜像的网络摄像机升级故障恢复方法,包括:u‑boot模块、用于提供完整服务的主镜像模块及只提供固件自动恢复的恢复镜像模块,所述u‑boot模块用于引导启动主镜像模块与恢复镜像模块;所述主镜像模块包括第一内核单元、第一文件***单元及第一flag标志位单元所述恢复镜像模块包括第二内核单元、第二文件***单元及第二flag标志位单元,所述第一flag标志位单元与所述第二flag标志位单元分别用于记录主镜像模块与恢复镜像模块的升级完整度。根据本发明,该方法比全备份的双镜像方案节省flash空间,在设备联网情况下,固件恢复自动完成,无须人工操作。
Description
技术领域
本发明涉及计算机的技术领域,特别涉及一种基于双镜像的网络摄像机升级故障恢复方法。
背景技术
IPC(IP Camera)即网络摄像机,是基于网络传输视频数据的数字设备。IPC将从采集到的视频数据进行编码处理,并通过IP网络传输到NVR或云服务器上。用户可以使用WEB浏览器、手机APP等终端实时操作设备和查看监控画面。IPC是一种嵌入式设备,可通过有线或WiFi接入互联网。
嵌入式设备的固件通常保存在flash上。一个运行Linux***的嵌入式设备固件,通常包括u-boot,内核、文件***、用户配置和设备信息等分区。升级设备固件即重新烧写flash上的内核和文件***等分区内容的过程。大多数嵌入式设备只有一份内核和文件***镜像,如果升级过程中,出现意外掉电或用户误操作,造成固件损坏,将造成设备无法正常启动。此时需要人工恢复固件,常用的恢复方式有通过u-boot提供的升级页面恢复、TF卡升级等。部分无恢复方案的嵌入式设备,可能需要拆机重新烧录固件。有些flash规格较大的嵌入式设备会双镜像备份的方法,flash上存储两份完全相同的镜像,当其中一个镜像遇到升级损坏时,***检测到异常,并自动引导另一个镜像启动。
现有方案中,单镜像的flash升级损坏后,其固件恢复需要人为操作,相对复杂,对普通用户不友好;双镜像备份方案,对flash规格大小的要求较高,需要双倍的flash空间才能实现备份,提高了硬件成本,由于IPC的功能需求,设备通常安装在高处,如果出现设备升级异常断电,设备拆卸和固件恢复会异常麻烦。
最接近本发明的技术方案是双镜像备份方案,flash上存储两份完全相同的***镜像,***启动是u-boot检测镜像的完整性,如果其中一个镜像的校验没有通过,则引导启动另一份镜像。
发明内容
针对现有技术中存在的不足之处,本发明的目的是提供一种基于双镜像的网络摄像机升级故障恢复方法,该方法比全备份的双镜像方案节省flash空间,在设备联网情况下,固件恢复自动完成,无须人工操作。为了实现根据本发明的上述目的和其他优点,提供了一种基于双镜像的网络摄像机升级故障恢复方法,包括:
u-boot模块、用于提供完整服务的主镜像模块及只提供固件自动恢复的恢复镜像模块,所述u-boot模块用于引导启动主镜像模块与恢复镜像模块;
所述主镜像模块包括第一内核单元、第一文件***单元及第一flag标志位单元;
所述恢复镜像模块包括第二内核单元、第二文件***单元及第二flag标志位单元,所述第一flag标志位单元与所述第二flag标志位单元分别用于记录主镜像模块与恢复镜像模块的升级完整度;
所述主镜像模块与恢复镜像模块均包含固件升级功能。
优选的,所述固件升级包括以下步骤:
S1、判断所述第二flag标志位单元值是否为1;
S2、当第二flag标志位单元值为1时,进行主镜像模块升级,当主镜像模块升级完成后进行恢复镜像模块升级;
S3、当第二flag标志位单元值不为1时,进行恢复镜像模块升级,当恢复镜像模块升级完成后进行主镜像模块升级。
优选的,所述步骤S2中,所述主镜像模块升级包括以下步骤:
S21、将第一flag标志位单元置为0;
S22、升级第一内核单元与第一文件***单元;
S23、将第一flag标志位单元置为1。
优选的,所述步骤S2中,恢复镜像模块升级包括以下步骤;
S24、将第二flag标志位单元置为0;
S25、升级第二内核单元与第二文件***单元;
S26、将第二flag标志位单元置为1。
一种基于双镜像的网络摄像机升级故障恢复方法,包括以下步骤:
1)设备上电u-boot完成基本软硬件初始化;
2)进行判断第一flag标志位单元是值否为1;
3)当判断第一flag标志位单元为1时,通过主镜像模块完成完整的功能***启动;
4)当判断第一flag标志位单元不为1时,判断第二flag标志位单元是值否为1,当第二flag标志位单元为1时,通过恢复镜像模块完成固件恢复的***启动;
5)当二flag标志位单元不为1时,则主镜像模块与恢复镜像模块均为损坏状态。
优选的,所述步骤4)还包括以下步骤;
11)判断设备是否联网,当判断设备没有接入有线网络时,启动无线接入固定热点,进行下一步骤;
12)当判断设备已连入有线网络,恢复镜像模块初始化dhcp客户端,自动获取IP接入互联网;
13)连接云服务器获取下载升级固件下载地址;
14)恢复镜像模块进行升级固件。
本发明与现有技术相比,其有益效果是:通过主镜像模块和恢复镜像模块设置,优先升级受损镜像,可解决升级掉电导致的设备异常问题。
(1)如果升级过程中主镜像损坏,则备份镜像启动,主动联网恢复主镜像。
(2)如果升级过程中恢复镜像损坏,主镜像可正常启动,主镜像在用户触发升级行为后,先升级备份镜像,再升级主镜像,避免出现双镜像都损坏的情形。
(3)相比单镜像***,提供了固件升级掉电的保护和更方便的固件自恢复;相比常规双镜像***,节省了flash空间。
附图说明
图1为根据本发明的基于双镜像的网络摄像机升级故障恢复***及方法的固件升级的流程框图;
图2为根据本发明的基于双镜像的网络摄像机升级故障恢复***及方法的流程框图;
图3为根据本发明的基于双镜像的网络摄像机升级故障恢复***及方法的恢复镜像模块的流程框图。
具体实施方式了
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1-3,一种基于双镜像的网络摄像机升级故障恢复***,包括:u-boot模块、用于提供完整服务的主镜像模块及只提供固件自动恢复的恢复镜像模块,所述u-boot模块用于引导启动主镜像模块与恢复镜像模块,嵌入式设备的包含主镜像模块与恢复镜像模块,由于恢复镜像模块经过功能裁剪,其flash空间占用可以远小于主镜像;所述主镜像模块包括第一内核单元、第一文件***单元及第一flag标志位单元;所述恢复镜像模块包括第二内核单元、第二文件***单元及第二flag标志位单元,所述第一flag标志位单元与所述第二flag标志位单元分别用于记录主镜像模块与恢复镜像模块的升级完整度,如果flag标志位单元为0,则表示镜像更新过程被中断,固件不完整;如果flag=1,表示固件完整,u-boot可以引导该镜像启动;所述主镜像模块与恢复镜像模块均包含固件升级功能,固件升级程序会更新主镜像和恢复镜像,根据镜像升级标志位的检查结果,升级顺序可能不同。升级程序会检查flag,优先升级损坏的镜像,避免出现双镜像损坏的情形。在升级某个镜像前,会先将flash中的对应标志位flag置为0,再升级内核和文件***,最后将标志位flag重置为1。
进一步的,所述固件升级包括以下步骤:
S1、判断所述第二flag标志位单元值是否为1;
S2、当第二flag标志位单元值为1时,进行主镜像模块升级,当主镜像模块升级完成后进行恢复镜像模块升级;
S3、当第二flag标志位单元值不为1时,进行恢复镜像模块升级,当恢复镜像模块升级完成后进行主镜像模块升级。
进一步的,所述步骤S2中,所述主镜像模块升级包括以下步骤:
S21、将第一flag标志位单元置为0;
S22、升级第一内核单元与第一文件***单元;
S23、将第一flag标志位单元置为1。
进一步的,所述步骤S2中,恢复镜像模块升级包括以下步骤;
S24、将第二flag标志位单元置为0;
S25、升级第二内核单元与第二文件***单元;
S26、将第二flag标志位单元置为1。
进一步的,一种基于双镜像的网络摄像机升级故障恢复方法,包括以下步骤:
1)设备上电u-boot完成基本软硬件初始化;
2)进行判断第一flag标志位单元是值否为1;
3)当判断第一flag标志位单元为1时,uboot模块引导主镜像模块中第一内核单元,所述第一内核单元挂载主镜像文件***,通过主镜像模块完成完整的功能***启动;
4)当判断第一flag标志位单元不为1时,即主镜像模块损坏,判断第二flag标志位单元是值否为1,当第二flag标志位单元为1时,则uboot模块引导第二内核单元,所述第二内核单元,挂载恢复镜像文件***,通过恢复镜像模块完成固件恢复的***启动;
5)当二flag标志位单元不为1时,则主镜像模块与恢复镜像模块均为损坏状态,固件升级会优先升级已损坏的镜像。
进一步的,所述步骤4)还包括以下步骤;
11)判断设备是否联网,当判断设备没有接入有线网络时,启动无线接入固定热点,进行下一步骤;
12)当判断设备已连入有线网络,恢复镜像模块初始化dhcp客户端,自动获取IP接入互联网;
13)连接云服务器获取下载升级固件下载地址;
14)恢复镜像模块进行升级固件。
如果设备没有接入有线,设备会启用无线连接,连接的无线热点名称为之前用户设置的热点名称,如果接入无线网络成功,则下载升级固件并主动升级。如果此前用户没有设置过无线热点,设备将主动连接预设置的固定热点名称,用户可以将路由器或手机的无线热点设置成该名称,完成固件恢复。该方式适用于安装后不方便拆卸的嵌入式设备进行无线连接和固件恢复。
这里说明的设备数量和处理规模是用来简化本发明的说明的,对本发明的应用、修改和变化对本领域的技术人员来说是显而易见的。
尽管本发明的实施方案已公开如上,但其并不仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (1)
1.一种基于双镜像的网络摄像机升级故障恢复***,其特征在于,包括:
u-boot模块、用于提供完整服务的主镜像模块及只提供固件自动恢复的恢复镜像模块,所述u-boot模块用于引导启动主镜像模块与恢复镜像模块;
所述主镜像模块包括第一内核单元、第一文件***单元及第一flag标志位单元;
所述恢复镜像模块包括第二内核单元、第二文件***单元及第二flag标志位单元,所述第一flag标志位单元与所述第二flag标志位单元分别用于记录主镜像模块与恢复镜像模块的升级完整度;
所述主镜像模块与恢复镜像模块均包含固件升级功能;
所述固件升级包括以下步骤:
S1、判断所述第二flag标志位单元值是否为1;
S2、当第二flag标志位单元值为1时,进行主镜像模块升级,当主镜像模块升级完成后进行恢复镜像模块升级, 所述主镜像模块升级包括以下步骤:
S21、将第一flag标志位单元置为0;
S22、升级第一内核单元与第一文件***单元;
S23、将第一flag标志位单元置为1;
恢复镜像模块升级包括以下步骤;
S24、将第二flag标志位单元置为0;
S25、升级第二内核单元与第二文件***单元;
S26、将第二flag标志位单元置为1
S3、当第二flag标志位单元值不为1时,进行恢复镜像模块升级,当恢复镜像模块升级完成后进行主镜像模块升级;
通过主镜像模块和恢复镜像模块设置,优先升级受损镜像,如果升级过程中主镜像损坏,则备份镜像启动,主动联网恢复主镜像;如果升级过程中恢复镜像损坏,主镜像可正常启动,主镜像在用户触发升级行为后,先升级备份镜像,再升级主镜像,避免出现双镜像都损坏的情形;
还包括以下步骤:
1)设备上电u-boot完成基本软硬件初始化;
2)进行判断第一flag标志位单元是值否为1;
3)当判断第一flag标志位单元为1时,通过主镜像模块完成完整的功能***启动;
4)当判断第一flag标志位单元不为1时,判断第二flag标志位单元是值否为1,当第二flag标志位单元为1时,通过恢复镜像模块完成固件恢复的***启动;
5)当二flag标志位单元不为1时,则主镜像模块与恢复镜像模块均为损坏状态;
所述步骤4)还包括以下步骤;
11)判断设备是否联网,当判断设备没有接入有线网络时,启动无线接入固定热点,进行下一步骤;
12)当判断设备已连入有线网络,恢复镜像模块初始化dhcp客户端,自动获取IP接入互联网;
13)连接云服务器获取下载升级固件下载地址;
14)恢复镜像模块进行升级固件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011430165.4A CN112601075B (zh) | 2020-12-07 | 2020-12-07 | 一种基于双镜像的网络摄像机升级故障恢复***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011430165.4A CN112601075B (zh) | 2020-12-07 | 2020-12-07 | 一种基于双镜像的网络摄像机升级故障恢复***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112601075A CN112601075A (zh) | 2021-04-02 |
CN112601075B true CN112601075B (zh) | 2023-06-20 |
Family
ID=75191326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011430165.4A Active CN112601075B (zh) | 2020-12-07 | 2020-12-07 | 一种基于双镜像的网络摄像机升级故障恢复***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112601075B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006133629A1 (fr) * | 2005-06-15 | 2006-12-21 | Huawei Technologies Co., Ltd. | Procede et systeme de restauration automatique apres une panne de peripherique |
CN101770372A (zh) * | 2008-12-31 | 2010-07-07 | 亚旭电脑股份有限公司 | 固件更新***、方法以及固件更新***之固件建构方法 |
WO2012079301A1 (zh) * | 2010-12-17 | 2012-06-21 | 中兴通讯股份有限公司 | 移动终端的触摸屏固件升级方法及装置 |
CN103677947A (zh) * | 2014-01-03 | 2014-03-26 | 深圳英飞拓科技股份有限公司 | 基于linux的设备双***保护及升级方法 |
CN107247603A (zh) * | 2017-04-18 | 2017-10-13 | 深圳市广和通无线股份有限公司 | 支持固件自动恢复功能的远程升级方法与*** |
CN108415733A (zh) * | 2018-02-06 | 2018-08-17 | 上海康斐信息技术有限公司 | 一种基于双镜像Flash的路由器的启动方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085957B2 (en) * | 2002-11-21 | 2006-08-01 | Texas Instruments Incorporated | Upgrading of firmware with tolerance to failures |
CN102289395A (zh) * | 2011-07-14 | 2011-12-21 | 深圳市共进电子有限公司 | 嵌入式设备上使用双代码镜像运行的方法 |
EP2778934B1 (en) * | 2011-11-10 | 2021-05-12 | Fujitsu Limited | Information processing device, information processing method, information processing program, and recording medium in which program is recorded |
-
2020
- 2020-12-07 CN CN202011430165.4A patent/CN112601075B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006133629A1 (fr) * | 2005-06-15 | 2006-12-21 | Huawei Technologies Co., Ltd. | Procede et systeme de restauration automatique apres une panne de peripherique |
CN101770372A (zh) * | 2008-12-31 | 2010-07-07 | 亚旭电脑股份有限公司 | 固件更新***、方法以及固件更新***之固件建构方法 |
WO2012079301A1 (zh) * | 2010-12-17 | 2012-06-21 | 中兴通讯股份有限公司 | 移动终端的触摸屏固件升级方法及装置 |
CN103677947A (zh) * | 2014-01-03 | 2014-03-26 | 深圳英飞拓科技股份有限公司 | 基于linux的设备双***保护及升级方法 |
CN107247603A (zh) * | 2017-04-18 | 2017-10-13 | 深圳市广和通无线股份有限公司 | 支持固件自动恢复功能的远程升级方法与*** |
CN108415733A (zh) * | 2018-02-06 | 2018-08-17 | 上海康斐信息技术有限公司 | 一种基于双镜像Flash的路由器的启动方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112601075A (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101377744B (zh) | 一种终端设备软件升级恢复方法及装置 | |
US7809836B2 (en) | System and method for automating bios firmware image recovery using a non-host processor and platform policy to select a donor system | |
US8375252B2 (en) | Method, device and system for automatic device failure recovery | |
US20130254759A1 (en) | Installing an operating system in a host system | |
CN100525206C (zh) | 自动恢复设备故障的实现方法及*** | |
CN101232397B (zh) | 多控制器***修复的方法和装置 | |
CN110083374B (zh) | 一种升级回滚方法、***及终端设备 | |
CN101420326B (zh) | 实现故障恢复和数据备份的方法、***和装置 | |
CN101426077A (zh) | 通过Internet在线升级电视机软件的方法 | |
US20120117557A1 (en) | Method and system for upgrading wireless data card | |
EP3113018A1 (en) | Method and apparatus for running version file | |
CN101207519A (zh) | 版本服务器、操作维护单元及其故障的恢复方法 | |
CN111698558A (zh) | 电视软件升级方法、电视终端及计算机可读存储介质 | |
CN112601075B (zh) | 一种基于双镜像的网络摄像机升级故障恢复***及方法 | |
CN112433739B (zh) | 一种固件升级方法 | |
CN113542318B (zh) | 设备故障修复方法 | |
CN113064616A (zh) | 软件更新方法和装置、存储介质及电子设备 | |
CN103336698A (zh) | 一种wifi设备软件升级的方法及wifi设备和*** | |
CN116844087A (zh) | 操作***的监控方法、装置以及bmc | |
CN112804071A (zh) | 在线升级方法、升级文件提供方法、设备及存储介质 | |
CN103731301A (zh) | 远程网络***双备份实现方法 | |
CN114124684B (zh) | 一种运用u盘实现零接触全自动部署网元的方法 | |
CN117389578A (zh) | 云终端***升级方法、装置、云终端和存储介质 | |
CN111273933B (zh) | 一种bios fw刷新方法、装置 | |
CN111209143B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |