CN112068989B - 一种双系统并行恢复出厂设置异常的处理方法及装置 - Google Patents
一种双系统并行恢复出厂设置异常的处理方法及装置 Download PDFInfo
- Publication number
- CN112068989B CN112068989B CN201910498223.8A CN201910498223A CN112068989B CN 112068989 B CN112068989 B CN 112068989B CN 201910498223 A CN201910498223 A CN 201910498223A CN 112068989 B CN112068989 B CN 112068989B
- Authority
- CN
- China
- Prior art keywords
- hardware system
- data
- module
- clearing
- instruction
- 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
- 238000011084 recovery Methods 0.000 title claims abstract description 218
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 230000006854 communication Effects 0.000 claims abstract description 426
- 238000004891 communication Methods 0.000 claims abstract description 426
- 238000000034 method Methods 0.000 claims abstract description 179
- 230000009977 dual effect Effects 0.000 claims abstract description 116
- 230000008569 process Effects 0.000 claims description 56
- 238000012545 processing Methods 0.000 claims description 56
- 230000001360 synchronised effect Effects 0.000 claims description 50
- 238000004140 cleaning Methods 0.000 claims description 33
- 230000001960 triggered effect Effects 0.000 claims description 18
- 230000002159 abnormal effect Effects 0.000 abstract description 28
- 230000007246 mechanism Effects 0.000 abstract description 13
- 230000002035 prolonged effect Effects 0.000 abstract description 13
- 238000009434 installation Methods 0.000 description 182
- 230000006870 function Effects 0.000 description 58
- 238000010586 diagram Methods 0.000 description 50
- 238000012795 verification Methods 0.000 description 34
- 238000003860 storage Methods 0.000 description 23
- 230000003993 interaction Effects 0.000 description 15
- 238000007726 management method Methods 0.000 description 12
- 238000001514 detection method Methods 0.000 description 11
- 230000003287 optical effect Effects 0.000 description 11
- 238000011900 installation process Methods 0.000 description 10
- 238000010926 purge Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000003825 pressing Methods 0.000 description 8
- 230000001976 improved effect Effects 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000008030 elimination Effects 0.000 description 3
- 238000003379 elimination reaction Methods 0.000 description 3
- 230000008093 supporting effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000001483 mobilizing effect Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 150000003071 polychlorinated biphenyls Chemical class 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
- 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/1497—Details of time redundant execution on a single processing unit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种双系统并行恢复出厂设置异常的处理方法及装置,包括:第二硬件系统清除数据模块将开始清除指令发送至第一硬件系统通信模块,以启动第一硬件系统清除数据模块。如果无法接收到第一硬件系统通信模块返回第一硬件系统的启动结果时,采用重试机制进行重试。第一硬件系统清除数据模块在被启动的同时立即对第一硬件系统进行清除数据操作,而第二硬件系统清除数据模块接收到启动结果后,也立即对第二硬件系统进行清除数据操作。本实施例提供的方法及装置,可在恢复出厂设置过程中,第一硬件系统出现异常时,采用重试机制,再次对第一硬件系统进行启动,以保证双系统并行恢复出厂设置的顺利进行,避免延长双系统清除数据的时长。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种双系统并行恢复出厂设置异常的处理方法及装置。
背景技术
人们常常会在终端设备安装各种各样的应用,而这些应用在运行过程中会在软件系统中产生相应的应用数据,久而久之,会致使应用运行出现卡顿现象;且复杂的软件系统使用一段时间后,可能会因为硬件或软件的问题而出现无法正常开机的情况,而恢复出厂设置能够有效地解决上述问题。
恢复出厂设置是指将终端设备恢复到出厂时的默认状态,如默认的开始界面、待机方式、操作快捷键等。现在的Android终端设备(如手机、平板等)大多数为单操作系统,且恢复出厂设置的功能设置在该操作系统上。在单操作系统下,用户可以将终端设备的个性设置恢复到出厂时的默认状态,也就是格式化Data(数据)分区与Cache(缓存)分区,以清除数据。
但是随着用户对应用体验需求越来越高,使得对操作系统的各项性能指标的要求也随之变高,进而在Android终端设备上设置双系统也成为可能。双系统包括第一硬件系统和第二硬件系统,第二硬件系统为主系统,第一硬件系统为从系统,第一硬件系统和第二硬件系统之间可以通过多个不同类型的接口实现连接、通信及供电,如网络、串口。在这种双系统架构下,通常将系统级的应用预置在第二硬件系统上,第一硬件系统上只存放用户级应用(用户下载的应用或预置的供用户使用的娱乐性的应用),因此,作为恢复出厂设置功能的入口应用Setting则在第二硬件系统上,而第一硬件系统中原生的恢复出厂设置选项已被屏蔽。
在进行恢复出厂设置时,第二硬件系统为主动通信方,且由第二硬件系统调动第一硬件系统进行清除数据操作。但是,如果网络和串口出现异常,易导致第一硬件系统和第二硬件系统之间通信异常,使得第二硬件系统无法接收到第一硬件系统返回的信息,进而无法启动第一硬件系统进行清除数据操作。而用户下载的应用、媒体播放文件等都存放在第一硬件系统,如果第一硬件系统长时间不清除数据,易导致第一硬件系统出现异常。
发明内容
本申请提供了一种双系统并行恢复出厂设置异常的处理方法及装置,以解决因通信异常导致第一硬件系统无法清除数据,而影响双系统恢复出厂设置进程的问题。
第一方面,本申请提供了一种双系统并行恢复出厂设置异常的处理方法,包括以下步骤:
根据接收到的恢复出厂设置指令生成开始清除指令;
将所述开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;
在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试;
如果在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;
在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
可选地,还包括:
如果在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,接收第一硬件系统通信模块返回的启动失败指令;
根据所述启动失败指令,获取用户触发的本机按键指令;
根据所述本机按键指令,在所述第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;所述BCB信息用于第一硬件系统和第二硬件系统进入recovery模式进行清除数据;
在recovery模式下,根据所述BCB信息,所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,所述第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
可选地,还包括:
在第一硬件系统和第二硬件系统进入同步模式后,所述第二硬件系统清除数据模块生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果;
如果所述第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:
如果所述第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令;
根据所述等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:
在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;
将所述查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块查询第一硬件系统的清除数据结果;
在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;
如果在重试总时长阈值内,接收到清除数据结果,重启第一硬件系统和第二硬件系统;
如果在重试总时长阈值内,无法接收到清除数据结果,重启第二硬件系统。
第二方面,本申请还提供了一种双系统并行恢复出厂设置异常的处理装置,包括:
开始清除指令生成模块,用于根据接收到的恢复出厂设置指令生成开始清除指令;
开始清除指令发送模块,用于将所述开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;
重试模块,用于在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试;
启动结果接收模块,用于在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;
重启模块,用于在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
可选地,还包括:
启动失败指令接收模块,用于在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,接收第一硬件系统通信模块返回的启动失败指令;
本机按键指令获取模块,用于根据所述启动失败指令,获取用户触发的本机按键指令;
BCB信息写入模块,用于根据所述本机按键指令,在所述第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;所述BCB信息用于第一硬件系统和第二硬件系统进入recovery模式进行清除数据;
清除数据模块,用于在recovery模式下,根据所述BCB信息,所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,所述第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
可选地,还包括:
查询指令生成模块,用于在第一硬件系统和第二硬件系统进入同步模式后,生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果;
重启模块,还用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:
等待指令生成模块,用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令。
重启模块,还用于根据所述等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:
查询指令生成模块,还用于在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;
查询指令发送模块,用于将所述查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块查询第一硬件系统的清除数据结果;
重试模块,还用于在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;
重启模块,还用于在重试总时长阈值内,接收到清除数据结果的情况下,重启第一硬件系统和第二硬件系统;以及,在重试总时长阈值内,无法接收到清除数据结果的情况下,重启第二硬件系统。
与现有技术相比,本申请示例性的实施方式中所提出的技术方案的有益技术效果包括:第二硬件系统清除数据模块根据接收到的恢复出厂设置指令生成开始清除指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作。在第二硬件系统清除数据模块无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果时,采用的异常处理逻辑为重试机制,在重试次数阈值内,第二硬件系统清除数据能够收到第一硬件系统通信模块返回第一硬件系统的启动结果,那么第一硬件系统清除数据模块在被启动的同时立即对第一硬件系统进行清除数据操作,而第二硬件系统清除数据模块接收到启动结果后,也立即对第二硬件系统进行清除数据操作。本实施例提供的方法及装置,可在恢复出厂设置过程中,第一硬件系统出现异常时,采用重试机制,再次对第一硬件系统进行启动,以保证双系统并行恢复出厂设置的顺利进行,避免延长双系统清除数据的时长。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图;
图2中示例性示出了根据实施例中控制装置的硬件配置框图;
图3中示例性示出了根据实施例中显示设备中硬件系统的硬件配置框图;
图4中示例性示出了根据图3显示设备的硬件架构框图;
图5中示例性示出了根据实施例中显示设备的功能配置示意图;
图6a中示例性示出了根据实施例中显示设备中软件系统的配置示意图;
图6b中示例性示出了根据实施例中显示设备中应用程序的配置示意图;
图7中示例性示出了根据实施例中显示设备中用户界面的示意图;
图8中示例性示出了根据实施例中双系统的通信方式示意图;
图9中示例性示出了根据实施例中系统N和系统A之间同时升级的流程图;
图10中示例性示出了根据实施例中双系统OTA并行升级方法的流程图;
图11中示例性示出了根据实施例中双系统OTA并行升级方法的总数据流图;
图12中示例性示出了根据另一实施例中双系统OTA并行升级方法的流程图;
图13中示例性示出了根据实施例中校验阶段的异常处理逻辑的数据流图;
图14中示例性示出了根据又一实施例中双系统OTA并行升级方法的流程图;
图15中示例性示出了根据实施例中双系统并行进入升级阶段的方法流程图;
图16中示例性示出了根据实施例中双系统并行进入重启阶段的方法流程图;
图17中示例性示出了根据实施例中安装阶段的失败处理逻辑的方法流程图;
图18中示例性示出了根据实施例中进度条显示的数据流图;
图19中示例性示出了根据实施例中进度条显示的方法流程图;
图20中示例性示出了根据实施例中双系统OTA并行升级系统的结构框图;
图21中示例性示出了根据实施例中恢复出厂设置触发流程图;
图22中示例性示出了根据实施例中双系统并行恢复出厂设置的系统的结构框图;
图23中示例性示出了根据实施例中双系统并行恢复出厂设置的方法的流程图;
图24中示例性示出了根据实施例中双系统并行恢复出厂设置的方法的时序流程图;
图25中示例性示出了根据另一实施例中双系统并行恢复出厂设置的方法的流程图;
图26中示例性示出了根据实施例中双系统并行恢复出厂设置异常的处理方法的流程图;
图27中示例性示出了根据另一实施例中双系统并行恢复出厂设置异常的处理方法的流程图;
图28中示例性示出了根据又一实施例中双系统并行恢复出厂设置异常的处理方法的流程图;
图29中示例性示出了根据实施例中双系统并行恢复出厂设置异常的处理装置的结构框图;
图30中示例性示出了根据实施例中双系统之间的通信交互图;
图31中示例性示出了根据实施例中双系统同步进入恢复模式的方法的流程图;
图32中示例性示出了根据实施例中双系统同步进入恢复模式的方法的数据流图;
图33中示例性示出了根据实施例中双系统同步进入恢复模式的一种实施方式的方法流程图;
图34中示例性示出了根据实施例中双系统同步进入恢复模式的另一种实施方式的方法流程图;
图35中示例性示出了根据实施例中双系统同步进入恢复模式的装置的结构框图。
具体实施方式
为使本申请示例性实施例的目的、技术方案和优点更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
为便于用户使用,显示设备上通常会设置各种外部装置接口,以便于连接不同的外设设备或线缆以实现相应的功能。而在显示设备的接口上连接有高清晰度的摄像头时,如果显示设备的硬件系统没有接收源码的高像素摄像头的硬件接口,那么就会导致无法将摄像头接收到的数据呈现到显示设备的显示屏上。
并且,受制于硬件结构,传统显示设备的硬件系统仅支持一路硬解码资源,且通常最大仅能支持4K分辨率的视频解码,因此当要实现边观看网络电视边进行视频聊天时,为了不降低网络视频画面清晰度,就需要使用硬解码资源(通常是硬件系统中的GPU)对网络视频进行解码,而在此情况下,只能采取由硬件系统中的通用处理器(例如CPU)对视频进行软解码的方式处理视频聊天画面。
采用软解码处理视频聊天画面,会大大增加CPU的数据处理负担,当CPU的数据处理负担过重时,可能会出现画面卡顿或者不流畅的问题。进一步的,受制于CPU的数据处理能力,当采用CPU软解码处理视频聊天画面时,通常无法实现多路视频通话,当用户想要再同一聊天场景同时与多个其他用户进行视频聊天时,会出现接入受阻的情况。
基于上述各方面的考虑,为克服上述缺陷,本申请公开了一种双硬件系统架构,以实现多路视频聊天数据(至少一路本地视频)。
下面首先结合附图对本申请所涉及的概念进行说明。在此需要指出的是,以下对各个概念的说明,仅为了使本申请的内容更加容易理解,并不表示对本申请保护范围的限定。
本申请各实施例中使用的术语“模块”,可以是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
本申请各实施例中使用的术语“遥控器”,是指电子设备(如本申请中公开的显示设备)的一个组件,该组件通常可在较短的距离范围内无线控制电子设备。该组件一般可以使用红外线和/或射频(RF)信号和/或蓝牙与电子设备连接,也可以包括WiFi、无线USB、蓝牙、动作传感器等功能模块。例如:手持式触摸遥控器,是以触摸屏中用户界面取代一般遥控装置中的大部分物理内置硬键。
本申请各实施例中使用的术语“手势”,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。
本申请各实施例中使用的术语“硬件系统”,可以是指由集成电路(IntegratedCircuit,IC)、印刷电路板(Printed circuit board,PCB)等机械、光、电、磁器件构成的具有计算、控制、存储、输入和输出功能的实体部件。在本申请各个实施例中,硬件系统通常也会被称为主板(motherboard)或芯片。
图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过控制装置100来操作显示设备200。
其中,控制装置100可以是遥控器100A,其可与显示设备200之间通过红外协议通信、蓝牙协议通信、紫蜂(ZigBee)协议通信或其他短距离通信方式进行通信,用于通过无线或其他有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过遥控器上音量加减键、频道控制键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键等输入相应控制指令,来实现控制显示设备200的功能。
控制装置100也可以是智能设备,如移动终端100B、平板电脑、计算机、笔记本电脑等,其可以通过本地网(LAN,Local Area Network)、广域网(WAN,Wide Area Network)、无线局域网((WLAN,Wireless Local Area Network)或其他网络与显示设备200之间通信,并通过与显示设备200相应的应用程序实现对显示设备200的控制。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序可以在与智能设备关联的屏幕上通过直观的用户界面(UI,User Interface)为用户提供各种控制。
示例的,移动终端100B与显示设备200均可安装软件应用,从而可通过网络通信协议实现二者之间的连接通信,进而实现一对一控制操作的和数据通信的目的。如:可以使移动终端100B与显示设备200建立控制指令协议,将遥控控制键盘同步到移动终端100B上,通过控制移动终端100B上用户界面,实现控制显示设备200的功能;也可以将移动终端100B上显示的音视频内容传输到显示设备200上,实现同步显示功能。
如图1所示,显示设备200还可与服务器300通过多种通信方式进行数据通信。在本申请各个实施例中,可允许显示设备200通过局域网、无线局域网或其他网络与服务器300进行通信连接。服务器300可以向显示设备200提供各种内容和互动。
示例的,显示设备200通过发送和接收信息,以及电子节目指南(EPG,ElectronicProgram Guide)互动,接收软件程序更新,或访问远程储存的数字媒体库。服务器300可以是一组,也可以是多组,可以是一类或多类服务器。通过服务器300提供视频点播和广告服务等其他网络服务内容。
显示设备200,可以是液晶显示器、OLED(Organic Light Emitting Diode)显示器、投影显示设备、智能电视。具体显示设备类型,尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,显示设备200可以根据需要做性能和配置上的一些改变。
显示设备200除了提供广播接收电视功能之外,还可以附加提供计算机支持功能的智能网络电视功能。示例的包括,网络电视、智能电视、互联网协议电视(IPTV)等。
如图1所示,显示设备上可以连接或设置有摄像头,用于将摄像头拍摄到的画面呈现在本显示设备或其他显示设备的显示界面上,以实现用户之间的交互聊天。具体的,摄像头拍摄到的画面可在显示设备上全屏显示、半屏显示、或者显示任意可选区域。
作为一种可选的连接方式,摄像头通过连接板与显示器后壳连接,固定安装在显示器后壳的上侧中部,作为可安装的方式,可以固定安装在显示器后壳的任意位置,能保证其图像采集区域不被后壳遮挡即可,例如,图像采集区域与显示设备的显示朝向相同。
作为另一种可选的连接方式,摄像头通过连接板或者其他可想到的连接器可升降的与显示后壳连接,连接器上安装有升降马达,当用户要使用摄像头或者有应用程序要使用摄像头时,再升出显示器之上,当不需要使用摄像头时,其可内嵌到后壳之后,以达到保护摄像头免受损坏。
作为一种实施例,本申请所采用的摄像头可以为1600万像素,以达到超高清显示目的。在实际使用中,也可采用比1600万像素更高或更低的摄像头。
当显示设备上安装有摄像头以后,显示设备不同应用场景所显示的内容可得到多种不同方式的融合,从而达到传统显示设备无法实现的功能。
示例性的,用户可以在边观看视频节目的同时,与至少一位其他用户进行视频聊天。视频节目的呈现可作为背景画面,视频聊天的窗口显示在背景画面之上。形象的,可以称该功能为“边看边聊”。
可选的,在“边看边聊”的场景中,在观看直播视频或网络视频的同时,跨终端的进行至少一路的视频聊天。
另一示例中,用户可以在边进入教育应用学习的同时,与至少一位其他用户进行视频聊天。例如,学生在学习教育应用程序中内容的同时,可实现与老师的远程互动。形象的,可以称该功能为“边学边聊”。
另一示例中,用户在玩纸牌游戏时,与进入游戏的玩家进行视频聊天。例如,玩家在进入游戏应用参与游戏时,可实现与其他玩家的远程互动。形象的,可以称该功能为“边看边玩”。
可选的,游戏场景与视频画面进行融合,将视频画面中人像进行抠图,显示在游戏画面中,提升用户体验。
可选的,在体感类游戏中(如打球类、拳击类、跑步类、跳舞类等),通过摄像头获取人体姿势和动作,肢体检测和追踪、人体骨骼关键点数据的检测,再与游戏中动画进行融合,实现如体育、舞蹈等场景的游戏。
另一示例中,用户可以在K歌应用中,与至少一位其他用户进行视频和语音的交互。形象的,可以称该功能为“边看边唱”。优选的,当至少一位用户在聊天场景进入该应用时,可多个用户共同完成一首歌的录制。
另一个示例中,用户可在本地打开摄像头获取图片和视频,形象的,可以称该功能为“照镜子”。
在另一些示例中,还可以再增加更多功能或减少上述功能。本申请对该显示设备的功能不作具体限定。
图2中示例性示出了根据实施例中控制装置100的硬件配置框图。如图2所示,控制装置100包括控制器110、通信器130、用户输入/输出接口140、存储器190、供电电源180。
控制装置100被配置为可控制所述显示设备200,以及可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起到用户与显示设备200之间交互中介作用。如:用户通过操作控制装置100上频道加减键,显示设备200响应频道加减的操作。
在一些实施例中,控制装置100可是一种智能设备。如:控制装置100可根据用户需求安装控制显示设备200的各种应用。
在一些实施例中,如图1所示,移动终端100B或其他智能电子设备,可在安装操控显示设备200的应用之后,起到控制装置100类似功能。如:用户可以通过安装应用,在移动终端100B或其他智能电子设备上可提供的图形用户界面的各种功能键或虚拟按钮,以实现控制装置100实体按键的功能。
控制器110包括处理器112、RAM113和ROM114、通信接口以及通信总线。控制器110用于控制控制装置100的运行和操作,以及内部各部件之间通信协作以及外部和内部的数据处理功能。
通信器130在控制器110的控制下,实现与显示设备200之间控制信号和数据信号的通信。如:将接收到的用户输入信号发送至显示设备200上。通信器130可包括WIFI模块131、蓝牙模块132、NFC模块133等通信模块中至少一种。
用户输入/输出接口140,其中,输入接口包括麦克风141、触摸板142、传感器143、按键144等输入接口中至少一者。如:用户可以通过语音、触摸、手势、按压等动作实现用户指令输入功能,输入接口通过将接收的模拟信号转换为数字信号,以及数字信号转换为相应指令信号,发送至显示设备200。
输出接口包括将接收的用户指令发送至显示设备200的接口。在一些实施例中,可以是红外接口,也可以是射频接口。如:红外信号接口时,需要将用户输入指令按照红外控制协议转化为红外控制信号,经红外发送模块进行发送至显示设备200。再如:射频信号接口时,需将用户输入指令转化为数字信号,然后按照射频控制信号调制协议进行调制后,由射频发送端子发送至显示设备200。
在一些实施例中,控制装置100包括通信器130和输出接口中至少一者。控制装置100中配置通信器130,如:WIFI、蓝牙、NFC等模块,可将用户输入指令通过WIFI协议、或蓝牙协议、或NFC协议编码,发送至显示设备200。
存储器190,用于在控制器110的控制下存储驱动和控制控制装置100的各种运行程序、数据和应用。存储器190,可以存储用户输入的各类控制信号指令。
供电电源180,用于在控制器110的控制下为控制装置100各元件提供运行电力支持。可以电池及相关控制电路。
图3中示例性示出了根据实施例中显示设备200中硬件系统的硬件配置框图。
在采用双硬件系统架构时,硬件系统的结构关系可以图3所示。为便于表述以下将双硬件系统架构中的一个硬件系统称为第一硬件系统或A系统、A芯片,并将另一个硬件系统称为第二硬件系统或N系统、N芯片。A芯片包含A芯片的控制器及通过各类接口与A芯片的控制器相连的各类模块,N芯片则包含N芯片的控制器及通过各类接口与N芯片的控制器相连的各类模块。A芯片及N芯片中可以各自安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。
如图3所示,A芯片与N芯片之间可以通过多个不同类型的接口实现连接、通信及供电。A芯片与N芯片之间接口的接口类型可以包括通用输入输出接口(General-purposeinput/output,GPIO)、USB接口、HDMI接口、UART接口等。A芯片与N芯片之间可以使用这些接口中的一个或多个进行通信或电力传输。例如图3所示,在双硬件系统架构下,可以由外接的电源(power)为N芯片供电,而A芯片则可以不由外接电源,而由N芯片供电。
除用于与N芯片进行连接的接口之外,A芯片还可以包含用于连接其他设备或组件的接口,例如图3中所示的用于连接摄像头(Camera)的MIPI接口,蓝牙接口等。
类似的,除用于与N芯片进行连接的接口之外,N芯片还可以包含用于连接显示屏TCON(Timer Control Register)的VBY接口,用于连接功率放大器(Amplifier,AMP)及扬声器(Speaker)的i2S接口;以及IR/Key接口,USB接口,Wifi接口,蓝牙接口,HDMI接口,Tuner接口等。
下面结合图4对本申请双硬件系统架构进行进一步的说明。需要说明的是图4仅仅是对本申请双硬件系统架构的一个示例性说明,并不表示对本申请的限定。在实际应用中,两个硬件系统均可根据需要包含更多或更少的硬件或接口。
图4中示例性示出了根据图3显示设备200的硬件架构框图。如图4所示,显示设备200的硬件系统可以包括A芯片和N芯片,以及通过各类接口与A芯片或N芯片相连接的模块。
N芯片可以包括调谐解调器220、通信器230、外部装置接口250、控制器210、存储器290、用户输入接口、视频处理器260-1、音频处理器260-2、显示器280、音频输出接口270、供电电源。在其他实施例中N芯片也可以包括更多或更少的模块。
其中,调谐解调器220,用于对通过有线或无线方式接收广播电视信号,进行放大、混频和谐振等调制解调处理,从而从多个无线或有线广播电视信号中解调出用户所选择电视频道的频率中所携带的音视频信号,以及附加信息(例如EPG数据信号)。根据电视信号广播制式不同,调谐解调器220的信号途径可以有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播等;以及根据调制类型不同,所述信号的调整方式可以数字调制方式,也可以模拟调制方式;以及根据接收电视信号种类不同,调谐解调器220可以解调模拟信号和/或数字信号。
调谐解调器220,还用于根据用户选择,以及由控制器210控制,响应用户选择的电视频道频率以及该频率所携带的电视信号。
在其他一些示例性实施例中,调谐解调器220也可在外置设备中,如外置机顶盒等。这样,机顶盒通过调制解调后输出电视音视频信号,经过外部装置接口250输入至显示设备200中。
通信器230是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器230可以包括WIFI模块231,蓝牙通信协议模块232,有线以太网通信协议模块233,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
显示设备200可以通过通信器230与外部控制设备或内容提供设备之间建立控制信号和数据信号的连接。例如,通信器可根据控制器的控制接收遥控器100A的控制信号。
外部装置接口250,是提供N芯片控制器210和A芯片及外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接,可接收外部设备的诸如视频信号(例如运动图像)、音频信号(例如音乐)、附加信息(例如EPG)等数据。
其中,外部装置接口250可以包括:高清多媒体接口(HDMI)端子251、复合视频消隐同步(CVBS)端子,如AV接口252、模拟或数字分量端子353、通用串行总线(USB)端子254、红绿蓝(RGB)端子(图中未示出)等任一个或多个。本申请不对外部装置接口的数量和类型进行限制。
控制器210,通过运行存储在存储器290上的各种软件控制程序(如操作系统和/或各种应用程序),来控制显示设备200的工作和响应用户的操作。
如图4所示,控制器210包括只读存储器RAM214、随机存取存储器ROM213、图形处理器216、CPU处理器212、通信接口218、以及通信总线。其中,RAM214和ROM213以及图形处理器216、CPU处理器212、通信接口218通过总线相连接。
ROM213,用于存储各种系统启动的指令。如在收到开机信号时,显示设备200电源开始启动,CPU处理器212运行ROM中系统启动指令,将存储在存储器290的操作系统拷贝至RAM214中,以开始运行启动操作系统。当操作系统启动完成后,CPU处理器212再将存储器290中各种应用程序拷贝至RAM214中,然后,开始运行启动各种应用程序。
图形处理器216,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
CPU处理器212,用于执行存储在存储器290中操作系统和应用程序指令。以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
在一些示例性实施例中,CPU处理器212,可以包括多个处理器。所述多个处理器中可包括一个主处理器以及多个或一个子处理器。主处理器,用于在预加电模式中执行显示设备200一些操作,和/或在正常模式下显示画面的操作。多个或一个子处理器,用于执行在待机模式等状态下的一种操作。
通信接口,可包括第一接口218-1到第n接口218-n。这些接口可以是经由网络被连接到外部设备的网络接口。
控制器210可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
其中,所述对象可以是可选对象中的任何一个,例如超链接或图标。与所选择的对象有关操作,例如:显示连接到超链接页面、文档、图像等操作,或者执行与图标相对应程序的操作。用于选择UI对象用户命令,可以是通过连接到显示设备200的各种输入装置(例如,鼠标、键盘、触摸板等)输入命令或者与由用户说出语音相对应的语音命令。
存储器290,包括存储用于驱动和控制显示设备200的各种软件模块。如:存储器290中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。
其中,基础模块是用于显示设备200中各个硬件之间信号通信、并向上层模块发送处理和控制信号的底层软件模块。检测模块是用于从各种传感器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块。
例如:语音识别模块中包括语音解析模块和语音指令数据库模块。显示控制模块是用于控制显示器280进行显示图像内容的模块,可以用于播放多媒体图像内容和UI界面等信息。通信模块,是用于与外部设备之间进行控制和数据通信的模块。浏览器模块,是用于执行浏览服务器之间数据通信的模块。服务模块,是用于提供各种服务以及各类应用程序在内的模块。
同时,存储器290还用于存储接收外部数据和用户数据、各种用户界面中各个项目的图像以及焦点对象的视觉效果图等。
用户输入接口,用于将用户的输入信号发送给控制器210,或者,将从控制器输出的信号传送给用户。示例性的,控制装置(例如移动终端或遥控器)可将用户输入的诸如电源开关信号、频道选择信号、音量调节信号等输入信号发送至用户输入接口,再由用户输入接口转送至控制器;或者,控制装置可接收经控制器处理从用户输入接口输出的音频、视频或数据等输出信号,并且显示接收的输出信号或将接收的输出信号输出为音频或振动形式。
在一些实施例中,用户可在显示器280上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
视频处理器260-1,用于接收视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等视频数据处理,可得到直接在显示器280上显示或播放的视频信号。
示例的,视频处理器260-1,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。
其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入MPEG-2,则解复用模块进行解复用成视频信号和音频信号等。
视频解码模块,用于对解复用后的视频信号进行处理,包括解码和缩放处理等。
图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的GUI信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。
帧率转换模块,用于对输入视频的帧率进行转换,如将输入的24Hz、25Hz、30Hz、60Hz视频的帧率转换为60Hz、120Hz或240Hz的帧率,其中,输入帧率可以与源视频流有关,输出帧率可以与显示器的更新率有关。输入有通常的格式采用如插帧方式实现。
显示格式化模块,用于将帧率转换模块输出的信号,改变为符合诸如显示器显示格式的信号,如将帧率转换模块输出的信号进行格式转换以输出RGB数据信号。
显示器280,用于接收源自视频处理器260-1输入的图像信号,进行显示视频内容和图像以及菜单操控界面。显示器280包括用于呈现画面的显示器组件以及驱动图像显示的驱动组件。显示视频内容,可以来自调谐解调器220接收的广播信号中的视频,也可以来自通信器或外部设备接口输入的视频内容。显示器220,同时显示显示设备200中产生且用于控制显示设备200的用户操控界面UI。
以及,根据显示器280类型不同,还包括用于驱动显示的驱动组件。或者,倘若显示器280为一种投影显示器,还可以包括一种投影装置和投影屏幕。
音频处理器260-2,用于接收音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等音频数据处理,得到可以在扬声器272中播放的音频信号。
音频输出接口270,用于在控制器210的控制下接收音频处理器260-2输出的音频信号,音频输出接口可包括扬声器272,或输出至外接设备的发生装置的外接音响输出端子274,如:外接音响端子或耳机输出端子等。
在其他一些示例性实施例中,视频处理器260-1可以包括一个或多个芯片组成。音频处理器260-2,也可以包括一个或多个芯片组成。
以及,在其他一些示例性实施例中,视频处理器260-1和音频处理器260-2,可以为单独的芯片,也可以与控制器210一起集成在一个或多个芯片中。
供电电源,用于在控制器210控制下,将外部电源输入的电力为显示设备200提供电源供电支持。供电电源可以包括安装显示设备200内部的内置电源电路,也可以是安装在显示设备200外部的电源,如在显示设备200中提供外接电源的电源接口。
与N芯片相类似,如图4所示,A芯片可以包括控制器310、通信器330、检测器340、存储器390。在某些实施例中还可以包括用户输入接口、视频处理器、音频处理器、显示器、音频输出接口。在某些实施例中,也可以存在独立为A芯片供电的供电电源。
通信器330是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器330可以包括WIFI模块331,蓝牙通信协议模块332,有线以太网通信协议模块333,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
A芯片的通信器330和N芯片的通信器230也有相互交互。例如,N芯片的WiFi模块231用于连接外部网络,与外部服务器等产生网络通信。A芯片的WiFi模块331用于连接至N芯片的WiFi模块231,而不与外界网络等产生直接连接。因此,对于用户而言,一个如上述实施例中的显示设备至对外显示一个WiFi账号。
检测器340,是显示设备A芯片用于采集外部环境或与外部交互的信号的组件。检测器340可以包括光接收器342,用于采集环境光线强度的传感器,可以通过采集环境光来自适应显示参数变化等;还可以包括图像采集器341,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或与用户交互手势,可以自适应变化显示参数,也可以识别用户手势,以实现与用户之间互动的功能。
外部装置接口350,提供控制器310与N芯片或外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接。
控制器310,通过运行存储在存储器390上的各种软件控制程序(如用安装的第三方应用等),以及与N芯片的交互,来控制显示设备200的工作和响应用户的操作。
如图4所示,控制器310包括只读存储器ROM313、随机存取存储器RAM314、图形处理器316、CPU处理器312、通信接口318、以及通信总线。其中,ROM313和RAM314以及图形处理器316、CPU处理器312、通信接口318通过总线相连接。
ROM313,用于存储各种系统启动的指令。CPU处理器312运行ROM中系统启动指令,将存储在存储器390的操作系统拷贝至RAM314中,以开始运行启动操作系统。当操作系统启动完成后,CPU处理器312再将存储器390中各种应用程序拷贝至RAM314中,然后,开始运行启动各种应用程序。
CPU处理器312,用于执行存储在存储器390中操作系统和应用程序指令,和与N芯片进行通信、信号、数据、指令等传输与交互,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
通信接口,可包括第一接口318-1到第n接口318-n。这些接口可以是经由网络被连接到外部设备的网络接口,也可以是经由网络被连接到N芯片的网络接口。
控制器310可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
图形处理器316,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
A芯片的图形处理器316与N芯片的图形处理器216均能产生各种图形对象。区别性的,若应用1安装于A芯片,应用2安装在N芯片,当用户在应用1的界面,且在应用1内进行用户输入的指令时,由A芯片图形处理器316产生图形对象。当用户在应用2的界面,且在应用2内进行用户输入的指令时,由N芯片的图形处理器216产生图形对象。
图5中示例性示出了根据实施例中显示设备的功能配置示意图。
如图5所示,A芯片的存储器390和N芯片的存储器290分别用于存储操作系统、应用程序、内容和用户数据等,在A芯片的控制器310和N芯片的控制器210的控制下执行驱动显示设备200的系统运行以及响应用户的各种操作。A芯片的存储器390和N芯片的存储器290可以包括易失性和/或非易失性存储器。
对于N芯片,存储器290,具体用于存储驱动显示设备200中控制器210的运行程序,以及存储显示设备200内置各种应用程序,以及用户从外部设备下载的各种应用程序、以及与应用程序相关的各种图形用户界面,以及与图形用户界面相关的各种对象,用户数据信息,以及各种支持应用程序的内部数据。存储器290用于存储操作系统(OS)内核、中间件和应用等系统软件,以及存储输入的视频数据和音频数据、及其他用户数据。
存储器290,具体用于存储视频处理器260-1和音频处理器260-2、显示器280、通信接口230、调谐解调器220、输入/输出接口等驱动程序和相关数据。
在一些实施例中,存储器290可以存储软件和/或程序,用于表示操作系统(OS)的软件程序包括,例如:内核、中间件、应用编程接口(API)和/或应用程序。示例性的,内核可控制或管理系统资源,或其它程序所实施的功能(如所述中间件、API或应用程序),以及内核可以提供接口,以允许中间件和API,或应用访问控制器,以实现控制或管理系统资源。
示例的,存储器290,包括广播接收模块2901、频道控制模块2902、音量控制模块2903、图像控制模块2904、显示控制模块2905、音频控制模块2906、外部指令识别模块2907、通信控制模块2908、电力控制模块2910、操作系统2911、以及其他应用程序2912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:广播电视信号接收解调功能、电视频道选择控制功能、音量选择控制功能、图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
存储器390,包括存储用于驱动和控制显示设备200的各种软件模块。如:存储器390中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。由于存储器390与存储器290的功能比较相似,相关之处参见存储器290即可,在此就不再赘述。
示例的,存储器390,包括图像控制模块3904、音频控制模块2906、外部指令识别模块3907、通信控制模块3908、光接收模块3909、操作系统3911、以及其他应用程序3912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
区别性的,N芯片的外部指令识别模块2907和A芯片的外部指令识别模块3907可识别不同的指令。
示例性的,由于摄像头等图像接收设备与A芯片连接,因此,A芯片的外部指令识别模块3907可包括图形识别模块3907-1,图形识别模块3907-1内存储有图形数据库,摄像头接收到外界的图形指令时,与图形数据库中的指令进行对应关系,以对显示设备作出指令控制。而由于语音接收设备以及遥控器与N芯片连接,因此,N芯片的外部指令识别模块2907可包括语音识别模块2907-2,语音识别模块2907-2内存储有语音数据库,语音接收设备等接收到外界的语音指令或时,与语音数据库中的指令进行对应关系,以对显示设备作出指令控制。同样的,遥控器等控制装置100与N芯片连接,由按键指令识别模块与控制装置100进行指令交互。
图6a中示例性示出了根据实施例中显示设备200中软件系统的配置框图。
对N芯片,如图6a中所示,操作系统2911,包括用于处理各种基础系统服务和用于实施硬件相关任务的执行操作软件,充当应用程序和硬件组件之间完成数据处理的媒介。
一些实施例中,部分操作系统内核可以包含一系列软件,用以管理显示设备硬件资源,并为其他程序或软件代码提供服务。
其他一些实施例中,部分操作系统内核可包含一个或多个设备驱动器,设备驱动器可以是操作系统中的一组软件代码,帮助操作或控制显示设备关联的设备或硬件。驱动器可以包含操作视频、音频和/或其他多媒体组件的代码。示例的,包括显示器、摄像头、Flash、WiFi和音频驱动器。
其中,可访问性模块2911-1,用于修改或访问应用程序,以实现应用程序的可访问性和对其显示内容的可操作性。
通信模块2911-2,用于经由相关通信接口和通信网络与其他外设的连接。
用户界面模块2911-3,用于提供显示用户界面的对象,以供各应用程序访问,可实现用户可操作性。
控制应用程序2911-4,用于控制进程管理,包括运行时间应用程序等。
事件传输系统2914,可在操作系统2911内或应用程序2912中实现。一些实施例中,一方面在在操作系统2911内实现,同时在应用程序2912中实现,用于监听各种用户输入事件,将根据各种事件指代响应各类事件或子事件的识别结果,而实施一组或多组预定义的操作的处理程序。
其中,事件监听模块2914-1,用于监听用户输入接口输入事件或子事件。
事件识别模块2914-2,用于对各种用户输入接口输入各类事件的定义,识别出各种事件或子事件,且将其传输给处理用以执行其相应一组或多组的处理程序。
其中,事件或子事件,是指显示设备200中一个或多个传感器检测的输入,以及外界控制设备(如控制装置100等)的输入。如:语音输入各种子事件,手势识别的手势输入子事件,以及控制装置的遥控按键指令输入的子事件等。示例的,遥控器中一个或多个子事件包括多种形式,包括但不限于按键按上/下/左右/、确定键、按键按住等中一个或组合。以及非实体按键的操作,如移动、按住、释放等操作。
界面布局管理模块2913,直接或间接接收来自于事件传输系统2914监听到各用户输入事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
由于A芯片的操作系统3911与N芯片的操作系统2911的功能比较相似,相关之处参见操作系统2911即可,在此就不再赘述。
图6b中示例性示出了根据实施例中显示设备中应用程序的配置示意图;如图6b中所示,显示设备的应用程序层包含可在显示设备200执行的各种应用程序。
N芯片的应用程序层2912可包含但不限于一个或多个应用程序,如:视频点播应用程序、应用程序中心、游戏应用等。A芯片的应用程序层3912可包含但不限于一个或多个应用程序,如:直播电视应用程序、媒体中心应用程序等。需要说明的是,A芯片和N芯片上分别包含什么应用程序是根据操作系统和其他设计确定的,本发明无需对A芯片和N芯片上所包含的应用程序做具体的限定和划分。
直播电视应用程序,可以通过不同的信号源提供直播电视。例如,直播电视应用程可以使用来自有线电视、无线广播、卫星服务或其他类型的直播电视服务的输入提供电视信号。以及,直播电视应用程序可在显示设备200上显示直播电视信号的视频。
视频点播应用程序,可以提供来自不同存储源的视频。不同于直播电视应用程序,视频点播提供来自某些存储源的视频显示。例如,视频点播可以来自云存储的服务器端、来自包含已存视频节目的本地硬盘储存器。
媒体中心应用程序,可以提供各种多媒体内容播放的应用程序。例如,媒体中心,可以为不同于直播电视或视频点播,用户可通过媒体中心应用程序访问各种图像或音频所提供服务。
应用程序中心,可以提供储存各种应用程序。应用程序可以是一种游戏、应用程序,或某些和计算机系统或其他设备相关但可以在显示设备中运行的其他应用程序。应用程序中心可从不同来源获得这些应用程序,将它们储存在本地储存器中,然后在显示设备200上可运行。
图7中示例性示出了根据实施例中显示设备200中用户界面的示意图。如图7所示,用户界面包括多个视图显示区,示例的,第一视图显示区201和播放画面202,其中,播放画面包括布局一个或多个不同项目。以及用户界面中还包括指示项目被选择的选择器,可通过用户输入而移动选择器的位置,以改变选择不同的项目。
需要说明的是,多个视图显示区可以呈现不同层级的显示画面。如,第一视图显示区可呈现视频聊天项目内容,第二视图显示区可呈现应用层项目内容(如,网页视频、VOD展示、应用程序画面等)。
可选的,不同视图显示区的呈现存在优先级区别,优先级不同的视图显示区之间,视图显示区的显示优先级不同。如,系统层的优先级高于应用层的优先级,当用户在应用层使用获取选择器和画面切换时,不遮挡系统层的视图显示区的画面展示;以及,根据用户的选择使应用层的视图显示区的大小和位置发生变化时,系统层的视图显示区的大小和位置不受影响。
也可以呈现相同层级的显示画面,此时,选择器可以在第一视图显示区和第二视图显示区之间做切换,以及当第一视图显示区的大小和位置发生变化时,第二视图显示区的大小和位置可随及发生改变。
由于A芯片及N芯片中可能分别安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。例如,A芯片和N芯片均可以独立安装有安卓(Android)及各类APP,使得每个芯片均可以实现一定的功能,并且使A芯片和N芯片协同实现某项功能。由于随着用户使用需求的不断变化,显示设备内置的系统需要不断升级来满足用户的需求。
在对具有双系统架构的显示设备进行系统升级时,现有的方法通常采用串行升级方式,即在一个系统升级完成后再进行另一个系统的升级,升级时长是单系统的双倍,使得双系统的升级效率较低。且如果出现一个系统升级成功,而另一个系统升级失败,会导致两个系统的版本不一致,影响显示设备的正常运行。因此,本发明实施例提供一种双系统OTA并行升级方法,将两个系统采用并行升级的方式,在对一个系统进行升级的同时另一个系统也进行升级,双系统同时进入升级模式,以使升级两个系统的时长与单系统相同,提高升级效率。且如果出现升级异常,本实施例还提供一种失败处理逻辑,以恢复出现异常的系统的升级过程。
本实施例中提出的双系统,包括第一硬件系统(系统A)和第二硬件系统(系统N)。第二硬件系统(系统N)为主系统,用于接收升级指令,如采用U盘升级时,U盘需接入第二硬件系统(系统N)中;第一硬件系统(系统A)为辅助系统,不具有USB接口。第一硬件系统(系统A)和第二硬件系统(系统N)之间通过网线、串口、HDMI和USB线连接。
在对双系统进行并行升级时,通常采用U盘升级和Recovery升级两种模式。为使两个系统同时进入升级模式,在U盘升级模式下,第二硬件系统触发升级,且在第一硬件系统启动时向第一硬件系统写入升级标志,使得在重启后,第一硬件系统和第二硬件系统均同时进入到检测升级包的程序,而不是进入正常启动流程。在Recovery升级模式下,与U盘升级模式的区别之处在于,重启之前,第一硬件系统和第二硬件系统同时写入升级标志。
为减少双系统升级的花费时长,双系统在同时进入升级模式后,还需要同时执行升级流程,因此,需要两个系统之间进行实时通信。图8中示例性示出了根据实施例中双系统的通信方式示意图;如图8所示,双系统之间可使用直连的物理通路来通信。在U盘升级模式下:由于网络不通,此时,系统N和系统A的通信通路选取串口。在Recovery升级模式下:网络可能正常建立,此时,系统N和系统A的通信通路主选网络,备选串口。
双系统同步进入Recovery模式以进行后续的升级操作,在Recovery模式下的双系统通过网络或串口进行通信,同步N/A两端在安装过程中的双方状态。双系统通信的方式包括主动查询和发送行为命令两种方式,其中N端为主动通信方,分别在R/R模式判定阶段、OTA包校验阶段、OTA包安装阶段以及退出阶段。R/R模式判定阶段,N端主动查询A端系统模式,若A端未进入Recovery模式,则发送重启命令;校验阶段,N端主动查询A端校验状态,并在校验成功的情况下发送安装指令,在校验失败的情况下发送重启指令;安装阶段,N端主动查询A端的安装状态和安装进度,并在安装后发送重启指令。
图9中示例性示出了根据实施例中系统N和系统A之间同时升级的流程图;本实施例提供的系统N和系统A之间同时升级的流程如图9所示,两个系统同时进入升级模式,各自执行完各自的版本检查,然后等待建立通信。在U盘升级模式,由于可以实现单独升级一端,因此,不管系统N的版本校验成功与否,都需要执行通信建立部分。在Recovery升级模式下,如果N端校验失败,因为Recovery为了防止版本不匹配不允许单独OTA升级,此时,需要直接进入校验失败处理模块,执行失败处理逻辑。
在完成各自的版本检测后,系统N和系统A建立通信,此时,可根据不同的场景选取不同的通信方式建立通信连接。在通信建立完成后,系统N主动查询系统A的检验状态,包括通信不同,无返回值;校验成功;校验失败三种情况。在U盘升级模式下,系统N等待10s,如果系统A无返回值,说明系统N和系统A连接失败,此时直接进入N系统的升级。如果系统A的返回值为校验失败,也直接进入N系统升级。如果系统A的返回值为校验成功,则系统N进入下一步。在Recovery升级模式下,系统N等待10s,如果系统A无返回值,说明系统N和系统A连接失败,此时直接进入错误处理模块。如果系统A的返回值为校验失败,也直接进入错误处理模块。如果系统A的返回值为校验成功,则系统N进入下一步。
在系统N收到系统A返回的校验成功结果时,向系统A发送安装命令,系统N和系统A同时进行安装。安装时,表示安装进度的进度条在系统N上显示,在安装过程中,实时查询系统A的安装进度,系统N的安装进度和系统A的安装进度均共同显示在进度条上。
系统N升级完成后,主动查询系统A的升级结果。如果系统A返回成功,则重启系统进入用户模式。如果系统A返回升级结果超时或者升级失败,进入异常处理模块。
如果双系统在安装升级包进行升级时出现异常情况,则需执行恢复机制,具体地需要根据业务逻辑决定失败处理逻辑的内容。如在U盘升级模式下,由于U盘模式支持单边升级,因此,如果某一个系统出现异常时可以执行等待步骤,直到对端升级完成。在Recovery升级模式下,双系统进行OTA升级时,本实施例采取的原则是双系统两端必须同时升级,如有一端校验失败则两端都不升级,但某一端升级失败不会打断另一端的升级进展,待该端升级完成后,两个系统同时重启。
双系统进行OTA升级时,主要流程包括检测版本、下载版本、校验版本和安装版本四个流程,为实现双系统OTA并行升级,本实施例提供的方法,主要应用在安装版本这一流程中。
图10中示例性示出了根据实施例中双系统OTA并行升级方法的流程图;如图10所示,本发明实施例提供的一种双系统OTA并行升级方法,包括以下步骤:
S11、在第一硬件系统和第二硬件系统同时进入Recovery模式的情况下,第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包;第一OTA升级包用于对第一硬件系统进行升级,第二OTA升级包用于对第二硬件系统进行升级。
在接收到升级指令时,第一硬件系统(系统A)和第二硬件系统(系统N)同时写入升级标志,经重启后进入Recovery模式。N端重启进入Recovery模式后,N端判定当前A端是否也在Recovery模式下,若是,则继续执行后续逻辑;若否,则进入失败处理逻辑。
N/A端同时进入Recovery模式后,N/A端同时分别对各自的OTA升级包进行校验;若N端校验失败,则进入失败处理逻辑,若N端校验成功,则进入同步模式,此过程中,A端在校验后直接进入同步模式,等待N端通信命令,执行后续逻辑;同步模式下N端主动查询A端的校验结果,若A端校验成功,则双系统进入安装模式,若A端校验失败或通信超时,则进入失败处理逻辑,不再执行后面的安装。
可见,在双系统启动后,各自校验各自的OTA升级包之前,还需进行一次判断系统N和系统A是否都处于Recovery模式,若有一端未处于Recovery模式,则无法保证双系统的并行升级。
图11中示例性示出了根据实施例中双系统OTA并行升级方法的总数据流图;图12中示例性示出了根据另一实施例中双系统OTA并行升级方法的流程图;如图11和图12所示,本实施例提供的方法,在进行校验OTA升级包之前,还包括:
S01、根据升级指令,第一硬件系统和第二硬件系统分别写入升级标志。
第二硬件系统接收到升级指令,升级指令可由用户通过遥控器触发,也可通过将升级U盘插入第二硬件系统的方式触发。第二硬件系统在接收到升级指令后,向第一硬件系统发送升级标志写入指令,控制第一硬件系统和第二硬件系统同时写入升级标志。
升级标志是指在系统的引导目录中写入的标志,用于引导后续程序进入升级模式。根据升级标志,即可实现双系统进入升级模式,而不是进入正常启动状态。
S02、根据升级标志,重启第一硬件系统和第二硬件系统,第一硬件系统和第二硬件系统分别进入Recovery模式。
在第一硬件系统和第二硬件系统均写入升级标志之后,对第一硬件系统和第二硬件系统重启,此时,在正常情况下,第一硬件系统和第二硬件系统均会进入Recovery模式。
由于升级标志写入的结果不同、网络等原因,可能会出现某个系统并未进入Recovery模式,因此,为保证双系统均处于Recovery模式下进行同步升级,需要校验系统N和系统A是否都进入Recovery模式。
S03、第二硬件系统进入Recovery模式之后,发送查询指令至第一硬件系统;查询指令用于查询第一硬件系统是否成功进入Recovery模式。
第二硬件系统为主动通信方,在第二硬件系统完成重启进入Recovery模式后,主动查询第一硬件系统是否成功进入Recovery模式。
第二硬件系统在进入Recovery模式后随即生成查询指令,并将查询指令发送至第一硬件系统,由第一硬件系统根据查询指令返回结果,该结果包括成功进入Recovery模式,未成功进入Recovery模式。
S04、如果第二硬件系统接收到第一硬件系统根据查询指令返回的成功进入结果,则第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包。
如果第一硬件系统返回成功进入结果,说明第一硬件系统和第二硬件系统均成功进入Recovery模式,且可继续执行升级步骤,即执行由第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包的步骤。
但是如果第一硬件系统返回的是未成功进入结果,说明第一硬件系统出现异常,此时需进入失败处理逻辑。
图13中示例性示出了根据实施例中校验阶段的失败处理逻辑的数据流图;图14中示例性示出了根据又一实施例中双系统OTA并行升级方法的流程图;如图13所示和图14所示,本实施例提供的方法,还包括:
S05、如果第二硬件系统接收到第一硬件系统根据查询指令返回的未成功进入结果,查询第一硬件系统是否存在当前版本的OTA升级包。
在第一硬件系统返回的进入Recovery模式的结果为未成功进入结果时,第二硬件系统生成查询指令,发送至第一硬件系统,以查询第一硬件系统是否存在当前版本的OTA升级包。当前版本的OTA升级包为用于实现第一硬件系统升级的第一OTA升级包。
S06、如果不存在,第二硬件系统生成退出指令,发送至第一硬件系统,使第一硬件系统和第二硬件系统退出Recovery模式。
如果第一硬件系统不存在当前版本的OTA升级包时,则第二硬件系统直接判定为升级失败,此时生成退出指令,退出Recovery模式,并重启返回主系统。
S07、如果存在,发送写入BCB信息指令至第一硬件系统。
如果第一硬件系统存在当前版本的OTA升级包时,则说明可继续执行升级过程。第二硬件系统生成写入BCB信息指令至第一硬件系统,使第一硬件系统中写入BCB信息。
BCB(BootLoader Control Block,引导程序控制块)是一个结构体,它是BootLoader与Recovery之间的通信接口。BCB信息是指loader引导时用于判定进入Recovery模式或者主系统的信息,例如,如果需要系统进入Recovery模式,则可根据BCB信息来判定使系统进入OTA升级或者清除数据操作。
每个系统具有自己的BCB信息,第一硬件系统根据第二硬件系统发送的写入BCB信息指令,写入下次重启进入Recovery模式执行OTA升级的BCB信息。
S08、接收第一硬件系统根据写入BCB信息指令返回的写入BCB信息成功结果,发送重启指令至第一硬件系统,以使第一硬件系统写入BCB信息后进行重启。
第一硬件系统完成写入BCB信息之后,向第二硬件系统返回写入BCB信息成功结果,第二硬件系统在接收到写入BCB信息成功结果后生成重启指令,使第一硬件系统进行重启。
第一硬件系统根据BCB信息,在重启后即可进入Recovery模式,而不是进入正常启动模式。
S09、在第一硬件系统重启之后,第二硬件系统生成新查询指令,发送至第一硬件系统,查询第一硬件系统是否成功进入Recovery模式。
第一硬件系统完成重启后,第二硬件系统继续查询第一硬件系统的模式状态,即查询第一硬件系统是否进入Recovery模式。
第二硬件系统每隔30秒生成一个新查询指令,即每隔30秒查询一次第一硬件系统是否进入Recovery模式,直到第一硬件系统进入Recovery模式时为止;若重试三次,第一硬件系统仍然未进入Recovery模式,则退出安装模式,不再对第一硬件系统和第二硬件系统执行升级操作。
S010、如果第二硬件系统接收到第一硬件系统根据新查询指令返回的成功进入结果,则第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包。
如果第一硬件系统进入Recovery模式后,向第二硬件系统返回成功进入结果,此时,第二硬件系统和第一硬件系统可继续执行后续的升级操作,即第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包。
在第一硬件系统和第二硬件系统同时进入Recovery模式的情况下,第一硬件系统和第二硬件系统分别校验各自的升级包。
S12、在第一硬件系统和第二硬件系统分别校验成功的情况下,第二硬件系统生成安装指令,发送至第一硬件系统。
如果第一硬件系统校验第一OTA升级包成功,第二硬件系统校验第二OTA升级包成功,说明第一硬件系统和第二硬件系统均可以进入安装模式。此时,由第二硬件系统生成安装指令,并发送至第一硬件系统,由第一硬件系统安装第一OTA升级包,实现第一硬件系统的升级,第二硬件系统安装第二OTA升级包,实现第二硬件系统的升级。
为了保证第一硬件系统和第二硬件系统在同步进入Recovery模式后,又同步进入安装模式,需要第一硬件系统和第二硬件系统进入同步模式。图15中示例性示出了根据实施例中双系统并行进入升级阶段的方法流程图;具体地,本实施例中,如图15所示,在第一硬件系统和第二硬件系统分别校验成功的情况下,第二硬件系统生成安装指令,发送至第一硬件系统,包括:
S141、判断第一硬件系统校验第一OTA升级包是否完成,以及,第二硬件系统校验第二OTA升级包是否成功。
第一硬件系统完成第一OTA升级包的校验过程之后直接进入同步模式,而第二硬件系统是需要在校验第二OTA升级包成功之后才会进入同步模式,因此,第一硬件系统和第二硬件系统进入同步模式的条件不同,第一硬件系统完成第一OTA升级包的校验即可,而第二硬件系统需要对第二OTA升级包校验成功才可进入同步模式。
同步模式用于实现第一硬件系统和第二硬件系统的信息和状态同步,以保证第一硬件系统和第二硬件系统可以同时执行同一流程,如同时进入安装模式。
S142、如果第二硬件系统对第二OTA升级包的校验成功,以及,第一硬件系统完成对第一OTA升级包的校验的情况下,第二硬件系统和第一硬件系统分别进入同步模式。
S143、在同步模式下,第二硬件系统生成校验结果查询指令,发送至第一硬件系统。
在第一硬件系统和第二硬件系统同时满足进入同步模式条件时,即第二硬件系统对第二OTA升级包的校验成功,随即进入同步模式;第一硬件系统对第一OTA升级包完成校验,直接进入同步模式,并等待第二硬件系统的通信命令。
在同步模式下,第二硬件系统可主动查询到第一硬件系统的状态。此时,第二硬件系统生成校验结果查询指令,以查询第一硬件系统对第一OTA升级包的校验结果。
S144、如果第二硬件系统接收到第一硬件系统根据校验结果查询指令返回的校验成功结果,则第二硬件系统生成安装指令,发送至第一硬件系统。
第一硬件系统根据校验结果查询指令,将第一OTA升级包的校验结果返回给第二硬件系统,如果返回的结果为校验成功结果时,此时,第一硬件系统和第二硬件系统均完成校验过程且成功,可进入后序的安装模式。
此时,第二硬件系统随即生成安装指令,发送至第一硬件系统,第一硬件系统和第二硬件系统根据安装指令同步进入安装模式,由第一硬件系统安装第一OTA升级包,实现第一硬件系统的升级,第二硬件系统安装第二OTA升级包,实现第二硬件系统的升级。
但是,如果第二硬件系统接收到第一硬件系统根据校验结果查询指令返回的校验失败结果或校验超时结果,此时第一硬件系统出现异常,第二硬件系统进入失败处理逻辑,不再执行后续的安装过程。
具体地,第二硬件系统可每隔30秒生成一个新查询指令,即每隔30秒查询一次第一硬件系统是否校验成功第一OTA升级包,直到第一硬件系统校验成功并返回校验成功结果时为止;若重试三次,第一硬件系统仍然未校验成功或未返回校验成功结果,则退出安装模式,不再对第一硬件系统和第二硬件系统执行升级操作。
在实际校验过程中,第二硬件系统也会存在校验失败的情况。在第二硬件系统校验失败时,本实施例提供的方法,还包括:
S151、如果第二硬件系统对第二OTA升级包的校验失败,生成校验状态查询指令,发送至第一硬件系统。
如果第二硬件系统校验失败,则直接进入失败处理逻辑。在此种情况下,失败处理逻辑包括:第二硬件系统生成校验状态查询指令,以查询第一硬件系统的状态,判断第一硬件系统是处于校验状态还是已校验完成。
S152、在第二硬件系统接收到第一硬件系统根据校验状态查询指令返回的处于校验状态的结果时,生成退出指令,发送至第一硬件系统,使第一硬件系统进入退出模式。
如果第一硬件系统根据校验状态查询指令返回的结果为处于校验状态的结果,此时,第二硬件系统是生成退出指令,使第一硬件系统进入退出模式,不再进行校验过程。第二硬件系统在第一硬件系统进入退出模式后,进行释放资源重启操作,返回到主系统,结束此次升级操作。
而如果第一硬件系统返回的结果为未处于校验状态的结果,即第一硬件系统已完成校验,此时第二硬件硬件系统可直接进行重启,结束此次升级操作。
可见,第一硬件系统和第二硬件系统分别校验各自的升级包,并在均校验成功时第一硬件系统和第二硬件系统同步进入安装模式。若存在一端出现校验异常,则进入失败处理逻辑,可以采用重试机制重新获取该端信息,还可以直接结束此次升级操作,避免双系统一直处于异常的升级状态,造成升级时长过长,影响用户体验。
S13、根据安装指令,第一硬件系统根据第一OTA升级包开始安装,第二硬件系统根据第二OTA升级包开始安装。
第一硬件系统接收到安装指令后,与第二硬件系统同步进入安装模式,第一硬件系统开始安装第一OTA升级包,实现第一硬件系统的升级,第二硬件系统开始按照第二OTA升级包,实现第二硬件系统的升级。
第一硬件系统和第二硬件系统均校验成功后,第二硬件系统通信第一硬件系统开始进入安装模式,第一硬件系统和第二硬件系统同时开始安装。若第二硬件系统安装失败,则进入失败处理逻辑,若第二硬件系统安装成功,则进入同步模式,此过程中,第一硬件系统在安装后也会直接进入同步模式,等待N端通信命令。第二硬件系统在同步模式下,主动查询第一硬件系统的安装结果,若第一硬件系统安装成功,则双系统进入退出模式,若第一硬件系统安装失败或通信超时,则进入失败处理逻辑。
退出模式的过程包括:第一硬件系统和第二硬件系统均安装成功后,第二硬件系统通信第一硬件系统进入退出模式,第二硬件系统在第一硬件系统退出后,再释放资源进行重启操作,返回到主系统。
S14、在第一硬件系统和第二硬件系统分别安装成功的情况下,第二硬件系统生成重启指令,发送至第一硬件系统;
如果第一硬件系统安装成功,第二硬件系统安装成功,说明第一硬件系统和第二硬件系统均可以进入退出模式。此时,由第二硬件系统生成重启指令,并发送至第一硬件系统,第一硬件系统和第二硬件系统同时进入退出模式。
为保证双系统在同时进入安装模式后,执行相应的安装过程可以同步进入退出模式,图16中示例性示出了根据实施例中双系统并行进入重启阶段的方法流程图;本实施例提供的方法,如图16所示,在第一硬件系统和第二硬件系统分别安装成功的情况下,第二硬件系统生成重启指令,发送至第一硬件系统,包括:
S161、判断第二硬件系统安装第二OTA升级包的安装过程是否成功,以及,第一硬件系统安装第一OTA升级包的安装过程是否完成。
由于第一硬件系统在完成第一OTA升级包的安装之后即可进入同步模式,而第二硬件系统需要在第二OTA升级包的安装成功之后才可进入同步模式,因此,第一硬件系统和第二硬件系统进入同步模式的条件不同,第一硬件系统完成第一OTA升级包的安装即可,而第二硬件系统需要在第二OTA升级包安装成功才可进入同步模式。
S162、如果第二硬件系统对第二OTA升级包的安装成功,以及,第一硬件系统完成对第一OTA升级包的安装的情况下,所述第二硬件系统和第一硬件系统分别进入同步模式。
S163、在同步模式下,第二硬件系统生成安装结果查询指令,发送至第一硬件系统。
在第一硬件系统和第二硬件系统同时满足进入同步模式条件时,即第二硬件系统对第二OTA升级包的安装成功,随即进入同步模式;第一硬件系统对第一OTA升级包完成安装,直接进入同步模式,并等待第二硬件系统的通信命令。
在同步模式下,第二硬件系统可主动查询到第一硬件系统的状态。此时,第二硬件系统生成安装结果查询指令,以查询第一硬件系统对第一OTA升级包的安装情况。
S164、如果第二硬件系统接收到第一硬件系统根据安装结果查询指令返回的安装成功结果,则生成退出指令,发送至第一硬件系统。
S165、根据退出指令,在第一硬件系统和第二硬件系统进入退出模式之后,第二硬件系统生成重启指令,发送至第一硬件系统。
第一硬件系统根据安装结果查询指令,将第一OTA升级包的安装结果返回给第二硬件系统,如果返回的结果为安装成功结果时,此时,第一硬件系统和第二硬件系统均完成安装过程且成功,可进入后序的退出模式。
此时,第二硬件系统随即生成退出指令,发送至第一硬件系统,第一硬件系统和第二硬件系统根据退出指令同步进入退出模式。第二硬件系统在第一硬件系统进入退出模式后,进行释放资源重启操作,返回到主系统,结束此次升级操作。
S15、根据重启指令,第一硬件系统和第二硬件系统进行重启操作。
第一硬件系统在接收到重启指令之后,对第一硬件系统和第二硬件系统同时执行重启操作,完成对第一硬件系统的升级和第二硬件系统的并行升级。
但是,如果第二硬件系统接收到第一硬件系统根据安装结果查询指令返回的安装失败结果或安装超时结果,此时第一硬件系统出现异常,第二硬件系统进入失败处理逻辑,不再执行后续的安装过程。
具体地,图17中示例性示出了根据实施例中安装阶段的失败处理逻辑的方法流程图;如图17所示,安装状态的失败处理逻辑,包括:
S171、如果第二硬件系统对第二OTA升级包的安装失败,生成安装状态查询指令,发送至第一硬件系统。
如果第二硬件系统安装失败,则直接进入失败处理逻辑。在此种情况下,失败处理逻辑包括:第二硬件系统生成安装状态查询指令,以查询第一硬件系统的状态,判断第一硬件系统是处于安装状态还是已安装完成。
S172、在第二硬件系统接收到第一硬件系统根据安装状态查询指令返回的处于安装状态的结果时,生成等待指令,等待第一硬件系统安装完成。
如果第一硬件系统根据安装状态查询指令返回的结果为处于安装状态的结果,此时,第二硬件系统生成等待指令,以等待第一硬件系统安装完成之后再返回失败处理逻辑。
S173、如果根据等待指令,在等待时间阈值内,如果第一硬件系统完成第一OTA升级包的安装,第二硬件系统生成退出指令,发送至第一硬件系统,使第一硬件系统进入退出模式。
如果在等待时间阈值内,第二硬件系统接收到第一硬件系统返回的完成安装的信息,此时,第二硬件系统生成提出指令,使第一硬件系统进入退出模式。第二硬件系统在第一硬件系统退出后,再释放资源进行重启操作,返回到主系统。
例如,等待时间阈值可设为20min,在20min中,第一硬件系统完成第一OTA升级包的安装,则进入退出模式。
而如果超过20min第一硬件系统依然未安装成功,则说明第一硬件系统安装失败,第二硬件系统进行释放资源重启操作,返回到主系统,结束此次升级操作。
而如果第一硬件系统已完成安装,则直接返回失败处理逻辑,即第二硬件系统发送退出指令至第一硬件系统,使第一硬件系统进入退出模式,第二硬件系统在第一硬件系统退出后,再释放资源进行重启操作,返回到主系统。
在另一个实施例中,安装状态的另一种失败处理逻辑,包括:
如果第二硬件系统对第二OTA升级包的安装成功,生成安装状态查询指令,发送至第一硬件系统,以查询第一硬件系统的状态,判断第一硬件系统是处于安装状态还是已安装完成。
如果第一硬件系统为处于安装状态,则第二硬件系统生成等待指令,等待第一硬件系统完成安装,在第一硬件系统完成安装后再返回对应的状态。等待的时长与上述实施例提出的等待时间阈值相同,且均在超过等待时间阈值后即判定第一硬件系统安装失败,第二硬件系统进行释放资源重启操作,返回到主系统,结束此次升级操作。
如果第一硬件系统为未处于安装状态,即已完成安装过程,则表示第一硬件系统的第一OTA升级包安装成功,第一硬件系统升级成功。
校验阶段的失败处理逻辑与安装阶段的失败处理逻辑的差异为,考虑校验实际情况,判定校验等待时间超过5min再判定校验失败,也就是说,在校验阶段,第二硬件系统重新获取第一硬件系统的校验结果的重试总时长不能超过5min。
双系统在同时进行安装相应的OTA升级包时,第一硬件系统和第二硬件系统分别有自己的安装进度,本实施例采用统一的进度条来同时展示第一硬件系统和第二硬件系统的安装进度。
具体地,本实施例提供的方法,在进行双系统并行安装时,还包括:
在第一硬件系统安装第一OTA升级包,以及,第二硬件系统安装第二OTA升级包的过程中,第一硬件系统的安装进度和第二硬件系统的安装进度显示在同一进度条上,进度条由第二硬件系统进行显示。
由于双系统共用一块显示屏,且显示屏的显示由第二硬件系统控制。在利用一个进度条同时展示第一硬件系统和第二硬件系统的安装进度时,将进度条的进度数值分配给第一硬件系统和第二硬件系统。进度条的总进度数据为0-100,其中,奇数显示第一硬件系统(系统A)的安装进度,偶数显示第二硬件系统(系统N)的安装进度。
在此种设定下,进度条的更新进度值的逻辑如下:
记录当前进度条的进度值为percent。下一个显示的进度值为next_percent=percent+1。
如果next_percent是奇数,就从系统A(第一硬件系统)获取安装进度,如果获取到的进度值不小于next_percent,则将next_percent更新到进度条上显示。如果next_percent大于系统A(第一硬件系统)获取的安装进度,则在此处等待并循环获取系统A进度,直到系统A的安装进度不小于next_percent,再更新进度条的显示。如果系统A升级出问题,则进度条会一直卡住,当前显示的进度值为percent,是系统N已经执行的进度。所以此时能根据进度显示的是偶数来判定系统A出了问题。
同理,如果next_percent是偶数,就从系统N(第二硬件系统)获取系统进度,如果获取到的进度值不小于next_percent,则将next_percent更新到进度条上显示。如果next_percent大于系统N获取的安装进度,则在此处等待并循环获取系统N进度,直到系统N的安装进度不小于next_percent,更新进度条的显示。如果系统N升级出问题,则进度条会一直卡住,当前显示的进度值为percent,是系统A已经执行的进度。所以此时能根据进度显示的是奇数来判定系统N出了问题。
图18中示例性示出了根据实施例中进度条显示的数据流图;也就是说,如图18所示,第二硬件系统上的进度条分别获取第一硬件系统的安装进度和第二硬件系统的安装进度后进行偶数化和奇数化,然后比较两个安装进度的数值大小,并展示较小的那个安装进度。由此,当一端系统安装失败后,可以通过进度条展示的进度值得知当前可能出错的系统,如在45%处卡住不动,说明此处一直没有系统N(第二硬件系统)的安装进度传入,则表示N端安装失败了。
具体地,图19中示例性示出了根据实施例中进度条显示的方法流程图;如图19所示,进度条的显示方式包括:
S191、如果进度条需要显示的目标进度值为奇数时,由进度条检查第一硬件系统的安装进度。
进度条上需要展示的进度值包括奇数和偶数,随着第一硬件系统和第二硬件系统的安装的进行,进度条上实时更新相应的安装进度。
如果当前时刻,进度条需要显示奇数,此时,由进度条获取第一硬件系统的安装进度,并判断第一硬件系统的安装进度是否达到目标进度值,即第一硬件系统的安装进度是否大于或等于目标进度值。
如果第一硬件系统的安装进度大于或等于目标进度值,说明第一硬件系统的安装进度快于进度条需要显示的进度值,此时,可将目标进度值显示在进度条上。
如果第一硬件系统的安装进度不大于或等于目标进度值,即第一硬件系统的安装进度小于目标进度值,说明第一硬件系统的安装进度慢于进度条需要显示的进度值,此时需要进度条等待第一硬件系统的安装,并循环检查安装进度,一旦第一硬件系统的安装进度大于或等于目标进度值,再将目标进度值显示在进度条上。
S192、在第一硬件系统的安装进度到达目标进度值时,则在进度条上显示目标进度值。
因此,在第一硬件系统的安装进度大于或等于目标进度值时,可直接在进度条上显示目标进度值。
例如,如果进度条需要显示的目标进度值为15%,此时,如果获取的第一硬件系统的安装进度为16%,那么可在进度条上显示15%;如果获取的第一硬件系统的安装进度为10%,那么进度条需要等待并循环获取第一硬件系统的实时安装进度,直到第一硬件系统的安装进度由10%涨到15%或以上时,才在进度条上显示15%。
S193、如果进度条需要显示的目标进度值为偶数时,由进度条检查第二硬件系统的安装进度。
如果当前时刻,进度条需要显示偶数,此时,由进度条获取第二硬件系统的安装进度,并判断第二硬件系统的安装进度是否达到目标进度值,即第二硬件系统的安装进度是否大于或等于目标进度值。
如果第二硬件系统的安装进度大于或等于目标进度值,说明第二硬件系统的安装进度快于进度条需要显示的进度值,此时,可将目标进度值显示在进度条上。
如果第二硬件系统的安装进度不大于或等于目标进度值,即第二硬件系统的安装进度小于目标进度值,说明第二硬件系统的安装进度慢于进度条需要显示的进度值,此时需要进度条等待第二硬件系统的安装,并循环检查安装进度,一旦第二硬件系统的安装进度大于或等于目标进度值,再将目标进度值显示在进度条上。
S194、在第二硬件系统的安装进度到达目标进度值时,则在进度条上显示目标进度值。
因此,在第二硬件系统的安装进度大于或等于目标进度值时,可直接在进度条上显示目标进度值。
例如,如果进度条需要显示的目标进度值为20%,此时,如果获取的第二硬件系统的安装进度为23%,那么可在进度条上显示20%;如果获取的第二硬件系统的安装进度为17%,那么进度条需要等待并循环获取第二硬件系统的实时安装进度,直到第二硬件系统的安装进度由17%涨到20%或以上时,才在进度条上显示20%。
在第一硬件系统或第二硬件系统的安装进度未达到目标进度值时,需要由进度条等待并循环获取第一硬件系统或第二硬件系统的实时安装进度,若实时获取到的安装进度达到目标进度值,则可直接显示目标进度值,但如果进度条依然未获取满足目标进度值显示条件的实时安装进度时,本实施例的方法,还包括:
S1101、如果第一硬件系统的安装进度未到达目标进度值时,则等待一段时间,再检查第一硬件系统的安装进度。
S1102、在等待时间阈值内,如果进度条未获取到第一硬件系统的安装进度,则判定第一硬件系统安装异常。
在第一硬件系统的安装进度小于目标进度值时,进度条等待并循环获取第一硬件系统的实时安装进度。如果在等待时间阈值内,进度条依然未获取到新的安装进度,即进度条始终卡在一个偶数上,则说明第一硬件系统安装出现异常。
例如,如果进度条当前显示的数值为20%,其目标进度值为21%,进度条实时获取第一硬件系统的安装进度。而如果进度条一直显示20%这一数值不动,此时说明进度条始终未获取到第一硬件系统的安装进度,也就导致进度条无法显示21%这一数值,因此,说明第一硬件系统出现异常。
进度条显示的进度值以第一硬件系统或第二硬件系统中安装速度最慢的为主,进度条上能看到的进度值是该进度值对应的系统已完成的安装进度,若总也看不到下一个进度值,则说明看不到的这个进度值对应的系统出现异常。由于进度条的显示数值是连续的,不能跳过,因此,可根据进度条上显示的某个数值的时长,来准确判断哪个系统出现安装异常。在判断出出现异常的系统时,可执行安装阶段对应的失败处理逻辑,来对第一硬件系统和第二硬件系统进行相应操作,以尽快结束升级过程,避免造成更多的时间浪费。
由以上技术方案可知,本发明实施例提供的一种双系统OTA并行升级方法,包括:第一硬件系统和第二硬件系统同时进入Recovery模式之后,再同步进入校验模式,即第一硬件系统校验第一OTA升级包的同时第二硬件系统校验第二OTA升级包。在完成校验之后,第二硬件系统生成安装指令,发送至第一硬件系统,使第一硬件系统和第二硬件系统同步进入安装模式,使第一硬件系统安装第一OTA升级包的同时第二硬件系统也安装第二OTA升级包。在完成安装时,第一硬件系统和第二硬件系统同步进行重启。可见,本实施提供的方法,可实现双系统的OTA并行升级,双系统可同时进入校验模式、同步进入安装模式、并同时进行重启,提高双系统的升级效率,不会延长升级时长,提高用户体验。
图20中示例性示出了根据实施例中双系统OTA并行升级系统的结构框图。
如图20所示,本发明实施例提供的一种双系统OTA并行升级系统,用于执行图10至图19所示的双系统OTA并行升级方法,该系统包括:第一硬件系统和第二硬件系统,所述第二硬件系统通过串口或网线与第一硬件系统连接;所述第一硬件系统和第二硬件系统被分别配置为执行以下步骤:在第一硬件系统和第二硬件系统同时进入Recovery模式的情况下,第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包;所述第一OTA升级包用于对第一硬件系统进行升级,所述第二OTA升级包用于对第二硬件系统进行升级;在所述第一硬件系统和第二硬件系统分别校验成功的情况下,第二硬件系统生成安装指令,发送至第一硬件系统;根据所述安装指令,所述第一硬件系统根据第一OTA升级包开始安装,所述第二硬件系统根据第二OTA升级包开始安装;在所述第一硬件系统和第二硬件系统分别安装成功的情况下,第二硬件系统生成重启指令,发送至第一硬件系统;根据所述重启指令,所述第一硬件系统和第二硬件系统进行重启操作。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:根据升级指令,所述第一硬件系统和第二硬件系统分别写入升级标志;根据所述升级标志,重启所述第一硬件系统和第二硬件系统,所述第一硬件系统和第二硬件系统分别进入Recovery模式;所述第二硬件系统进入Recovery模式之后,发送查询指令至第一硬件系统;所述查询指令用于查询第一硬件系统是否成功进入Recovery模式;如果所述第二硬件系统接收到第一硬件系统根据查询指令返回的成功进入结果,则第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:如果所述第二硬件系统接收到第一硬件系统根据查询指令返回的未成功进入结果,查询第一硬件系统是否存在当前版本的OTA升级包;如果不存在,所述第二硬件系统生成退出指令,发送至第一硬件系统,使第一硬件系统和第二硬件系统退出Recovery模式;如果存在,发送写入BCB信息指令至第一硬件系统;接收所述第一硬件系统根据写入BCB信息指令返回的写入BCB信息成功结果,发送重启指令至第一硬件系统,以使所述第一硬件系统写入BCB信息后进行重启;在所述第一硬件系统重启之后,所述第二硬件系统生成新查询指令,发送至第一硬件系统,查询第一硬件系统是否成功进入Recovery模式;如果所述第二硬件系统接收到第一硬件系统根据新查询指令返回的成功进入结果,则第一硬件系统校验第一OTA升级包,第二硬件系统校验第二OTA升级包。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:判断所述第一硬件系统校验第一OTA升级包是否完成,以及,所述第二硬件系统校验第二OTA升级包是否成功;如果所述第二硬件系统对第二OTA升级包的校验成功,以及,所述第一硬件系统完成对第一OTA升级包的校验的情况下,所述第二硬件系统和第一硬件系统分别进入同步模式;在所述同步模式下,所述第二硬件系统生成校验结果查询指令,发送至第一硬件系统;如果所述第二硬件系统接收到第一硬件系统根据校验结果查询指令返回的校验成功结果,则第二硬件系统生成安装指令,发送至第一硬件系统。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:如果所述第二硬件系统对第二OTA升级包的校验失败,生成校验状态查询指令,发送至第一硬件系统;在所述第二硬件系统接收到第一硬件系统根据校验状态查询指令返回的处于校验状态的结果时,生成退出指令,发送至第一硬件系统,使第一硬件系统进入退出模式。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:判断所述第二硬件系统安装第二OTA升级包的安装过程是否成功,以及,所述第一硬件系统安装第一OTA升级包的安装过程是否完成;如果所述第二硬件系统对第二OTA升级包的安装成功,以及,所述第一硬件系统完成对第一OTA升级包的安装的情况下,所述第二硬件系统和第一硬件系统分别进入同步模式;在所述同步模式下,所述第二硬件系统生成安装结果查询指令,发送至第一硬件系统;如果所述第二硬件系统接收到第一硬件系统根据安装结果查询指令返回的安装成功结果,则生成退出指令,发送至第一硬件系统;根据所述退出指令,在所述第一硬件系统和第二硬件系统进入退出模式之后,第二硬件系统生成重启指令,发送至第一硬件系统。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:如果所述第二硬件系统对第二OTA升级包的安装失败,生成安装状态查询指令,发送至第一硬件系统;在所述第二硬件系统接收到第一硬件系统根据安装状态查询指令返回的处于安装状态的结果时,生成等待指令,等待第一硬件系统安装完成;如果根据所述等待指令,在等待时间阈值内,如果第一硬件系统完成第一OTA升级包的安装,第二硬件系统生成退出指令,发送至第一硬件系统,使第一硬件系统进入退出模式。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:在所述第一硬件系统安装第一OTA升级包,以及,所述第二硬件系统安装第二OTA升级包的过程中,所述第一硬件系统的安装进度和第二硬件系统的安装进度显示在同一进度条上,所述进度条由第二硬件系统进行显示。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:如果所述进度条需要显示的目标进度值为奇数时,由所述进度条检查第一硬件系统的安装进度;在所述第一硬件系统的安装进度到达目标进度值时,则在所述进度条上显示所述目标进度值;如果所述进度条需要显示的目标进度值为偶数时,由所述进度条检查第二硬件系统的安装进度;在所述第二硬件系统的安装进度到达目标进度值时,则在所述进度条上显示所述目标进度值。
可选地,所述第一硬件系统和第二硬件系统被进一步分别配置为执行以下步骤:如果所述第一硬件系统的安装进度未到达目标进度值时,则等待一段时间,再检查第一硬件系统的安装进度;在等待时间阈值内,如果所述进度条未获取到第一硬件系统的安装进度,则判定第一硬件系统安装异常。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的双系统OTA并行升级的方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于双系统OTA并行升级的系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
本申请实施例提供的双系统并行恢复出厂设置的方法,应用于具有双系统架构的显示设备200。在对终端设备进行恢复出厂设置时,为避免延长清除数据的时间,需要同时对两个系统并行恢复出厂设置。
本实施例中的双系统包括第一硬件系统310和第二硬件系统210,实现恢复出厂设置的相关组件设置在第二硬件系统中,第一硬件系统中不具有任何与恢复出厂设置相关的组件。因此,为实现两个系统的并行恢复出厂设置,本实施例中,由第二硬件系统作为主动通信方,由第二硬件系统去调动第一硬件系统进行恢复出厂设置。
图21中示例性示出了根据实施例中恢复出厂设置触发流程图。如图21所示,第二硬件系统执行恢复出厂设置的指令由用户触发,用户通过与终端设备匹配的遥控器100A调出位于第二硬件系统的系统设置菜单,然后选择用户恢复出厂设置选项,进入清除数据流程,以启动第二硬件系统中的清除数据模块。
双系统同时清除数据需要两个系统进行通信,本实施例提供的方法,采用网络和串口两种方式进行通信,正常情况下优先选择网络,在网络无法正常连接的情况下则使用串口进行通信。通信处理过程中,第二硬件系统为主动通信方,分别通过命令和查询两种模式通知第一硬件系统执行响应命令和同步状态。
图22中示例性示出了根据实施例中双系统并行恢复出厂设置的系统的结构框图。为实现两个系统之间的通信和每个系统的单独清除数据过程,如图22所示,第一硬件系统310包括第一硬件系统清除数据模块3101和第一硬件系统通信模块3102,第一硬件系统清除数据模块用于对第一硬件系统进行清除数据操作,第一硬件系统通信模块用于实现第一硬件系统和第二硬件系统之间的通信。同样的,第二硬件系统210包括第二硬件系统清除数据模块2101和第二硬件系统通信模块2102,第二硬件系统清除数据模块用于对第二硬件系统进行清除数据操作,第二硬件系统通信模块用于实现第二硬件系统和第一硬件系统之间的通信。
第二硬件系统清除数据模块接收到恢复出厂设置指令后,通过第二硬件系统通信模块去通知第一硬件系统,第二硬件系统通信模块与第一硬件系统通信模块进行信息交互,由第一硬件系统通信模块去启动第一硬件系统清除数据模块执行第一硬件系统的数据清除操作,以确保双系统可并行清除数据,且不延长清除数据的时间。
为了更好的说明第一硬件系统和第二硬件系统的并行恢复出厂设置,下面针对每个模块的实现过程进行详细说明,即本申请实施例提供的双系统并行恢复出厂设置的方法的具体过程。
图23中示例性示出了根据实施例中双系统并行恢复出厂设置的方法的流程图;图24中示例性示出了根据实施例中双系统并行恢复出厂设置的方法的时序流程图;参见图23和图24,本申请实施例提供的一种双系统并行恢复出厂设置的方法,应用于第二硬件系统通信模块,第二硬件系统通信模块用于接收第二硬件系统清除数据模块的指令,并与第一硬件系统通信模块进行通信。具体地,本申请实施例提供的一种双系统并行恢复出厂设置的方法,包括以下步骤:
S211、接收第二硬件系统中的第二硬件系统清除数据模块发送的启动指令;启动指令是指第二硬件系统清除数据模块根据接收到的恢复出厂设置指令生成的指令。
第二硬件系统接收到用户触发的恢复出厂设置指令后,由第二硬件系统清除数据模块执行第二硬件系统的清除数据操作,而为保证第二硬件系统和第一硬件系统的并行清除数据,第二硬件系统清除数据模块在接收到恢复出厂设置指令后,并不及时对第二硬件系统的清除数据操作,而是在通知第一硬件系统后再进行。
为此,第二硬件系统清除数据模块根据恢复出厂设置指令生成启动指令,并将该启动指令发送至第二硬件系统通信模块,以由第二硬件系统通信模块与第一硬件系统中的第一硬件系统通信模块进行通信。
S212、根据启动指令,生成开始清除指令,并发送至第一硬件系统的第一硬件系统通信模块,以通过第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作。
启动指令中携带有开始清除数据的命令参数,因此,第二硬件系统清除数据模块根据启动指令将第二硬件系统通信模块启动后,由第二硬件系统通信模块生成开始清除指令,并与第一硬件系统的第一硬件系统通信模块进行通信,以由第一硬件系统通信模块启动第一硬件系统清除数据模块,并对第一硬件系统进行清除数据操作。
第一硬件系统清除数据模块被启动后,即表示第二硬件系统与第一硬件系统已成功建立通信,在清除数据过程中,第一硬件系统和第二硬件系统可实现实时通信。
S213、接收第一硬件系统通信模块返回的第一硬件系统清除数据模块的启动结果,将启动结果发送至第二硬件系统清除数据模块,以对第二硬件系统进行清除数据操作。
本实施例提供的方法,由第二硬件系统根据恢复出厂设置指令通知第一硬件系统进行清除数据操作后,第二硬件系统再进行清除数据操作。因此,第二硬件系统只有在接收到第一硬件系统返回的启动结果后,才进行清除数据操作。
第一硬件系统通信模块接收到第二硬件系统通信模块发送的开始清除指令后,立即启动第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,同时,向第二硬件系统通信模块发送启动结果,以通知第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
因此,本实施例中,接收第一硬件系统通信模块返回的第一硬件系统清除数据模块的启动结果的时刻,与第一硬件系统通信模块启动第一硬件系统清除数据模块的时刻相同,以及时通知第二硬件系统进行清除数据操作,缩短清除数据的时间。
S214、在完成第二硬件系统的清除数据操作的情况下,根据第二硬件系统清除数据模块发送的查询指令,获取第一硬件系统通信模块发送的第一硬件系统的清除数据结果。
第二硬件系统清除数据模块接收到第二硬件系统通信模块返回的第一硬件系统清除数据模块的启动结果后,立即对第二硬件系统进行清除数据操作。并在第二硬件系统完成清除数据操作时,生成查询指令,发送至第二硬件系统通信模块。
查询指令用于检查第一硬件系统的清除数据结果,清除数据结果包括完成状态和未完成状态,以保证第二硬件系统和第一硬件系统均完成清除数据操作的情况下,对第二硬件系统进行重启,完成恢复出厂设置的过程。
第二硬件系统通信模块将查询指令发送第一硬件系统通信模块,由第一硬件系统通信模块查询第一硬件系统清除数据模块的清除数据结果,再由第一硬件系统通信模块将清除数据结果返回至第二硬件系统通信模块。
清除数据结果用于表明第一硬件系统的清除数据的进度,只有在第一硬件系统和第二硬件系统均完成清除数据操作,再进行系统重启。
S215、将清除数据结果发送至第二硬件系统清除数据模块,在第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,对第二硬件系统和第一硬件系统进行重启,完成第二硬件系统和第一硬件系统的恢复出厂设置。
第二硬件系统通信模块将清除数据结果发送至第二硬件系统清除数据模块,为保证第二硬件系统和第一硬件系统的同步,由第二硬件系统清除数据模块判断清除数据结果的完成情况,如果清除数据结果表明的状态为完成状态,说明第一硬件系统已完成清除数据操作,此时,可执行重启系统的步骤。如果清除数据结果表明的状态为未完成状态,说明第一硬件系统还未完成清除数据操作,此时并不能重启系统。
因此,为保证第二硬件系统和第一硬件系统的并行恢复出厂设置,在对第二硬件系统触发恢复出厂设置时,为同时实现第二硬件系统和第一硬件系统的同时清除数据,本实施例中,只在第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,才对第二硬件系统和第一硬件系统进行重启,完成第二硬件系统和第一硬件系统的恢复出厂设置。
具体实现时,由于第一硬件系统中并未安装有恢复出厂设置相关的组件,也不具有自行重启的功能。因此,本实施例中,第一硬件系统的重启由第二硬件系统来启动,即在第二硬件系统和第一硬件系统均完成清除数据操作后,重新启动第二硬件系统,由第二硬件系统生成重启指令,发送至第一硬件系统,以通知第一硬件系统完成重新启动操作,随即完成第二硬件系统和第一硬件系统的恢复出厂设置。
而如果第二硬件系统清除数据模块判断清除数据结果为未完成状态时,需要等待第一硬件系统继续进行清除数据操作,为此,本申请实施例提供的双系统并行恢复出厂设置的方法,还包括:
S231、接收第二硬件系统清除数据模块发送的等待指令;等待指令是指第二硬件系统清除数据模块在判断清除数据结果为未完成状态的情况下发送的指令。
第二硬件系统清除数据模块在判断清除数据结果为未完成状态的情况下,生成等待指令,并发送至第二硬件系统通信模块。
等待指令用于通知第一硬件系统通信模块在等待一段时间后再返回清除数据结果。
S232、将等待指令发送至第一硬件系统通信模块,以由第一硬件系统通信模块等待第一硬件系统的清除数据过程,直到第一硬件系统清除数据模块返回的清除数据结果为完成状态时,获取当前清除数据结果。
由第二硬件系统通信模块将该等待指令发送至第一硬件系统通信模块,由第一硬件系统通信模块等待一段时间,再返回第一硬件系统清除数据模块的清除数据结果,直到清除数据结果为完成状态时为止。
当前清除数据结果用于表明等待一段时间后,第一硬件系统清除数据模块在完成清除数据操作的结果。
S233、将第二硬件通信模块返回的当前清除数据结果发送至第二硬件系统清除数据模块,以对第二硬件系统和第一硬件系统进行重启,完成第二硬件系统和第一硬件系统的恢复出厂设置。
将当前清除数据结果发送至第二硬件系统清除数据模块,由第二硬件系统清除数据模块在第一硬件系统完成清除数据操作的时候对第二硬件系统进行重启,进而由第二硬件系统调动第一硬件系统进行重启,完成第二硬件系统和第一硬件系统的恢复出厂设置。
图25中示例性示出了根据另一实施例中双系统并行恢复出厂设置的方法的流程图。参见图25,本申请实施例提供的一种双系统恢复出厂设置的方法,应用于第一硬件系统通信模块。由于第一硬件系统不具有恢复出厂设置功能,因此,第一硬件系统的恢复出厂设置需由第二硬件系统来调动,即第一硬件系统通信模块用于接收第二硬件系统通信模块发送的开始清除指令,与第二硬件系统通信模块进行通信,并调动第一硬件系统清除数据模块对第一硬件系统进行清除数据操作。具体地,本申请实施例提供的一种双系统并行恢复出厂设置的方法,包括以下步骤:
S221、获取第二硬件系统中的第二硬件系统通信模块发送的开始清除指令。
由于第一硬件系统无法自行接收用户触发的恢复出厂设置指令,而是需要第二硬件系统来调动,因此,由第一硬件系统通信模块接收第二硬件系统通信模块发送的开始清除指令。
开始清除指令由第二硬件系统通信模块根据第二硬件系统清除数据模块的启动指令生成,开始清除指令用于实现第一硬件系统通信模块启动第一硬件系统清除数据模块。
S222、根据开始清除指令,启动第一硬件系统中的第一硬件系统清除数据模块,以通过第一硬件系统清除数据模块对第一硬件系统进行清除数据操作。
第一硬件系统通信模块根据开始清除指令,即可启动第一硬件系统中的第一硬件系统清除数据模块,而第一硬件系统清除数据模块被启动后,即时开始对第一硬件系统进行清除数据操作。
而为保证第一硬件系统和第二硬件系统的并行恢复出厂设置,本实施例提供的方法,在启动第一硬件系统清除数据模块对第一硬件系统进行清除数据操作时,即时返回启动结果,已通知第二硬件系统进行清除数据操作。
为此,本实施例提供的方法,还包括:在根据开始清除指令启动第一硬件系统清除数据模块的同时,发送第一硬件系统清除数据模块的启动结果至第二硬件系统通信模块,以通过第二硬件系统通信模块启动第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
第一硬件系统通信模块在对第一硬件系统清除数据模块进行启动的同时,返回启动结果给第二硬件系统通信模块,第二硬件系统通信模块将启动结果发送至第二硬件系统清除数据模块,使得在第一硬件系统清除数据模块对第一硬件系统进行清除数据操作时,第二硬件系统清除数据模块也可及时对第二硬件系统进行清除数据操作,以保证两个系统的并行清除数据过程,缩短清除数据的时间。
S223、接收第一硬件系统清除数据模块返回的清除数据结果。
第一硬件系统清除数据模块在对第一硬件系统进行清除数据操作时,实时向第一硬件系统通信模块反馈第一硬件系统的数据清除结果,数据清除结果用于表明清除数据的进度。
第一硬件系统通信模块在接收到第一硬件系统清除数据模块返回的清除数据结果后进行存储,并实时更新当前清除数据结果,以便于第二硬件系统能够获知第一硬件系统的清除数据进度。
S224、根据第二硬件系统通信模块发送的查询指令,将清除数据结果通过第二硬件系统通信模块发送至第二硬件系统清除数据模块,以由第二硬件系统清除数据模块在判断清除数据结果为完成状态的情况下,对第一硬件系统和第二硬件系统进行重启,完成第一硬件系统和第二硬件系统的恢复出厂设置。
查询指令用于检查第一硬件系统的清除数据结果,查询指令是由第二硬件系统清除数据模块根据第一硬件系统的清除数据结果来生成的,即在第一硬件系统的清除数据结果为完成状态时生成查询指令。
第二硬件系统清除数据模块在完成对第二硬件系统的清除数据操作后,会查询第一硬件系统的清除数据进度,以便能够在第一硬件系统和第二硬件系统均完成数据清除后,对两个系统进行重启。
具体地,本实施例中,根据第二硬件系统通信模块发送的查询指令,将清除数据结果通过第二硬件系统通信模块发送至第二硬件系统清除数据模块,包括:
S271、接收第二硬件系统通信模块发送的查询指令;查询指令是指由第二硬件系统清除数据模块向第二硬件系统通信模块发送的指令;
S272、根据查询指令,将第一硬件系统清除数据模块返回的清除数据结果发送至第二硬件系统通信模块,由所述第二硬件系统通信模块将清除数据结果发送至第二硬件系统清除数据模块。
第二硬件系统清除数据模块将查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,第一硬件系统通信模块根据查询指令,将存储的清除数据结果返回至第二硬件系统通信模块,以便由第二硬件系统清除数据模块对清除数据结果进行判断。
在对第二硬件系统触发恢复出厂设置时,为同时实现第二硬件系统和第一硬件系统的同时清除数据,本实施例中,只在第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,才对第二硬件系统和第一硬件系统进行重启,完成第二硬件系统和第一硬件系统的恢复出厂设置。
由于第一硬件系统不具有自行重启的功能,需由第二硬件系统来通知第一硬件系统进行重启,因此,为保证两个系统的并行清除数据后完成恢复出厂设置,第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,对第二硬件系统进行重启,同时,通过第二硬件系统通信模块和第一硬件系统通信模块调动第一硬件系统进行重启,随即完成第一硬件系统和第二硬件系统的恢复出厂设置。
而如果第二硬件系统清除数据模块判断清除数据结果为未完成状态时,需要等待第一硬件系统继续进行清除数据操作,为此,本申请实施例提供的双系统并行恢复出厂设置的方法,还包括:
S261、接收第二硬件系统通信模块发送的等待指令;等待指令是指在清除数据结果为未完成状态的情况下,由第二硬件系统清除数据模块发送至第二硬件系统通信模块的指令。
如果第一硬件系统未完成清除数据操作,若在此时重启系统,会对第一硬件系统的性能造成影响,因此,为保证系统的性能,需要保证重启系统时,第一硬件系统和第二硬件系统均为完成清除数据状态。
第二硬件系统清除数据模块在判断清除数据结果为未完成状态的情况下,生成等待指令,并发送至第二硬件系统通信模块。等待指令用于通知第一硬件系统通信模块在等待一段时间后再返回清除数据结果。
S262、根据所等待指令,等待第一硬件系统的清除数据过程,直到第一硬件系统清除数据模块返回的清除数据结果为完成状态时,发送当前清除数据结果至第二硬件系统通信模块。
第一硬件系统通信模块接收到等待指令后,等待一段时间后再向第二硬件系统通信模块返回第一硬件系统的清除数据结果,以保证第一硬件系统在完成清除数据过程后进行重启。
在等待的时间内,第一硬件系统清除数据模块继续对第一硬件系统进行清除数据操作,并实时向第一硬件系统通信模块返回清除数据结果。当第一硬件系统完成清除数据操作时,当前数据结果为完成状态,此时,将当前清除数据结果发送至第二硬件系统通信模块,以便于第二硬件系统清除数据模块根据当前清除数据结果,执行对第二硬件系统进行重启的操作。
由以上技术方案可知,本申请实施例提供的一种双系统并行恢复出厂设置的方法,包括:第二硬件系统清除数据模块根据接收到的恢复出厂设置指令生成启动指令,发送至第二硬件系统通信模块,并由第二硬件系统通信模块根据启动指令生成开始清除指令通过第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;在第二硬件系统清除数据模块接收到第一硬件系统通信模块返回的启动结果后,对第二硬件系统进行清除数据操作;在完成所述第二硬件系统的清除数据操作的情况下,生成查询指令以获知第一硬件系统的清除数据结果;在第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,对第一硬件系统和第二硬件系统进行重启,完成第一硬件系统和第二硬件系统的恢复出厂设置。本实施例提供的方法,可实现第一硬件系统和第二硬件系统并行清除数据,以缩短对两个系统进行恢复出厂设置的时长。
如图22所示,本申请实施例提供的一种双系统并行恢复出厂设置的系统,用于执行图23和图24所示的双系统并行恢复出厂设置的方法的相关步骤,该系统包括:第一硬件系统310和第二硬件系统210;所述第一硬件系统310包括第一硬件系统清除数据模块3101和第一硬件系统通信模块3102,第二硬件系统210包括第二硬件系统清除数据模块2101和第二硬件系统通信模块2102;第一硬件系统清除数据模块3101用于根据第一硬件系统通信模块3102的指令对第一硬件系统310进行清除数据操作,第一硬件系统通信模块3102与第二硬件系统通信模块2102进行通信,第二硬件系统清除数据模块2101用于对第二硬件系统210进行清除数据操作;所述第二硬件系统通信模块2102被配置为:接收第二硬件系统中的第二硬件系统清除数据模块发送的启动指令;所述启动指令是指所述第二硬件系统清除数据模块根据接收到的恢复出厂设置指令生成的指令;根据所述启动指令,生成开始清除指令,并发送至第一硬件系统的第一硬件系统通信模块,以通过所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对所述第一硬件系统进行清除数据操作;接收所述第一硬件系统通信模块返回的第一硬件系统清除数据模块的启动结果,将所述启动结果发送至第二硬件系统清除数据模块,以对所述第二硬件系统进行清除数据操作;在完成所述第二硬件系统的清除数据操作的情况下,根据所述第二硬件系统清除数据模块发送的查询指令,获取所述第一硬件系统通信模块发送的第一硬件系统的清除数据结果;将所述清除数据结果发送至第二硬件系统清除数据模块,在所述第二硬件系统清除数据模块判断清除数据结果为完成状态的情况下,对所述第一硬件系统和第二硬件系统进行重启,完成所述第一硬件系统和第二硬件系统的恢复出厂设置。
可选地,所述接收第一硬件系统通信模块返回的第一硬件系统清除数据模块的启动结果的时刻,与第一硬件系统通信模块启动第一硬件系统清除数据模块的时刻相同。
可选地,所述第二硬件系统通信模块被进一步配置为:接收所述第二硬件系统清除数据模块发送的等待指令;所述等待指令是指所述第二硬件系统清除数据模块在判断所述清除数据结果为未完成状态的情况下发送的指令;将所述等待指令发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块等待第一硬件系统的清除数据过程,直到所述第一硬件系统清除数据模块返回的清除数据结果为完成状态时,获取当前清除数据结果;将所述第二硬件通信模块返回的当前清除数据结果发送至第二硬件系统清除数据模块,以对所述第一硬件系统和第二硬件系统进行重启,完成所述第一硬件系统和第二硬件系统的恢复出厂设置。
如图22所示,本申请实施例提供的一种双系统并行恢复出厂设置的系统,用于执行如图25所示的双系统并行恢复出厂设置的方法的相关步骤,该系统包括:第一硬件系统310和第二硬件系统210;所述第一硬件系统310包括第一硬件系统清除数据模块3101和第一硬件系统通信模块3102,第二硬件系统210包括第二硬件系统清除数据模块2101和第二硬件系统通信模块2102;第一硬件系统清除数据模块3101用于根据第一硬件系统通信模块3102的指令对第一硬件系统310进行清除数据操作,第一硬件系统通信模块3102与第二硬件系统通信模块2102进行通信,第二硬件系统清除数据模块2101用于对第二硬件系统210进行清除数据操作;所述第一硬件系统通信模块3102被配置为:获取第二硬件系统中的第二硬件系统通信模块发送的开始清除指令;根据所述开始清除指令,启动第一硬件系统中的第一硬件系统清除数据模块,以通过所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;接收所述第一硬件系统清除数据模块返回的清除数据结果;根据所述第二硬件系统通信模块发送的查询指令,将所述清除数据结果通过第二硬件系统通信模块发送至第二硬件系统清除数据模块,以由所述第二硬件系统清除数据模块在判断所述清除数据结果为完成状态的情况下,对所述第一硬件系统和第二硬件系统进行重启,完成所述第一硬件系统和第二硬件系统的恢复出厂设置。
可选地,所述第一硬件系统通信模块被进一步配置为:在根据所述开始清除指令启动第一硬件系统清除数据模块的同时,发送所述第一硬件系统清除数据模块的启动结果至第二硬件系统通信模块,以通过所述第二硬件系统通信模块启动第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
可选地,所述第一硬件系统通信模块被进一步配置为:接收所述第二硬件系统通信模块发送的等待指令;所述等待指令是指在清除数据结果为未完成状态的情况下,由所述第二硬件系统清除数据模块发送至第二硬件系统通信模块的指令;根据所述等待指令,等待所述第一硬件系统的清除数据过程,直到所述第一硬件系统清除数据模块返回的清除数据结果为完成状态时,发送当前清除数据结果至第二硬件系统通信模块。
可选地,所述第一硬件系统通信模块被进一步配置为:接收所述第二硬件系统通信模块发送的查询指令;所述查询指令是指由第二硬件系统清除数据模块向第二硬件系统通信模块发送的指令;根据所述查询指令,将所述第一硬件系统清除数据模块返回的清除数据结果发送至第二硬件系统通信模块,由所述第二硬件系统通信模块将清除数据结果发送至第二硬件系统清除数据模块。
具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的双系统并行恢复出厂设置的方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于双系统并行恢复出厂设置的系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在对双系统进行并行恢复出厂设置时,在正常情况下,第二硬件系统在接收到恢复出厂设置指令,并对第一硬件系统发出开始清除指令,第一硬件系统开始清除数据后,给第二硬件系统返回启动结果,第二硬件系统接收到启动结果后开始清除数据。为保证两个系统的并行恢复出厂设置,第二硬件系统完成清除数据操作后,发送查询指令到第一硬件系统,以查询第一硬件系统的清除数据状态,且在第一硬件系统完成清除数据后,由第二硬件系统生成重启指令发送至第一硬件系统,同时重启第一硬件系统和第二硬件系统。
但是,在恢复出厂设置过程中,第一硬件系统由第二硬件系统启动清除数据操作,且第二硬件系统需要在第一硬件系统返回正常结果的情况执行下一过程,使得两个系统在进行交互时易出现异常。例如,无法启动第一硬件系统中第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,或者,第一硬件系统通信模块无法向第二硬件系统通信模块返回启动结果和第一硬件系统的清除数据结果,此时,均会影响第二硬件系统的下一步操作,进而影响双系统并行恢复出厂设置的过程。
在使用双系统架构的显示设备时,用户下载的第三方应用、媒体播放文件等都存放在第一硬件系统中,如果第一硬件系统端无法清除数据,长时间不清理可能导致第一硬件系统出现使用异常。因此,在对双系统进行并行恢复出厂设置时出现异常的情况,需要执行异常处理逻辑,以保证第一硬件系统和第二硬件系统都可以正常完成清除数据操作,实现两个系统的并行恢复出厂设置。
由于在并行恢复出厂设置过程中,第二硬件系统为主动通信方,因此,异常处理逻辑均在第二硬件系统进行。
图26中示例性示出了根据实施例中双系统并行恢复出厂设置异常的处理方法的流程图;如图26所示,本发明实施例提供的一种双系统并行恢复出厂设置异常的处理方法,包括以下步骤:
S31、根据接收到的恢复出厂设置指令生成开始清除指令。
第二硬件系统接收到用户触发的恢复出厂设置指令后,发送至第二硬件系统清除数据模块,第二硬件系统清除数据模块根据恢复出厂设置指令生成启动指令,并将该启动指令发送至第二硬件系统通信模块,以由第二硬件系统通信模块与第一硬件系统中的第一硬件系统通信模块进行通信。
启动指令中携带有开始清除数据的命令参数,第二硬件系统通信模块根据启动指令将第二硬件系统通信模块启动后,由第二硬件系统通信模块生成开始清除指令。
S32、将开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作。
第二硬件系统通信模块与第一硬件系统的第一硬件系统通信模块进行通信,并将开始清除指令发送至第一硬件系统通信模块,以由第一硬件系统通信模块启动第一硬件系统清除数据模块,并对第一硬件系统进行清除数据操作。
第一硬件系统清除数据模块被启动后,即表示第二硬件系统与第一硬件系统已成功建立通信,在清除数据过程中,第一硬件系统和第二硬件系统可实现实时通信。
S33、在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试。
第一硬件系统清除数据模块根据开始清除指令,立即对第一硬件系统进行清除数据操作,同时,向第二硬件系统通信模块发送启动结果,以通知第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
但是,如果第一硬件系统出现异常,例如,根据开始清除指令无法启动第一硬件系统清除数据模块,或者,第一硬件系统通信模块无法将启动结果返回至第二硬件系统通信模块,此时,需要利用异常处理逻辑,来对第一硬件系统进行处理,以确保第一硬件系统能够正常进行清除数据操作。
本实施例中,在第二硬件系统清除数据模块无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果时,采用的异常处理逻辑为重试机制,即由第一硬件系统通信模块根据开始清除指令再次启动一次第一硬件系统清除数据模块,以进行重试。
S34、如果在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作。
为保证恢复出厂设置能够在短时间内进行,在对出现无法获取启动结果的异常情况进行重试时,需设定重试次数阈值,即在重试次数阈值内,第二硬件系统清除数据能够收到第一硬件系统通信模块返回第一硬件系统的启动结果,那么第一硬件系统清除数据模块在被启动的同时立即对第一硬件系统进行清除数据操作,而第二硬件系统清除数据模块接收到启动结果后,也立即对第二硬件系统进行清除数据操作。
本实施例中,重试次数阈值可设定为10次,具体的设定次数可根据实际应用环境而定,本实施例不做具体限定。
每重试一次,第二硬件系统清除数据重新获取一次第一硬件系统通信模块返回的结果,如果在重试几次启动之后,即重试次数在10次以内,第二硬件系统清除数据能够收到第一硬件系统通信模块返回第一硬件系统的启动结果,说明第一硬件系统启动成功,即可进行清除数据操作,此时,由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,同时,第二硬件系统清除数据模块接收到启动结果后,也立即对第二硬件系统进行清除数据操作,实现两个系统的并行清除数据。
但是,如果在重试多次启动后,即重试次数超过10次时,第二硬件系统清除数据仍无法收到第一硬件系统通信模块返回第一硬件系统的启动结果,说明第一硬件系统清除数据失败,此时,退出第二硬件系统的清除数据操作,停止第一硬件系统和第二硬件系统的并行恢复出厂设置过程。
S35、在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,第二硬件系统清除数据模块生成查询指令,发送至第二硬件系统通信模块,再由第二硬件系统通信模块将查询指令发送至第一硬件系统通信模块,以由第一硬件系统通信模块查询第一硬件系统的清除数据结果。
第一硬件系统通信模块将第一硬件系统的清除数据结果通过第二硬件系统通信模块发送至第二硬件系统清除数据模块,为保证第二硬件系统和第一硬件系统的同步,由第二硬件系统清除数据模块判断清除数据结果的完成情况,如果清除数据结果表明的状态为完成状态,说明第一硬件系统已完成清除数据操作,此时,可执行重启系统的步骤。如果清除数据结果表明的状态为未完成状态,说明第一硬件系统还未完成清除数据操作,此时并不能重启系统。
第二硬件系统清除数据模块在判断清除数据结果为未完成状态的情况下,生成等待指令,并发送至第二硬件系统通信模块。等待指令用于通知第一硬件系统通信模块在等待一段时间后再返回清除数据结果。
由第二硬件系统通信模块将该等待指令发送至第一硬件系统通信模块,由第一硬件系统通信模块等待一段时间,再返回第一硬件系统清除数据模块的清除数据结果,直到清除数据结果为完成状态时为止。当前清除数据结果用于表明等待一段时间后,第一硬件系统清除数据模块在完成清除数据操作的结果。
将当前清除数据结果发送至第二硬件系统清除数据模块,由第二硬件系统清除数据模块在第一硬件系统完成清除数据操作的时候对第二硬件系统进行重启。由于第一硬件系统中并未安装有恢复出厂设置相关的组件,也不具有自行重启的功能。因此,本实施例中,第一硬件系统的重启由第二硬件系统来启动,即在第二硬件系统和第一硬件系统均完成清除数据操作后,重新启动第二硬件系统。由第二硬件系统生成重启指令,发送至第一硬件系统,已通知第一硬件系统完成重新启动操作,随即完成第二硬件系统和第一硬件系统的恢复出厂设置。
在极端情况下,第一硬件系统端的第一硬件系统清除数据模块易出现异常,也就是上述实施例中公开的在达到重试次数阈值时,第二硬件系统清除数据模块仍无法收到第一硬件系统通信模块返回第一硬件系统的启动结果,此时则退出第二硬件系统的清除数据操作,停止对两个系统进行恢复出厂设置。
而在对两个系统进行恢复出厂设置时,如果因异常情况导致无法成功,易对两个系统的后续应用性能产生影响,因此,在极端情况下,采用另一种异常处理逻辑,即功能性异常处理方法来解决上述问题。
图27中示例性示出了根据另一实施例中双系统并行恢复出厂设置异常的处理方法的流程图。具体地,如图27所示,本实施例提供的双系统并行恢复出厂设置异常的处理方法,还包括:
S321、如果在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,接收第一硬件系统通信模块返回的启动失败指令。
在重试多次启动后,第二硬件系统清除数据仍无法收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,为了保证第二硬件系统能够及时针对第一硬件系统出现无法进行清除数据操作的情况进行处理,第一硬件系统会在重试次数达到重试次数阈值后,生成启动失败指令,并通过第一硬件系统通信模块和第二硬件系统通信模块发送至第二硬件系统清除数据模块。
S322、根据启动失败指令,获取用户触发的本机按键指令;
在Android系统的原生机制中,通常进入Recovery模块清除用户数据,基于此,本实施例提供的功能性异常处理方法,采用通过外部手段触发,同时进入双系统的Recovery模式来执行清除数据的操作。
外部触发可以为本机按键触发和遥控器按键触发,由于遥控器按键比较容易被用户误触发,所以本实施例采用本机按键触发的方式。在采用功能性异常处理方法的过程中,双系统的通信方式采用网络和串口的方式,且与双系统并行恢复出厂设置的通信方式相同,优先网络通信,串口通信次之。
第二硬件系统接收到第一硬件系统返回的启动失败指令后,为提醒用户对该极端情况进行处理,可在显示屏上显示提示信息。即第二硬件系统根据启动失败指令,生成提示信息发送至显示屏,由显示屏进行显示,提醒用户触发本机按键。
用户在显示终端上触发本机按键,即可生成本机按键指令,并发送至第二硬件系统,由第二硬件系统清除数据模块根据本机按键指令执行相应操作。
S323、根据本机按键指令,在第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;BCB信息用于第一硬件系统和第二硬件系统进入Recovery模式进行清除数据。
本机按键被触发后,根据本机按键指令,在第一硬件系统和第二硬件系统中同时写入用于进入Recovery模块清除数据的BCB信息,具体地,在第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息。
BCB(BootLoader Control Block,引导程序控制块)是一个结构体,它是BootLoader与Recovery之间的通信接口,也是BootLoader与第二硬件系统之间的通信接口。BCB信息是指loader引导时用于判定进入Recovery模式或者主系统的信息,例如,如果需要系统进入Recovery模式,则可根据BCB信息来判定使系统进入OTA升级或者清除数据操作。
每个系统具有自己的BCB信息,第一硬件系统根据第二硬件系统发送的写入BCB信息指令,写入下次重启进入Recovery模式执行OTA升级的BCB信息。
S324、在Recovery模式下,根据BCB信息,第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
根据BCB信息即可同时实现第一硬件系统和第二硬件系统进入Recovery模式后的清除数据操作,即第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
在第一硬件系统和第二硬件系统进行清除数据过程时,第一硬件系统和第二硬件系统均会进入一个同步模式,且在同步模式下,第一硬件系统处于等待状态,一直等待第二硬件系统的指令,以便第二硬件系统能够查询到第一硬件系统的清除数据状态,使第一硬件系统和第二硬件系统达到并行清除数据的目的。
可见,本实施例提供的方法,在极端情况下,即第二硬件系统经过多次重试后,第一硬件系统仍无法启动并无法进行清除数据操作的情况,采用功能性异常处理方法,将第一硬件系统和第二硬件系统同时进入Recovery模式,并根据BCB信息对进入Recovery模式的第一硬件系统和第二硬件系统同时执行清除数据操作,在恢复正常的恢复出厂设置过程的同时,使得第一硬件系统和第二硬件系统并行清除数据,进而不延长清除数据的时间,提高用户体验。
第一硬件系统和第二硬件系统在同步模式下,第二硬件系统清除数据模块可以实时查询第一硬件系统的清除数据状态,进而可以在第一硬件系统和第二硬件系统均完成清除数据操作时,执行重启系统的步骤,以完成恢复出厂设置的过程。
因此,本实施例提供的处理方法,还包括:
S331、在第一硬件系统和第二硬件系统进入同步模式后,第二硬件系统清除数据模块生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果。
第一硬件系统和第二硬件系统经过同步之后,第二硬件系统清除数据模块在完成第二硬件系统的清除数据操作后,生成查询指令,实时查询第一硬件的清除数据状态。第一硬件系统由第一硬件系统清除数据模块执行清除数据操作,在进入同步模式后,第一硬件系统清除数据模块实时将当前的清除数据结果反馈至第一硬件系统通信模块,并进行存储,以便于第二硬件系统的查询。
具体地,第二硬件系统清除数据模块将查询指令,发送至第二硬件系统通信模块,再由第二硬件系统通信模块将查询指令发送至第一硬件系统通信模块,实现第二硬件系统与第一硬件系统的信息交互。第一硬件系统通信模块在接收到查询指令后,随即将当前存储的第一硬件系统的清除数据结果发送至第二硬件系统通信模块,再由第二硬件系统通信模块将第一硬件系统的清除数据结果发送至第二硬件系统清除数据模块。
S332、如果第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启指令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
在第二硬件系统清除数据模块在接收到清除数据结果时,此时,第一硬件系统和第二硬件系统通信正常。第二硬件系统清除数据模块对接收到的清除数据结果进行判断,如果清除数据结果为完成状态,则说明第一硬件系统完成清除数据状态。此时,第二硬件系统清除数据模块在对第二硬件系统完成清除数据操作后,生成重启指令,并将重启指令通过第二硬件系统通信模块和第一硬件系统通信模块发送至第一硬件系统清除数据模块,以使第一硬件系统清除数据模块根据重启指令对第一硬件系统进行重启。第二硬件系统在重新启动的同时,能够通知第一硬件系统也进行重新启动,使得第一硬件系统和第二硬件系统同时重启后完成恢复出厂设置。
可见,第二硬件系统清除数据模块对接收到的第一硬件系统的清除数据结果进行判断,可以保证第一硬件系统和第二硬件系统均在完成清除数据操作的情况下对两个系统进行重启,并在同步模式下实现清除数据状态的同步,以保证第一硬件系统和第二硬件系统的并行清除数据,实现双系统的并行恢复出厂设置。
但是,如果第二硬件系统的清除数据操作的速度较快,而第一硬件系统的清除数据操作的速度较慢,那么在第二硬件系统完成清除数据操作后,第一硬件系统可能并未完成清除数据操作。若此时第二硬件系统生成查询指令,查询第一硬件系统的清除数据结果,可能为未完成状态。当第一硬件系统未完成清除数据操作时,第二硬件系统无法发起重启指令,避免第一硬件系统在未完成清除数据操作的情况下重启,影响第一硬件系统的性能。
因此,为避免出现上述问题,在第一硬件系统未完成清除数据操作时,本实施例提供的方法,还包括:
S341、如果第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令。
如果第二硬件系统清除数据模块判断清除数据结果为未完成状态,则说明第一硬件系统未完成清除数据状态。此时,第二硬件系统清除数据模块生成等待指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,由第一硬件系统通信模块等待一段时间,再返回第一硬件系统清除数据模块的清除数据结果,直到清除数据结果为完成状态时为止。
S342、根据等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
第一硬件系统通信模块根据等待指令,等待第一硬件系统清除数据模块返回清除数据操作为完成状态时的清除数据结果,此时,第二硬件系统也为等待第一硬件系统的最新的清除数据结果的状态。而为保证恢复出厂设置的花费时长,第二硬件系统端设定等待时间阈值,也就是说,如果第二硬件系统在等待时间阈值内,能够接收到第一硬件系统的最新的清除数据结果,则说明双系统的恢复出厂设置的过程正常;但如果第二硬件系统在等待时间阈值内,仍然不能接收到第一硬件系统的最新的清除数据结果,则说明第一硬件系统端清除数据失败。
本实施例中,设定等待时间阈值为5分钟,在等待5分钟内,第二硬件系统清除数据模块通过第二硬件系统通信模块接收到第一硬件系统的最新的清除数据结果,此时生成重启指令,在第二硬件系统重启的同时,通知第一硬件系统进行重启,实现双系统的并行恢复出厂设置。
若超时5分钟后,第二硬件系统清除数据模块通过第二硬件系统通信模块仍然无法接收到第一硬件系统的最新的清除数据结果,即可判定第一硬件系统清除数据失败。在功能性异常处理方法下,第一硬件系统在多次重试后仍无法完成清除数据操作,则不再对第一硬件系统进行处理,为避免延长清除数据的时长,此时,第二硬件系统生成重启指令,并将重启指令通过第二硬件系统通信模块和第一硬件系统通信模块发送至第一硬件系统清除数据模块,以使第一硬件系统清除数据模块根据重启指令对第一硬件系统进行重启。第二硬件系统在重新启动的同时,能够通知第一硬件系统也进行重新启动,使得第一硬件系统和第二硬件系统同时重启后完成恢复出厂设置。
在另一种情况下,第二硬件系统清除数据模块完成第二硬件系统的清除数据操作时,在同步模块下,查询第一硬件系统的清除数据结果,若第一硬件系统端无法返回清除数据结果,或者,返回的清除数据结果为未完成状态,为保证双系统恢复出厂设置的顺利进行,则进入重试机制。
图28中示例性示出了根据又一实施例中双系统并行恢复出厂设置异常的处理方法的流程图。具体地,如图28所示,本实施例提供的方法,还包括:
S351、在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;
S352、将查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由第一硬件系统通信模块查询第一硬件系统的清除数据结果;
第二硬件系统清除数据模块在完成第二硬件系统的清除数据操作时,发起主动通信,对第一硬件系统的清除数据结果进行查询,以保证双系统的并行清除数据。
第一硬件系统在进行清除数据操作时,第一硬件系统清除数据模块实时将清除数据结果返回至第一硬件系统通信模块并进行存储,第一硬件系统通信模块在接收到查询指令后,可直接将当前存储的第一硬件系统的清除数据结果发送至第二硬件系统通信模块,并由第二硬件系统通信模块将第一硬件系统的清除数据结果返回至第二硬件系统清除数据模块。
S353、在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;
在网络和串口出现异常时,第一硬件系统和第二硬件系统无法实现通信,使得第二硬件系统无法接收到第一硬件系统发送的清除数据结果。
而在第二硬件系统清除数据模块判定第一硬件系统的清除数据结果为未完成状态时,或者,第一硬件系统通信模块和第二硬件系统通信模块无法进行通信,使得第一硬件系统的清除数据结果无法发送给第二硬件系统时,为保证恢复出厂设置的过程正常,本实施例采用重试机制,且重试的频率按照设定的间隔时长而定。
本实施例中,设定间隔时长为2秒,即第二硬件系统清除数据模块每隔2秒重新发送查询指令至第一硬件系统通信模块,第一硬件系统通信模块每隔2秒重新向第二硬件系统通信模块发送第一硬件系统的清除数据结果。
S354、如果在重试总时长阈值内,接收到清除数据结果,重启第一硬件系统和第二硬件系统;
S355、如果在重试总时长阈值内,无法接收到清除数据结果,重启第二硬件系统。
为避免延长双系统清除数据的时长,本实施例中,设定重试总时长阈值,可为5分钟。在累积重试时长达到重试总时长阈值时,则不再进行重试,并判定第一硬件系统清除数据失败。重试总时长阈值可根据用户的需求自行设定,本实施例不作具体限定。
在5分钟内,如果第一硬件系统通信模块能够根据查询指令向第二硬件系统通信模块发送第一硬件系统的清除数据结果,则第二硬件系统清除数据模块在判断清除数据结果为完成状态时,生成重启指令,并将重启指令通过第二硬件系统通信模块和第一硬件系统通信模块发送至第一硬件系统清除数据模块,以使第一硬件系统清除数据模块根据重启指令对第一硬件系统进行重启。第二硬件系统在重新启动的同时,能够通知第一硬件系统也进行重新启动,使得第一硬件系统和第二硬件系统同时重启后完成恢复出厂设置。
但如果超时5分钟,第一硬件系统通信模块依然无法根据查询指令向第二硬件系统通信模块发送第一硬件系统的清除数据结果,第二硬件系统清除数据模块无法接收到第一硬件系统完成清除数据状态的清除数据结果,即可判定第一硬件系统清除数据失败,此时,仅对第二硬件系统进行重启。
由以上技术方案可知,本发明实施例提供的一种双系统并行恢复出厂设置异常的处理方法,包括:第二硬件系统清除数据模块根据接收到的恢复出厂设置指令生成开始清除指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作。在第二硬件系统清除数据模块无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果时,采用的异常处理逻辑为重试机制,在重试次数阈值内,第二硬件系统清除数据能够收到第一硬件系统通信模块返回第一硬件系统的启动结果,那么第一硬件系统清除数据模块在被启动的同时立即对第一硬件系统进行清除数据操作,而第二硬件系统清除数据模块接收到启动结果后,也立即对第二硬件系统进行清除数据操作。本实施例提供的方法,可在恢复出厂设置过程中,第一硬件系统出现异常时,采用重试机制,再次对第一硬件系统进行启动,以保证双系统并行恢复出厂设置的顺利进行,避免延长双系统清除数据的时长。
图29中示例性示出了根据实施例中双系统并行恢复出厂设置异常的处理装置的结构框图。如图29所示,本申请实施例提供的一种双系统并行恢复出厂设置异常的处理装置,用于执行图26至图28所示的双系统并行恢复出厂设置异常的处理方法的相关步骤,具体地,该处理装置包括:开始清除指令生成模块10,用于根据接收到的恢复出厂设置指令生成开始清除指令;开始清除指令发送模块20,用于将所述开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;重试模块30,用于在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试;启动结果接收模块40,用于在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;重启模块50,用于在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
可选地,还包括:启动失败指令接收模块,用于在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,接收第一硬件系统通信模块返回的启动失败指令;本机按键指令获取模块,用于根据所述启动失败指令,获取用户触发的本机按键指令;BCB信息写入模块,用于根据所述本机按键指令,在所述第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;所述BCB信息用于第一硬件系统和第二硬件系统进入Recovery模式进行清除数据;清除数据模块,用于在Recovery模式下,根据所述BCB信息,所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,所述第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
可选地,还包括:查询指令生成模块,用于在第一硬件系统和第二硬件系统进入同步模式后,生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果;重启模块,还用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:等待指令生成模块,用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令;重启模块,还用于根据所述等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
可选地,还包括:查询指令生成模块,还用于在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;查询指令发送模块,用于将所述查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块查询第一硬件系统的清除数据结果;重试模块,还用于在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;重启模块,还用于在重试总时长阈值内,接收到清除数据结果的情况下,重启第一硬件系统和第二硬件系统;以及,在重试总时长阈值内,无法接收到清除数据结果的情况下,重启第二硬件系统。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的一种双系统并行恢复出厂设置异常的处理方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于一种双系统并行恢复出厂设置异常的处理装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在Android系统的显示设备进行恢复出厂设置时,在正常情况下,需要使Android系统进入恢复模式,以清除用户数据。但是,在显示设备出现异常时,或者,在恢复出厂设置过程中出现异常时,则需要采用按住本机按键的方式强制Android系统进入恢复模式,实现在应急恢复措施下的恢复出厂设置。
在传统的显示设备中,仅有一个系统,即主系统,且本机按键设置在主系统上。在开启显示设备时,主系统检测是否有本机按键被持续按下,以判断是否需要进入恢复模式。例如,如果本机按键被持续按键,超过预设的3秒,则主系统进入恢复模式;如果本机按键并未被持续按键,而是按下后立即弹起,则主系统不进入恢复模式,而进入正常启动模式。
而在具有双系统架构的显示设备中,本机按键只连接在主系统上,即第二硬件系统,从系统即第一硬件系统上并未设置关于恢复出厂设置的相关部件。在对含有第一硬件系统和第二硬件系统的显示设备进行恢复出厂设置时,需要第一硬件系统和第二硬件系统同步进入恢复模式,避免延长双系统清除数据的时长,保证用户的体验。
为此,本发明实施例提供了一种双系统同步进入恢复模式的方法,通过复用第一硬件系统和第二硬件系统之间已有的通讯线,可在不添加额外电路的基础上,保证双系统同步进入恢复模式,且对双系统启动时间性能影响较小。
图30中示例性示出了根据实施例中双系统之间的通信交互图。为实现第一硬件系统310和第二硬件系统210之间的同步进入恢复模式,如图30所示,本实施例中,在第一硬件系统310和第二硬件系统210之间设有通信模块510和电源管理模块410,通信模块510用于完成第一硬件系统310和第二硬件系统210之间的双向通信,电源管理模块410用于为第一硬件系统310和第二硬件系统210之间提供电源相关功能,且第一硬件系统310的上电由第二硬件系统210通过电源管理模块410来实现。
第二硬件系统210上连接有本机按键模块610,本机按键模块610仅连接在第二硬件系统210上,且第二硬件系统210可以通过本机按键模块610获取本机按键状态,以此来确定本机按键的长按、持续时长、短按、抬起时刻等状态信息。
在进行恢复出厂设置时,使系统进入恢复模式的操作通常发生在系统启动阶段,具体为Android系统启动过程的BootLoader阶段,该阶段为双系统正常进行恢复出厂设置时的阶段。
另外,本实施例提供的方法,还可应用到双系统在进行恢复出厂设置时出现异常的情况中。在前述实施例中提到,在第二硬件系统启动第一硬件系统清除数据时,第一硬件系统极易出现无法启动或无法将启动结果、清除数据结果返回至第二硬件系统的情况。在此种情况下,前述实施例采用重试机制来对第一硬件系统进行多次的启动,以便于第一硬件系统的清除数据过程恢复正常。
在正常情况下,第二硬件系统在重试几次之后即可重新启动第一硬件系统,并进入正常的清除数据操作。但是,在极端情况下,也存在超过重试次数仍无法重新启动第一硬件系统的情况。因此,前述实施例提供的方案为保证双系统的并行恢复出厂设置,采用功能性异常处理方法,即通过触发本机按键的方式,使第一硬件系统和第二硬件系统同时进入Recovery模式进行清除数据操作。
而第一硬件系统和第二硬件系统同时进入Recovery模式的触发条件,并非用户按下本机按键即可触发,为避免用户的误操作,需要用户持续按下本机按键较长时间才可触发。也就是说,在前述实施例中,利用本机按键使第一硬件系统和第二硬件系统同时进入Recovery模式进行清除数据操作的方案,也可应用本实施例提供的双系统同步进入恢复模式的方法。
图31中示例性示出了根据实施例中双系统同步进入恢复模式的方法的流程图;图32中示例性示出了根据实施例中双系统同步进入恢复模式的方法的数据流图。如图31和图32所示,本发明实施例提供的一种双系统同步进入恢复模式的方法,包括以下步骤:
S41、获取本机按键状态。
由于本机按键仅与第二硬件系统连接,第二硬件系统上设有本机按键模块,第二硬件系统通过本机按键模块与本机按键进行通信。
在用户需要对显示设备进行恢复出厂设置时,在启动开机的过程中,按下本机按键,且持续一段时间,此时,本机按键模块将本机按键的被按下的状态发送至第二硬件系统,由第二硬件系统根据获取到的本机按键状态执行相应操作。
本机按键状态是指本机按键被按下的状态,包括长按状态、短按状态、按键抬起状态等。在不同的状态下,第二硬件系统执行不同的操作,如进入恢复模式或进入正常启动模式。
S42、在本机按键状态为长按状态的情况下,进入恢复模式倒计时状态;
第二硬件系统接收到本机按键模块发送的本机按键状态后,判断本机按键被按下的状态,如果本机按键被持续按下,即在长按状态时,说明用户想要将Android系统进行恢复出厂设置;如果本机按键被按下并迅速抬起,即在短按状态时,说明用户只是正常开机启动显示设备,无需Android系统进入恢复模式。
因此,在第二硬件系统判断出本机按键状态为长按状态时,即可控制第二硬件系统进入恢复模式倒计时状态。
恢复模式倒计时状态是指采用倒计时的形式,在倒计时结束时,控制系统进入恢复模式的状态。本实施例中,倒计时可设置8秒,该倒计时的时长可根据用户的使用需求自行配置。倒计时的时长可长于本领域常采用的确定按键为长按状态的标准时长,长按状态的标准时长可为2秒或3秒,以避免用户产生误操作,例如,用户只有在持续按下本机按键8秒后才可使系统进入恢复模式。
S43、生成通知指令,发送至第一硬件系统,以通知第一硬件系统进入恢复模式倒计时状态。
第二硬件系统满足进入恢复模式倒计时状态的情况下,生成通知指令,并通过通信模块发送至第一硬件系统,第一硬件系统根据通知指令也进入恢复模式倒计时状态。
为保证第一硬件系统和第二硬件系统进入恢复模式的同步性,本实施例中,第二硬件系统通知第一硬件系统进入恢复模式倒计时状态的时刻为第二硬件系统确定本机按键状态为长按状态的时刻。
也就是说,第二硬件系统在判断出本机按键状态为长按状态时,即本机按键被按下的2秒或3秒后,立即生成通知指令,并通过通信模块发送至第一硬件系统,以保证第二硬件系统进入恢复模式倒计时状态的时刻与第一硬件系统进入恢复模式倒计时状态的时刻相同或相近。
第一硬件系统在进入恢复模式倒计时状态之前一直处于等待指令状态,而触发第一硬件系统处于等待指令状态的条件是第二硬件系统通过电源管理模块给第一硬件系统上电的时刻。
因此,在由第二硬件系统获取本机按键状态之前,还包括实现第一硬件系统处于等待指令状态的步骤,具体为:
S401、根据上电信号,对第二硬件系统进行上电开机操作。
S402、第二硬件系统通过电源管理模块将上电信号发送至第一硬件系统,使第一硬件系统开机启动并处于等待指令状态。
显示设备的电源按键仅与第二硬件系统连接,用户触发电源按键,生成上电信号,第二硬件系统根据上电信号即可实现上电开机启动操作。而第一硬件系统并未与电源按键直接连通,因此无法根据电源按键产生的上电信号实现开启启动。
在具有双系统结构的显示设备中,第一硬件系统的上电操作由第二硬件系统实现,第二硬件系统将上电信号通过电源管理模块发送至第一硬件系统,为第一硬件系统提供电源相关功能,促使第一硬件系统开机启动。第一硬件系统被启动后一直处于等待指令状态,等待第二硬件系统通过通信模块发送的相应命令。
第一硬件系统预先启动,并时刻等待第二硬件系统的命令,有助于在第二硬件系统发送指令时,第一硬件系统能够及时响应该指令,使得第一硬件系统和第二硬件系统能够实现同步操作,避免延长相应操作的时长。
S44、检测本机按键状态的当前状态,如果当前状态与所述恢复模式倒计时状态相匹配,第一硬件系统和第二硬件系统同步进入恢复模式。
第二硬件系统在进入恢复模式倒计时状态之后,持续检测本机按键状态,以便能够及时获取到本机按键的状态变化。
从倒计时开始到倒计时结束的过程中,本机按键状态会发生多种可能的变化,例如,当前状态包括本机按键持续处于按下状态、抬起状态等。若在倒计时结束时,本机按键仍处于持续按下状态,此时,本机按键状态的当前状态与恢复模式倒计时状态相匹配,可控制系统进入恢复模式。如果在倒计时过程中,本机按键抬起,即本机按键状态的当前状态为抬起状态,此时,本机按键状态的当前状态与恢复模式倒计时状态不匹配,不可控制系统进入恢复模式,而是进入正常启动状态。
为准确控制第一硬件系统和第二硬件系统同步进入恢复模式,本实施例中,采用本机按键状态的当前状态与恢复模式倒计时状态相匹配的方式,即在倒计时结束时,本机按键仍处于持续按下状态的方式来实现。而确定本机按键处于持续按下状态的判断依据可为长按状态的持续时长,通过持续时长来表征本机按键被持续按下的状态;还可根据本机按键的抬起状态来判断,由本机按键抬起状态的时刻来表征本机按键与倒计时结束时刻的关系,来表征本机按键是否处于长按状态。在每种判断依据下,按照如下方法使第一硬件系统和第二硬件系统同步进入恢复模式。
图33中示例性示出了根据实施例中双系统同步进入恢复模式的一种实施方式的方法流程图。如图33所示,在其中一种可行的具体实施方式中,检测本机按键状态的当前状态,如果当前状态与恢复模式倒计时状态相匹配,第一硬件系统和第二硬件系统同步进入恢复模式,包括:
S4411、检测本机按键状态为长按状态的持续时长。
第二硬件系统在进入恢复模式倒计时状态之后,持续检查本机按键状态的当前状态,本实施例中,由长按状态的持续时长来表征当前状态。
长按状态的持续时长是指由第二硬件系统判断本机按键状态为长按状态的时刻起至抬起时刻对应的时长。
S4412、如果本机按键为长按状态时的持续时长超过恢复模式倒计时状态的倒计时时长,则第二硬件系统进入恢复模式。
在第二硬件系统获取到本机按键状态为长按状态的持续时长后,需判断持续时长与恢复模式倒计时状态的倒计时时长。如果持续时长大于或等于倒计时时长,说明本机按键是在倒计时结束之后被抬起,此时,本机按键状态的当前状态与恢复模式倒计时状态相匹配,满足恢复模式的进入条件,使第二硬件系统进入恢复模式。
如果持续时长小于倒计时时长,说明本机按键是在倒计时结束之前被抬起,此时,本机按键状态的当前状态与恢复模式倒计时状态不相匹配,满足正常启动的触发条件,使第二硬件系统进入正常启动状态。
S4413、在第一硬件系统对应的恢复模式倒计时状态的倒计时结束的情况下,如果第一硬件系统未收到第二硬件系统发送的命令,则第一硬件系统进入恢复模式。
第一硬件系统一直处于等待指令状态,如果在倒计时结束时,第一硬件系统依然没有接收到第二硬件系统发送的命令,则说明第二硬件系统已进入恢复模式,此时,第一硬件系统在倒计时结束的时刻起进入恢复模式。
由于第一硬件系统和第二硬件系统在相同或相近的时刻进入恢复模式倒计时状态,因此,在第二硬件系统的倒计时结束时,第一硬件系统的倒计时也会结束或即将结束,而第一硬件系统和第二硬件系统均是在倒计时结束之后进入恢复模式,使得第二硬件系统进入恢复模式的时刻与第一硬件系统进入恢复模式的时刻相同或相近,进而可保证第一硬件系统和第二硬件系统同步进入恢复模式,避免延长双系统的清除数据的时长。
如果在第一硬件系统对应的倒计时结束之前,第一硬件系统接收到第二硬件系统发送的命令,则说明第二硬件系统已进入正常启动流程。此时,第一硬件系统根据接收到的命令进入正常启动流程,同时,停止倒计时,将恢复模式倒计时状态转变为正常启动状态。
具体地,在第二硬件系统检测到主机按键状态为长按状态的持续时长小于倒计时时长的情况下,第二硬件系统进入正常启动状态,并通过通信模块发送启动命令至第一硬件系统,第一硬件系统根据启动命令,停止倒计时,将恢复模式倒计时状态转变为正常启动状态,并进入正常启动流程。
图34中示例性示出了根据实施例中双系统同步进入恢复模式的另一种实施方式的方法流程图。如图34所示,在另一种可行的具体实施方式中,检测本机按键状态的当前状态,如果当前状态与恢复模式倒计时状态相匹配,第一硬件系统和第二硬件系统同步进入恢复模式,包括:
S4421、检测本机按键状态的按键抬起时刻。
第二硬件系统在进入恢复模式倒计时状态之后,持续检查本机按键状态的当前状态,本实施例中,由按键抬起状态表征本机按键状态的当前状态。
在按下的本机按键被抬起后,第二硬件系统即可通过本机按键模块获知本机按键被抬起和按键抬起时刻。按键抬起时刻为本机按键由按下状态变为抬起状态时对应的时刻。
S4422、如果按键抬起时刻位于恢复模式倒计时状态的倒计时结束时刻之后,则第二硬件系统进入恢复模式。
在第二硬件系统获取到本机按键状态为抬起状态时对应的按键抬起时刻之后,需判断按键抬起时刻与第二硬件系统对应的恢复模式倒计时状态的倒计时结束时刻之间的先后关系。如果按键抬起时刻在倒计时结束时刻之后,说明本机按键是在倒计时结束之后被抬起,此时,本机按键状态的当前状态与恢复模式倒计时状态相匹配,满足恢复模式的进入条件,使第二硬件系统进入恢复模式。
如果按键抬起时刻在倒计时结束时刻之前,说明本机按键是在倒计时结束之前被抬起,此时,本机按键状态的当前状态与恢复模式倒计时状态不相匹配,满足正常启动的触发条件,使第二硬件系统进入正常启动状态。
S4423、在第一硬件系统对应的恢复模式倒计时状态的倒计时结束的情况下,如果第一硬件系统未收到第二硬件系统发送的命令,则第一硬件系统进入恢复模式。
第一硬件系统一直处于等待指令状态,如果在倒计时结束时,第一硬件系统依然没有接收到第二硬件系统发送的命令,则说明第二硬件系统已进入恢复模式,此时,第一硬件系统在倒计时结束的时刻起进入恢复模式。
由于第一硬件系统和第二硬件系统在相同或相近的时刻进入恢复模式倒计时状态,因此,在第二硬件系统的倒计时结束时,第一硬件系统的倒计时也会结束或即将结束,而第一硬件系统和第二硬件系统均是在倒计时结束之后进入恢复模式,使得第二硬件系统进入恢复模式的时刻与第一硬件系统进入恢复模式的时刻相同或相近,进而可保证第一硬件系统和第二硬件系统同步进入恢复模式,避免延长双系统的清除数据的时长。
如果在第一硬件系统对应的倒计时结束之前,第一硬件系统接收到第二硬件系统发送的命令,则说明第二硬件系统已进入正常启动流程。此时,第一硬件系统根据接收到的命令进入正常启动流程,同时,停止倒计时,将恢复模式倒计时状态转变为正常启动状态。
具体地,在第二硬件系统检测到主机按键状态为抬起状态的按键抬起时刻在倒计时结束时刻之前的情况下,第二硬件系统进入正常启动状态,并通过通信模块发送启动命令至第一硬件系统,第一硬件系统根据启动命令,停止倒计时,将恢复模式倒计时状态转变为正常启动状态,并进入正常启动流程。
在第一硬件系统和第二硬件系统进入恢复模式后,对第一硬件系统和第二硬件系统的状态进行同步,以保证第一硬件系统和第二硬件系统能够进行同步的清除数据操作,避免延长清除数据的时长,提高用户体验。
由以上技术方案可知,本发明实施例提供的一种双系统同步进入恢复模式的方法,包括:由第二硬件系统获取本机按键状态;在第二硬件系统判断本机按键状态为长按状态的情况下,第二硬件系统进入恢复模式倒计时状态;同时,第二硬件系统生成通知指令发送至第一硬件系统,通知第一硬件系统进入恢复模式倒计时状态,第一硬件系统进入恢复模式倒计时状态的时刻与第二硬件系统进入恢复模式倒计时状态的时刻相同或相近,以保证第一硬件系统和第二硬件系统同步执行同一操作。第二硬件系统持续检测本机按键状态的当前状态,如果当前状态与恢复模式倒计时状态相匹配,即在倒计时结束时,本机按键一直处于按下状态,第一硬件系统也未收到第二硬件系统的命令,第一硬件系统和第二硬件系统同步进入恢复模式。可见,本实施例提供的方法,两个系统进入恢复模式倒计时状态的时刻相同或相近,且进入恢复模式的条件均为在倒计时结束的时刻,可以保证第一硬件系统和第二硬件系统能够同步执行相应操作,进而实现同步进入恢复模式,避免延长清除数据的时长,提高用户体验。
图35中示例性示出了根据实施例中双系统同步进入恢复模式的装置的结构框图。如图35所示,本申请实施例提供的一种双系统同步进入恢复模式的装置,用于执行图31至34所示的双系统同步进入恢复模式的方法的相关步骤。具体地,该装置包括:获取模块101,用于获取本机按键状态;倒计时状态进入模块201,用于在所述本机按键状态为长按状态的情况下,进入恢复模式倒计时状态;通知指令处理模块301,用于生成通知指令,发送至第一硬件系统,以通知第一硬件系统进入恢复模式倒计时状态;检测模块401,用于检测所述本机按键状态的当前状态,如果所述当前状态与所述恢复模式倒计时状态相匹配,第一硬件系统和第二硬件系统同步进入恢复模式。
可选地,还包括:上电模块,用于根据上电信号,对所述第二硬件系统进行上电开机操作;待机模块,用于通过电源管理模块将所述上电信号发送至第一硬件系统,使所述第一硬件系统开机启动并处于等待指令状态。
可选地,所述第二硬件系统通知第一硬件系统进入恢复模式倒计时状态的时刻为所述第二硬件系统确定本机按键状态为长按状态的时刻。
可选地,所述检测模块401,包括:第一检测单元,用于检测本机按键状态为长按状态的持续时长;第二恢复模式进入单元,用于在所述本机按键为长按状态时的持续时长超过所述恢复模式倒计时状态的倒计时时长的情况下,则第二硬件系统进入恢复模式;第一恢复模式进入单元,在所述第一硬件系统对应的恢复模式倒计时状态的倒计时结束的情况下,用于在所述第一硬件系统未收到第二硬件系统发送的指令时,则第一硬件系统进入恢复模式。
可选地,所述检测模块401,包括:第二检测单元,用于检测本机按键状态的按键抬起时刻;第二恢复模式进入单元,还用于在所述按键抬起时刻位于所述恢复模式倒计时状态的倒计时结束时刻之后时,则第二硬件系统进入恢复模式;第一恢复模式进入单元,在所述第一硬件系统对应的恢复模式倒计时状态的倒计时结束的情况下,还用于在所述第一硬件系统未收到第二硬件系统发送的指令时,则第一硬件系统进入恢复模式。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的双系统同步进入恢复模式的方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于双系统同步进入恢复模式的装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
基于本申请中示出的示例性实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,虽然本申请中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整技术方案。
应当理解,本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种双系统并行恢复出厂设置异常的处理方法,其特征在于,包括以下步骤:
根据接收到的恢复出厂设置指令生成开始清除指令;
将所述开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;
在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试;
如果在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;
在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
2.根据权利要求1所述的处理方法,其特征在于,还包括:
如果在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,接收第一硬件系统通信模块返回的启动失败指令;
根据所述启动失败指令,获取用户触发的本机按键指令;
根据所述本机按键指令,在所述第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;所述BCB信息用于第一硬件系统和第二硬件系统进入recovery模式进行清除数据;
在recovery模式下,根据所述BCB信息,所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,所述第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
3.根据权利要求1所述的处理方法,其特征在于,还包括:
在第一硬件系统和第二硬件系统进入同步模式后,所述第二硬件系统清除数据模块生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果;
如果所述第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
4.根据权利要求3所述的处理方法,其特征在于,还包括:
如果所述第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令;
根据所述等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
5.根据权利要求1所述的处理方法,其特征在于,还包括:
在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;
将所述查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块查询第一硬件系统的清除数据结果;
在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;
如果在重试总时长阈值内,接收到清除数据结果,重启第一硬件系统和第二硬件系统;
如果在重试总时长阈值内,无法接收到清除数据结果,重启第二硬件系统。
6.一种双系统并行恢复出厂设置异常的处理装置,其特征在于,包括:
开始清除指令生成模块,用于根据接收到的恢复出厂设置指令生成开始清除指令;
开始清除指令发送模块,用于将所述开始清除指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块启动第一硬件系统清除数据模块,对第一硬件系统进行清除数据操作;
重试模块,用于在无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,对第一硬件系统通信模块启动第一硬件系统清除数据模块的过程进行重试;
启动结果接收模块,用于在重试次数阈值内,通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果,则对第二硬件系统进行清除数据操作,以及由第一硬件系统清除数据模块对第一硬件系统进行清除数据操作;
重启模块,用于在完成清除数据操作后,对第一硬件系统和第二硬件系统进行重启。
7.根据权利要求6所述的处理装置,其特征在于,还包括:
启动失败指令接收模块,用于在重试次数阈值内,无法通过第二硬件系统通信模块接收到第一硬件系统通信模块返回第一硬件系统的启动结果的情况下,接收第一硬件系统通信模块返回的启动失败指令;
本机按键指令获取模块,用于根据所述启动失败指令,获取用户触发的本机按键指令;
BCB信息写入模块,用于根据所述本机按键指令,在所述第二硬件系统清除数据模块和第一硬件系统清除数据模块中同时写入BCB信息;所述BCB信息用于第一硬件系统和第二硬件系统进入recovery模式进行清除数据;
清除数据模块,用于在recovery模式下,根据所述BCB信息,所述第一硬件系统清除数据模块对第一硬件系统进行清除数据操作,以及,所述第二硬件系统清除数据模块对第二硬件系统进行清除数据操作。
8.根据权利要求6所述的处理装置,其特征在于,还包括:
查询指令生成模块,用于在第一硬件系统和第二硬件系统进入同步模式后,生成查询指令,通过第二硬件系统通信模块发送至第一硬件系统通信模块,以查询第一硬件系统的清除数据结果;
重启模块,还用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为完成状态时,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
9.根据权利要求8所述的处理装置,其特征在于,还包括:
等待指令生成模块,用于在所述第二硬件系统清除数据模块判断接收到的清除数据结果为未完成状态时,生成等待指令;
重启模块,还用于根据所述等待指令,在等待时间阈值内,如果无法接收到完成状态的清除数据结果,重启第二硬件系统;以及,生成重启命令,通过第一硬件系统通信模块发送至第一硬件系统清除数据模块,对第一硬件系统进行重启。
10.根据权利要求6所述的处理装置,其特征在于,还包括:
查询指令生成模块,还用于在第二硬件系统清除数据模块完成第二硬件系统的清除数据操作的情况下,生成查询指令;
查询指令发送模块,用于将所述查询指令通过第二硬件系统通信模块发送至第一硬件系统通信模块,以由所述第一硬件系统通信模块查询第一硬件系统的清除数据结果;
重试模块,还用于在无法接收到第一硬件系统通信模块返回的第一硬件系统的清除数据结果的情况下,则按照间隔时长进行重试;
重启模块,还用于在重试总时长阈值内,接收到清除数据结果的情况下,重启第一硬件系统和第二硬件系统;以及,在重试总时长阈值内,无法接收到清除数据结果的情况下,重启第二硬件系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498223.8A CN112068989B (zh) | 2019-06-10 | 2019-06-10 | 一种双系统并行恢复出厂设置异常的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498223.8A CN112068989B (zh) | 2019-06-10 | 2019-06-10 | 一种双系统并行恢复出厂设置异常的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112068989A CN112068989A (zh) | 2020-12-11 |
CN112068989B true CN112068989B (zh) | 2024-03-26 |
Family
ID=73658020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910498223.8A Active CN112068989B (zh) | 2019-06-10 | 2019-06-10 | 一种双系统并行恢复出厂设置异常的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068989B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370606B1 (en) * | 1998-11-05 | 2002-04-09 | Compaq Computer Corporation | System and method for simulating hardware interrupts in a multiprocessor computer system |
CN103699420A (zh) * | 2013-12-31 | 2014-04-02 | 海信集团有限公司 | 系统恢复方法和系统恢复装置 |
CN103927239A (zh) * | 2014-03-28 | 2014-07-16 | 深圳市江波龙电子有限公司 | 一种终端设备的系统恢复方法及装置 |
CN106445719A (zh) * | 2016-09-26 | 2017-02-22 | 青岛海信移动通信技术股份有限公司 | 恢复模式Recovery指令读写方法及装置 |
CN107704337A (zh) * | 2017-08-22 | 2018-02-16 | 北京珠穆朗玛移动通信有限公司 | 恢复出厂设置的方法、移动终端及具有存储功能的装置 |
CN107918567A (zh) * | 2017-10-20 | 2018-04-17 | 广州视源电子科技股份有限公司 | 恢复出厂设置的方法、系统、可读存储介质及电子设备 |
-
2019
- 2019-06-10 CN CN201910498223.8A patent/CN112068989B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370606B1 (en) * | 1998-11-05 | 2002-04-09 | Compaq Computer Corporation | System and method for simulating hardware interrupts in a multiprocessor computer system |
CN103699420A (zh) * | 2013-12-31 | 2014-04-02 | 海信集团有限公司 | 系统恢复方法和系统恢复装置 |
CN103927239A (zh) * | 2014-03-28 | 2014-07-16 | 深圳市江波龙电子有限公司 | 一种终端设备的系统恢复方法及装置 |
CN106445719A (zh) * | 2016-09-26 | 2017-02-22 | 青岛海信移动通信技术股份有限公司 | 恢复模式Recovery指令读写方法及装置 |
CN107704337A (zh) * | 2017-08-22 | 2018-02-16 | 北京珠穆朗玛移动通信有限公司 | 恢复出厂设置的方法、移动终端及具有存储功能的装置 |
CN107918567A (zh) * | 2017-10-20 | 2018-04-17 | 广州视源电子科技股份有限公司 | 恢复出厂设置的方法、系统、可读存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112068989A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073446B (zh) | 一种双系统ota并行升级方法及系统 | |
CN112399213B (zh) | 显示设备和遥控器按键复用方法 | |
CN112073865B (zh) | 蓝牙耳机的音量设置方法及装置、电子设备 | |
CN110708581B (zh) | 显示设备及呈现多媒体屏保信息的方法 | |
CN112399232A (zh) | 一种显示设备、摄像头优先级使用的控制方法及装置 | |
CN112073778A (zh) | 显示设备及按键传递的容错方法 | |
CN112068966B (zh) | 一种双系统进入恢复模式的方法及显示设备 | |
CN112068987A (zh) | 一种快速进行恢复出厂设置的方法及装置 | |
CN112068855B (zh) | 一种双系统下应用的升级方法及系统 | |
CN112073813B (zh) | 显示设备及双系统间异常启动的检测与处理方法 | |
CN112068741B (zh) | 显示设备及显示设备蓝牙开关状态的显示方法 | |
CN111385631B (zh) | 一种显示设备、通信方法及存储介质 | |
CN112463267B (zh) | 在显示设备屏幕上呈现屏保信息的方法及显示设备 | |
CN110784766A (zh) | 一键升级显示设备的方法及显示设备 | |
CN112073790A (zh) | 显示设备及双系统间启动状态的同步方法 | |
CN112423042A (zh) | 一种双系统蓝牙遥控器的升级方法及系统 | |
CN112068989B (zh) | 一种双系统并行恢复出厂设置异常的处理方法及装置 | |
CN112068988B (zh) | 一种双系统并行恢复出厂设置的方法及系统 | |
CN112073812B (zh) | 一种智能电视上的应用管理方法及显示设备 | |
CN112073776B (zh) | 语音控制方法及显示设备 | |
CN112449245B (zh) | 双系统显示设备应用升级进度显示方法及显示设备 | |
CN112346754A (zh) | 一种双系统应用升级界面显示的控制方法及装置 | |
CN112073816A (zh) | 双系统usb升级方法、装置及显示设备 | |
CN112073769A (zh) | 显示设备及应用共同显示的方法 | |
CN112071312B (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 |