CN103885806A - 机顶盒的系统软件在线升级的实现方法和装置 - Google Patents

机顶盒的系统软件在线升级的实现方法和装置 Download PDF

Info

Publication number
CN103885806A
CN103885806A CN201410132077.4A CN201410132077A CN103885806A CN 103885806 A CN103885806 A CN 103885806A CN 201410132077 A CN201410132077 A CN 201410132077A CN 103885806 A CN103885806 A CN 103885806A
Authority
CN
China
Prior art keywords
download
system software
data packet
upgrading
information
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.)
Granted
Application number
CN201410132077.4A
Other languages
English (en)
Other versions
CN103885806B (zh
Inventor
邓艳兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Hai Yun new energy Co., Ltd.
Original Assignee
SHENZHEN GOLDWEB TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN GOLDWEB TECHNOLOGY Co Ltd filed Critical SHENZHEN GOLDWEB TECHNOLOGY Co Ltd
Priority to CN201410132077.4A priority Critical patent/CN103885806B/zh
Publication of CN103885806A publication Critical patent/CN103885806A/zh
Application granted granted Critical
Publication of CN103885806B publication Critical patent/CN103885806B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明涉及一种机顶盒的系统软件在线升级的实现方法和装置。所述方法,包括以下步骤:检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器;接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息;根据所述链接信息下载升级数据包;根据下载完成的升级数据包对机顶盒的系统软件进行更新。检测到首次开机或获取到触发操作产生的系统软件升级请求后,根据系统软件升级请求返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。

Description

机顶盒的系统软件在线升级的实现方法和装置
技术领域
本发明涉及机顶盒领域,特别是涉及一种高清互联网机顶盒的系统软件在线升级的实现方法和装置。
背景技术
随着网络技术的飞速发展,对家庭高清互联网机顶盒的系统软件升级和更新将会越来越频繁。家庭高清互联网机顶盒主要采用智能的Android操作系统,因Android系统软件版本更新比较频繁,为了满足用户的需求,需要不断的更新高清互联网机顶盒的功能业务,如此机顶盒的系统软件必须不断的持续更新。
传统的机顶盒的系统软件的升级方式主要是由用户将机顶盒送到专门的维护工作站进行升级,需要花费大量的时间,且成本较高。
发明内容
基于此,有必要针对传统的机顶盒的系统软件的升级方式需要花费大量的时间且成本高的问题,提供一种能节省时间且成本低的机顶盒的系统软件在线升级的实现方法和装置。
一种机顶盒的系统软件在线升级的实现方法,包括以下步骤:
检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器;
接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息;
根据所述链接信息下载升级数据包;
根据下载完成的升级数据包对机顶盒的系统软件进行更新。
在其中一个实施例中,所述根据所述链接信息下载升级数据包的步骤包括:
判断本地是否有所述升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载所述升级数据包。
在其中一个实施例中,所述根据所述链接信息下载升级数据包的步骤包括:
创建多线程,并为各线程分配标识;
获取升级数据包大小,根据所述升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息;
根据所述线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在所述升级数据包的链接信息,若是,则将所述下载记录信息数据库中记录的断点记录信息更新到所述线程标识对应的线程的下载记录信息,通过所述线程按照所述断点记录信息开始进行断点继续下载,若否,则通过所述线程标识对应的线程直接下载所述升级数据包;
检测到定时记录事件,则通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中;
检测到网络异常事件,则通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中,并暂停所述线程下载;
检测到所述线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的所述线程对应的下载记录信息。
在其中一个实施例中,根据下载完成的升级数据包对机顶盒的系统软件进行更新的步骤包括:
下载完成且进行升级数据包的完整性校验成功后,将所述升级数据包拷贝至指定的升级目录下;
设置系统软件为Recovery模式,并执行reboot命令进行重启系统;
系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
一种机顶盒的系统软件在线升级的实现方法,包括以下步骤:
获取上传的机顶盒首次开机或触发操作产生的系统软件升级请求及机顶盒的系统软件信息;
将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至所述机顶盒;
接收所述机顶盒根据链接信息发送的下载请求,并根据所述下载请求提供升级数据包下载服务给所述机顶盒。
一种机顶盒的系统软件在线升级的实现装置,包括:
上传模块,用于检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器;
链接信息接收模块,用于接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息;
下载模块,用于根据所述链接信息下载升级数据包;
更新模块,用于根据下载完成的升级数据包对机顶盒的系统软件进行更新。
在其中一个实施例中,所述下载模块还用于判断本地是否有所述升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载所述升级数据包。
在其中一个实施例中,所述下载模块包括:
创建子模块,用于创建多线程,并为各线程分配标识;
初始化子模块,用于获取升级数据包大小,根据所述升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息;
判断子模块,用于根据所述线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在所述升级数据包的链接信息;
下载子模块,用于当下载记录信息数据库中存在所述升级数据包的链接信息时,将所述下载记录信息数据库中记录的断点记录信息更新到所述线程标识对应的线程的下载记录信息,所述线程按照所述断点记录信息开始进行断点继续下载,以及当下载记录信息数据库中不存在所述升级数据包的链接信息时,通过所述线程标识对应的线程直接下载所述升级数据包;
定时检测子模块,用于检测到定时记录事件,通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中;
异常检测子模块,用于检测到网络异常事件,通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中,并暂停所述线程下载;
校验子模块,用于检测到所述线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的所述线程对应的下载记录信息。
在其中一个实施例中,所述更新模块包括:
拷贝子模块,用于下载完成且进行升级数据包的完整性校验成功后,将所述升级数据包拷贝至指定的升级目录下;
重启子模块,用于设置系统软件为Recovery模式,并执行reboot命令进行重启系统;
更新子模块,用于在系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
一种机顶盒的系统软件在线升级的实现装置,包括:
获取模块,用于获取机顶盒上传的系统软件升级请求及机顶盒的系统软件信息;
返回模块,用于将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至所述机顶盒;
升级数据包提供模块,用于接收所述机顶盒根据链接信息发送的下载请求,并根据所述下载请求提供升级数据包下载服务给所述机顶盒。
上述机顶盒的系统软件在线升级的实现方法和装置,检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
附图说明
图1为一个实施例中机顶盒的系统软件在线升级的实现方法的流程图;
图2为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图;
图3为一个实施例中机顶盒的系统软件在线升级进行断点续传下载的流程图;
图4为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图;
图5为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图;
图6为一个实施例中机顶盒的系统软件在线升级的实现装置的结构框图;
图7为一个实施例中下载模块的内部结构示意图;
图8为一个实施例中更新模块的内部结构框图;
图9为另一个实施例中机顶盒的系统软件在线升级的实现装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中机顶盒的系统软件在线升级的实现方法的流程图。图1中的机顶盒的系统软件在线升级的实现方法是以机顶盒的角度进行描述的。如图1所示,该机顶盒的系统软件在线升级的实现方法,包括以下步骤:
步骤102,检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器。
具体的,当用户第一次开机或手动点击机顶盒上的在线升级按钮时,产生系统软件在线升级请求。系统软件信息包括系统软件版本号、软件型号、硬件型号、MAC(Media Access Control)地址、Device、Board、Firmware固件版本等。
步骤104,接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息。
具体的,升级服务器将自身存储的系统软件信息与上传的系统软件信息进行比较,若升级服务器上存储的系统软件信息比上传的系统软件信息存在新的信息,则返回链接信息,若升级服务器上存储的系统软件信息比上传的系统软件信息不存在新的信息,即机顶盒上的系统软件信息属于最新的系统软件信息,则返回空数据。该链接信息中包括对应版本详细描述的链接地址。
步骤106,根据该链接信息下载升级数据包。
具体的,根据链接信息中的对应版本详细描述的链接地址下载升级配置文件,并根据该升级配置文件下载升级数据包。该升级配置文件形式为XML(Extensible Markup Language,可扩展标记语言)文件。升级数据包可为zip文件。
步骤108,根据下载完成的升级数据包对机顶盒的系统软件进行更新。
上述机顶盒的系统软件在线升级的实现方法,检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
可以理解的是,该根据该链接信息下载升级数据包的步骤包括:判断本地是否有该升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载该升级数据包。通过断点续传功能,可节省下载时间。
可以理解的是,根据下载完成的升级数据包对机顶盒的系统软件进行更新的步骤包括:下载完成且进行升级数据包的完整性校验成功后,将该升级数据包拷贝至指定的升级目录下;设置系统软件为Recovery模式,并执行reboot命令进行重启系统;系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
图2为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图。图2的机顶盒的系统软件在线升级的实现方法是以机顶盒角度描述较为详细的实现方式。如图2所示,该机顶盒的系统软件在线升级的实现方法,包括以下步骤:
步骤202,检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,连接升级服务器。
步骤204,连接成功,将本地的系统软件信息上传至升级服务器,然后执行步骤208。
步骤206,连接失败,提示用户网络异常。
步骤208,接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较结果。
步骤210,若比较结果为空数据,则提示用户系统软件版本已经是最新版本。
步骤212,若比较结果为返回链接信息,则提示用户检测到新版本,并执行步骤214。
步骤214,显示提示用户是否需要升级的界面,若接收到用户点击确认升级,则执行步骤216,若接收到用户点击以后再说,则退出本次升级处理。
步骤216,判断本地是否有链接信息所对应的升级数据包的下载记录信息,若是,则执行步骤218,若否,执行步骤220。
具体的,本地存在该链接信息所对应的升级数据包的下载记录信息,即指该升级数据包部分已下载。
步骤218,获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,并实时记录新的下载记录,将新的下载记录保存到本地的配置文件中,下载完成后,执行步骤222。
步骤220,直接下载升级数据包,然后执行步骤222。
步骤222,下载完成后,对升级数据包的完整性进行校验处理,校验成功后,拷贝升级数据包到指定的升级目录下,并删除临时保存的升级数据包,若校验失败,则提示用户升级数据包校验失败。
具体的,校验处理可采用MD5(Message Digest Algorithm,信息摘要算法)。或MD4等。
步骤224,拷贝升级数据包后,设置系统软件为Recovery模式,并执行reboot命令进行重启系统。
步骤226,系统件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
步骤228,系统软件再次重启开机运行新的系统软件。
需要说明的是,上述机顶盒的系统软件在线升级的实现方法中下载的升级数据包可为完整的数据包,也可为增量数据包。完整的数据包是指下载的系统软件版本所对应的整个数据包。增量数据包是指升级服务器上存储的系统软件相比于机顶盒上的系统软件所增加的数据形成的数据包。
图3为一个实施例中机顶盒的系统软件在线升级进行断点续传下载的流程图。如图3所示,机顶盒的系统软件在线升级进行断点续传下载的步骤包括:
步骤302,创建多线程,并为各线程分配标识。
具体的,从下载线程资源中创建多线程,开启多任务下载,并为各线程分配标识。线程标识是用于唯一标识线程的。
步骤304,获取升级数据包大小,根据该升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息。
可以理解的是,线程初始化时,记录每个线程下载文件的起点和结点,线程标识,当前线程下载文件块的大小等信息。
步骤306,根据该线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在该升级数据包的链接信息,若是,则将该下载记录信息数据库中记录的断点记录信息更新到该线程标识对应的线程的下载记录信息,通过该线程按照该断点记录信息开始进行断点继续下载,若否,则通过该线程标识对应的线程直接下载该升级数据包。
步骤308,检测到定时记录事件,则通过该线程将该下载记录信息更新至该下载记录信息数据库中。
具体的,检测到定时记录事件时,线程将下载记录信息更新至下载记录信息数据库中。该更新可包括添加新的记录信息。
步骤310,检测到网络异常事件,则通过该线程将该下载记录信息更新至该下载记录信息数据库中,并暂停该线程下载。
可以理解的是,在后续检测到网络连通时,自动开启多线程,重新开始下载。
步骤312,检测到该线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的该线程对应的下载记录信息,若校验失败,则删除对应的下载升级数据包和下载记录信息数据库中的下载记录信息,并返回步骤302重新开始下载。
上述步骤302至312可为步骤106的具体步骤。
上述通过线程控制实现断点续传,节省了时间。并定时记录下载信息,方便维护下载记录信息。
图4为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图。图4中的机顶盒的系统软件在线升级的实现方法是以升级服务器角度进行描述的,具体包括以下步骤:
步骤402,获取上传的机顶盒首次开机或触发操作产生的系统软件升级请求及机顶盒的系统软件信息。
具体的,系统软件信息包括系统软件版本号、软件型号、硬件型号、MAC(Media Access Control)地址、Device、Board、Android、Firmware固件版本等。
步骤404,将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至该机顶盒。
具体的,升级服务器将自身存储的系统软件信息与上传的系统软件信息进行比较,若升级服务器上存储的系统软件信息比上传的系统软件信息存在新的信息,则返回链接信息,若升级服务器上存储的系统软件信息比上传的系统软件信息不存在新的信息,即机顶盒上的系统软件信息属于最新的系统软件信息,则返回空数据。该链接信息中包括对应版本详细描述的链接地址。
升级服务器根据系统参数配置文件(parameter.conf)进行Device,Board,Android版本的参数匹配处理,若不匹配则返回空数据至机顶盒,若匹配则根据链接信息中的升级配置文件进行Firmware固件版本与上传的系统软件信息进行参数配置文件匹配处理,若不匹配,则返回空数据至机顶盒,若匹配,则返回对应的版本的详细描述的链接地址给用户。
步骤406,接收该机顶盒根据链接信息发送的下载请求,并根据该下载请求提供升级数据包下载服务给该机顶盒。
具体的,根据对应版本详细描述的链接地址提供下载升级配置文件服务给机顶盒,并根据该升级配置文件提供下载升级数据包服务给机顶盒。该升级配置文件形式为XML文件。升级数据包可为zip文件。
上述机顶盒的系统软件在线升级的实现方法,检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
图5为另一个实施例中机顶盒的系统软件在线升级的实现方法的流程图。图5中的机顶盒的系统软件在线升级的实现方法是以机顶盒和升级服务器交互的角度进行描述的,具体包括以下步骤:
步骤502,机顶盒首次开机或触发操作,向升级服务器发送系统软件在线升级请求,并将系统软件信息上传到升级服务器。
步骤504,升级服务器将自身存储的系统软件信息与上传的机顶盒上的系统软件信息进行比较,并返回链接信息至机顶盒。
步骤506,机顶盒根据链接信息向升级服务器发送升级配置文件获取请求。
步骤508,升级服务器根据升级配置文件获取请求返回升级配置文件给机顶盒。
步骤510,机顶盒根据升级配置文件向升级服务器发送升级数据包下载请求。
步骤512,升级服务器根据升级数据包下载请求返回升级数据包给机顶盒。
上述机顶盒的系统软件在线升级的实现方法,机顶盒检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级配置文件,再根据升级配置文件下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
图6为一个实施例中机顶盒的系统软件在线升级的实现装置的结构框图。如图6所示,该机顶盒的系统软件在线升级的实现装置是以机顶盒角度描述,包括上传模块620、链接信息接收模块640、下载模块660和更新模块680。其中:
上传模块620用于检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器。
系统软件信息包括系统软件版本号、软件型号、硬件型号、MAC(MediaAccess Control)地址、Device、Board、Firmware固件版本等。
链接信息接收模块640用于接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息。
具体的,升级服务器将自身存储的系统软件信息与上传的系统软件信息进行比较,若升级服务器上存储的系统软件信息比上传的系统软件信息存在新的信息,则返回链接信息,若升级服务器上存储的系统软件信息比上传的系统软件信息不存在新的信息,即机顶盒上的系统软件信息属于最新的系统软件信息,则返回空数据。该链接信息中包括对应版本详细描述的链接地址。
下载模块660用于根据该链接信息下载升级数据包。具体的,下载模块680根据链接信息中的对应版本详细描述的链接地址下载升级配置文件,并根据该升级配置文件下载升级数据包。
更新模块680用于根据下载完成的升级数据包对机顶盒的系统软件进行更新。
此外,若链接信息接收模块640用于接收空数据,则提示用户系统软件版本已经是最新版本。显示提示用户是否需要升级的界面,若接收到用户点击确认升级,则下载模块660判断本地是否有链接信息所对应的升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,并实时记录新的下载记录,将新的下载记录保存到本地的配置文件中,下载完成后,对升级数据包的完整性进行校验处理,校验成功后,拷贝升级数据包到指定的升级目录下,并删除临时保存的升级数据包,若校验失败,则提示用户升级数据包校验失败。
上述机顶盒的系统软件在线升级的实现装置,检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
可以理解的是,该下载模块660还用于判断本地是否有该升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载该升级数据包。
图7为一个实施例中下载模块的内部结构示意图。该下载模块660包括创建子模块661、初始化子模块662、判断子模块663、下载子模块664、定时检测子模块665、异常检测子模块666和校验子模块667。其中:
创建子模块661用于创建多线程,并为各线程分配标识。具体的,从下载线程资源中创建多线程,开启多任务下载,并为各线程分配标识。线程标识是用于唯一标识线程的。
初始化子模块662用于获取升级数据包大小,根据该升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息。线程初始化时,记录每个线程下载文件的起点和结点,线程标识,当前线程下载文件块的大小等信息。
判断子模块663用于根据该线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在该升级数据包的链接信息。
下载子模块664用于当下载记录信息数据库中存在该升级数据包的链接信息时,将该下载记录信息数据库中记录的断点记录信息更新到该线程标识对应的线程的下载记录信息,该线程按照该断点记录信息开始进行断点继续下载,以及当下载记录信息数据库中不存在该升级数据包的链接信息时,通过该线程标识对应的线程直接下载该升级数据包。
定时检测子模块665用于检测到定时记录事件,通过该线程将该下载记录信息更新至该下载记录信息数据库中。具体的,检测到定时记录事件时,线程将下载记录信息更新至下载记录信息数据库中。该更新可包括添加新的记录信息。
异常检测子模块666用于检测到网络异常事件,通过该线程将该下载记录信息更新至该下载记录信息数据库中,并暂停该线程下载。可以理解的是,在后续检测到网络连通时,自动开启多线程,重新开始下载。
校验子模块667用于检测到该线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的该线程对应的下载记录信息。
上述通过线程控制实现断点续传,节省了时间。并定时记录下载信息,方便维护下载记录信息。
图8为一个实施例中更新模块的内部结构框图。如图9所示,该更新模块680包括拷贝子模块681、重启子模块682和更新子模块683。其中:
拷贝子模块681用于下载完成且进行升级数据包的完整性校验成功后,将该升级数据包拷贝至指定的升级目录下。
重启子模块682用于设置系统软件为Recovery模式,并执行reboot命令进行重启系统。
更新子模块683用于在系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
图9为另一个实施例中机顶盒的系统软件在线升级的实现装置的结构框图。图9中的机顶盒的系统软件在线升级的实现装置是以升级服务器角度描述,包括获取模块920、返回模块940和升级数据包提供模块960。其中:
获取模块920用于获取机顶盒上传的系统软件升级请求及机顶盒的系统软件信息。
返回模块940用于将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至该机顶盒。
具体的,升级服务器将自身存储的系统软件信息与上传的系统软件信息进行比较,若升级服务器上存储的系统软件信息比上传的系统软件信息存在新的信息,则返回链接信息,若升级服务器上存储的系统软件信息比上传的系统软件信息不存在新的信息,即机顶盒上的系统软件信息属于最新的系统软件信息,则返回空数据。该链接信息中包括对应版本详细描述的链接地址。
升级服务器根据系统参数配置文件(parameter.conf)进行Device,Board,Android版本的参数匹配处理,若不匹配则返回空数据至机顶盒,若匹配则根据链接信息中的升级配置文件进行Firmware固件版本与上传的系统软件信息进行参数配置文件匹配处理,若不匹配,则返回空数据至机顶盒,若匹配,则返回对应的版本的详细描述的链接地址给用户。
升级数据包提供模块960用于接收该机顶盒根据链接信息发送的下载请求,并根据该下载请求提供升级数据包下载服务给该机顶盒。
具体的,根据对应版本详细描述的链接地址提供下载升级配置文件服务给机顶盒,并根据该升级配置文件提供下载升级数据包服务给机顶盒。该升级配置文件形式为XML文件。升级数据包可为zip文件。
上述机顶盒的系统软件在线升级的实现方法,检测到首次开机或获取到触发操作产生的系统软件升级请求后,由升级服务器将机顶盒上的系统软件信息与升级服务器上存储的系统软件信息进行比较,返回链接信息,根据链接信息下载升级数据包,根据升级数据包完成在线升级,整个升级过程中仅需开机或一键触发操作,不需由专门的维护人员进行升级,节省了时间,且降低了成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种机顶盒的系统软件在线升级的实现方法,包括以下步骤:
检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器;
接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息;
根据所述链接信息下载升级数据包;
根据下载完成的升级数据包对机顶盒的系统软件进行更新。
2.根据权利要求1所述的方法,其特征在于,所述根据所述链接信息下载升级数据包的步骤包括:
判断本地是否有所述升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载所述升级数据包。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述链接信息下载升级数据包的步骤包括:
创建多线程,并为各线程分配标识;
获取升级数据包大小,根据所述升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息;
根据所述线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在所述升级数据包的链接信息,若是,则将所述下载记录信息数据库中记录的断点记录信息更新到所述线程标识对应的线程的下载记录信息,通过所述线程按照所述断点记录信息开始进行断点继续下载,若否,则通过所述线程标识对应的线程直接下载所述升级数据包;
检测到定时记录事件,则通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中;
检测到网络异常事件,则通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中,并暂停所述线程下载;
检测到所述线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的所述线程对应的下载记录信息。
4.根据权利要求1或2所述的方法,其特征在于,根据下载完成的升级数据包对机顶盒的系统软件进行更新的步骤包括:
下载完成且进行升级数据包的完整性校验成功后,将所述升级数据包拷贝至指定的升级目录下;
设置系统软件为Recovery模式,并执行reboot命令进行重启系统;
系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
5.一种机顶盒的系统软件在线升级的实现方法,包括以下步骤:
获取上传的机顶盒首次开机或触发操作产生的系统软件升级请求及机顶盒的系统软件信息;
将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至所述机顶盒;
接收所述机顶盒根据链接信息发送的下载请求,并根据所述下载请求提供升级数据包下载服务给所述机顶盒。
6.一种机顶盒的系统软件在线升级的实现装置,其特征在于,包括:
上传模块,用于检测到首次开机产生的系统软件在线升级请求或获取到触发操作产生的系统软件在线升级请求,将本地的系统软件信息上传至升级服务器;
链接信息接收模块,用于接收升级服务器将自身存储的系统软件信息与上传的本地的系统软件信息比较得到的链接信息;
下载模块,用于根据所述链接信息下载升级数据包;
更新模块,用于根据下载完成的升级数据包对机顶盒的系统软件进行更新。
7.根据权利要求6所述的装置,其特征在于,所述下载模块还用于判断本地是否有所述升级数据包的下载记录信息,若是,则获取上次下载的断点,以断点为起点继续下载上次未完成的升级数据包,若否,则下载所述升级数据包。
8.根据权利要求6或7所述的装置,其特征在于,所述下载模块包括:
创建子模块,用于创建多线程,并为各线程分配标识;
初始化子模块,用于获取升级数据包大小,根据所述升级数据包大小和线程数目初始化各线程标识对应的升级数据包的链接信息;
判断子模块,用于根据所述线程标识及对应的升级数据包的链接信息,查询下载记录信息数据库中是否存在所述升级数据包的链接信息;
下载子模块,用于当下载记录信息数据库中存在所述升级数据包的链接信息时,将所述下载记录信息数据库中记录的断点记录信息更新到所述线程标识对应的线程的下载记录信息,所述线程按照所述断点记录信息开始进行断点继续下载,以及当下载记录信息数据库中不存在所述升级数据包的链接信息时,通过所述线程标识对应的线程直接下载所述升级数据包;
定时检测子模块,用于检测到定时记录事件,通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中;
异常检测子模块,用于检测到网络异常事件,通过所述线程将所述下载记录信息更新至所述下载记录信息数据库中,并暂停所述线程下载;
校验子模块,用于检测到所述线程下载结束后,进行升级数据包的完整性校验,若校验通过,则删除在下载记录数据库中的所述线程对应的下载记录信息。
9.根据权利要求6或7所述的装置,其特征在于,所述更新模块包括:
拷贝子模块,用于下载完成且进行升级数据包的完整性校验成功后,将所述升级数据包拷贝至指定的升级目录下;
重启子模块,用于设置系统软件为Recovery模式,并执行reboot命令进行重启系统;
更新子模块,用于在系统软件开机重启后进行系统软件的Recovery升级更新处理,得到新的系统软件。
10.一种机顶盒的系统软件在线升级的实现装置,其特征在于,包括:
获取模块,用于获取机顶盒上传的系统软件升级请求及机顶盒的系统软件信息;
返回模块,用于将自身存储的系统软件信息与上传的机顶盒的系统软件信息比较得到的链接信息返回至所述机顶盒;
升级数据包提供模块,用于接收所述机顶盒根据链接信息发送的下载请求,并根据所述下载请求提供升级数据包下载服务给所述机顶盒。
CN201410132077.4A 2014-04-02 2014-04-02 机顶盒的系统软件在线升级的实现方法和装置 Expired - Fee Related CN103885806B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410132077.4A CN103885806B (zh) 2014-04-02 2014-04-02 机顶盒的系统软件在线升级的实现方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410132077.4A CN103885806B (zh) 2014-04-02 2014-04-02 机顶盒的系统软件在线升级的实现方法和装置

Publications (2)

Publication Number Publication Date
CN103885806A true CN103885806A (zh) 2014-06-25
CN103885806B CN103885806B (zh) 2017-07-07

Family

ID=50954716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410132077.4A Expired - Fee Related CN103885806B (zh) 2014-04-02 2014-04-02 机顶盒的系统软件在线升级的实现方法和装置

Country Status (1)

Country Link
CN (1) CN103885806B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104281477A (zh) * 2014-10-13 2015-01-14 中国外汇交易中心 一种用于计算机系统的软件自动部署方法
CN104602123A (zh) * 2014-09-15 2015-05-06 四川长虹电器股份有限公司 基于互联网交互的智能升级系统及方法
CN105278998A (zh) * 2015-11-17 2016-01-27 北京联合众为科技发展有限公司 一种单片机固件升级方法
CN105893076A (zh) * 2015-12-25 2016-08-24 乐视致新电子科技(天津)有限公司 一种空中升级方法与装置
CN105897911A (zh) * 2016-05-20 2016-08-24 广州优视网络科技有限公司 下载文件的方法、装置及用户终端
CN106161641A (zh) * 2016-07-22 2016-11-23 中水三立数据技术股份有限公司 一种具有多连接的低功耗终端的程序升级方法及其装置
CN106293790A (zh) * 2015-05-28 2017-01-04 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN106411619A (zh) * 2016-12-02 2017-02-15 北京博大光通物联科技股份有限公司 一种基于低功耗广域网的无线设备升级方法
CN106572391A (zh) * 2016-11-01 2017-04-19 广州视源电子科技股份有限公司 电视宕机恢复方法及电视机
CN106775892A (zh) * 2016-12-29 2017-05-31 无锡小天鹅股份有限公司 智能电器及其无线通信模块的在线升级方法、系统
CN106951253A (zh) * 2017-03-21 2017-07-14 广州慧睿思通信息科技有限公司 一种嵌入式固件在线升级方法
CN107357647A (zh) * 2017-05-24 2017-11-17 华为技术有限公司 一种组件更新的方法以及相关装置
CN107945858A (zh) * 2017-12-14 2018-04-20 无锡祥生医疗科技股份有限公司 超声诊断仪的升级备份方法、装置及系统
CN108089874A (zh) * 2017-12-27 2018-05-29 北京海泰方圆科技股份有限公司 软件的升级方法、装置和系统
CN109218832A (zh) * 2018-07-26 2019-01-15 烽火通信科技股份有限公司 机顶盒在recovery模式下的设备升级方法和系统、应用
CN109803177A (zh) * 2018-12-06 2019-05-24 安徽站乾科技有限公司 一种机顶盒快速加载及升级方法
CN112533063A (zh) * 2019-08-30 2021-03-19 中兴通讯股份有限公司 机顶盒升级方法、机顶盒升级装置、机顶盒及存储介质
CN113094075A (zh) * 2021-03-02 2021-07-09 厦门亿联网络技术股份有限公司 固件升级方法、装置、终端设备及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060427A (zh) * 2006-04-19 2007-10-24 华为技术有限公司 实现远程软件升级的系统及方法
CN101291195A (zh) * 2008-05-23 2008-10-22 中兴通讯股份有限公司 实现断点续传的文件下载的方法、系统及终端
CN102222011A (zh) * 2011-06-28 2011-10-19 广东中大讯通软件科技有限公司 一种机顶盒的软件升级方法及机顶盒
CN102945175A (zh) * 2012-11-09 2013-02-27 杭州易和网络有限公司 一种基于云计算环境的终端软件在线升级系统及其方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060427A (zh) * 2006-04-19 2007-10-24 华为技术有限公司 实现远程软件升级的系统及方法
CN101291195A (zh) * 2008-05-23 2008-10-22 中兴通讯股份有限公司 实现断点续传的文件下载的方法、系统及终端
CN102222011A (zh) * 2011-06-28 2011-10-19 广东中大讯通软件科技有限公司 一种机顶盒的软件升级方法及机顶盒
CN102945175A (zh) * 2012-11-09 2013-02-27 杭州易和网络有限公司 一种基于云计算环境的终端软件在线升级系统及其方法

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602123B (zh) * 2014-09-15 2017-06-23 四川长虹电器股份有限公司 基于互联网交互的智能升级系统及方法
CN104602123A (zh) * 2014-09-15 2015-05-06 四川长虹电器股份有限公司 基于互联网交互的智能升级系统及方法
CN104281477A (zh) * 2014-10-13 2015-01-14 中国外汇交易中心 一种用于计算机系统的软件自动部署方法
CN106293790A (zh) * 2015-05-28 2017-01-04 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN106293790B (zh) * 2015-05-28 2019-12-13 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN105278998A (zh) * 2015-11-17 2016-01-27 北京联合众为科技发展有限公司 一种单片机固件升级方法
CN105893076A (zh) * 2015-12-25 2016-08-24 乐视致新电子科技(天津)有限公司 一种空中升级方法与装置
CN105897911A (zh) * 2016-05-20 2016-08-24 广州优视网络科技有限公司 下载文件的方法、装置及用户终端
CN106161641A (zh) * 2016-07-22 2016-11-23 中水三立数据技术股份有限公司 一种具有多连接的低功耗终端的程序升级方法及其装置
CN106572391A (zh) * 2016-11-01 2017-04-19 广州视源电子科技股份有限公司 电视宕机恢复方法及电视机
CN106411619A (zh) * 2016-12-02 2017-02-15 北京博大光通物联科技股份有限公司 一种基于低功耗广域网的无线设备升级方法
CN106775892A (zh) * 2016-12-29 2017-05-31 无锡小天鹅股份有限公司 智能电器及其无线通信模块的在线升级方法、系统
CN106951253A (zh) * 2017-03-21 2017-07-14 广州慧睿思通信息科技有限公司 一种嵌入式固件在线升级方法
CN107357647A (zh) * 2017-05-24 2017-11-17 华为技术有限公司 一种组件更新的方法以及相关装置
CN107945858A (zh) * 2017-12-14 2018-04-20 无锡祥生医疗科技股份有限公司 超声诊断仪的升级备份方法、装置及系统
CN108089874A (zh) * 2017-12-27 2018-05-29 北京海泰方圆科技股份有限公司 软件的升级方法、装置和系统
CN109218832A (zh) * 2018-07-26 2019-01-15 烽火通信科技股份有限公司 机顶盒在recovery模式下的设备升级方法和系统、应用
CN109218832B (zh) * 2018-07-26 2022-01-04 烽火通信科技股份有限公司 机顶盒在recovery模式下的设备升级方法和系统
CN109803177A (zh) * 2018-12-06 2019-05-24 安徽站乾科技有限公司 一种机顶盒快速加载及升级方法
CN112533063A (zh) * 2019-08-30 2021-03-19 中兴通讯股份有限公司 机顶盒升级方法、机顶盒升级装置、机顶盒及存储介质
CN113094075A (zh) * 2021-03-02 2021-07-09 厦门亿联网络技术股份有限公司 固件升级方法、装置、终端设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN103885806B (zh) 2017-07-07

Similar Documents

Publication Publication Date Title
CN103885806A (zh) 机顶盒的系统软件在线升级的实现方法和装置
CN106843957B (zh) 系统固件升级方法及装置
CN102609326B (zh) 一种数据下载处理方法及装置
WO2017067448A1 (zh) 一种无线固件升级方法、系统及计算机存储介质
CN101719073B (zh) 一种基于智能客户端的按需下载实现方法
CN105138347A (zh) 一种差分升级包生成方法、软件升级方法及相应装置
TWI533216B (zh) 作業系統更新方法
CN107783776B (zh) 固件升级包的处理方法及装置、电子设备
CN101616018A (zh) 网管软件升级的方法及装置
CN102667716A (zh) 使用固件更新应用程序更新部件的固件的方法及装置
CN102945177A (zh) Plc固件升级系统及方法
CN106325929A (zh) 一种固件升级方法、固件升级装置、冰箱和服务端
CN101883254A (zh) 互动电视机顶盒的ip点播载入升级装置及升级方法
CN102841824B (zh) 一种回滚方法和回滚装置
CN106851626B (zh) 局域网环境下安卓系统批量升级的实现装置及方法
CN105808278A (zh) 一种客户端版本升级方法及装置
CN112099825B (zh) 组件进行升级的方法、装置、设备及存储介质
CN106952425A (zh) 一种终端远程升级方法和pos终端
CN109360029A (zh) 一种远程终端广告机的自我管理方法
CN106897166A (zh) 一种移动终端及其修复方法
CN109542480A (zh) 美甲打印装置的操作系统升级方法、装置和介质
US20040192280A1 (en) System for updating application software of data acquisition devices
WO2016082450A1 (zh) 一种用户终端的升级方法和用户终端
CN107766063A (zh) 一种批量升级软件的方法及系统
CN104090802A (zh) 一种网络摄像机断电保护方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 518000 Nanshan medical equipment Industrial Park, No. 1019, Nanshan Road, Nanshan District, Shenzhen, Guangdong Province, A211-A213

Patentee after: Shenzhen Hai Yun new energy Co., Ltd.

Address before: 518000 Nanshan District, Guangdong, South China Sea Road, No. 1019 Nanshan medical equipment Industrial Park, A408, B401-403,

Patentee before: SHENZHEN GOLDWEB TECHNOLOGY CO., LTD.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170707

Termination date: 20180402