CN1187984C - 用于下载和管理编码对象列表的执行的方法和系统 - Google Patents
用于下载和管理编码对象列表的执行的方法和系统 Download PDFInfo
- Publication number
- CN1187984C CN1187984C CN00814376.5A CN00814376A CN1187984C CN 1187984 C CN1187984 C CN 1187984C CN 00814376 A CN00814376 A CN 00814376A CN 1187984 C CN1187984 C CN 1187984C
- Authority
- CN
- China
- Prior art keywords
- new program
- program coding
- top terminal
- objects
- tabulation
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000006870 function Effects 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241000239290 Araneae Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4335—Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4351—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4627—Rights management associated to the content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
Abstract
一种管理和控制将程序即编码对象下载到与有线电视相连的机顶终端的方法和系统,从而阻止在规定的编码对象只有部分被成功下载时由此引起不能正常运行或者与现存的应用程序发生冲突可能引起的服务中断。当将要下载的新的或附加的编码对象的消息列表出两个或者更多的时候,仅当所有列举的对象都被成功地接收,机顶终端才启动和执行下载的对象。如果被指示下载的对象只有部分被终端所接收,那些已下载的对象将被清除或者存储在存储器中不被启动或者执行而系统运营者可以在信息中规定指示终端获得新的对象,不论列举的对象是否被作为一组而执行。系统运营者可以简单地规定是否将来自于不完全下载的对象从存储器中清除。
Description
技术领域
本发明涉及一种在有线电视系统中对机顶终端编程和再编程的领域。特别的,本发明涉及控制例如操作系统或本地序列对象的程序下载的领域,此程序是为了对有线网络上的机顶终端进行初始化或升级而对机顶终端的编程。
背景技术
在通常的有线电视系统中,用户被配备有机顶盒或终端。机顶盒是一种电子设备的盒子用于将用户的电视和可能的其它电子设备与有线网络相连接。机顶盒通常通过同轴电缆墙上插座与有线网络相连接。
机顶盒本质上是一个计算机,它被编程从而处理来自于有线网络的信号从而可以向用户提供有线服务。这些有线电视公司的服务通常包括访问许多电视频道,也可能是电子节目指南(EPG)。也可以以额外的费用向用户提供额外收费的频道。在有线网络上还可提供按次计费项目和视频点播服务。机顶盒被编程用于向用户提供这些服务。
然而,有线公司的服务并不局限于提供电视节目。一些有线公司现在已可以在他们的有线网络上以远远快于传统电话线的速率访问互联网和收发电子邮件。未来可期望在有线网络上提供越来越多的服务,甚至可能包括基本电话业务。最后,每个家庭或办公室都可能具有通过有线网络通向所有电子数据服务的唯一接口。
随着有线网络及其提供的服务的发展,机顶终端也必须随之发展从而可以向用户提供有线网络上他们感兴趣的所有服务。机顶盒的发展主要涉及机顶盒编程的变化。通过升级机顶盒的软件或固件,机顶盒可以更有效的操作或随着有线网络的发展提供新的服务。
为了升级有线网络上的机顶盒的总体,最好将新的程序通过有线网络本身传送给机顶盒。否则,技术员就必须到每个用户的家对他们的机顶盒升级或再编程。这种领域升级显然是费用巨大的。
数据转发器是有线网络的运营者由此来广播电视信号和提供有线网络上的其他服务的设备。向机顶盒的总体提供的升级软件由数据转发器在有线网络上广播。数据转发器还可以在有线网络上向机顶终端广播消息和指令。
这里使用的程序编码对象,或编码对象是指一个程序个体,即,可以被机顶终端下载和执行的一个软件或固件。更广泛的,数据对象是指被有线网络上的数据转发器发送给一个或多个机顶终端的任何数据结构,包括编码对象,消息或指令。
通常,为了提供新的服务或升级机顶终端中的程序,机顶终端必须获得多个新的编码对象,即,多个软件或固件。为了正常的运作,这多种程序往往是相互作用和相互需要的。结果,如果机顶终端获取某些,而不是所有的,作为部分程序升级而被下载的编码对象,就会出现问题。当机顶终端开始运行新获得的编码对象时,这些编码对象可能会因为缺少其他机顶终端应当获得或执行的相互依赖的编码对象而无法正确运行或完全不能运行。
因此,在技术上就需要一种在有线电视系统中控制机顶终端对编码对象的下载的方法,从而阻止新获得的编码对象在需要机顶终端应当获得但是由于某种原因而无法下载的其它编码对象存在的情况下的执行。
发明内容
本发明的目的是满足上述和其他的需要。特别的,本发明的目的是提供一种在有线电视系统中控制机顶终端对编码对象的下载的方法和系统,从而阻止新获得的编码对象在需要机顶终端应当获得但是由于某种原因而无法下载的其它编码对象存在的情况下的执行。
本发明其余的目的,优点和新颖的特征将在以下的说明中被详述,或者,通过阅读这些材料或实践本发明,将会被本领域的技术人员认识到。本发明的目的和优点将通过附带的权利要求所述的装置来实现。
为了实现所述的这些和其他目的,本发明可被表达为或描述为一种对下载到与有线电视系统相连的机顶终端的程序编码对象的控制和管理的方法,从而阻止在下载指令消息中规定的编码对象列表只有部分被成功下载并由此可能引起无法正常运行或者与现存的应用程序相冲突的情况下,而可能出现的机顶终端的服务的中断。本发明中的方法主要是通过有条件的阻止机顶终端启动和执行响应于下载指令消息的接收而下载的任何编码对象而实现的,除非在下载指令消息中为了下载而列举的所有编码对象都被机顶终端所获得。
如果在下载指令消息中为下载而列举的所有编码对象都被机顶终端所获得,则本发明允许机顶终端继续启动和执行所获得的编码对象。最好是,如果执行的话,所有列举的编码对象被同时启动。
有条件的阻止机顶终端启动与执行响应于下载指令消息的接收而由机顶终端下载的任何编码对象,除非在下载指令消息中为了下载而列举的所有编码对象都被机顶终端所获得的步骤最好是响应于包含在下载指令消息中的只列表使能标记而执行。这允许系统运营者有选择地阻止机顶终端启动和执行机顶终端将要获得的编码对象的列表的一部分。换句话说,如果在下载指令消息中的只列表使能标记为负,机顶终端将继续启动和执行响应于机顶终端对下载指令消息的接收而下载的任何编码对象,即使不是所有列举的对象都被成功地获得。
如果在下载指令消息中为下载列举的所有编码对象没有都被机顶终端所获得,本发明中的方法可以包括清除存储器中的响应于下载指令消息的接收而被机顶终端下载的所有编码对象。
本发明也涉及用于执行上述方法的系统和硬件。例如,本发明也涉及管理和控制程序编码对象的下载的系统,该对象被下载到与有线电视系统相连的机顶终端,从而阻止在下载指令消息中规定的编码对象列表只有部分被成功下载并由此可能引起无法正常运行或者与现存的应用程序相冲突的情况下,而可能出现的机顶终端的服务的中断。该系统最好包括:(1)至少一个与有线电视系统相连的机顶终端,用于接收来自于数据转发器的数据信号;以及(2)一个系统转发器,包括一个处理器和一个传输器,该传输器用于向机顶终端传输下载指令消息,用于指示机顶终端从数据信号下载编码对象列表。机顶终端一般包括一个用于执行编程的处理器,一个用于存储数据和程序的存储器以及一个用于向处理器提供数据信号从而使得机顶终端能够从数据信号中下载编码对象的调谐器。根据本发明,机顶终端有条件的不启动或者执行响应于下载指令消息的接收而下载的任何编码对象,除非在下载指令消息中为下载列举的所有编码对象都被机顶终端所获得。
附图说明
以下附图举例说明了本发明,并且是说明书的一部分。与下面的描述一起,所述附图论证和解释了本发明的原理。
图1是说明根据涉及的发明,机顶终端获得编程对象的基本顺序的流程图。
图2是实现本发明的有线电视系统的基本单元的方框图。
图3是说明根据本发明控制和启动下载的编码对象列表的方法的流程图。
图4是说明根据本发明的下载控制消息的图形。
具体实施方式
相关的序号60/130,328的美国专利申请(这里被全部引用)详尽的描述了一种有专利权的方法和系统用于在有线系统中对机顶终端下载编程对象。图1是说明根据此方法在有线系统中机顶终端获得编程对象的基本顺序的流程图。图2是说明使用本发明的有线电视系统的基本单元的方框图。
参照图1和图2,机顶终端(202;图2)在被接通电源后立即执行自动启动处理。如图1所示,启动处理开始于机顶终端执行一个称为启动编码(100)的程序。此启动编码是一个制造时装载在机顶终端的只读存储器(ROM)中的编程对象。正如所有机顶终端(202)执行的程序一样,启动编码被存储在存储单元(212;图2)中并被处理器(211;图2)执行。
或者,机顶终端(202)可能不进行图1所示的初始化启动处理直至所述终端(202)接通电源和数据转发器(201;图2)来的数据传输流。机顶终端也可能响应于已接收的例如来自于数据转发器(201),即系统运营者的重起信号执行启动编码(100)。
当运行时,启动编码对机顶终端(202)提供最小程序从而允许此终端自己调动其所有功能。启动编码通常不会使机顶终端(202)提供任何服务,而仅仅被设置成获得,如果需要的话,并装载更高级别的程序。这里使用的术语“启动编码”包括为完成此功能所需的最小编码。
如图1所示,启动编码将首先获得基础平台编码(101-105)。启动编码将首先检测机顶终端(202)的存储器(212;图2)从而确定基础平台编码是否存储在那里(101,102)。若基础平台编码在存储器(212)中,则机顶终端(202)的处理器(211;图2)运行启动编码以验证基础平台编码(104),并且,假设此编码通过了验证处理,将开始执行基础平台编码(105)。
若基础平台编码不在存储器(102)中,则机顶终端(202)将接通数据转发器(201;图2)的数据传输流,使用调谐器(210;图2)定位数据转发器信号中的基础平台编码的传输,并下载基础平台编码(103)。基础平台编码最好被传送至频带外传输流上的机顶终端,用于存储在存储单元(212)的闪存部分。然而基础平台编码也可被传送至频带内控制频道上。
然后下载的平台编码被验证(104),如以前一样,然后被执行。启动编码最好每次启动基础平台对象时都再一次验证基础平台编码而不论基础平台编码是否已在存储器(212)中被发现或已被下载。
一旦基础平台编码被启动,终端(202)的控制由启动编码送至基础平台编码。当执行基础平台编码时,机顶终端(202)可向用户提供最小化功能,例如,允许用户接收有线系统来的电视节目。然而,为了使机顶终端获得全部的功能,基础平台编码必须获得被称为本地序列的附加编程。本地序列通常包括对系统对像的操作,和通常的附加应用程序。这些附加的或“常驻的”应用程序是在操作系统下运行在机顶终端上的计算机程序。此常驻的应用程序向机顶终端提供除看电视之外的其他功能。
如图1所示,基础平台编码,当首先被执行或由数据转发器的信号重起时,检测(106,107)存储单元(212)从而确定操作系统编码对象是否已常驻在终端(202)中。操作系统(O/S)通常是指允许机顶终端(202)运行本地序列的各种常驻应用程序的第三方(例如微软的WinCETM)而来的编码。操作系统编码通常使用机顶终端制造商提供的附加嵌入的编码模块作为操作系统与机顶终端的特定硬件的接口从而使操作系统运行在特定的机顶终端上。
如果在存储器(212)中发现操作系统编码对象,则基础平台编码授权并验证存储器(212)的操作系统编码(109)。如果操作系统编码对象不在存储器(212)中,则机顶终端(202)运行基础平台编码,将接通数据转发器(201)来的数据传输流,并定位和下载适当的操作系统编码对象(108)。然后下载的对象被授权并被验证(109)。
一旦被授权和被验证,操作系统编码就被执行(110)。当运行操作系统编码时,机顶终端也可执行能够向用户提供任何类型的服务的附加编码对象或本地序列的应用程序。基础平台编码可被设计成获得与操作系统一起的本地序列的所有码元。或者,如图1所示,操作系统在运行时可获得本地序列的其它码元。
最好,运行操作系统编码的处理器(211)为所期望的本地序列(111)的码元首先检测存储单元(212)。若本地序列应用程序在存储器(212)中,操作系统可授权并验证这些应用程序(114)并执行它们(115)。
处理器(211)然后将确定其是否已被命令获得任何附加对象(112),包括存储器(212)中未发现的本地序列应用程序。如果没有,则机顶终端处在完全功能性(116)状态。然而,如果处理器(211)需要获得附加对象,则这些应用程序从有线网络(113)被下载。下载的应用程序对象被授权并被验证(117),并被执行(118)。
一旦操作系统和所有其他规定的应用程序被运行,则机顶终端已达到完全功能性(116)。正如本领域的技术人员所清楚的,本地序列应用程序的列表从机顶终端到另一机顶终端可能会改变。一个从有线系统预定较少服务的用户可能比对所有提供服务都付费的用户需要较少的本地序列应用程序。此外,随着新的服务的增加,新的应用程序可被加入本地序列以支持新的服务。这样,构成本地序列的应用程序的列表,可随着时间和用户需求以及喜好而变化。
如上所述,基础平台编码在机顶终端的初始化或从系统运营者处接收初始化指令期间可获得包括操作系统和常驻应用程序的本地序列。从而,当系统运营者希望改变或升级机顶终端的操作系统或常驻应用程序时,系统运营者可通过有线网络发送一初始化消息至机顶终端,指示基础平台编码获得或再次获得随后在有线网络上广播的操作系统和常驻应用程序。这些数据转发器(201)来的消息也可同时改变定义终端的本地序列的码元列表。
这种设置使机顶终端可以很容易的升级,变更或改进,也可能导致对机顶用户的服务中断。例如,当基础平台编码或操作系统编码接收一在有线网络上获得新的编码对象的指令,此指令将规定编码对象或将要获得的对象。若将要获得的对象多于一个,可能会导致另一问题,如果只有一个对象被机顶终端(202)实际的接收。
特别的,终端(202)可接收并启动其被命令获得的第一编码对象。如果这样,不论是何原因,机顶终端都不能获得已被命令下载的其他编码对象,那些未被接收的编码对象所执行的功能将不能提供给机顶终端的用户。而且,编码对象通常是相互关联的。从而,已被下载的对象没有那些应当已被下载但没有被接收的其他对象可能不能正常工作。类似的,启动和执行已被接收的新的编码对象可能会干扰以前常驻在机顶终端的软件或固件的执行,如果规定下载的其他对象没有被获取并执行的话。
因此,如上所述,在技术上需要一种方法用于控制有线电视系统中机顶终端对编码对象的下载从而阻止新获得的编码对象的执行,因为新获得的编码对象的执行需要那些机顶终端预期获得但由于某种原因未能下载的其他编码对象。本发明以下面的方式可克服此可能的问题。
运行基础平台或操作系统编码的机顶终端(202),将识别其已被指示获得的对象的列表。通常,此列表将是本地序列中的对象的完全列表。然而,将被获得的对象的列表可能只有本地序列的一部分。
将被获得对象的列表和获得它们的指令可由系统运营者通过数据转发器(201)接收的消息获得,也可是终端程序的一部分,基础平台或操作系统编码。不论哪种情况,机顶终端(202)将从数据转发器(201)通过有线系统(203)接收的传输流开始获取列表的对象。然而,终端(202)将不会,启动或执行任何接收的对象直到将要获得的列表的所有对象已被成功的接收。管理下载的程序,例如,基础平台编码或操作系统编码,被修改或重新设计,从而在任何列表对象被启动或执行之前成功的获得所有列表的编码对象。这样,如果被指示获得和执行的对象只有一小部分,或只有一个对象与已经常驻的程序冲突,机顶终端(202)都将不会结束。
图4示出了指示机顶终端下载新的或附加的编码对象的消息的图形说明。如图4所示,消息(401)还可包括一个只列表的使能标志(402),它将指示机顶终端(202)其是否必须只能启动将要获得的对象的完全列表或是其能够接收到的,启动并执行仅表示一部分被列表将要获得的对象。此只列表的使能标志(402)可以只是消息(401)中的单个比特,并且当然是,确定(即“有”或“开”)或否定(即“没有”或“关”)。也就是说,如果存在只列表使能标志(402),接收到的所有对象将同步或接近同步的被启动。因此,没有对象将被启动直到此列表中的所有对象都已被正确接收。所有接收对象的同步启动将向机顶终端的用户提供最小可能中断的服务。
在只有所有列表的对象都已被接收时才启动和执行接收编码对象之外,如果对象组中的所有的编程对象未被全部接收的话,机顶终端(202)还可以被编程用于从存储器(212)清除已被接收的列表的对象。也就是说,若机顶终端(202)开始获取被指示获得的对象列表,但并非所有被列表的对象都被最终接收,这就需要从存储器(212)中删除曾被获得但又没能获得对象组的所有对象而不能被使用或启动的任何对象。从而,作为本发明的一个选择,机顶终端(202)可被编程用于删除存储器(212)中作为将要接收的对象列表已被获得、结果并非所有列表的对象都被最终接收,启动并使用的任何编码对象。
此机顶盒使用列表标识符和列表版本来识别包括确定的对象序列(从下载消息来的最近的对象列表)的那些对象。如果一个对象从下载消息(401)中的列表中被加入或去除,机顶盒将随着那个被增加或去除对象的列表而升级存储器(212)中的对象序列。此外,列表版本可被用于强迫对象的升级,其中下载消息(401)的列表中被识别的对象版本与机顶盒存储器(212)中的对象版本不同。
这种清除列表中对象的不同版本功能还可由一个从数据转发器(201)来的消息(401)中的标记(403)来控制,即一个自动清除标记(403)。同样,标记(403)可以只是一个单独的比特表示此自动清除标记(403)在消息(401)中有或没有。这样,系统运营者可以选择清除机顶终端的存储器(212)中与下载消息(401)中规定的版本不同的所有列表的对象。
此处理在图3中被示出。如图3所示,本发明的方法开始于机顶终端接收一消息指示其从有线系统(301)获得新的或附加的编码对象。机顶终端(202)首先检测自动清除标记是否存在于消息(306)中或此标记为肯定。如果是,则终端(202)适当地清除与收到的消息(309)中为下载规定的对象版本不同的对象。在清除后,或如果自动清除标记(403)是否定(306),则机顶终端(202)尝试下载消息(302)中列表的编码对象。
当此下载结束或已被中断时,通过一暂停计数器,终端将确定是否其被指示获得的所有对象都已成功下载(303)。如果终端不能获得所有规定的对象,则终端可从存储器(307)中删除曾经获得的所有对象。
在另一方面,如果所有的对象都已被获得,则机顶终端继续启动和执行对象。终端首先检测只列表使能标记(305)。如果此列表使能标记存在或为正,则最好同步或接近同步的启动下载的对象,从而将列表上的对象作为单独的对象(304)来对待。
如果只列表使能标记(402)是否定,但所有的对象都已被成功接收,则机顶终端(202)将获得的对象存在存储器(212)中,但并不启动或执行它们(308)。如果将要获得的对象只有一部分被成功接收(303),则机顶终端(202)将删除列表上的所有对象(307)。
在一系统环境中的对象可被对象标识符和对象版本(即,对象-名称和对象-版本)唯一的识别。此对象-名称在提供给个体机顶终端(202)的下载传输流中是唯一的。下载指令消息,指示机顶终端(202)获得对象列表,还可识别对象名称/唯一标志符和所需对象的版本。若机顶盒已有此特定对象,但是版本不同,则其可能希望去除机顶终端中当前常驻的对象,并获得指令消息中识别的版本。最好,从系统运营者来的、对新的编码对象的获取进行初始化的指令消息还包括一标记,指示机顶终端是否自动清除编码对象,此编码对象已经常驻在机顶终端存储器(212)中并被消息中的对象列表的唯一的对象标识符(即,对象-名称)所识别,但其版本与消息的对象列表列出的版本(即,对象-版本)不同。自动清除标记以及需要在启动以前接收所有列举编码对象的只列表使能标记都仅需要一比特的长度。
根据本发明的原理,然后,一包括许多编码对象的本地或操作序列可在有线电视系统中被所有希望和意图的机顶终端传送和使用就好像此序列是一个单独的编码对象一样。本发明的这一特征允许系统运营者对其服务上的中断最小化,和减少在一系列编码对象只有一部分被成功下载时可能导致的混乱。
以下的说明只是为了举例和说明本发明。而并不能穷举的或限制本发明为某一确定的模式。根据上述教导,可以做出许多修改和变化。
最佳实施例的选择和描述是为了最好的说明本发明的原理和其实际的应用。前面的描述是为了使其他本领域技术人员以不同的实施方式最好的实现本发明,并以各种不同的修改以适应特定需要的使用。
Claims (16)
1.一种对程序编码对象的下载进行管理和控制的方法,该程序编码对象被下载到与有线电视系统相连的机顶终端(202),该方法包括:
识别将被所述机顶终端(202)获得的多个新的程序编码对象,所述多个新的程序编码对象的每个新的程序编码对象是一个程序,所述每个新的程序编码对象是独立可执行的而所述多个新的程序编码对象在功能上是相互关联的;
将通过所述机顶终端(202)从数据转发器(201)接收的传输流中下载所述多个新的程序编码对象;
将所述多个新的程序编码对象存储到所述机顶终端(202)的存储器(212)中;
确定何时所述所有新的程序编码对象已经被所述机顶终端(202)获得;
其特征在于所述识别将被获得的多个新的程序编码对象的步骤包括:
获得下载指令消息(401),所述下载指令消息(401)指示所述机顶终端(202)获得所述多个新的程序编码对象;
其中所述下载指令消息(401)包括一个列表,一个只列表使能标志(402)和自动清除使能标记(403);
其中所述列表识别将被所述机顶终端(202)获得的所述多个新的程序编码对象;
其中根据所述只列表使能标志(402)的状态,所述机顶终端(202)使能启动所述完整列表或是接收、启动和执行仅表示一小部分所述列表的所述新的程序编码对象;
其中根据所述自动清除使能标记(403)的状态,当被识别为将被获得的所述多个新的程序编码对象的至少一个没有被成功获得时,从存储器(212)中清除所述多个新的程序编码对象。
2.如权利要求1的方法,其中一旦所述机顶终端(202)已经获得所述被识别为将被获得的所有所述多个新的程序编码对象,所述方法进一步包括启动和执行所述多个新的程序编码对象。
3.如权利要求1的方法,其中所述多个新的程序编码对象的任何一个都不是可执行的直到所述被识别为将被获得的所有所述多个新的程序编码对象已经被获得。
4.如权利要求1的方法,其中所述每个新的程序编码对象是本地序列(111)的一部分。
5.如权利要求1的方法,其中所述下载指令消息(401)被结合到所述机顶终端(202)中,作为基础平台编码或者操作系统编码的一部分。
6.如权利要求1的方法,其中所述机顶终端(202)从所述数据转发器(201)接收所述下载指令消息(401)。
7.如权利要求1的方法,其中所述下载指令消息(401)包括所述自动清除使能标记(403),
当所述自动清除使能标记(403)为正时,从所述存储器(212)中清除任何具有其版本不同于所述多个新的程序编码对象的新的程序编码对象的版本的程序编码对象。
8.如权利要求1的方法,其中,当所述被识别为将被获得的所有所述多个新的程序编码对象已经被获得时:
当所述只列表使能标志(402)为正时,所述每个新的程序编码对象被所述机顶终端(202)使能启动和执行;并且
当所述只列表使能标志(402)为负时,所述每个新的程序编码对象被保持在所述存储器(212)中而没有被使能启动和执行。
9.一种对程序编码对象的下载进行管理和控制的系统,所述系统包括连接到有线电视系统的机顶终端(202)以用于:
识别将被所述机顶终端(202)获得的多个新的程序编码对象,所述多个新的程序编码对象的每个新的程序编码对象是一个程序,所述每个新的程序编码对象是独立可执行的而所述多个新的程序编码对象在功能上是相互关联的;
将通过所述机顶终端(202)从数据转发器(201)接收的传输流中下载所述多个新的程序编码对象;
将所述多个新的程序编码对象存储到所述机顶终端(202)的存储器(212)中;
确定何时所述所有新的程序编码对象已经被所述机顶终端(202)获得;
其特征在于所述识别将被获得的多个新的程序编码对象的步骤包括:
获得下载指令消息(401),所述下载指令消息(401)指示所述机顶终端(202)获得所述多个新的程序编码对象;
其中所述下载指令消息(401)包括一个列表,一个只列表使能标志(402)和自动清除使能标记(403);
其中所述列表识别将被所述机顶终端(202)获得的所述多个新的程序编码对象;
其中根据所述只列表使能标志(402)的状态,所述机顶终端(202)使能启动所述完整列表或是接收、启动和执行仅表示一小部分所述列表的所述新的程序编码对象;
其中根据所述自动清除使能标记(403)的状态,当被识别为将被获得的所述多个新的程序编码对象的至少一个没有被成功获得时,从存储器(212)中清除所述多个新的程序编码对象。
10.如权利要求9的系统,其中一旦所述机顶终端(202)已经获得所述被识别为将被获得的所有所述多个新的程序编码对象,所述机顶终端就可以启动和执行所述多个新的程序编码对象。
11.如权利要求9的系统,其中所述多个新的程序编码对象的任何一个都不是可执行的直到所述被识别为将被获得的所有所述多个新的程序编码对象已经被获得。
12.如权利要求9的系统,其中所述每个新的程序编码对象是本地序列(111)的一部分。
13.如权利要求9的系统,其中所述下载指令消息(401)被结合到所述机顶终端(202)中,作为基础平台编码或者操作系统编码的一部分。
14.如权利要求9的系统,其中所述机顶终端(202)从所述数据转发器(201)接收所述下载指令消息(401)。
15.如权利要求9的系统,其中所述下载指令消息(401)包括一个自动清除使能标记(403),
当所述自动清除使能标记(403)为正时,从所述存储器(212)中清除任何具有其版本不同于所述多个新的程序编码对象的新的程序编码对象的版本的程序编码对象。
16.如权利要求9的系统,其中,当所述被识别为将被获得的所有所述多个新的程序编码对象已经被获得时:
当所述只列表使能标志(402)为正时,所述每个新的程序编码对象被所述机顶终端(202)使能启动和执行;并且
当所述只列表使能标志(402)为负时,所述每个新的程序编码对象被保持在所述存储器(212)中而没有被使能启动和执行。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14869199P | 1999-08-16 | 1999-08-16 | |
US60/148,691 | 1999-08-16 | ||
US09/617,627 | 2000-07-17 | ||
US09/617,627 US6813778B1 (en) | 1999-08-16 | 2000-07-17 | Method and system for downloading and managing the enablement of a list of code objects |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1379956A CN1379956A (zh) | 2002-11-13 |
CN1187984C true CN1187984C (zh) | 2005-02-02 |
Family
ID=26846078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN00814376.5A Expired - Fee Related CN1187984C (zh) | 1999-08-16 | 2000-08-15 | 用于下载和管理编码对象列表的执行的方法和系统 |
Country Status (10)
Country | Link |
---|---|
US (2) | US6813778B1 (zh) |
EP (1) | EP1210823B1 (zh) |
JP (1) | JP2003520364A (zh) |
CN (1) | CN1187984C (zh) |
AU (1) | AU6775500A (zh) |
BR (1) | BR0013418A (zh) |
CA (1) | CA2382260A1 (zh) |
DE (1) | DE60016427T2 (zh) |
TW (1) | TW480888B (zh) |
WO (1) | WO2001013643A1 (zh) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6813778B1 (en) * | 1999-08-16 | 2004-11-02 | General Instruments Corporation | Method and system for downloading and managing the enablement of a list of code objects |
US6904611B1 (en) * | 1999-09-03 | 2005-06-07 | General Instrument Corporation | Method and system for directing the download of software and firmware objects over a network such as a cable television system |
US7069578B1 (en) * | 2000-02-04 | 2006-06-27 | Scientific-Atlanta, Inc. | Settop cable television control device and method including bootloader software and code version table for maintaining and updating settop receiver operating system software |
US7606898B1 (en) | 2000-10-24 | 2009-10-20 | Microsoft Corporation | System and method for distributed management of shared computers |
US6886038B1 (en) * | 2000-10-24 | 2005-04-26 | Microsoft Corporation | System and method for restricting data transfers and managing software components of distributed computers |
EP1227667A1 (en) * | 2001-01-18 | 2002-07-31 | Sony Service Centre (Europe) N.V. | Method and device for providing downloaded objects to an application |
US7072950B2 (en) * | 2001-01-23 | 2006-07-04 | Sony Corporation | Method and apparatus for operating system and application selection |
EP1383060A4 (en) * | 2001-04-24 | 2010-02-10 | Sony Corp | INFORMATION PROCESSING DEVICE FOR CHARGING AND METHOD |
US20030120827A1 (en) * | 2001-12-20 | 2003-06-26 | Dominic Fulginiti | Method and apparatus for automatically detecting machine states during an operating system installation through a network |
US8122106B2 (en) | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US7689676B2 (en) | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US7757261B2 (en) * | 2003-06-20 | 2010-07-13 | N2 Broadband, Inc. | Systems and methods for providing flexible provisioning architectures for a host in a cable system |
US7958505B2 (en) * | 2003-06-20 | 2011-06-07 | Ericsson Television, Inc | Systems and methods for distributing software for a host device in a cable system |
US20040268420A1 (en) * | 2003-06-20 | 2004-12-30 | N2 Broadband, Inc. | Systems and methods for activating a host in a cable system |
US20040261092A1 (en) * | 2003-06-20 | 2004-12-23 | N2 Broadband, Inc. | Systems and methods for selling a consumer electronics host device and enhanced services associated with a cable system |
US7627868B2 (en) * | 2003-06-20 | 2009-12-01 | N2 Broadband, Inc. | Systems and methods for distributing software for a host device in a cable system |
US7194756B2 (en) | 2003-06-20 | 2007-03-20 | N2 Broadband, Inc. | Systems and methods for provisioning a host device for enhanced services in a cable system |
US7673297B1 (en) * | 2003-09-03 | 2010-03-02 | The Directv Group, Inc. | Automatic software update detection and flexible installer for set-top boxes |
US7778422B2 (en) * | 2004-02-27 | 2010-08-17 | Microsoft Corporation | Security associations for devices |
US20070169108A1 (en) * | 2004-07-02 | 2007-07-19 | Koninklijke Philips Electronics N.V. | Method of executing software applications |
US20060020938A1 (en) * | 2004-07-20 | 2006-01-26 | Elcock Albert F | Method, article of manufacture and apparatus for updating software in a consumer device |
US7716237B2 (en) * | 2004-12-22 | 2010-05-11 | Csc Holdings, Inc. | System and associated methods for remotely enabling features |
US8489728B2 (en) | 2005-04-15 | 2013-07-16 | Microsoft Corporation | Model-based system monitoring |
US7797147B2 (en) | 2005-04-15 | 2010-09-14 | Microsoft Corporation | Model-based system monitoring |
US7802144B2 (en) | 2005-04-15 | 2010-09-21 | Microsoft Corporation | Model-based system monitoring |
US20060235664A1 (en) * | 2005-04-15 | 2006-10-19 | Microsoft Corporation | Model-based capacity planning |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
US20070005320A1 (en) * | 2005-06-29 | 2007-01-04 | Microsoft Corporation | Model-based configuration management |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
KR100782856B1 (ko) * | 2006-09-26 | 2007-12-06 | 삼성전자주식회사 | 디지털 방송 수신기의 소프트웨어 업그레이드 방법 및 장치 |
US10104432B2 (en) * | 2006-12-01 | 2018-10-16 | Time Warner Cable Enterprises Llc | Methods and apparatus for software provisioning of a network device |
FR2910214A1 (fr) * | 2006-12-19 | 2008-06-20 | France Telecom | Service associe a une diffusion de contenu numerique. |
US9497419B2 (en) * | 2007-06-27 | 2016-11-15 | Arris Enterprises, Inc. | Method and apparatus for delivering programming code objects to set-top terminals and the like |
US20110022690A1 (en) * | 2009-07-24 | 2011-01-27 | General Instrument Corporation | Communicating data from a source device to a terminal |
US9148295B2 (en) * | 2010-02-09 | 2015-09-29 | Broadcom Corporation | Cable set-top box with integrated cable tuner and MOCA support |
US9942124B2 (en) | 2011-06-28 | 2018-04-10 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated device testing in content distribution network |
US20130125162A1 (en) * | 2011-11-11 | 2013-05-16 | Cisco Technology, Inc. | Deferring Committing Downloads Until Device has Satisfied Installation Requirements |
US10394540B1 (en) * | 2012-11-01 | 2019-08-27 | Time Warner Cable Enterprises Llc | Software incremental loader |
JP2015103105A (ja) * | 2013-11-26 | 2015-06-04 | 株式会社リコー | 通信装置、通信システム、及び通信プログラム |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5003591A (en) | 1989-05-25 | 1991-03-26 | General Instrument Corporation | Functionally modifiable cable television converter system |
US5790834A (en) | 1992-08-31 | 1998-08-04 | Intel Corporation | Apparatus and method using an ID instruction to identify a computer microprocessor |
US5798785A (en) | 1992-12-09 | 1998-08-25 | Discovery Communications, Inc. | Terminal for suggesting programs offered on a television program delivery system |
US5795785A (en) * | 1992-12-10 | 1998-08-18 | Suslov; Eugene Ivanovich | Method for the diagnosis of human malignant tumors |
US5666293A (en) | 1994-05-27 | 1997-09-09 | Bell Atlantic Network Services, Inc. | Downloading operating system software through a broadcast channel |
US5768539A (en) | 1994-05-27 | 1998-06-16 | Bell Atlantic Network Services, Inc. | Downloading applications software through a broadcast channel |
US5625693A (en) | 1995-07-07 | 1997-04-29 | Thomson Consumer Electronics, Inc. | Apparatus and method for authenticating transmitting applications in an interactive TV system |
US6161218A (en) * | 1996-01-16 | 2000-12-12 | Sun Microsystems Inc. | Software patch architecture |
EP0907285A1 (en) | 1997-10-03 | 1999-04-07 | CANAL+ Société Anonyme | Downloading data |
US6381742B2 (en) * | 1998-06-19 | 2002-04-30 | Microsoft Corporation | Software package management |
JP2000137607A (ja) | 1998-10-29 | 2000-05-16 | Sanyo Electric Co Ltd | デジタルテレビジョン受像機 |
US6460076B1 (en) * | 1998-12-21 | 2002-10-01 | Qwest Communications International, Inc. | Pay per record system and method |
US6393585B1 (en) * | 1998-12-23 | 2002-05-21 | Scientific-Atlanta, Inc. | Method and apparatus for restoring operating systems in a set-top box environment |
US6442754B1 (en) * | 1999-03-29 | 2002-08-27 | International Business Machines Corporation | System, method, and program for checking dependencies of installed software components during installation or uninstallation of software |
US6718374B1 (en) * | 1999-04-21 | 2004-04-06 | General Instrument Corporation | Method and system for identifying and downloading appropriate software or formware specific to a particular model of set-top box in a cable television system |
US6571389B1 (en) * | 1999-04-27 | 2003-05-27 | International Business Machines Corporation | System and method for improving the manageability and usability of a Java environment |
US6813778B1 (en) * | 1999-08-16 | 2004-11-02 | General Instruments Corporation | Method and system for downloading and managing the enablement of a list of code objects |
-
2000
- 2000-07-17 US US09/617,627 patent/US6813778B1/en not_active Expired - Fee Related
- 2000-08-15 CN CN00814376.5A patent/CN1187984C/zh not_active Expired - Fee Related
- 2000-08-15 AU AU67755/00A patent/AU6775500A/en not_active Abandoned
- 2000-08-15 DE DE60016427T patent/DE60016427T2/de not_active Expired - Fee Related
- 2000-08-15 EP EP00955572A patent/EP1210823B1/en not_active Expired - Lifetime
- 2000-08-15 BR BR0013418-0A patent/BR0013418A/pt not_active IP Right Cessation
- 2000-08-15 WO PCT/US2000/022403 patent/WO2001013643A1/en active IP Right Grant
- 2000-08-15 JP JP2001517806A patent/JP2003520364A/ja active Pending
- 2000-08-15 CA CA002382260A patent/CA2382260A1/en not_active Abandoned
- 2000-08-16 TW TW089116553A patent/TW480888B/zh not_active IP Right Cessation
-
2004
- 2004-05-12 US US10/845,444 patent/US20040210941A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
AU6775500A (en) | 2001-03-13 |
JP2003520364A (ja) | 2003-07-02 |
US6813778B1 (en) | 2004-11-02 |
WO2001013643A9 (en) | 2002-09-12 |
US20040210941A1 (en) | 2004-10-21 |
EP1210823B1 (en) | 2004-12-01 |
DE60016427T2 (de) | 2005-10-27 |
CA2382260A1 (en) | 2001-02-22 |
EP1210823A1 (en) | 2002-06-05 |
CN1379956A (zh) | 2002-11-13 |
WO2001013643A1 (en) | 2001-02-22 |
TW480888B (en) | 2002-03-21 |
BR0013418A (pt) | 2002-07-23 |
DE60016427D1 (de) | 2005-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1187984C (zh) | 用于下载和管理编码对象列表的执行的方法和系统 | |
CA2384082C (en) | Method and system for directing the download of software and firmware objects over a network such as a cable television system | |
CA2382509C (en) | Method and system for identifying and downloading appropriate software or firmware specific to a particular model of set-top box in a cable television system | |
US20060179465A1 (en) | Handling feature availability in a broadcast | |
WO2001058146A2 (en) | Settop cable television control device and method including bootloader software and code version table for maintaining and updating settop receiver operating system software | |
JP2005209195A (ja) | バイナリー位置情報を用いたエンベデッドシステム及びソフトウェア遠隔ダウンロード方法 | |
CN1182721C (zh) | 用于自动清除被下载升级的编码对象的方法和系统 | |
AU770984B2 (en) | Method and system for targeted or universal upgrades of programming in a population of advanced set-top boxes in a cable television system | |
CN1960538A (zh) | 移动通信终端的纠错装置及方法 | |
CN1166201C (zh) | 防止由于把更新的程序或数据下载到机顶终端而使其功能中断的方法和设备 | |
WO2006035405A2 (en) | System and method for reducing the start-up time of mhp applications | |
CN1355997A (zh) | 在有线电视系统通过置顶盒接收的信号中用于定位控制频道和数据传输流的方法和系统 | |
TW472490B (en) | Automatic initialization of an advanced set-top box in a cable television system by downloading software or firmware over the cable system | |
KR101238190B1 (ko) | 플러그인 기반 교환 가능형 제한수신 장치 및 그 방법 | |
MXPA01010584A (en) | Method and system for targeted or universal upgrades of programming in a population of advanced set-top boxes in a cable television system | |
MXPA01010583A (es) | Metodo y sistema para identificar y descargar software o firmware apropiado especifico a un modelo particular de caja del convertidor-descodificador en un sistema de television por cable | |
MXPA01010582A (es) | Iniciacion automatica de una caja de convertidor-descodificador avanzada en un sistema de television por cable al descargar software o firmware en el sistema de cable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |