CN106156626B - 一种系统安全升级的方法和装置 - Google Patents

一种系统安全升级的方法和装置 Download PDF

Info

Publication number
CN106156626B
CN106156626B CN201510142360.XA CN201510142360A CN106156626B CN 106156626 B CN106156626 B CN 106156626B CN 201510142360 A CN201510142360 A CN 201510142360A CN 106156626 B CN106156626 B CN 106156626B
Authority
CN
China
Prior art keywords
partition
boot
parameter
state
configuration state
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
Application number
CN201510142360.XA
Other languages
English (en)
Other versions
CN106156626A (zh
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510142360.XA priority Critical patent/CN106156626B/zh
Priority to PCT/CN2016/076830 priority patent/WO2016155524A1/zh
Publication of CN106156626A publication Critical patent/CN106156626A/zh
Application granted granted Critical
Publication of CN106156626B publication Critical patent/CN106156626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种系统安全升级的方法和装置,以解决由于系统升级出现的设备不可用率高的情况。该方法为,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;在参数分区内将筛选出的上述一个引导分区的配置状态参数设置为表征失败状态,并运行该引导分区中存储的用于引导系统启动的代码;确定执行成功时,在参数分区内将筛选出的上述一个引导分区的配置状态参数值设置为表征成功状态。这样,能够大大降低由于系统升级导致设备不可用的概率,提升系统的可靠性,提高设备的可用性,确保系统能够安全可靠地升级。

Description

一种系统安全升级的方法和装置
技术领域
本发明涉及计算机领域,尤其涉及一种系统安全升级的方法和装置。
背景技术
系统升级,通常包括引导分区(bootloader),OS,中间件,应用等组件的升级。在嵌入式产品,如智能电视机,各种盒子如交互式网络电视(Internet protocol TV,IPTV)盒子,过顶(Over The Top,OTT)盒子,数字视频广播(Digital Video Broadcasting,DVB)盒子,机顶盒等,其内置的存储器通常是计算机闪存设备(NAND)介质或者内嵌式存储器(Embedded Multi Media Card,eMMC)介质,NAND和eMMC的特点是容易出现坏块、导致其损坏。系统升级会加大对NAND或eMMC的读写,如果在升级过程中,突然断电,更会使存储介质损坏的可能性大大增加。常见的升级,例如:安卓系统的升级通常包括对bootloader,操作系统内核(kernel),系统(system),恢复(recovery),缓存(cache)等分区的内容进行更新。系统在线升级的时候,往往更新其中部分分区或者全部分区的内容。
由此可知,系统升级包括全部升级和部分升级。通常的做法是依次更新bootloader,kernel,system等分区的内容,如果关键分区如bootloader分区由于断电导致破坏,整个系统将无法启动,设备无法正常运行,俗称导致设备变“砖”。
发明内容
本发明的目的是提供一种系统安全升级的方法和装置,以解决由于系统升级出现的设备不可用率高的情况。
本发明的目的是通过以下技术方案实现的:
一种系统安全升级的方法,包括:
在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均存储有用于引导系统启动的代码;
在所述参数分区内将筛选出的所述一个引导分区的配置状态参数设置为表征失败状态,并运行所述一个引导分区中存储的用于引导系统启动的代码;
确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态。
这样,能够大大降低由于系统升级时关键分区损坏导致设备不可用的概率,利用多个引导分区实现设备的快速恢复启动,不影响系统的正常运行时间,为用户提供了方便,进一步提升系统的可靠性,提高设备的可用性,确保系统能够安全可靠地升级。
较佳的,在设备首次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
较佳,系统包括的至少两个引导分区为相同的引导分区,所述系统为嵌入式系统。
可选的,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区,具体包括:
在设备开机后,执行只读芯片ROM中保存的引导代码;
在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将所述一个引导分区标记为待操作引导分区,否则,将所述一个引导分区标记为待修复引导分区;
从已标记的待操作引导分区中筛选出一个引导分区。
可选的,确定执行成功时,在所述参数分区内将所述一个引导分区的配置状态参数值设置为表征成功状态之后,进一步包括:
将所述一个引导分区内存储的代码复制到每一个已标记的待修复引导分区中;
每确定所述一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将所述一个待修复引导分区的配置状态参数值设置为表征成功状态。
一种系统安全升级的装置,包括:
筛选单元,用于在该设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均存储有用于引导系统启动的代码;
处理单元,用于在所述参数分区内将筛选出的所述一个引导分区的配置状态参数设置为表征失败状态,并运行所述一个引导分区中存储的用于引导系统启动的代码;
确定单元,用于确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态。
这样,能够大大降低由于系统升级时关键分区损坏导致设备不可用的概率,利用多个引导分区实现设备的快速恢复启动,不影响系统的正常运行时间,为用户提供了方便,进一步提升系统的可靠性,提高设备的可用性,确保系统能够安全可靠地升级。
较佳的,所述筛选单元检测的系统包括的至少两个引导分区为相同的引导分区,所述系统为嵌入式系统。
较佳的,所述筛选单元进一步用于:
在设备首次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
较佳的,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区时,所述筛选单元具体用于:
在设备开机后,执行只读芯片ROM中保存的引导代码;
在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将所述一个引导分区标记为待操作引导分区,否则,将所述一个引导分区标记为待修复引导分区;
从已标记的待操作引导分区中筛选出一个引导分区。
较佳的,确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态之后,所述确定单元进一步用于:
将筛选出的所述一个引导分区内存储的代码复制到每一个已标记的待修复引导分区中;
每确定筛选出的所述一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将所述一个待修复引导分区的配置状态参数值设置为表征成功状态。
附图说明
图1为本发明实施例中系统安全升级的方法流程示意图;
图2为本发明实施例中参数分区的示意图;
图3为本发明实施例中安卓设备的存储器分区示意图;
图4为本发明实施例中系统安全升级的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
存储介质(如NAND/eMMC)的分区管理与系统升级密切相关。通常系统升级时,执行完芯片上的引导代码(ROM code)后总是跳转到固定分区执行其相关代码,而不会根据分区是否损坏跳转到别的分区,如果升级过程中关键分区例如引导分区(bootloader)由于断电出现毁坏情况时,会导致系统升级无法正常进行,进一步导致设备不可用,影响用户的正常使用。和通常的做法不同,本发明实施例中设计了初始化(Init)分区,并对引导分区进行了多个分区的备份,用以大大提高系统升级的可靠性。
参阅图1所示,本发明实施例中,提供一种系统安全升级的方法,具体流程如下:
步骤100:在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均记录有用于引导系统启动的代码。
具体的,系统包括的至少两个引导分区为相同的引导分区,可以互为备份,该系统为嵌入式系统。
进一步的,在设备次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
例如,参数(parameter)分区采用key-value方式存放一些启动过程必须的参数,包括表征引导分区的配置状态的参数,具体的,可参阅图2所示,用“SUCCESS”表征成功的配置状态,用“FAILD”表征失败的配置状态,在设备首次开机(即出厂)之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为“SUCCESS”状态。
具体的,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区,具体过程为:在设备开机后,执行只读芯片ROM中保存的引导代码;在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将该一个引导分区标记为待操作引导分区,否则,将该一个引导分区标记为待修复引导分区;从已标记的待操作引导分区中筛选出一个引导分区。
步骤101:在参数分区内将筛选出的上述一个引导分区的配置状态参数设置为表征失败状态,并运行该一个引导分区中存储的用于引导系统启动的代码。
步骤102:确定执行成功时,在参数分区内将筛选出的上述一个引导分区的配置状态参数值设置为表征成功状态。
需要说明的是,这里检测到一个配置状态为成功状态的引导分区后,执行该引导分区的代码时,将该引导分区的配置状态设置为失败状态,在成功执行完该引导分区的代码后,将将该引导分区的配置状态设置为成功状态,这样做能够确保在执行完某一个引导分区的代码后,参数分区中保存的该分区的配置状态是正确的,如果不执行这样的操作,在执行引导分区的代码时若由于断电或电路板短路等原因导致升级失败时,将导致参数分区内记录该引导分区的配置状态出现错误,再次升级时可能会继续出现升级失败的情形。
进一步的,确定执行成功时,在参数分区内将筛选出的上述一个引导分区的配置状态参数值设置为表征成功状态之后,将上述一个引导分区内存储的代码复制到每一个已标记的待修复引导分区中;每确定上述一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将该一个待修复引导分区的配置状态参数值设置为表征成功状态。
例如,系统中存在两个引导分区,这两个引导分区互为备份,这里用bootloader0和bootloader1来表示这个互为备份的引导分区,检测到bootloader0的配置状态为“SUCCESS”状态,bootloader1的配置状态为“FAILD”状态,设备开机后成功执行完bootloader0中存储的代码后,需要将bootloader0中存储的代码复制到bootloader1中,在确定bootloader0中存储的代码成功复制到bootloader1中后,将bootloader1的配置状态修改为“SUCCESS”状态,这样,能够实现对出现毁坏情况的引导分区恢复至正常情况。
进一步的,需要说明的是,初始化分区、引导分区以及设备的存储器的其他分区的代码执行,都是先将分区的代码下载(load)到内存中(如DDR或IRAM),CPU从内存中读取对应分区的代码进行加载。
具体的,下面以一安卓(Android)设备的存储器分区为例针对上述系统安全升级的方法进行详细说明。
Android设备的存储器即eMMC/NAND分区情况,参阅图3所示,包括:Parameter,Init区,Bootloader0,Bootloader1,…BootloaderN,Kernel,Android,recovery,cache,其他(other)等分区。其中:
Parameter分区采用简单的key-value方式存放一些启动过程中必须的参数,包括bootloader0/bootloader1/…bootloaderN的配置(boot)状态。这里用“SUCCESS”表征成功的配置状态,用“FAILD”表征失败的配置状态,初始化时,这些引导分区的状态都是“SUCCESS”状态。
Init分区存储有一段初始化代码,该初始化代码根据parameter分区的记录的引导分区的参数决定跳转到哪个引导分区,其中BootLoader0,BootLoader1,…BootLoaderN是同一个引导分区的多个备份。
每一个引导分区都存储有一段为启动操作系统做准备的代码,为启动操作系统做准备。
Kernel分区是指操作系统的内核分区,通常存储有内核、驱动相关代码,如Linuxkernel;android分区包括android相关的组件,通常存储有android相关的框架代码、虚拟机代码、用到的库等;recovery分区是指android的recovery分区,该分区包含一个简单的Linux系统,用于升级;cache分区用以保存系统升级下载的升级包;Other分区是指其他分区,由各个产品自己定义。
当设备开机时,最先执行只读芯片“ROM”芯片里面的代码即引导代码(ROM code),该引导代码执行完毕之后,会跳转到Init分区的代码,Init分区的代码会检查parameter分区的Bootloader0_Boot_state的值,如果是“SUCCESS”,则从该分区执行;如果是“FAILD”,记录Bootloader_Boot_state=FAILD的引导分区,进一步的继续检查Bootloader1_Boot_state的值…如此下去,直到找到一个配置状态为“SUCCESS”的引导分区执行该分区存储的代码。在执行一个引导分区存储的代码时,首先把该引导分区对应的Bootloader_Boot_state设置为“FAILED”,直到引导分区存储的代码成功执行完毕后才把其对应的Bootloader_Boot_state改为“SUCCESS”。如果该引导分区存储有损坏的代码,导致该引导分区存储的代码将不会被完全成功执行,从而该引导分区对应的Bootloader_Boot_state不会被改写为“SUCCESS”。在该引导分区存储的代码成功执行完毕之后,要负责恢复Bootloader_Boot_state=FAILD的引导分区,即把该引导分区存储的代码复制到到损坏的备份引导分区中,在确定该引导分区存储的代码成功复制到到损坏的备份引导分区中之后,将损坏的备份引导分区的配置状态修改为“SUCCESS”;最后把执行权交给kernel做后面的启动过程,此过程不做详细描述。
需要说明的是,通常情况下,设备开机时执行完芯ROM code后总是跳转到固定分区执行,而不会根据分区是否损坏跳转到别的分区。本发明实施例中,设备开机时执行完ROM code后通过跳转到Init分区,Init分区根据parameter分区中记录的引导分区的配置状态决定跳转到哪个引导分区中,由于Init分区的内容不会通过系统升级而改变,所以理论上该分区不会因为升级而损坏,而bootloader的多个备份机制保证了bootloader的可靠性。Kernel等其他分区只有在恢复(recovery)模式下进行更新,如果更新失败(如断电),重启后,恢复(recovery)模式会继续更新kernel等分区的内容,从而保证了其他分区的可靠性,Recovery模式特指Android recovery模式,其实质是更新升级包。
基于上述技术方案,参阅图4所示,本发明实施例中提供一种系统安全升级的装置,包括:筛选单元40,处理单元41和确定单元42,其中:
筛选单元40,用于在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均存储有用于引导系统启动的代码;
处理单元41,用于在参数分区内将筛选出的上述一个引导分区的配置状态参数设置为表征失败状态,并运行该引导分区中存储的用于引导系统启动的代码;
确定单元42,用于确定执行成功时,在参数分区内将筛选出的上述一个引导分区的配置状态参数值设置为表征成功状态。
较佳的,所述筛选单元检测的系统包括的至少两个引导分区为相同的引导分区,该系统为嵌入式系统。
较佳的,筛选单元40进一步用于:
在设备首次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
较佳的,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区时,筛选单元40具体用于:
在设备开机后,执行只读芯片ROM中保存的引导代码;
在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将该引导分区标记为待操作引导分区,否则,将该引导分区标记为待修复引导分区;
从已标记的待操作引导分区中筛选出一个引导分区。
较佳的,确定执行成功时,在参数分区内将筛选出的上述一个引导分区的配置状态参数值设置为表征成功状态之后,确定单元42进一步用于:
将筛选出的上述一个引导分区内存储的代码复制到每一个已标记的待修复引导分区中;
每确定筛选出的该一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将该待修复引导分区的配置状态参数值设置为表征成功状态。
综上所述,本发明实施例中,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;在参数分区内将上述一个引导分区的配置状态参数设置为表征失败状态,并运行该一个引导分区中存储的用于引导系统启动的代码;确定执行成功时,在参数分区内将上述一个引导分区的配置状态参数值设置为表征成功状态。这样,能够大大降低由于系统升级导致设备不可用的概率,提升系统的可靠性,提高设备的可用性,确保系统能够安全可靠地升级。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种系统安全升级的方法,其特征在于,包括:
在设备开机时,通过执行初始化分区中的代码检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均存储有用于引导系统启动的代码;其中,所述初始化分区不会通过系统升级改变;所述至少两个引导分区处于同一个存储器中;
在所述参数分区内将筛选出的所述一个引导分区的配置状态参数设置为表征失败状态,并运行所述一个引导分区中存储的用于引导系统启动的代码;
确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态。
2.如权利要求1所述的方法,其特征在于,进一步包括:
在设备首次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
3.如权利要求1所述的方法,其特征在于,系统包括的至少两个引导分区为相同的引导分区,所述系统为嵌入式系统。
4.如权利要求1、2或3所述的方法,其特征在于,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区,具体包括:
在设备开机后,执行只读芯片ROM中保存的引导代码;
在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将所述一个引导分区标记为待操作引导分区,否则,将所述一个引导分区标记为待修复引导分区;
从已标记的待操作引导分区中筛选出一个引导分区。
5.如权利要求4所述的方法,其特征在于,确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态之后,进一步包括:
将筛选出的所述一个引导分区内存储的代码复制到每一个已标记的待修复引导分区中;
每确定筛选出的所述一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将所述一个待修复引导分区的配置状态参数值设置为表征成功状态。
6.一种系统安全升级的装置,其特征在于,包括:
筛选单元,用于在设备开机时,通过执行初始化分区中的代码检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区;其中,系统包括至少两个引导分区,每一个引导分区中均存储有用于引导系统启动的代码;其中,所述初始化分区不会通过系统升级改变;所述至少两个引导分区处于同一个存储器中;
处理单元,用于在所述参数分区内将所述一个引导分区的配置状态参数设置为表征失败状态,并运行所述一个引导分区中存储的用于引导系统启动的代码;
确定单元,用于确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态。
7.如权利要求6所述的装置,其特征在于,所述筛选单元检测的系统包括的至少两个引导分区为相同的引导分区,所述系统为嵌入式系统。
8.如权利要求6所述的装置,其特征在于,所述筛选单元进一步用于:在设备首次开机之前,将参数分区内记录的每一个引导分区的配置状态参数值均设置为表征成功状态。
9.如权利要求6、7、8中任一项所述的装置,其特征在于,在设备开机时,检测参数分区内记录的每一个引导分区的配置状态参数,筛选出配置状态参数表征成功状态的一个引导分区时,所述筛选单元具体用于:
在引导代码执行完毕后,通过执行初始化分区中存储的代码,依次检测参数分区内记录的每一个引导分区的配置状态参数;其中,每读取一个引导分区的配置状态参数,判断是否表征成功状态,若是,则将所述一个引导分区标记为待操作引导分区,否则,将所述一个引导分区标记为待修复引导分区;
从已标记的待操作引导分区中筛选出一个引导分区。
10.如权利要求9所述的装置,其特征在于,确定执行成功时,在所述参数分区内将筛选出的所述一个引导分区的配置状态参数值设置为表征成功状态之后,所述确定单元进一步用于:
每确定筛选出的所述一个引导分区内存储的代码成功复制到一个待修复引导分区后,在参数分区内将所述一个待修复引导分区的配置状态参数值设置为表征成功状态。
CN201510142360.XA 2015-03-27 2015-03-27 一种系统安全升级的方法和装置 Active CN106156626B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510142360.XA CN106156626B (zh) 2015-03-27 2015-03-27 一种系统安全升级的方法和装置
PCT/CN2016/076830 WO2016155524A1 (zh) 2015-03-27 2016-03-21 一种系统安全升级的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510142360.XA CN106156626B (zh) 2015-03-27 2015-03-27 一种系统安全升级的方法和装置

Publications (2)

Publication Number Publication Date
CN106156626A CN106156626A (zh) 2016-11-23
CN106156626B true CN106156626B (zh) 2020-04-10

Family

ID=57006561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510142360.XA Active CN106156626B (zh) 2015-03-27 2015-03-27 一种系统安全升级的方法和装置

Country Status (2)

Country Link
CN (1) CN106156626B (zh)
WO (1) WO2016155524A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109409032A (zh) * 2018-10-24 2019-03-01 山东超越数控电子股份有限公司 一种安全关键系统的系统内核安全判断方法
CN109542480A (zh) * 2018-11-16 2019-03-29 深圳市邻友通科技发展有限公司 美甲打印装置的操作系统升级方法、装置和介质
CN111142949B (zh) * 2019-12-26 2022-03-25 联想(北京)有限公司 一种信息处理方法和电子设备
CN113064608A (zh) * 2020-01-02 2021-07-02 广东博智林机器人有限公司 一种ota升级方法、装置、设备和介质
CN113905365B (zh) * 2021-12-13 2022-03-15 龙旗电子(惠州)有限公司 安卓终端单双卡配置方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520735A (zh) * 2008-12-18 2009-09-02 康佳集团股份有限公司 一种启动闪存内引导程序的方法及其网络电视和机顶盒
CN102289397A (zh) * 2011-09-13 2011-12-21 全星科技(珠海)有限公司 一种机顶盒的嵌入式系统自动恢复方法及装置
CN102331958A (zh) * 2011-11-02 2012-01-25 赵玉燕 Linux系统下硬盘启动的方法
CN102508686A (zh) * 2011-11-30 2012-06-20 苏州希图视鼎微电子有限公司 一种系统安全升级的实现方法及其系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483659B (zh) * 2009-02-23 2011-12-07 成都市华为赛门铁克科技有限公司 启动服务器的方法、装置与系统
CN102104750B (zh) * 2009-12-22 2015-02-11 康佳集团股份有限公司 一种网络电视自动升级的方法
ES2782359T3 (es) * 2011-08-12 2020-09-14 Abb Schweiz Ag Procedimiento y sistema para la transmisión protegida de archivos
CN102662715B (zh) * 2012-04-23 2016-03-23 深圳市掌讯通讯设备有限公司 一种嵌入式操作系统启动方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520735A (zh) * 2008-12-18 2009-09-02 康佳集团股份有限公司 一种启动闪存内引导程序的方法及其网络电视和机顶盒
CN102289397A (zh) * 2011-09-13 2011-12-21 全星科技(珠海)有限公司 一种机顶盒的嵌入式系统自动恢复方法及装置
CN102331958A (zh) * 2011-11-02 2012-01-25 赵玉燕 Linux系统下硬盘启动的方法
CN102508686A (zh) * 2011-11-30 2012-06-20 苏州希图视鼎微电子有限公司 一种系统安全升级的实现方法及其系统

Also Published As

Publication number Publication date
WO2016155524A1 (zh) 2016-10-06
CN106156626A (zh) 2016-11-23

Similar Documents

Publication Publication Date Title
CN106156626B (zh) 一种系统安全升级的方法和装置
JP5575338B2 (ja) 情報処理装置、情報処理方法、およびコンピュータプログラム
US8041988B2 (en) Firmware update for consumer electronic device
KR101427755B1 (ko) Usb를 이용한 펌웨어 업그레이드 장치 및 방법
CN101329631B (zh) 一种嵌入式系统自动检测和恢复启动的方法及装置
WO2016206514A1 (zh) 启动处理方法及装置
US20110320794A1 (en) Flash System And Method For Updating The Flash System
CN106775610B (zh) 一种电子设备启动方法及一种电子设备
WO2018024198A1 (zh) 机顶盒的应用程序升级方法、系统及机顶盒
US8812906B2 (en) Method for system recovery and apparatus supporting the same
GB2466685A (en) Fault tolerant updating of firmware
CN106775674B (zh) 一种基于通用引导加载程序的设备及其启动方法
WO2016183951A1 (zh) 一种系统升级方法及终端
CN110737481A (zh) 基于多重备份引导程序的嵌入式linux操作系统的启动方法
US7818622B2 (en) Method for recovering data processing system failures
US20100269106A1 (en) Method of finding a safe time to modify code of a running computer program
WO2021103745A1 (zh) 一种引导程序的保护设计方法
WO2015184732A1 (zh) 引导程序的存储方法、故障恢复方法及设备、计算机存储介质
CN114265603A (zh) 基于不对称分区的系统升级方法、装置和电子设备
CN109032649B (zh) Ota升级方法、装置、设备及存储介质
CN114115958A (zh) 程序启动方法及终端设备
EP2733612B1 (en) Information processing device, method, and program
KR101529713B1 (ko) 비정상 전원절환에 대한 안드로이드 단말의 안정성 강화 방법 및 이를 위한 위한 프로그램을 기록한 컴퓨터로 판독가능한 기록매체
CN104834574B (zh) 一种解决系统分区损坏的方法及装置
CN110908722B (zh) 应用于操作系统启动的方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant