一种机顶盒启动异常的定位方法及装置与流程

文档序号:17695093发布日期:2019-05-17 21:25阅读:198来源:国知局
一种机顶盒启动异常的定位方法及装置与流程

本发明实施例涉及机顶盒技术领域,尤其涉及一种机顶盒启动异常的定位方法及装置。



背景技术:

高级安全的机顶盒禁止了启动信息的输出,并且启动过程比较复杂,各模块只有解密校验成功后,才能正常的加载启动。一条启动流程通常由多个模块组成,若其中任何一个模块校验失败,系统将立即重启,无法完成正常启动。由于整个过程没有打印信息的输出,无法得知出现问题的模块,造成开发人员定位出现异常的模块时,需要逐个模块的猜测,严重降低了维修效率。



技术实现要素:

本发明实施例提供一种机顶盒启动异常的定位方法及装置,用以实现异常模块的定位,提高维修效率。

本发明实施例提供的一种机顶盒启动异常的定位方法,包括:

获取启动标志位;

在确定启动标志位为进入更新系统的标志位时,进入更新系统;

若所述更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位;

根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。

可选的,还包括:

若所述更新系统中的加载模块验证失败,则验证备份加载模块;在所述备份加载模块验证成功后,读取所述待启动应用程序的各启动模块的状态标志位,并根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示;

若所述备份加载模块验证不成功,则重新启动。

可选的,还包括:

在确定所述启动标志位为待启动应用程序的标志位时,依次验证所述待启动应用程序对应的各启动模块;

当所述各启动模块中任一启动模块验证不通过时,将所述任一启动模块对应的状态标志位设为异常状态;

将所述启动标志位设置为所述更新系统的标志位,并重新启动。

可选的,所述启动模块包括内核模块、文件系统模块和应用程序模块。

可选的,在所述将状态标志位为异常状态的启动模块进行显示之后,还包括:

获取所述异常状态的启动模块的升级数据包;

根据所述升级数据包对所述异常状态的启动模块进行升级,并将所述异常状态的启动模块的状态标志位设置为正常状态。

相应的,本发明实施例还提供了一种机顶盒启动异常的定位装置,包括:

获取单元,用于获取启动标志位;

处理单元,用于在确定启动标志位为进入更新系统的标志位时,进入更新系统;以及若所述更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位;

显示单元,用于根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。

可选的,所述处理单元还用于:

若所述更新系统中的加载模块验证失败,则验证备份加载模块;在所述备份加载模块验证成功后,读取所述待启动应用程序的各启动模块的状态标志位,并根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示;

若所述备份加载模块验证不成功,则重新启动。

可选的,所述处理单元还用于:

在确定所述启动标志位为待启动应用程序的标志位时,依次验证所述待启动应用程序对应的各启动模块;

当所述各启动模块中任一启动模块验证不通过时,将所述任一启动模块对应的状态标志位设为异常状态;

将所述启动标志位设置为所述更新系统的标志位,并重新启动。

可选的,所述启动模块包括内核模块、文件系统模块和应用程序模块。

可选的,所述处理单元还用于:

在所述将状态标志位为异常状态的启动模块进行显示之后,控制所述获取单元获取所述异常状态的启动模块的升级数据包;

根据所述升级数据包对所述异常状态的启动模块进行升级,并将所述异常状态的启动模块的状态标志位设置为正常状态。

相应的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述机顶盒启动异常的定位方法。

相应的,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述机顶盒启动异常的定位方法。

本发明实施例表明,通过获取启动标志位,在确定启动标志位为进入更新系统的标志位时,进入更新系统,若更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位,根据各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。通过对各启动模块设置状态标志位,在更新系统启动后,将读取到的异常状态的启动模块进行显示,可以及时定位到出现异常的模块,便于工作人员及时维修,提高维修效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种系统架构的示意图;

图2为本发明实施例提供的一种机顶盒启动异常的定位方法的流程示意图;

图3为本发明实施例提供的一种机顶盒启动异常的定位方法的流程示意图;

图4为本发明实施例提供的一种机顶盒启动异常的定位装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1为本发明实施例提供的直播视频流转码异常复现的方法所适用的系统架构。参考图1所示,该系统架构可以为机顶盒100,包括处理器110、通信接口120、存储器130和显示单元140。

其中,通信接口120用于与运营商的前端设备或服务器进行通信,收发该运营商的前端设备或服务器传输的信息,实现通信。

处理器110是机顶盒100的控制中心,利用各种接口和线路连接整个机顶盒100的各个部分,通过运行或执行存储在存储器130内的软件程序/或模块,以及调用存储在存储器130内的数据,执行机顶盒100的各种功能和处理数据。可选地,处理器110可以包括一个或多个处理单元。

存储器130可用于存储软件程序以及模块,处理器110通过运行存储在存储器130的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器130可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据业务处理所创建的数据等。此外,存储器130可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

显示单元140与处理器120连接,用于显示处理器120的处理结果。

需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。

基于上述描述,图2示例性的示出了本发明实施例提供的一种直播视频的白板绘制方法的流程,该流程可以由直播视频的白板绘制装置执行,该装置可以为是上述终端设备100。

如图2所示,该流程具体包括:

步骤201,获取启动标志位。

机顶盒在启动时,可以获取启动标志位,该启动标志位可以为应用程序或者更新系统对应的标志位。比如,可以设置应用程序的标志位为1,更新系统的标志位为0。当读取到启动标志位设置为1时,表明当前需要启动的流程是应用程序,当读取到启动标志位设置为0时,表明当前需要启动的流程是更新系统。因此,机顶盒在接收到启动指令后,就可以通过读取该启动标志位来判断进入哪个系统。需要说明的是,应用程序是位于机顶盒的操作系统中的,启动该应用程序也就是启动机顶盒的操作系统。

步骤202,在确定启动标志位为进入更新系统的标志位时,进入更新系统。

在确定启动标志位为进入更新系统的标志位时,就可以进入更新系统,此时就需要对更新系统中的引导模块进行解密校验,验证该引导模块是否正常,若验证成功,则继续进行下一步,否则就启用备份引导模块。

当在确定启动标志位为待启动应用程序的标志位时,就需要依次验证待启动应用程序对应的各启动模块,如果该各启动模块中任一启动模块验证不通过,则就将验证不通过的启动模块对应的状态标志位设置为异常状态,并将启动标志位设置为更新系统的标志位,并重新启动,以便机顶盒进入更新系统来显示出现异常的启动模块,便于工作人员及时定位异常的启动模块进行维修。

相应的,在对待启动应用程序对应的各启动模块验证通过时,就可以依次执行各启动模块的代码,来启动该待启动的应用程序。

其中,该各启动模块包括内核模块、文件系统模块和应用程序模块,本发明实施例关于启动模块的设定仅是示例作用,对此不作具体限制。

步骤203,若所述更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位。

当对更新系统中的加载模块验证失败时,就需要启用备份加载模块,进而验证备份加载模块,在备份加载模块验证成功后,也是需要读取待启动应用程序各启动模块的状态标志位,并根据各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示,也就是在机顶盒的ui(userinterface,用户界面)界面进行显示,以便工作人员及时定位异常的启动模块,进行维修。

当然,备份加载模块也验证失败时,就需要重新启动,此时说明更新系统出行故障,该机顶盒无法进行维修。

步骤204,根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。

需要说明的是,在将状态标志位为异常状态的启动模块进行显示之后,开发工程师通过loader的ui界面获取异常的模块信息,制作异常的模块的升级包,此时就需要获取该异常状态的启动模块的升级数据包,然后根据该升级数据包对异常状态的启动模块进行升级,在升级异常模块成功后,系统清除异常模块的状态标志位,就是将该异常状态的启动模块的状态标志位设置为正常状态。

为了更好的解释本发明实施例提供的技术方案,下面将在具体的实施场景下来描述机顶盒启动异常的定位的过程。

如图3所示,该流程包括:

步骤301,判断启动标志位flag=app(应用程序)还是flag=loader(加载),若flag=app,则转入步骤302,若flag=loader,则转入步骤310。

如果flag=app表明需要启动操作系统,进入应用程序,如果flag=loader,表明需要启动更新系统,进入引导模块。

步骤302,验证kernel(内核)模块,若验证成功,则转入步骤303,若验证失败,则转入步骤305。

一个启动流程通常由多个模块组成,这里主要包括kernel(内核)模块、rootfs(文件系统)模块和app,对这几个模块依次进行验证。

步骤303,验证rootfs(文件系统)模块,若验证成功,则转入步骤304,若验证失败,则转入步骤305。

这一步骤是对rootfs模块进行验证。

步骤304,验证app,若验证成功,则转入步骤307,若验证失败,则转入步骤305。

这一步骤是对app进行验证。

步骤305,保存参数。

当上述几个模块验证失败时,就需要保存参数,主要是保存异常标志到数据裸分区,然后写启动flag=loader,表明重启系统后进入更新系统。

步骤306,重启系统。

步骤307,执行kernel模块代码。

步骤308,执行rootfs模块代码。

步骤309,执行app代码。

在执行app代码后,就是启动app完成,此时需要进行升级参数(路径、地址等)或者是写启动flag。

步骤310,验证loader(加载)模块,若验证成功,则转入步骤313,若验证失败,则转入步骤311。

步骤311,保存参数。

保存异常标志到数据裸分区。

步骤312,验证备份loader模块,若验证成功,则转入步骤313,若验证失败,则转入步骤314。

步骤313,执行loader代码模块。

执行loader代码模块时,可以读取版本信息,读取升级参数以及读取异常标志,也就是启动模块的异常标志。

同时,loader模块还可以更新分区信息,回写启动flag,例如,清除异常标志。

步骤314,重启系统。

在本发明实施例中,高级安全的机顶盒,启动过程比较复杂。模块只有解密校验成功后,才能正常的加载启动。一条启动流程通常由多个模块组成,若其中任何一个模块校验失败,系统将立即重启,无法完成正常启动。由于整个过程没有打印信息输出,问题的定位就比较困难。基于上述原因,本发明实施例为每个模块定义一个标志位,若校验模块失败后,该模块的标志位置1写入flash(数据裸分区)中。重启后进入loader模块,loader模块会检测所有模块的状态,若检测到某块的标志位为1,则ui界面会显示该块信息异常,开发人员可以根据此信息精确定位异常的模块。

以加载app的流程为例:

上电后系统读取启动标志flag,flag为app。系统依次解密校验kernel、rootfs和app,若全部成功,系统依次执行kernel、rootfs和app的代码;若某个模块失败(假定kernel,后续以kernel进行说明),则系统会置kernel模块标志位为1,写启动标志位flag为loader。系统重启后进入loader,若loader模块验证成功,则执行loader代码,读取所有模块状态标志位ui界面显示异常的模块;若loader模块验证失败,则置loader模块标志位为1,验证loader的备份模块loaderbak;若验证成功,则执行loaderbak代码,读取所有模块状态标志位,ui界面显示异常的模块;若loaderbak模块验证失败,则系统重启。

上述实施例表明,通过获取启动标志位,在确定启动标志位为进入更新系统的标志位时,进入更新系统,若更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位,根据各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。通过对各启动模块设置状态标志位,在更新系统启动后,将读取到的异常状态的启动模块进行显示,可以及时定位到出现异常的模块,便于工作人员及时维修,提高维修效率。

基于相同的技术构思,图4示例性的示出了本发明实施例提供的一种机顶盒启动异常的定位装置,该装置可以执行机顶盒启动异常的定位的流程。

如图4所示,该装置具体包括:

获取单元401,用于获取启动标志位;

处理单元402,用于在确定启动标志位为进入更新系统的标志位时,进入更新系统;以及若所述更新系统中加载模块验证成功,则读取待启动应用程序的各启动模块的状态标志位;

显示单元403,用于根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示。

可选的,所述处理单元402还用于:

若所述更新系统中的加载模块验证失败,则验证备份加载模块;在所述备份加载模块验证成功后,读取所述待启动应用程序的各启动模块的状态标志位,并根据所述各启动模块的状态标志位,将状态标志位为异常状态的启动模块进行显示;

若所述备份加载模块验证不成功,则重新启动。

可选的,所述处理单元402还用于:

在确定所述启动标志位为待启动应用程序的标志位时,依次验证所述待启动应用程序对应的各启动模块;

当所述各启动模块中任一启动模块验证不通过时,将所述任一启动模块对应的状态标志位设为异常状态;

将所述启动标志位设置为所述更新系统的标志位,并重新启动。

可选的,所述启动模块包括内核模块、文件系统模块和应用程序模块。

可选的,所述处理单元402还用于:

在所述将状态标志位为异常状态的启动模块进行显示之后,控制所述获取单元401获取所述异常状态的启动模块的升级数据包;

根据所述升级数据包对所述异常状态的启动模块进行升级,并将所述异常状态的启动模块的状态标志位设置为正常状态。

基于相同的技术构思,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述机顶盒启动异常的定位方法。

基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述机顶盒启动异常的定位方法。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1