一种机顶盒软件升级的方法和系统的制作方法

文档序号:6485736阅读:215来源:国知局
一种机顶盒软件升级的方法和系统的制作方法
【专利摘要】本发明实施例提供的一种机顶盒软件升级的方法,包括:当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。采用本申请的一种机顶盒软件升级的方法和系统,通过统一格式的升级信息文件简化了当Loader集成两种及以上升级方式时的升级方法和升级系统。
【专利说明】一种机顶盒软件升级的方法和系统
【技术领域】
[0001]本发明属于机顶盒领域,尤其涉及一种机顶盒软件升级的方法和系统。
【背景技术】
[0002]数字视频变换盒(set-top box, STB),通常称作机顶盒,是一个连接电视机与外部信号源的设备。
[0003]机顶盒作为一个嵌入式计算机系统,软件在其中起到了重要的作用。为了适应新业务的不断增加和技术更新,也为了让用户及时享受新服务、感受新技术,对机顶盒软件进行升级显得尤其重要,一般采用通过载入器(Loader )对机顶盒软件进行升级。
[0004]现有的机顶盒软件升级从升级类型划分,可分为以下4种方式:
[0005](l)、Cable升级,是指通过有线电视网将升级信息文件打包成TS流传送到用户机顶盒,机顶盒Cable升级程序从TS流中获取升级信息、比对查看是否符合升级条件、下载并解析数据、对数据的有效性进行验证、将有效数据写到Flash上、更新版本信息,完成软件升级;
[0006](2)、USB升级,是指将升级信息文件放在USB存储设备,机顶盒USB升级程序检测、加载USB设备、获取升级信息,后续类同Cable升级;
[0007](3)、串口升级,是指用户机顶盒通过串口线与电脑主机连接,通过串口握手协议将升级信息文件传给机顶盒串口升级程序,后续类同Cable升级;
[0008](4)、IP升级,是指将升级文件放在升级服务器上,机顶盒IP升级程序根据应用层配置的IP地址或DHCP (Dynamic Host Configuration Protocol,动态主机设置协议)方式自动获取的IP地址,去连接指定的升级服务器地址,连接成功后利用指定的协议(TFTP、FTP、HTTP)从升级服务器上得到升级信息文件,后续类同Cable升级。
[0009]由上述可知,每种升级方式都需要使用专用的Loader工具按照相关协议下载专用的升级信息文件,机顶盒升级程序根据该协议解析升级文件、下载数据、写入Flash并更新版本信息。每种升级方式都各自定义了一套升级格式,每种升级格式对应的升级信息文件不同,升级软件时,需要设置与升级方式相对应的升级模块,每种升级方式的升级模块不同。当Loader集成两种及以上的升级方式时,软件的升级系统中需要分别设置与升级方式对应的升级模块,使得升级系统复杂。

【发明内容】

[0010]有鉴于此,本申请提供一种机顶盒软件升级的方法和系统,通过统一格式的升级信息文件,简化了当Loader集成两种及以上升级方式时的升级系统。
[0011]一种机顶盒软件升级的方法,包括:
[0012]当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;
[0013]依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;
[0014]依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0015]上述的方法,优选的,所述依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级包括:
[0016]判断所述升级信息文件是否满足预设的升级信息文件格式,当满足时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0017]上述的方法,优选的,所述预设的升级信息文件格式包括:文件头、升级数据和至少一个索引表;
[0018]所述文件头包括升级信息文件的基本属性信息;
[0019]所述索引表包括与所述索引表对应的需要升级的软件的模块的属性信息,以及与所述索引表相对应的升级数据的属性信息。
[0020]上述的方法,优选的,所述依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级包括:
[0021]当依据所述文件头判定所述升级信息文件满足预设的升级条件时,依据任一索引表中的信息获取与所述索引表相对应的升级数据;
[0022]依据与所述索引表相对应的升级数据对所述索引表对应的软件的模块进行升级。
[0023]上述的方法,优选的,还包括:
[0024]升级完成后,对所述升级标志的内容进行清除。
[0025]一种机顶盒软件升级的系统,包括:
[0026]分析模块,用于当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;
[0027]获取模块,用于依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;
[0028]升级模块,用于依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0029]上述的系统,优选的,所述升级模块包括:
[0030]第一判断子模块,用于判断所述升级信息文件是否满足预设的升级信息文件格式。
[0031]上述的系统,优选的,所述升级模块还包括:
[0032]第二判断子模块,用于依据所述文件头判断所述升级信息文件是否满足预设的升级条件。
[0033]本发明实施例提供的一种机顶盒软件升级的方法,包括:当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。采用本申请的一种机顶盒软件升级的方法和系统,通过统一格式的升级信息文件简化了当Loader集成两种及以上升级方式时的升级方法和升级系统。
【专利附图】

【附图说明】[0034]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]图1是本申请一种机顶盒软件升级的方法实施例1的流程图;
[0036]图2是本申请一种机顶盒软件升级的方法中升级信息文件格式图;
[0037]图3是本申请一种机顶盒软件升级的方法实施例1的一具体流程图;
[0038]图4是本申请一种机顶盒软件升级的方法实施例2的流程图;
[0039]图5是本申请一种机顶盒软化升级的系统实施例1的结构示意图;
[0040]图6是本申请一种机顶盒软化升级的系统实施例1的一具体结构示意图。
【具体实施方式】
[0041]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0042]本申请是基于NAND Flash方案的Linux平台,实现了用于一次升级的所有的升级信息全部集中在一个升级信息文件中。
[0043]本申请提供的一种机顶盒软件升级的方法中,统一格式的升级信息文件是在生成升级信息文件的过程中,通过升级文件工具软件调用统一的API函数将对应软件需要升级的模块的数据加上索引和文件头生成统一格式的升级文件.suf,获取得到的升级信息文件就是该统一格式的升级文件.SUf0
[0044]参见图1,示出了本申请一种机顶盒软件升级的方法实施例1的流程图,包括:
[0045]步骤SlOl:当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;
[0046]在Flash中专门设置有存储升级标志的存储空间。
[0047]当机顶盒中当前运行正在运行的软件需要进行升级时,解析与该软件当前运行状态相对应的升级标志,得到该软件的升级方式。
[0048]软件的升级方式包括:Cable升级、IP升级、USB升级和串口升级等方式。
[0049]步骤S102:依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;
[0050]依据与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式后,启动与该升级方式相对应的通讯协议,执行该通讯协议获取所述软件升级所需的升级信息文件。
[0051]具体包括:
[0052]当所述升级方式为Cable升级时,通过与所述机顶盒相连的有线电视网的TS获取所述软件的升级信息文件;
[0053]当所述升级方式为USB升级时,通过USB接口获取USB设备中的所述软件的升级信息文件;[0054]当所述升级方式为串口升级时,通过所述机顶盒的串口线设置的串口握手协议获取电脑主机中的所述软件的升级信息文件;
[0055]当所述升级方式为IP升级时,自动获取所述机顶盒的IP地址,连接指定的升级服务器地址,连接成功后利用预设的协议从升级服务器上获取所述软件的升级信息文件。
[0056]增加一种升级方式,只需增加相应的通讯协议即可。
[0057]步骤S103:依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0058]获取得到升级信息文件,判断所述升级信息文件是否满足预设的升级信息文件格式,当满足时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0059]与获取的方式无关,每个升级信息文件都应该是满足预设的升级信息文件格式的,当获取的升级信息文件满足上述的预设的升级信息时,说明该升级信息文件是正确的,采用后续的步骤依据文件中的信息进行软件升级;当不满足时,说明数据传输错误或是数据源产生了错误,再进行后续的升级步骤已没有意义,结束升级。
[0060]参见图2示出的升级信息文件的格式,包括:文件头、升级数据和至少一个索引表。
[0061]所述文件头包括升级信息文件的基本属性信息,包括以下字段:
[0062](11)文件标志:4字节,使用文件后缀,表明文件类型;
[0063]本申请的实施例中采用的是.suf四个字母的ASCII码。
[0064]升级信息文件采用统一的文件后缀,不管硬件是什么的Flash,升级信息文件的后缀都是统一的。
[0065]该suf为Startimes Upgrade Format的首字母,实际实施中也可为其他字母。
[0066](12)文件版本:4字节,表示升级文件版本号,即升级信息文件实现库版本;
[0067]比如为1.0.0.0。
[0068](13)文件大小:4字节,表示升级文件整个大小;
[0069]升级文件最大可为4G。
[0070](14) CRC 32 (Cyclical Redundancy Check,循环冗余码校验):4 字节,表示升级文件除文件头外数据CRC32验证码,即包括索引表和升级数据;
[0071]CRC32检验保证整个文件数据正确,以及每个需要升级的模块的数据的完整。
[0072](15)厂家代码:2字节,表示厂家代码;
[0073]最多65536个厂家。
[0074](16)升级个数:2字节,表示需要升级的模块数量或者是需要升级的文件数量,最多65536个;
[0075](17)硬件版本:4字节,表示需要进行升级的终端设备硬件版本号;
[0076](18)软件版本:4字节,表示需要进行升级的终端设备软件版本号;
[0077](19)设备序列号:8字节,前四位表示开始序列号,后四位表示结束序列号;
[0078](20)下载日期:4字节,表示升级文件制作日期。
[0079]当所述升级信息文件头满足上述的升级信息文件格式时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级,参见图3所示的具体流程图,本步骤包括:
[0080]步骤S201:当依据所述文件头判定所述升级信息文件满足预设的升级条件时,依据任一索引表中的信息获取与所述索引表相对应的升级数据;[0081]首先需要对升级信息文件进行解析,该解析过程是通过与之前生成统一格式升级信息文件的API函数相对应的解析函数完成的,解析完成后,就能得到该统一格式的升级信息文件中包括的数据内容,包括:文件头、索引表和升级数据。
[0082]预设的升级条件包括:升级信息文件的类型必须为指定类型,升级信息文件的文件头信息和机顶盒Flash固化的相关信息相比较,二者的厂家代码、硬件版本、软件版本和设备序列号相同,且所示升级信息文件的文件版本高于所述机顶盒当前运行的软件的文件版本。即,在升级信息文件类型符合要求的前提下,二者的文件类型、生产厂家、硬件版本等是相同的,而升级信息文件的文件版本高于所述机顶盒当前运行的软件的文件版本。
[0083]CRC32中包含有该升级信息文件的索引表和升级数据。
[0084]索引表包括对应的需要升级的模块的属性信息及与所述升级模块相对应的升级数据的属性信息,包含与文件头中“升级个数”中标定数目的索引项。
[0085]每个索引表包括以下字段:
[0086](21)偏移量:4字节,表不对应数据相对升级文件开始的偏移量;
[0087](22) Flash类型:2字节,表示升级数据的Flash类型;
[0088]实际应用中,可设置O表示NOR Flash,I表示NAND Flash,2表示SPI Flash,也可为其他组合方式,支持所有Flash类型。
[0089](23)升级模块标识,2字节,表示需要升级哪个模块;
[0090]需要升级的模块可为开机画面、应用程序、Loader、U-B00T、kernel、文件系统等软件中的一个或多个组成部分。
[0091](24)数据大小:4字节,表示该索引表对应的数据的大小。
[0092]各个索引表中数据大小之和为文件头中的文件大小。
[0093]每个索引表对应一个软件的模块,该模块需要进行升级。
[0094]依据索引表中的偏移量字段,得到该索引表对应的升级数据相对所述升级信息文件开始的偏移量,即该索引表对应的升级数据的位置;
[0095]依据索引表中升级模块标志,得到需要进行升级的模块。
[0096]步骤S202:依据与所述索引表相对应的升级数据对所述索引表对应的软件的模块进行升级。
[0097]依据所述索引表对应的数据的位置,得到与该索引表对应的升级的模块需要的升级数据,将所述升级数据写入与该索引表对应的Flash中,完成对该升级的模块进行升级。
[0098]依次对索引表对应的升级的模块进行升级。
[0099]实际实施中,当机顶盒中运行的软件中的某个模块需要更新时,可采用本地升级或是自动升级进行升级。
[0100]本地升级:依据用户的选择开启相应的升级方式,同时相应的更新升级标志,准备升级。
[0101]自动升级:前端发送事先定义好的链接描述符,机顶盒端解析此链接描述符,当该链接描述符符合该机顶盒的要求时,更新升级标志,准备升级。
[0102]比如,当广播电视局中通过有线电视网或IP网将存在升级信息文件的链接描述符传输给有线电视用户的机顶盒,机顶盒在接收电视节目信号时也接收到该信息提示,当某一机顶盒依据该信息提示中携带的该升级信息文件的基础信息判定符合本机顶盒的软件时,更改升级标志为需要更新。所述升级信息文件的信息提示包括:厂家代码、硬件版本、软件版本、设备序列号等,当接受到该升级信息文件的信息提示的机顶盒与该信息提示相符合时,可确定该升级信息文件为该机顶盒的可用的,可对该机顶盒内的软件进行升级。
[0103]参见图4,示出了本申请一种机顶盒软件升级的方法实施例2的流程图,本实施例是在实施例1的步骤S103之后还包括:
[0104]步骤S 104:升级完成后,对所述升级标志的内容进行清除。
[0105]每次升级成功后,为了下次机顶盒软件启动时不再依据升级标志直接进入升级状态,对含有本次升级所对应的升级方式的升级标志的内容进行清除,下次启动直接加载Kernel启动应用程序。
[0106]与上述的本申请一种机顶盒软件升级的方法相对应,本申请还提供了一种机顶盒软件升级的系统。
[0107]参见图5,示出了本申请一种机顶盒软件升级的系统实施例1的结构示意图,包括:分析模块101、获取模块102和升级模块103。
[0108]其中,所述分析模块101,用于当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式;
[0109]在Flash中专门设置有存储升级标志的存储空间。
[0110]当机顶盒中当前运行正在运行的软件需要进行升级时,分析模块101解析与该软件当前运行状态相对应的升级标志,得到该软件的升级方式。
[0111]软件的升级方式包括=Cable升级、IP升级、USB升级和串口升级等方式。
[0112]其中,所述获取模块102,用于依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件;
[0113]依据与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式后,获取模块102获取该升级方式相对应的升级路径,依据该升级路径获取所述软件升级所需的升级信息文件。
[0114]具体包括:
[0115]依据与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式后,启动与该升级方式相对应的通讯协议,执行该通讯协议获取所述软件升级所需的升级信息文件。
[0116]具体包括:
[0117]当所述升级方式为Cable升级时,获取模块102通过与所述机顶盒相连的有线电视网的TS获取所述软件的升级信息文件;
[0118]当所述升级方式为USB升级时,获取模块102通过USB接口获取USB设备中的所述软件的升级信息文件;
[0119]当所述升级方式为串口升级时,获取模块102通过所述机顶盒的串口线设置的串口握手协议获取电脑主机中的所述软件的升级信息文件;
[0120]当所述升级方式为IP升级时,获取模块102自动获取所述机顶盒的IP地址,连接指定的升级服务器地址,连接成功后利用预设的协议从升级服务器上获取所述软件的升级信息文件。
[0121]增加一种升级方式,获取模块中只需增加相应的通讯协议,采用某种升级方式时,启动获取模块中的相应的通讯协议获取升级信息文件。
[0122]其中,升级模块103,用于依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0123]获取得到升级信息文件,首先需要对升级信息文件进行解析,该解析过程是通过与之前生成统一格式升级信息文件的API函数相对应的解析函数完成的,解析完成后,就能得到该统一格式的升级信息文件中包括的数据内容,包括:文件头、索引表和升级数据,升级模块103对解析完成所述升级信息文件进行判断,判断是否满足预设的升级信息文件格式,当满足时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0124]参见图6所示,所示升级模块103包括:第一判断子模块1031和第二判断子模块1032。
[0125]其中,所述第一判断子模块1031,用于判断所述升级信息文件是否满足预设的升级信息文件格式;
[0126]与获取的方式无关,每个升级信息文件都应该是满足预设的升级信息文件格式的,当获取的升级信息文件满足上述的预设的升级信息时,说明该升级信息文件是正确的,采用后续的步骤依据文件中的信息进行软件升级;当不满足时,说明数据传输错误或是数据源产生了错误,再进行后续的升级步骤已没有意义,结束升级。
[0127]参见图2示出的升级信息文件的格式,包括:文件头、升级数据和至少一个索引表。
[0128]所述文件头包括升级信息文件的基本属性信息,包括以下字段:
[0129](11)文件标志:4字节,使用文件后缀,表明文件类型;
[0130]本申请的实施例中采用的是.suf四个字母的ASCII码。
[0131]升级信息文件采用统一的文件后缀,不管硬件是什么的Flash,升级信息文件的后缀都是统一的。
[0132]该suf为Startimes Upgrade Format的首字母,实际实施中也可为其他字母。
[0133](12)文件版本:4字节,表示升级文件版本号,即升级信息文件实现库版本;
[0134]比如为1.0.0.0。
[0135](13)文件大小:4字节,表示升级文件整个大小;
[0136]升级文件最大可为4G。
[0137](14) CRC 32 (Cyclical Redundancy Check,循环冗余码校验):4 字节,表示升级文件除文件头外数据CRC32验证码,即包括索引表和升级数据;
[0138]CRC32检验保证整个文件数据正确,以及每个需要升级的模块的数据的完整。
[0139](15)厂家代码:2字节,表示厂家代码;
[0140]最多65536个厂家。
[0141](16)升级个数:2字节,表示需要升级的模块数量或者是需要升级的文件数量,最多65536个;
[0142](17)硬件版本:4字节,表示需要进行升级的终端设备硬件版本号;
[0143](18)软件版本:4字节,表示需要进行升级的终端设备软件版本号;
[0144](19)设备序列号:8字节,前四位表示开始序列号,后四位表示结束序列号;
[0145](20 )下载日期:4字节,表示升级文件制作日期。[0146]当所述升级信息文件头满足上述的升级信息文件格式时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
[0147]其中,所述第二判断子模块1032,用于依据所述文件头判断所述升级信息文件是否满足预设的升级条件。
[0148]预设的升级条件包括:升级信息文件的类型必须为指定类型,升级信息文件的文件头信息和机顶盒Flash固化的相关信息相比较,二者的厂家代码、硬件版本、软件版本和设备序列号相同,且所示升级信息文件的文件版本高于所述机顶盒当前运行的软件的文件版本。即,在升级信息文件类型符合要求的前提下,二者的文件类型、生产厂家、硬件版本等是相同的,而升级信息文件的文件版本高于所述机顶盒当前运行的软件的文件版本。
[0149]CRC32中包含有该升级信息文件的索引表和升级数据。
[0150]索引表包括对应的需要升级的模块的属性信息及与所述升级模块相对应的升级数据的属性信息,包含与文件头中“升级个数”中标定数目的索引项。
[0151]每个索引表包括以下字段:
[0152](21)偏移量:4字节,表不对应数据相对升级文件开始的偏移量;
[0153](22) Flash类型:2字节,表示升级数据的Flash类型;
[0154]实际应用中,可设置O表示NOR Flash,I表示NAND Flash,2表示SPI Flash,也可为其他组合方式,支持所有Flash类型。
[0155](23)升级模块标识,2字节,表示需要升级哪个模块;
[0156]需要升级的模块可为开机画面、应用程序、Loader、U-B00T、kernel、文件系统等软件中的一个或多个组成部分。
[0157](24)数据大小:4字节,表示该索引表对应的数据的大小。
[0158]各个索引表中数据大小之和为文件头中的文件大小。
[0159]每个索引表对应一个软件的模块,该模块需要进行升级。
[0160]依据索引表中的偏移量字段,能够得到该索引表对应的升级数据相对所述升级信息文件开始的偏移量,即该索引表对应的升级数据的位置;
[0161]依据索引表中升级模块标志,能够得到需要进行升级的模块。
[0162]升级模块103依据所述索引表对应的数据的位置,得到与该索引表对应的升级的模块需要的升级数据,将所述升级数据写入与该索引表对应的Flash中,完成对该升级的模块进行升级。
[0163]对所述软件进行的升级包括依次对索引表对应的升级的模块进行升级。
[0164]实际实施中,机顶盒软件升级的系统一般采用Loader。依据所述升级标志判定所述软件需要升级时,启动升级所需的系统参数即启动Loader的参数,进入升级方式(Cable升级、IP升级、USB升级或串口升级等)相应的通讯协议下载升级信息文件。Loader程序是一个压缩的镜像包,包括支持initramfs精简后的kernel以及精简后的Ram fs,以及放置在Ram fs中升级下载模块,精简的部分只包括升级所需的内容,减小Loader占用的Flash空间,也便于Loader的备份和同步。
[0165]实际实施中,为了保证升级的安全性和可靠性,一般采用Loader备份。
[0166]实际实施中,当机顶盒中运行的软件中的某个模块需要更新时,可采用本地升级或是自动升级进行升级。[0167]本地升级:依据用户的选择开启相应的升级方式,同时相应的更新升级标志,准备升级。升级方式包括=USB升级、IP升级、串口升级等。
[0168]自动升级:前端发送事先定义好的链接描述符,机顶盒端解析此链接描述符,当该链接描述符符合该机顶盒的要求时,更新升级标志,准备升级。升级方式包括=Cable升级
坐寸ο
[0169]比如,当广播电视局中通过有线电视网或IP网将存在升级信息文件的链接描述符传输给有线电视用户的机顶盒,机顶盒在接收电视节目信号时监控是否收到该描述符,当某一机顶盒依据该描述符中携带的该升级信息文件的基础信息判定符合本机顶盒的软件时,更改升级标志为需要更新。所述升级信息文件的信息提示包括:厂家代码、硬件版本、软件版本、设备序列号等,当接收到的描述符与本机顶盒信息相匹配时,可对该机顶盒内的软件进行升级。
[0170]实际实施中,判断模块可以为U-B00T,所述U-BOOT放置在NAND Flash中,负责引导系统进入升级模式或是应用模式,当需要进行升级时,进入升级模式,开始升级;不需要进行升级时,进入应用模式,接收有线电视信号,进行节目播放。
[0171]本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
[0172]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【权利要求】
1.一种机顶盒软件升级的方法,其特征在于,包括: 当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式; 依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件; 依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
2.根据权利要求1所述的方法,其特征在于,所述依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级包括: 判断所述升级信息文件是否满足预设的升级信息文件格式,当满足时,依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
3.根据权利要求2所述的方法,其特征在于,所述预设的升级信息文件格式包括:文件头、升级数据和至少一个索引表; 所述文件头包括升级信息文件的基本属性信息; 所述索引表包括与所述索引表对应的需要升级的软件的模块的属性信息,以及与所述索引表相对应的升级数据的属性信息。
4.根据权利要求3所述的方法,其特征在于,所述依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级包括: 当依据所述文件头判定所述升级信息文件满足预设的升级条件时,依据任一索引表中的信息获取与所述索引表相对应的升级数据; 依据与所述索引表相对应的升级数据对所述索引表对应的软件的模块进行升级。
5.根据权利要求1所述的方法,其特征在于,还包括: 升级完成后,对所述升级标志的内容进行清除。
6.一种机顶盒软件升级的系统,其特征在于,包括: 分析模块,用于当所述机顶盒中当前运行的软件需要进行升级时,解析与所述软件的当前运行状态相对应的升级标志,得到所述软件的升级方式; 获取模块,用于依据所述升级方式执行与所述升级方式相对应的通讯协议获取所述软件升级所需的升级信息文件; 升级模块,用于依据所述升级信息文件对所述机顶盒中当前运行的软件进行升级。
7.根据权利要求6所述的系统,其特征在于,所述升级模块包括: 第一判断子模块,用于判断所述升级信息文件是否满足预设的升级信息文件格式。
8.根据权利要求7所述的系统,其特征在于,所述升级模块还包括: 第二判断子模块,用于依据所述文件头判断所述升级信息文件是否满足预设的升级条件。
【文档编号】G06F9/445GK103458298SQ201210179224
【公开日】2013年12月18日 申请日期:2012年6月1日 优先权日:2012年6月1日
【发明者】何伯虎, 赵亚文, 焦立波 申请人:北京四达时代软件技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1