一种系统安全启动的方法、装置、机顶盒及存储介质制造方法及图纸

技术编号:18083572 阅读:47 留言:0更新日期:2018-05-31 12:11
本发明专利技术实施例公开了一种系统安全启动的方法、装置、机顶盒及存储介质。其中方法包括:根据启动指令,加载程序区数据,并检测所述程序区数据是否存在异常数据;若存在异常数据,则确定所述异常数据所在的条带信息;于广播网络中循环播放的多个校验数据中确定与所述条带信息相匹配的目标校验数据,所述校验数据为预先根据标准程序区数据确定;根据所述目标校验数据恢复所述异常数据,并加载恢复后的程序区数据。本发明专利技术实施例保证了系统的安全启动,同时将检验数据在广播网络中播放,占用存储空间小,避免了存储空间的消耗。

【技术实现步骤摘要】
一种系统安全启动的方法、装置、机顶盒及存储介质
本专利技术实施例涉及计算机技术,尤其涉及一种系统安全启动的方法、装置、机顶盒及存储介质。
技术介绍
在嵌入式系统中,采用MLC/SLCNANDFLASH作为程序存储器和数据存储器的应用越来越广,但是NANDFLASH由于其工艺原理限制,随着使用时间和环境的变化经常出现位反转,如果是程序区只要出现一个无法纠错的位反转,整个系统将无法启动和恢复。目前,为了解决上述问题,通过设置双系统或双备份,但该方法需要多消耗一倍的存储空间,导致较大的空间消耗和浪费。
技术实现思路
本专利技术提供一种系统安全启动的方法、装置、机顶盒及存储介质,以实现兼顾系统的安全启动和避免存储空间浪费。第一方面,本专利技术实施例提供了一种系统安全启动方法,该方法包括:根据启动指令,加载程序区数据,并检测所述程序区数据是否存在异常数据;若存在异常数据,则确定所述异常数据所在的条带信息;于广播网络中循环播放的多个校验数据中确定与所述条带信息相匹配的目标校验数据,所述校验数据为预先根据标准程序区数据确定;根据所述目标校验数据恢复所述异常数据,并加载恢复后的程序区数据。第二方面,本专利技术实施例还提供了一种系统安全启动装置,该装置包括:数据加载模块,用于根据启动指令,加载程序区数据;异常数据检测模块,用于检测所述程序区数据是否存在异常数据;条带信息确定模块,用于若存在异常数据,则确定所述异常数据所在的条带信息;目标校验数据确定模块,用以于广播网络中循环播放的多个校验数据中确定与所述条带信息相匹配的目标校验数据,所述校验数据为预先根据标准程序区数据确定;数据恢复模块,用于根据所述目标校验数据恢复所述异常数据;所述数据加载模块,还用于加载恢复后的程序区数据。第三方面,本专利技术实施例还提供了一种机顶盒,所述机顶盒包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例提供的系统安全启动方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术任意实施例提供的系统安全启动方法。本专利技术实施例通过在接收到启动指令时,加载程序区数据,并检测数据加载过程中是否存在异常数据,当存在异常数据时,确定异常数据所在的磁盘阵列条带,从循环广播的校验数据中读取对应的校验数据,并基于该校验数据和磁盘阵列条带中的其他正常数据对异常数据进行数据恢复,保证了系统的安全启动,同时将检验数据在广播网络中播放,占用存储空间小,避免了存储空间的消耗。附图说明图1是本专利技术实施例一提供的一种系统安全启动方法的流程图;图2A是本专利技术实施例一提供的程序区数据分区示意图;图2B是本专利技术实施例一提供的一个磁盘阵列条带的示意图;图3是本专利技术实施例二提供的一种系统安全启动装置的结构示意图;图4是本专利技术实施例三提供的一种机顶盒的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种系统安全启动方法的流程图,本实施例可适用于智能终端中嵌入式系统安全启动的情况,尤其适用于智能机顶盒中嵌入式系统安全启动的情况,该方法可以由本专利技术实施例提供的系统安全启动装置来执行,该装置可采用软件和/或硬件的方式实现。该方法具体包括:S110、根据启动指令,加载程序区数据,并检测程序区数据是否存在异常数据。其中,启动指令可以是通过打开设备上的电源开关生成的指令,其中,设备可以是机顶盒。机顶盒接收启动指令后,开始加载程序区数据,其中,程序区数据指的是系统中的只读的程度区数据。本实施例中,在BOOT启动时,检测只读程序区数据是否存在异常数据,其中异常数据包括但不限于读Fail(失败)数据、读Empty(空页)数据或超过ECC(ErrorCorrectingCode,错误检查和纠正)纠错范围的数据。本实施例中,通过在嵌入式系统启动时,检测加载的程序区数据是否存在异常数据,避免程序区数据加载错误,提高了系统启动的安全性。S120、若存在异常数据,则确定异常数据所在的当前磁盘阵列条带的条带信息。本实施例中,设备出厂时,将程序区数据进行磁盘阵列条带划分,可选的,程序区条带设置有条带编号,在进行程序区数据加载时,根据条带编号依次写入。其中,于检测到存在异常数据时,确定的异常数据所在的条带信息可以是条带编号。可选的,若存在异常数据,则跳跃异常数据所在的磁盘阵列条带,继续加载并检测下一磁盘阵列条带的数据。本实施例中,当确定当前磁盘阵列条带存在异常数据时,在后台对该磁盘阵列条带的异常数据进行恢复,并继续对下一磁盘阵列条带数据进行加载,避免了由于异常数据导致的程序区数据加载停止,提高了程序区数据的加载效率。可选的,在所有磁盘阵列条带数据加载完成,且不存在异常数据时,确定程序区数据加载完成。S130、于广播网络中循环播放的多个校验数据中确定与条带信息相匹配的目标校验数据,校验数据为预先根据标准程序区数据确定。其中,每一个条带数据对应一个校验数据,可选的,校验数据可以是携带有条带编号,根据条带信息可匹配到对应的校验数据。可选的,校验数据为预先根据标准程序区数据确定,校验数据的确定方法包括:将程序区数据划分为数据分区,其中,各数据分区的大小相同;将连续的预设数量的数据分区组成磁盘阵列条带;对每一个磁盘阵列条带中各数据分区的数据依次进行异或处理,确定每一个磁盘阵列条带的校验数据。示例性的,参见图2A,图2A是本专利技术实施例一提供的程序区数据分区示意图。图2A中,将程序区数据划分为多个大小相同的数据块,将数量相同的数据块组成磁盘阵列条带,示例性的,每一个磁盘阵列条带中数据块的数量可以是5或者7。对于任意磁盘阵列条带,数据块1至数据块N-1可以是程序区数据,数据块N可以是校验数据。对每一个磁盘阵列条带,根据其中的数据块中的数据确定校验数据,示例性的,参见图2B,图2B是本专利技术实施例一提供的一个磁盘阵列条带的示意图,其中,该磁盘阵列条带包含5个数据块,其数据分别为A、B、C、D和E,PARITY为该磁盘阵列条带的检验数据。可选的,对每一个磁盘阵列条带中的数据块进行编号,示例性的,A、B、C、D和E对应的数据块的编号可以是1、2、3、4和5。可选的,校验数据为根据数据块的编号依次对数据进行异或运行确定。示例性的,PARITY=A^B^C^D^E,其中符号“^”表示异或运算。其中,校验数据可以是在设备出厂时确定并存储。且计算校验数据的数据分区和系统启动加载程序区数据时的数据分区完全一致。可选的,校验数据存储于校验数据区,在接收启动指令之后,还包括:在广播网络中根据预设时间间隔循环广播校验数据;相应的,在系统启动完成后,取消在广播网络中根据预设时间间隔循环广播校验数据。本实施例中,在设备接收启动指令时,读取校验数据区的校验数据,并根据预设时间间隔循环播放,示例性的,预设时间间隔可以是1毫秒或者5毫秒。当检测到存在异常数据时,在循环广播的校验数据中确定目标校验数据,其中目标校验数据指本文档来自技高网...
一种系统安全启动的方法、装置、机顶盒及存储介质

【技术保护点】
一种系统安全启动方法,其特征在于,包括:根据启动指令,加载程序区数据,并检测所述程序区数据是否存在异常数据;若存在异常数据,则确定所述异常数据所在的当前磁盘阵列条带的条带信息;于广播网络中循环播放的多个校验数据中确定与所述条带信息相匹配的目标校验数据,所述校验数据为预先根据标准程序区数据确定;根据所述目标校验数据恢复所述异常数据,并加载恢复后的程序区数据。

【技术特征摘要】
1.一种系统安全启动方法,其特征在于,包括:根据启动指令,加载程序区数据,并检测所述程序区数据是否存在异常数据;若存在异常数据,则确定所述异常数据所在的当前磁盘阵列条带的条带信息;于广播网络中循环播放的多个校验数据中确定与所述条带信息相匹配的目标校验数据,所述校验数据为预先根据标准程序区数据确定;根据所述目标校验数据恢复所述异常数据,并加载恢复后的程序区数据。2.根据权利要求1所述的方法,其特征在于,所述校验数据为预先根据标准程序区数据确定,包括:将所述程序区数据划分为数据分区,其中,各数据分区的大小相同;将连续的预设数量的数据分区组成磁盘阵列条带;对每一个磁盘阵列条带中各数据分区的数据依次进行异或处理,确定每一个磁盘阵列条带的校验数据。3.根据权利要求1所述的方法,其特征在于,根据所述目标校验数据恢复所述异常数据,包括:获取所述当前磁盘阵列条带中除异常数据外的正常数据,对所述正常数据和所述目标校验数据进行异或处理,生成恢复数据,并根据所述恢复数据替换所述异常数据。4.根据权利要求1所述的方法,其特征在于,所述校验数据存储于校验数据区,在接收启动指令之后,还包括:在广播网络中根据预设时间间隔循环广播所述校验数据;相应的,在系统启动完成后,取消在广播网络中根据预设时间间隔循环广播所述校验数据。5.根据权利要求1所述的方法,其特征在于,若存在异常数据,则跳跃所述异常数据所在的磁盘阵列条带,继续加载并检测下一磁盘阵列条带的数据。6.一种系统安全启动装置,其特征在于,包括:数据加载模块,用于根据启动指令,加载程序区数据;异常数据检测模块...

【专利技术属性】
技术研发人员:韩之光
申请(专利权)人:深圳市创维软件有限公司
类型:发明
国别省市:广东,44

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

1