一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种固件升级方法、摄像设备和计算机可读存储介质与流程

2022-07-30 22:22:08 来源:中国专利 TAG:


1.本技术涉及监控技术领域,具体涉及一种固件升级方法、摄像设备和计算机可读存储介质。


背景技术:

2.目前用户对摄像设备的使用性能要求越来越高,在对摄像设备的固件进行升级的过程中,随着新的基础系统固件包的写入,当前的基础系统固件包会被抹除,如果突然发生断电等异常情况,由于当前的基础系统固件包不完整,容易造成摄像设备无法正常运行/升级的问题,而且升级耗时较长,导致用户的使用体验不好。


技术实现要素:

3.本技术提供一种固件升级方法、摄像设备和计算机可读存储介质,能够减少升级时长,同时避免摄像设备在升级中断后无法正常运行。
4.为解决上述技术问题,本技术采用的技术方案是:提供一种固件升级方法,该方法应用于摄像设备,摄像设备包括基础系统存储区与应用系统存储区,该固件升级方法包括:获取待更新固件包;其中,待更新固件包包括待更新基础系统固件包与待更新应用系统固件包;将待更新基础系统固件包存储至应用系统存储区;在将待更新基础系统固件包存储至应用系统存储区后,将待更新应用系统固件包存储至基础系统存储区;运行待更新基础系统固件包与待更新应用系统固件包,以完成固件升级。
5.为解决上述技术问题,本技术采用的另一技术方案是:提供一种摄像设备,该摄像设备包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的固件升级方法。
6.为解决上述技术问题,本技术采用的又一技术方案是:提供一种计算机可读存储介质,其用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的固件升级方法。
7.通过上述方案,本技术的有益效果是:先获取待更新固件包,将待更新基础系统固件包存储至应用系统存储区;然后在将待更新基础系统固件包存储至应用系统存储区后,将待更新应用系统固件包存储至基础系统存储区;最后运行待更新基础系统固件包与待更新应用系统固件包,从而完成固件升级;在待更新基础系统固件包的存入过程中,完整的当前基础固件包仍保留在基础系统存储区中,能够在断电等异常情况发生时,通过保留的当前基础固件包使得摄像设备正常运行;而且通过基础系统存储区以及应用系统存储区的存储互换的方法,无需设置备份分区来对待更新基础系统固件包以及待更新应用系统固件包进行备份,能够减少存储空间的占用,同时减少备份花费的时间,大大减少升级时长。
附图说明
8.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使
用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
9.图1是本技术提供的固件升级方法一实施例的流程示意图;
10.图2是本技术提供的基础系统存储区与应用系统存储区的示意图;
11.图3是本技术提供的固件升级方法另一实施例的流程示意图;
12.图4是本技术提供的摄像设备一实施例的结构示意图;
13.图5是本技术提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
14.下面结合附图和实施例,对本技术作进一步的详细描述。特别指出的是,以下实施例仅用于说明本技术,但不对本技术的范围进行限定。同样的,以下实施例仅为本技术的部分实施例而非全部实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
15.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
16.需要说明的是,本技术中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
17.请参阅图1,图1是本技术提供的固件升级方法一实施例的流程示意图,该固件升级方法应用于摄像设备,摄像设备包括基础系统存储区与应用系统存储区,该方法包括:
18.步骤11:获取待更新固件包。
19.可从网上下载待更新固件包,或者从外部设备获取更新固件包,该外部设备可与摄像设备以无线/有线连接的方式进行通信,将待更新固件包传输给摄像设备;具体地,待更新固件包可包括待更新基础系统固件包与待更新应用系统固件包,基础系统固件包可包含基础系统程序的版本信息、基础系统程序标识、基础系统程序长度、基础系统程序校验码以及基础系统固件程序等内容,应用系统固件包可包含应用系统程序的版本信息、应用系统程序标识、应用系统程序长度、应用系统程序校验码以及应用系统固件程序等内容。
20.可以理解地,基础系统固件程序可为摄像设备正常运行或者固件升级所需的必需程序,其可包含引导加载程序(bootloader)、实时操作系统(kernel)、文件系统或升级模块等基础系统内容,除上述基础系统固件程序之外的能够实现摄像设备其他功能的系统程序即可统称为应用系统程序,例如:音视频采集或者音视频编码等功能。
21.步骤12:将待更新基础系统固件包存储至应用系统存储区。
22.如图2所示,基础系统存储区存储有当前基础固件包,当前基础固件包为当前基础系统的固件包,应用系统存储区存储有当前应用固件包,当前应用固件包为当前应用系统的固件包;对摄像设备进行固件升级,就是利用待更新基础系统固件包替换掉当前基础固件包,利用待更新应用系统固件包替换掉当前应用固件包。在一具体的实施方式中,可先判断摄像设备中存储的当前基础固件包与当前应用固件包是否需要升级,然后在当前基础固件包和/或当前应用固件包需要升级时,才开始执行固件升级操作。
23.一般在执行固件升级时,是将接收到的待更新基础系统固件包存储至基础系统存储区,将接收到的待更新应用系统固件包存储至应用系统存储区,然而随着待更新基础系统固件包的存入,基础系统存储区中存储的当前基础固件包会被逐渐抹除,若在固件升级过程中,出现断电等异常情况时,导致当前升级进程中断,由于当前基础固件包被抹除,待更新基础系统固件包也并未完全存入,此时可能导致摄像设备无法正常运行。
24.而本实施例通过将待更新基础系统固件包存储至应用系统存储区,在待更新基础系统固件包的存入过程中,当前基础固件包仍保留在基础系统存储区中,即使在断电等异常情况发生时,也可通过完整保留的当前基础固件包正常运行摄像设备。
25.步骤13:在将待更新基础系统固件包存储至应用系统存储区后,将待更新应用系统固件包存储至基础系统存储区。
26.在将待更新基础系统固件包存储至应用系统存储区后,再将待更新应用系统固件包存储至基础系统存储区;具体地,可将待更新应用系统固件包存储至基础系统存储区,开始进行应用系统固件包的升级,虽然基础系统存储区存储的当前基础固件包随着待更新应用系统固件包的存入会被抹除,由于完整的待更新基础系统固件包都已经存入应用系统存储区,也能够保证摄像设备的正常运行;而且通过基础系统存储区以及应用系统存储区的存储互换的方法,无需设置备份分区来对待更新基础系统固件包以及待更新应用系统固件包进行备份,减少了存储空间的占用,同时减少备份算花费的时间,能够大大减少升级时长。
27.步骤14:运行待更新基础系统固件包与待更新应用系统固件包,以完成固件升级。
28.在应用系统存储区存入完整的待更新基础系统固件包,在基础系统存储区存入完整的待更新应用系统固件包之后,可运行待更新基础系统固件包与待更新应用系统固件包,从而完成摄像设备的固件升级。
29.本实施例所采用的方案能够保证在待更新基础系统固件包的存入过程中,完整的当前基础固件包仍保留在基础系统存储区中,使得发生断电等异常情况时,通过保留的当前基础固件包使得摄像设备正常运行;而且通过基础系统存储区以及应用系统存储区的存储互换的方法,无需设置备份分区来对待更新基础系统固件包以及待更新应用系统固件包进行备份,能够减少存储空间的占用,同时减少备份所花费的时间,大大减少升级时长。
30.请参阅图3,图3是本技术提供的固件升级方法另一实施例的流程示意图,该方法包括:
31.步骤31:获取待更新固件包。
32.步骤31与上述实施例中的步骤11相同,在此不再赘述;具体地,待更新固件包包括待更新基础系统固件包与待更新应用系统固件包,基础系统存储区存储有当前基础固件
包,当前基础固件包为当前基础系统的固件包,应用系统存储区存储有当前应用固件包,当前应用固件包为当前应用系统的固件包。
33.步骤32:判断当前基础固件包的版本信息与新基础系统的版本信息是否一致。
34.待更新基础系统固件包包括新基础系统的版本信息,可通过比对当前基础固件包的版本信息与新基础系统的版本信息,来判断当前基础固件包是否需要升级。
35.步骤33:若当前基础固件包的版本信息与新基础系统的版本信息不一致,则将待更新基础系统固件包存储至应用系统存储区。
36.在当前基础固件包的版本信息与新基础系统的版本信息不一致时,说明当前基础固件包需要升级,则将待更新基础系统固件包存储至应用系统存储区,然后在将待更新基础系统固件包存储至应用系统存储区后,再将待更新应用系统固件包存储至基础系统存储区。
37.具体地,可获取应用系统存储区对应的第一存储地址,然后将待更新基础系统固件包存储至第一存储地址,以将待更新基础系统固件存储至应用系统存储区;在将待更新基础系统固件包存储至第一存储地址后,获取基础系统存储区对应的第二存储地址,然后将待更新应用系统固件包存储至第二存储地址,以将待更新应用系统固件包存储至基础系统存储区。
38.在一具体的实施方式中,待更新应用系统固件包也可包括新应用系统的版本信息,在当前基础固件包的版本信息与新基础系统的版本信息一致时,即当前基础固件包不需要升级时,可通过判断当前应用固件包的版本信息是否与新应用系统的版本信息是否一致,来判断当前应用固件包是否需要升级;若当前应用固件包的版本信息与新应用系统的版本信息一致,说明当前应用固件包也不需要升级,则结束对应用系统进行固件升级;若当前应用固件包的版本信息与新应用系统的版本信息是不一致,说明当前应用固件包需要升级,则将待更新应用系统固件包存储至应用系统存储区;具体地,在当前基础固件包无需升级,仅需升级当前应用固件包的情况下,由于应用系统固件包的缺失不影响摄像设备的正常运行以及升级功能,无需对应用系统固件包进行备份,则此时可直接将待更新应用系统固件包存储至应用系统存储区。
39.可以理解地,在对当前基础固件包进行升级之后,即将待更新基础系统固件包存储至应用系统存储区之后,由于此时应用系统存储区存储的当前应用固件包已经被抹除,此时无需判断当前应用固件包的版本信息是否与新应用系统的版本信息是否一致,可直接将待更新应用系统固件包存储至基础系统存储区,以完成整个摄像设备的固件升级。
40.步骤34:基于第一校验信息,判断待更新基础系统固件包是否满足第一预设校验条件。
41.待更新基础系统固件包包括第一校验信息,可通过第一校验信息对待更新基础系统固件包进行校验,判断摄像设备是否兼容待更新基础系统固件包、待更新基础系统固件包是否存在安全隐患或者待更新基础系统固件包中的内容是否正确等,在上述问题都不存在,即摄像设备兼容待更新基础系统固件包、待更新基础系统固件包不存在安全隐患以及待更新基础系统固件包中的内容正确时,说明待更新基础系统固件包满足第一预设校验条件,存入的待更新基础系统固件包在摄像设备中可行,基础系统的固件升级成功。
42.若待更新基础系统固件包不满足第一预设校验条件,则返回获取待更新固件包的
步骤,重新获取新的待更新固件包,以利用新的待更新基础系统固件包再进行基础系统的固件升级。
43.步骤35:若待更新基础系统固件包满足第一预设校验条件,则获取基础系统存储区对应的第二存储地址,将待更新应用系统固件包存储至第二存储地址。
44.在待更新基础系统固件包满足第一预设校验条件时,基础系统的固件升级成功,则继续对应用系统进行固件升级,获取基础系统存储区对应的第二存储地址,然后将待更新应用系统固件包存储至第二存储地址。
45.步骤36:在将待更新应用系统固件包存储至第二存储地址后,基于第二校验信息,判断待更新应用系统固件包是否满足第二预设校验条件。
46.待更新应用系统固件包包括第二校验信息,在待更新应用系统固件包存储至第二存储地址后,即完整的待更新应用系统固件包都存入基础系统存储区之后,根据第二校验信息对待更新应用系统固件包进行校验,判断摄像设备是否兼容待更新应用系统固件包、待更新应用系统固件包是否存在安全隐患或者待更新应用系统固件包中的内容是否正确等,在上述问题都不存在,即摄像设备兼容待应用基础系统固件包、待更新应用系统固件包不存在安全隐患以及待更新应用系统固件包中的内容正确时,说明待更新应用系统固件包满足第二预设校验条件,存入的待更新应用系统固件包在摄像设备中可行,应用系统的固件升级成功。
47.若待更新应用系统固件包不满足第二预设校验条件,则返回获取待更新固件包的步骤,重新获取新的待更新固件包,以利用新的待更新应用系统固件包再进行应用系统的固件升级。
48.步骤37:若待更新应用系统固件包满足第二预设校验条件,则运行待更新基础系统固件包与待更新应用系统固件包,以完成固件升级。
49.在待更新应用系统固件包满足第二预设校验条件时,应用系统的固件升级成功,则此时应用系统存储区存储有完整的待更新基础系统固件包,基础系统存储区存储有完整的待更新应用系统固件包,此时可运行待更新基础系统固件包与待更新应用系统固件包,从而完成摄像设备的固件升级。
50.在一具体的实施方式中,应用系统存储区包含第一升级信息,基础系统存储区包含第二升级信息,可在断电等异常情况导致固件升级被中断时,对第一升级信息以及第二升级信息进行识别,并基于识别结果选择继续运行待更新固件包或结束运行待更新固件包。
51.具体地,在开始将待更新基础系统固件包存储至第一存储地址时,可将第一升级信息设置为第一预设升级标识;在结束将待更新基础系统固件包存储至第一存储地址后,将第一升级信息设置为第二预设升级标识;在固件升级被中断时,可在识别出第一升级信息为第一预设升级标识时,继续执行将待更新基础系统固件包存储至应用系统存储区的步骤;在识别出第一升级信息为第二预设升级标识时,结束对基础系统进行固件升级。
52.以第一预设升级标识为updating_sys_start,第二预设升级标识为updating_sys_end为例,可在判断出当前基础固件包的版本信息与新基础系统的版本信息一致时,无需对基础系统进行升级时,可将第一升级信息设置为updating_sys_end,然后进入对当前应用固件包的版本信息与新应用系统的版本信息是否一致的判断步骤;而在判断出当前基
础固件包的版本信息与新基础系统的版本信息不一致时,说明此时需要对基础系统进行升级,可将第一升级信息设置为updating_sys_start,然后执行将待更新基础系统固件包存储至应用系统存储区的操作,再对待更新基础系统固件包进行校验,若校验成功,则将第一升级信息设置为updating_sys_end;若校验失败,则重新对基础系统进行升级。
53.进一步地,可在开始将待更新应用系统固件包存储至第二存储地址时,将第二升级信息设置为第三预设升级标识;在结束将待更新应用系统固件包存储至第二存储地址后,将第二升级信息设置为第四预设升级标识;从而在固件升级被中断时,可在识别出第二升级信息为第三预设升级标识时,继续执行将待更新应用系统固件包存储至基础系统存储区的步骤;在识别出第二升级信息为第四预设升级标识时,运行待更新固件包,以完成固件升级。
54.以第三预设升级标识为updating_app_start,第四预设升级标识为updating_end为例,可在判断出当前应用固件包的版本信息与新应用系统的版本信息一致时,即无需对应用系统进行升级时,可将第二升级信息设置为updating_end,结束对应用系统的升级;而在判断出当前应用固件包的版本信息与新应用系统的版本信息不一致时,说明需要对应用系统进行升级,可将第二升级信息设置为updating_app_start,然后执行将待更新应用系统固件包存储至基础系统存储区的步骤,再对待更新应用系统固件包进行校验,若校验成功,可将第二升级信息设置为updating_end,然后直接运行待更新固件包,从而完成固件升级;若校验失败,则重新对应用系统进行升级。
55.本实施例可通过比对当前固件包(包括当前基础固件包以及当前应用固件包)的版本信息与新系统(包括新基础系统以及新应用系统)的版本信息,来判断当前固件包是否需要进行升级;在两者的版本信息不一致时,可将待更新基础系统固件包存储至应用系统存储区,然后再将待更新应用系统固件包存储至基础系统存储区;同时还可通过对存入的待更新基础系统固件包以及待更新应用系统固件包进行校验,能够保证固件升级的准确性以及安全性,在待更新基础系统固件包以及待更新应用系统固件包都校验成功之后,才运行待更新基础系统固件包以及待更新应用系统固件包,从而完成固件升级,以提高固件升级的质量;此外,还能够在应用系统存储区以及基础系统存储区分别设置第一升级信息以及第二升级信息,在固件升级被中断时,能够对第一升级信息以及第二升级信息进行识别,从而根据识别结果选择继续运行待更新固件包或结束运行待更新固件包,能够根据中断前的升级节点继续/结束升级,能够大大减少升级时长,提高升级效率。
56.请参阅图4,图4是本技术提供的摄像设备一实施例的结构示意图,摄像设备40包括互相连接的存储器41和处理器42,存储器41用于存储计算机程序,计算机程序在被处理器42执行时,用于实现上述实施例中的固件升级方法。
57.请参阅图5,图5是本技术提供的计算机可读存储介质一实施例的结构示意图,计算机可读存储介质50用于存储计算机程序51,计算机程序51在被处理器执行时,用于实现上述实施例中的固件升级方法。
58.计算机可读存储介质50可以是服务端、u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
59.在本技术所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通
过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
60.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
61.另外,在本技术各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
62.以上所述仅为本技术的实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献