DE60016427T2 - Verfahren und system zum herunterladen und zur steuerung der ausführung einer liste von kodeobjekten - Google Patents

Verfahren und system zum herunterladen und zur steuerung der ausführung einer liste von kodeobjekten Download PDF

Info

Publication number
DE60016427T2
DE60016427T2 DE60016427T DE60016427T DE60016427T2 DE 60016427 T2 DE60016427 T2 DE 60016427T2 DE 60016427 T DE60016427 T DE 60016427T DE 60016427 T DE60016427 T DE 60016427T DE 60016427 T2 DE60016427 T2 DE 60016427T2
Authority
DE
Germany
Prior art keywords
programming code
top terminal
objects
code objects
new programming
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
Application number
DE60016427T
Other languages
English (en)
Other versions
DE60016427D1 (de
Inventor
Christopher Poli
S. Douglas MAKOFKA
S. Ira LEHRMAN
S. Christopher DEL SORDO
F. Thomas BATES
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.)
Arris Technology Inc
Original Assignee
Arris Technology Inc
General Instrument Corp
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 Arris Technology Inc, General Instrument Corp filed Critical Arris Technology Inc
Publication of DE60016427D1 publication Critical patent/DE60016427D1/de
Application granted granted Critical
Publication of DE60016427T2 publication Critical patent/DE60016427T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4351Processing 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management 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/462Content 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/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich auf das Gebiet des Programmierens oder Umprogrammierens eines Set-Top-Terminals in einer Kabelfernsehanlage. Genauer bezieht sich die vorliegende Erfindung auf das Gebiet des Steuerns des Herunterladens von Programmierung, wie etwa eines Betriebssystems oder von Objekten der systemspezifischen Programmfamilie (Native Suite), für ein Set-Top-Terminal für anfängliche oder hochrüstende Programmierung des Set-Top-Terminals über das Kabelnetz.
  • ALLGEMEINER STAND DER TECHNIK
  • Bei einer typischen Kabelfernsehanlage wird den Teilnehmern eine Set-Top-Box oder ein Set-Top-Terminal bereitgestellt. Das Set-Top-Terminal ist eine Box mit elektronischer Ausrüstung, die verwendet wird, um den Fernseher des Teilnehmers und eventuell andere elektronische Ausrüstungen mit dem Kabelnetz zu verbinden. Die Set-Top-Box ist mit dem Kabelnetz normalerweise über eine koaxiale Steckdose verbunden.
  • Die Set-Top-Box ist im Wesentlichen ein Computer, der programmiert ist, um die Signale von dem Kabelnetz zu verarbeiten, um den Teilnehmer mit den Kabeldiensten zu versorgen. Diese Dienste des Kabelfernsehunternehmens umfassen typischerweise Zugang zu einer Reihe von Fernsehkanälen und vielleicht einen elektronischen Programmierführer (EPG). Zusätzliche Vorzugskanäle können den Teilnehmern für eine zusätzliche Gebühr ebenfalls bereitgestellt werden. Per-Sendung-Bezahl-Veranstaltungen und Videoabrufdienst können ebenfalls über das Kabelnetz bereitgestellt werden. Die Set-Top-Box ist darauf programmiert, diese Dienste für den Teilnehmer bereitzustellen.
  • Die Dienste des Kabelunternehmens müssen jedoch nicht darauf begrenzt sein, Fernsehprogrammierung bereitzustellen. Manche Kabelunternehmen bieten nun Internet-Zugang und E-Mail-Dienste über ihre Kabelnetze an, bei Geschwindigkeiten, die viel schneller sind als die über herkömmliche Telefonleitungen verfügbaren. Für die Zukunft ist vorhersehbar, dass immer mehr Dienste über das Kabelnetz bereitgestellt werden, einschließlich vielleicht sogar elementaren Telefondienstes. Letztendlich kann jeder Haushalt oder jedes Büro über das Kabelnetz einen einzelnen Anschluss an alle elektronischen Datendienste aufweisen.
  • Während das Kabelnetz und die bereitgestellten Dienste evolvieren, muss das Set-Top-Terminal ebenfalls evolvieren, um Teilnehmern alle von dem Kabelnetz erhältlichen Dienste, die für diese Teilnehmer interessant sind, bereitstellen zu können. Diese Set-Top-Box-Evolution bringt hauptsächlich Veränderungen der Programmierung der Set-Top-Box mit sich. Durch das Hochrüsten der Software oder Firmware der Set-Top-Box kann die Box dazu gebracht werden, effizienter zu arbeiten oder neue Dienste anzubieten, während das Kabelnetz evolviert.
  • Um die Gesamtheit der Set-Top-Boxen in einem Kabelnetz hochzurüsten, ist es vorzuziehen, die neue Programmierung über das Kabelnetz selbst an die Set-Top-Boxen zu übertragen. Andernfalls muss ein Techniker jeden Teilnehmer aufsuchen, um die Set-Top-Box dieses Teilnehmers hochzurüsten oder umzuprogrammieren. Derartige Hochrüstungen vor Ort würden offensichtlich erhebliche Kosten verursachen.
  • Die Kopfstelle ist die Einrichtung, von der der Kabelnetzbetreiber Fernsehsignale sendet und andere Dienste über das Kabelnetz bereitstellt. Aktualisierte Software, die der Gesamtheit der Set-Top-Terminals bereitgestellt wird, wird von der Kopfstelle über das Kabelnetz gesendet. Die Kopfstelle kann auch Nachrichten oder Befehle über das Kabelnetz an die Set-Top-Terminals senden.
  • In seiner Verwendung hier bezieht sich ein Programmiercodeobjekt oder ein Codeobjekt auf ein einzelnes Programm, d. h. ein Stück Software oder Firmware, das auf ein Set-Top-Terminal heruntergeladen und von ihm ausgeführt werden kann. Allgemeiner bezieht sich ein Datenobjekt auf eine beliebige Datenstruktur, einschließlich eines Codeobjekts, einer Nachricht oder eines Befehls, die von der Kopfstelle über das Kabelnetz an ein oder mehrere Set-Top-Terminals übertragen wird.
  • Oftmals muss ein Set-Top-Terminal einige neue Codeobjekte, d. h. Stücke Software oder Firmware, erwerben, um neue Dienste bereitzustellen oder die Programmierung in dem Set-Top-Terminal hochzurüsten. Diese verschiedenen Stücke der Programmierung können häufig zusammenwirken und einander erfordern, um richtig zu funktionieren. Folglich treten Probleme auf, wenn das Set-Top-Terminal einige, aber nicht alle der Codeobjekte, die als Teil der Programmierhochrüstung heruntergeladen werden sollen, erwirbt. Wenn das Set-Top-Terminal mit dem Laufenlassen der neu erworbenen Codeobjekte beginnt, ist es wahrscheinlich, dass diese Codeobjekte aufgrund der Abwesenheit anderer, gegenseitig abhängiger Codeobjekte, die das Set-Top-Terminal erworben und ausgeführt haben sollte, nicht richtig oder überhaupt nicht funktionieren.
  • Daher besteht ein Bedarf im Fach für ein Verfahren zum Steuern des Herunterladens von Codeobjekten durch ein Set-Top-Terminal in einer Kabelfernsehanlage, um die Ausführung von neu erworbenen Codeobjekten zu verhindern, die die Anwesenheit von anderen Codeobjekten erfordern, die das Set-Top-Terminal erworben haben sollte, aber, aus welchem Grund auch immer, nicht herunterladen konnte.
  • EP-A-0732850 offenbart ein Verfahren zum Verwalten des Herunterladens von Codeobjekten auf ein Set-Top-Terminal in einem CAN-System auf eine solche Weise, dass Unterbrechungen, die auftreten können, wenn nur einige der in einem Herunterladevorgang spezifizierten Codeobjekte erfolgreich heruntergeladen werden, verhindert werden. Dieser Stand der Technik spaltet die herunterzuladende Information in Segmente auf. Bei Empfang eines jeden Segments wird eine Überprüfung durchgeführt, um zu bestimmen, ob das Segment richtig heruntergeladen wurde. Ist dies nicht der Fall, wird das Segment übergangen und das nächste Segment wird heruntergeladen. Nachdem das letzte Segment verarbeitet wurde, wird die Vorgehensweise wiederholt, bis alle Segmente erfolgreich heruntergeladen wurden oder eine zuvor festgelegte Zeitabschaltung eintritt.
  • EP-A-0752786 offenbart ein weiteres System zum Herunterladen und Authentifizieren von Programmodulen, die in Kombination mit Audio-/Videodaten übertragen werden, bei dem die Integrität individueller, von dem System heruntergeladener Programmodule verifiziert wird, bevor das Programm ausgeführt wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist ein Ziel der vorliegenden Erfindung, den oben beschriebenen und anderen Bedürfnissen zu entsprechen. Insbesondere ist es ein Ziel der vorliegenden Erfindung, ein System und ein Verfahren zum Steuern des Herunterladens von Codeobjekten durch ein Set-Top-Terminal in einer Kabelfernsehanlage bereitzustellen, um die Ausführung von neu erworbenen Codeobjekten zu verhindern, die die Anwesenheit von anderen Codeobjekten erfordern, die das Set-Top-Terminal erworben haben sollte, aber, aus welchem Grund auch immer, nicht herunterladen konnte.
  • Die Erfindung in ihren verschiedenen Aspekten wird in den beigelegten Ansprüchen definiert.
  • Bevorzugte Merkmale und Vorteile der Erfindung sind aus der Beschreibung und den Ansprüchen ersichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die beiliegenden Zeichnungen stellen die vorliegende Erfindung dar und sind ein Teil der Patentschrift. Zusammen mit der folgenden Beschreibung zeigen und erklären die Zeichnungen die Prinzipien der vorliegenden Erfindung.
  • 1 ist ein Ablaufdiagramm, das die grundlegende Sequenz zeigt, in der Programmierobjekte von dem Set-Top-Terminal gemäß einer verwandten Erfindung erworben werden.
  • 2 ist ein Blockschaltbild der grundlegenden Elemente einer Kabelfernsehanlage, mit denen die vorliegende Erfindung ausgeübt wird.
  • 3 ist ein Ablaufdiagramm, das ein Verfahren zum Steuern und Freigeben einer Liste von heruntergeladenen Codeobjekten gemäß der vorliegenden Erfindung zeigt.
  • 4 ist eine graphische Darstellung einer Steuerungsnachricht zum Herunterladen gemäß der vorliegenden Erfindung.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Eine verwandte Patentanmeldung, WO 00/64180, beschreibt umfassend ein gesetzlich geschütztes Verfahren und System zum Herunterladen von Programmierobjekten auf Set-Top-Terminals in einem Kabelsystem. 1 ist ein Ablaufdiagramm, das die grundlegende Sequenz, in der Programmierobjekte von dem Set-Top-Terminal über das Kabelsystem gemäß diesem Verfahren erworben werden, darstellt. 2 ist ein Blockschaltbild, das die grundlegenden Elemente einer Kabelfernsehanlage, die unter Verwendung der vorliegenden Erfindung arbeitet, zeigt.
  • Mit Bezugnahme auf 1 und 2 führt ein Set-Top-Terminal (202; 2) einen automatischen Urladevorgang direkt nach dem Stromanschluss des Set-Top-Terminals durch. Wie in 1 gezeigt, beginnt der Urladevorgang damit, dass das Set-Top-Terminal ein Programmierstück, das als Urladecode (100) bekannt ist, ausführt. Der Urladecode ist ein Programmierobjekt, das in den Festwertspeicher (ROM) des Set-Top-Terminals fabrikmäßig eingebaut ist. Wie bei aller von dem Set-Top-Terminal (202) ausgeführter Programmierung ist der Urladecode in der Speichereinheit (212; 2) gespeichert und wird durch den Prozessor (211; 2) ausgeführt.
  • In einer anderen Alternative initiiert das Set-Top-Terminal (202) den in 1 gezeigten Urladevorgang möglicherweise nicht, bevor sowohl Strom als auch ein Datentransportstrom von der Kopfstelle (201; 2) mit dem Terminal (202) verbunden worden sind. Das Set-Top-Terminal kann den Urladecode (100) auch als Reaktion auf ein zum Beispiel von der Kopfstelle (201), d. h. dem Systembetreiber, empfangenes Rücksetzsignal ausführen.
  • Während des Laufens stellt der Urladecode dem Set-Top-Terminal (202) minimale Programmierung bereit, um es dem Terminal zu ermöglichen, sich zu voller Funktionalität hoch zu bringen. Der Urladecode ermöglicht es dem Set-Top-Terminal (202) typischerweise nicht, irgendwelche Dienste bereitzustellen, sondern ist nur entworfen, um, wenn nötig, höherwertige Programmierung zu erwerben und zu laden. Der Begriff „Urladecode", wie hier verwendet, beinhaltet den minimalen Code, der benötigt wird, um diese Funktionalität zu erreichen.
  • Wie in 1 gezeigt, erwirbt der Urladecode zuerst den Basis-Plattform-Code (101105). Der Urladecode überprüft als erstes den Speicher (212; 2) des Set-Top-Terminals (202), um zu bestimmen, ob der Basis-Plattform-Code dort gespeichert ist (101, 102). Wenn sich der Basis-Plattform-Code im Speicher (212) befindet, authentifizier der Prozessor (211; 2) des Set-Top-Terminals (202), der den Urladecode laufen lässt, den Basis-Plattform-Code (104) und, unter der Annahme, dass der Code den Authentifizierungsvorgang besteht, beginnt mit dem Ausführen des Basis-Plattform-Codes (105).
  • Wenn sich der Basis-Plattform-Code nicht im Speicher befindet (102), greift das Set-Top-Terminal (202) auf den Datentransportstrom von der Kopfstelle (201; 2) zu, lokalisiert eine Übertragung des Basis-Plattform-Codes innerhalb des Kopfstellensignals unter Verwendung des Tuners (210; 2) und lädt den Basis-Plattform-Code herunter (103). Der Basis-Plattform-Code wird vorzugsweise auf einem Außerband-Transportstrom zur Speicherung in einem Blitzspeicher-Anteil der Speichereinheit (212) an das Set-Top-Terminal übertragen. Der Basis-Plattform-Code kann jedoch auf einem Inband-Steuerkanal übertragen werden.
  • Der heruntergeladene Plattform-Code wird dann wie zuvor authentifiziert (104) und ausgeführt. Der Urladecode authentifiziert den Basis-Plattform-Code vorzugsweise jedes Mal erneut, wenn er das Basis-Plattform-Objekt startet, ungeachtet dessen, ob der Basis-Plattform-Code im Speicher (212) gefunden oder heruntergeladen worden ist.
  • Sobald der Basis-Plattform-Code gestartet wurde, geht die Steuerung des Terminals (202) vom Urladecode zum Basis-Plattorm-Code. Wenn der Basis-Plattform-Code ausgeführt wird, kann das Set-Top-Terminal (202) Teilnehmern minimale Funktionalität bereitstellen, es zum Beispiel dem Teilnehmer ermöglichen, Fernsehprogrammierung von dem Kabelsystem zu empfangen. Damit das Set-Top-Terminal volle Funktionalität erzielen kann, muss der Basis-Plattform-Code jedoch eine zusätzliche Programmierung, bekannt als systemspezifische Programmfamilie, erwerben. Die systemspezifische Programmfamilie beinhaltet ein Betriebssystemobjekt und normalerweise zusätzliche Anwendungsprogramme. Diese zusätzlichen oder „residenten" Anwendungen sind Computerprogramme, die auf dem Set-Top-Terminal unter dem Betriebssystem laufen. Die residenten Anwendungen stellen die zusätzlichen Fähigkeiten des Set-Top-Terminals, die neben dem Anschauen von Fernsehen hinzukommen, bereit.
  • Wie in 1 gezeigt, überprüft (106, 107) der Basis-Plattform-Code, wenn er das erste Mal ausgeführt oder durch ein Signal von der Kopfstelle zurückgesetzt wird, die Speichereinheit (212), um zu bestimmen, ob ein Betriebssystemcodeobjekt bereits im Terminal (202) resident ist. Das Betriebssystem (OS) ist typischerweise ein Code von einer dritten Partei (wie beispielsweise Microsofts WinCETM), der es dem Set-Top-Terminal (202) ermöglicht, die verschiedenen residenten Anwendungen der systemspezifischen Programmfamilie laufen zu lassen. Der Betriebssystemcode verwendet typischerweise ein zusätzliches, von dem Hersteller des Set-Top-Terminals bereitgestelltes eingebettetes Code- Modul, das das Betriebssystem mit der bestimmten Hardware des Set-Top-Terminals verbindet, um das Betriebssystem zur Funktion mit dem spezifischen Set-Top-Terminal freizugeben.
  • Wenn das Betriebssystemcodeobjekt im Speicher (212) gefunden wird, autorisiert und authentifiziert der Basis-Plattform-Code den Betriebssystemcode (109) aus dem Speicher (212). Wenn sich der Betriebssystemcode nicht im Speicher (212) befindet, greift das Set-Top-Terminal (202), das den Basis-Plattform-Code laufen lässt, auf den Datentransportstrom von der Kopfstelle (201) zu und lokalisiert und lädt ein geeignetes Betriebssystemcodeobjekt herunter (108). Das heruntergeladene Objekt wird dann autorisiert und authentifiziert (109).
  • Der Betriebssystemcode wird ausgeführt (110), sobald er autorisiert und authentifiziert ist. Wenn der Betriebssystemcode läuft, kann das Set-Top-Terminal ebenfalls die zusätzlichen Codeobjekte oder Anwendungen der systemspezifischen Programmfamilie, die den Benutzern jegliche Vielfalt von Diensten bereitstellen, ausführen. Der Basis-Plattform-Code kann so konfiguriert sein, dass er alle Elemente der systemspezifischen Programmfamilie zusammen mit dem Betriebssystem erwirbt. Alternativ kann, wie in 1 dargestellt, das Betriebssystem, wenn es läuft, so konfiguriert sein, dass es die anderen Elemente der systemspezifischen Programmfamilie erwirbt.
  • Der Prozessor (211), der den Betriebssystemcode laufen lässt, überprüft vorzugsweise zuerst die Speichereinheit (212) auf die erwarteten Elemente der systemspezifischen Programmfamilie (111). Wenn sich die Anwendungen der systemspezifischen Programmfamilie im Speicher (212) befinden, kann das Betriebssystem diese Anwendungen autorisieren und authentifizieren (114) und sie ausführen (115).
  • Der Prozessor (211) bestimmt dann, ob er angewiesen wurde, beliebige zusätzliche Objekte zu erwerben (112), einschließlich Anwendungen der systemspezifischen Programmfamilie, die nicht im Speicher (212) gefunden wurden. Wenn nicht, ist das Set-Top-Terminal voll funktionsfähig (116). Wenn der Prozessor (211) jedoch zusätzliche Objekte erwerben muss, werden diese Anwendungen von dem Kabelnetz heruntergeladen (113). Die heruntergeladenen Anwendungsobjekte werden autorisiert und authentifiziert (117) und ausgeführt (118).
  • Sobald das Betriebssystem und alle anderen spezifizierten Anwendungen laufen, hat das Set-Top-Terminal volle Funktionalität erreicht (116). Wie dem Fachmann klar ersichtlich ist, kann die Liste der Anwendungen der systemspezifischen Programmfamilie von Set-Top-Terminal zu Set-Top-Terminal variieren. Ein Teilnehmer, der weniger Dienste vom Kabelsystem abonniert, benötigt möglicherweise weniger Anwendungen der systemspezifischen Programmfamilie als ein Teilnehmer, der für alle verfügbaren Dienste zahlt. Zusätzlich können, wenn neue Dienste hinzugefügt werden, Anwendungen zu der systemspezifischen Programmfamilie hinzugefügt werden, um die neuen Dienste zu unterstützen. Daher kann die Liste der Anwendungen, die die systemspezifische Programmfamilie ausmachen, sowohl zeitlich als auch nach Teilnehmerbedürfnissen und -vorlieben variieren.
  • Wie oben angemerkt, kann der Basis-Plattform-Code die systemspezifische Programmfamilie, die aus dem Betriebssystem und residenten Anwendungen besteht, während der Initialisierung des Set-Top-Terminals oder nach Empfang eines dahingehenden Befehls von dem Systembetreiber erwerben. Wenn der Systembetreiber wünscht, das Betriebssystem oder residente Anwendungen im Set-Top-Terminal zu ändern oder hochzurüsten, kann der Systembetreiber folglich eine Initialisierungsnachricht über das Kabelnetz an das Set-Top-Terminal schicken, die den Basis-Plattform-Code anweist, das Betriebssystem und residente Anwendungen, die dann über das Kabelnetz gesendet werden, zu erwerben oder erneut zu erwerben. Alternativ kann der Systembetreiber dem Betriebssystem signalisieren, Elemente der systemspezifischen Programmfamilie zu erwerben oder erneut zu erwerben. Diese Nachrichten von der Kopfstelle (201) können zur gleichen Zeit auch die Liste der Elemente ändern, die die systemspezifische Programmfamilie des Terminals definieren.
  • Während es diese Anordnung auf einfache Weise ermöglicht, die Fähigkeiten des Set-Top-Terminals hochzurüsten, zu ändern oder zu verbessern, können daraus jedoch auch Unterbrechungen des Dienstes für den Set-Top-Benutzer resultieren. Wenn zum Beispiel der Basis-Plattform-Code oder der Betriebssystemcode einen Befehl empfängt, neue Codeobjekte über das Kabelnetz zu erwerben, spezifiziert dieser Befehl das Codeobjekt oder die Objekte, die erworben werden sollen. Wenn mehr als ein Objekt erworben werden soll, kann ein Problem auftreten, wenn nur eines der Objekte tatsächlich durch das Set-Top-Terminal (202) empfangen wird.
  • Spezifischerweise kann das Terminal (202) das erste Codeobjekt, das zu erwerben es angewiesen worden ist, empfangen und freigeben. Wenn dann, aus welchem Grund auch immer, das Set-Top-Terminal nicht fähig ist, die anderen Codeobjekte zu erwerben, die herunterzuladen es angewiesen worden ist, sind die durch diese nicht empfangenen Codeobjekte durchgeführten Funktionen für den Set-Top-Terminal-Benutzer nicht verfügbar. Des Weiteren sind Codeobjekte häufig interreliert. Folglich kann das Objekt, das heruntergeladen wurde, ohne die anderen Objekte, die heruntergeladen werden sollten, jedoch nicht empfangen wurden, möglicherweise nicht richtig funktionieren. Auf ähnliche Weise können Freigabe und Ausführung des neuen Codeobjekts, das empfangen wurde, die Ausführung der Software oder Firmware, die vorher auf dem Set-Top-Terminal resident war, störend beeinflussen, wenn die anderen, zum Herunterladen spezifizierten Objekte nicht auch erworben und ausgeführt wurden.
  • Daher besteht, wie oben erwähnt, ein Bedarf im Fach nach einem Verfahren zum Steuern des Herunterladens von Codeobjekten durch ein Set-Top-Terminal in einer Kabelfernsehanlage, um die Ausführung von neu erworbenen Codeobjekten zu verhindern, die die Anwesenheit von anderen Codeobjekten erfordern, welche das Set-Top-Terminal erworben haben sollte, aber, aus welchem Grund auch immer, nicht herunterladen konnte. Die vorliegende Erfindung bewältigt dieses mögliche Problem auf die folgende Weise.
  • Das Set-Top-Terminal (202), das den Basis-Plattform- oder Betriebssystemcode laufen lässt, identifiziert die Liste der Objekte, die zu erwerben es angewiesen worden ist. Typischerweise ist diese Liste eine vollständige Liste der Objekte in der systemspezifischen Programmfamilie. Es ist jedoch möglich, dass die Liste der zu erwerbenden Objekte nur einen Anteil der systemspezifischen Programmfamilie darstellt.
  • Die Liste der zu erwerbenden Objekte und der Befehl, diese zu erwerben, kann entweder von einer von dem Systembetreiber über die Kopfstelle (201) empfangenen Nachricht kommen oder kann Teil der Programmierung des Terminals, entweder des Basis-Plattform- oder des Betriebssystemcodes, sein. In beiden Fällen beginnt das Set-Top-Terminal (202) mit dem Erwerben der aufgelisteten Objekte von dem über das Kabelsystem (203) von der Kopfstelle (201) empfangenen Transportstrom. Das Terminal (202) wird jedoch keines der empfangenen Objekte freigeben oder ausführen, bis alle für die Erfassung aufgelisteten Objekte erfolgreich empfangen worden sind. Die Programmierung, die das Herunterladen verwaltet, z. B. der Basis-Plattform-Code oder der Betriebssystemcode, wird modifiziert oder rekonfiguriert, um die erfolgreiche Erfassung aller aufgelisteten Codeobjekte zu verlangen, bevor irgendeines der Objekte freigegeben und ausgeführt wird. Auf diese Weise verbleibt das Set-Top-Terminal (202) nicht mit nur einem Bruchteil der Objekte, die zu erfassen und auszuführen es angewiesen worden ist, oder mit einem Objekt, das mit bereits residenter Programmierung kollidiert.
  • Eine graphische Darstellung einer Nachricht, die ein Set-Top-Terminal anweist, neue oder zusätzliche Codeobjekte herunterzuladen, wird in 4 vorgestellt. Wie in 4 gezeigt, kann die Nachricht (401) ebenfalls eine Nur-Liste-Freigabe-Markierung (402) enthalten, die das Set-Top-Terminal (202) anweist, ob es nur die gesamte Liste der erworbenen Objekte freigeben darf oder Objekte annehmen, freigeben und ausführen kann, die nur einen Bruchteil der als zu erwerben Aufgelisteten darstellen. Diese Nur-Liste-Freigabe-Markierung (402) braucht nur ein einzelnes Bit innerhalb der Nachricht (401) zu sein und ist natürlich entweder bejahend (d. h. „vorliegend" oder „an") oder negativ (d. h. „nicht vorliegend" oder „aus"). Mit anderen Worten, wenn die Nur-Liste-Freigabe-Markierung (402) vorliegt, werden alle empfangenen Objekte gleichzeitig oder fast gleichzeitig freigegeben. Daher werden keine Objekte freigegeben, bis alle Objekte in der Liste richtig empfangen worden sind. Die gleichzeitige Freigabe aller empfangenen Objekte erzeugt für den Benutzer des Set-Top-Terminals die kleinstmögliche Unterbrechung des Dienstes.
  • Zusätzlich zum Freigeben und Ausführen der empfangenen Codeobjekte nur dann, wenn alle aufgelisteten Objekte empfangen worden sind, kann das Set-Top-Terminal (202) darauf programmiert sein, aufgelistete Objekte, die empfangen worden sind, aus dem Speicher (212) zu säubern, wenn nicht alle Programmobjekte in der Objektgruppe empfangen wurden. Mit anderen Worten, wenn das Set-Top-Terminal (202) mit dem Erwerben einer Liste von Objekten beginnt, die zu erwerben es angewiesen worden ist, und letztendlich nicht alle der aufgelisteten Objekte empfangen werden, kann es wünschenswert sein, jegliche Objekte aus dem Speicher (212) zu entfernen, die erworben wurden, die aber aufgrund des Misslingens, alle Objekte in der Objektgruppe zu erwerben, nicht verwendet oder freigegeben werden. Als eine Option der vorliegenden Erfindung kann das Set-Top-Terminal (202) in dem Fall, in dem nicht alle aufgelisteten Objekte letztendlich empfangen, freigegeben und verwendet werden, folglich programmiert sein, aus dem Speicher (212) jegliche Codeobjekte zu löschen, die als eine Liste von zu empfangenden Objekten erworben worden sind.
  • Das Set-Top verwendet den Listen-Identifikator und die Listenversion, um jene Objekte zu identifizieren, die die definierte Objekt-Programmfamilie ausmachen (neueste Liste der Objekte von der Nachricht zum Herunterladen). Wenn ein Objekt zu einer Liste in einer Nachricht (401) zum Herunterladen hinzugegeben oder von dieser entfernt wird, aktualisiert das Set-Top-Terminal (202) seine Programmfamilie von Objekten im Speicher (212), die zu dieser Liste gehört, durch das Hinzufügen oder Entfernen dieses Objekts/dieser Objekte. Zusätzlich kann die Listenversion verwendet werden, um das Hochrüsten eines Objekts zu forcieren, wenn sich die in der Liste der Nachricht (401) zum Herunterladen identifizierte Objektversion von der Objektversion, die das Set-Top im Speicher (212) aufweist, unterscheidet.
  • Diese Funktion des Säuberns verschiedener Versionen von Objekten in einer Liste kann auch durch eine Markierung (403), d. h. eine Selbstsäuberungs-Markierung (403), innerhalb der Nachricht (401) von der Kopfstelle (201) gelenkt werden. Wiederum braucht die Selbstsäuberungs- Markierung (403) nur ein einzelnes Bit zu sein, das darstellt, dass die Selbstsäuberungs-Markierung (403) innerhalb der Nachricht (401) entweder vorliegt oder nicht vorliegt. Auf diese Weise hat der Systembetreiber die Möglichkeit, alle aufgelisteten Objekte einer unterschiedlichen Version zu der in der Nachricht (401) zum Herunterladen spezifizierten aus dem Speicher (212) des Set-Top-Terminals zu tilgen.
  • Dieser Vorgang wird in 3 skizziert. Wie in 3 gezeigt, beginnt das Verfahren der vorliegenden Erfindung damit, dass das Set-Top-Terminal eine Nachricht empfängt, die es anweist, neue oder zusätzliche Codeobjekte von dem Kabelsystem zu erwerben (301). Das Set-Top-Terminal (202) überprüft zuerst, ob die Selbstsäuberungs-Markierung in der Nachricht vorliegt oder postiv ist (306); wenn ja, säubert das Terminal (202) Objekte, die andere Versionen eines Objektes, das in der ankommenden Nachricht zum Herunterladen spezifiziert ist (309), auf geeignete Weise. Nach der Säuberung, oder wenn die Selbstsäuberungs-Markierung (403) negativ ist (306), versucht das Set-Top-Terminal (202), die in der Nachricht aufgelisteten Codeobjekte herunterzuladen (302).
  • Wenn das Herunterladen vollständig ist oder anderweitig beendet wurde, vielleicht durch einen Zeitabschaltungszähler, bestimmt das Terminal, ob alle Objekte, die zu erwerben es angewiesen war, erfolgreich heruntergeladen wurden (303). Wenn das Terminal nicht alle spezifizierten Objekte erworben hat, kann das Terminal alle Objekte, die erworben wurden, aus dem Speicher löschen (307).
  • Wenn andererseits alle Objekte erworben wurden, kann das Set-Top-Terminal dazu übergehen, die Objekte freizugeben und auszuführen. Das Terminal überprüft zuerst auf die Nur-Liste-Freigabe-Markierung (305). Wenn die Listen-Freigabe-Markierung vorliegt oder positiv ist, wird die Freigabe der heruntergeladenen Objekte vorzugsweise gleichzeitig oder fast gleichzeitig durchgeführt, womit die Objekte auf der Liste so behandelt werden, als ob sie ein einzelnes Objekt wären (304).
  • Wenn die Nur-Liste-Freigabe-Markierung (402) negativ ist, aber alle Objekte erfolgreich empfangen worden sind, lässt das Set-Top-Terminal (202) die erworbenen Objekte im Speicher (212), jedoch ohne sie freizugeben oder auszuführen (308). Wenn nur einige der Objekte, die erworben werden sollten, erfolgreich empfangen wurden, löscht das Set-Top-Terminal (202) alle Objekte auf der Liste (307).
  • Objekte können durch einen Objekt-Identifikator und eine Objekt-Version (d, h. object_name und object_version) innerhalb einer Systemumgebung eindeutig identifiziert werden. Dieser object_name ist innerhalb des Herunterlade-Transportstroms/der Herunterlade-Transportströme, der/die für ein einzelnes Set-Top-Terminal (202) verfügbar ist/sind, einzigartig. Die Nachricht, die das Set-Top-Terminal (202) anweist, eine Liste von Objekten zu erwerben, kann sowohl den Objektnamen/einzigartigen Identifikator als auch die Version des gewünschten Objekts identifizieren. Wenn das Set-Top das bestimmte Objekt, aber eine andere Version, bereits aufweist, kann es wünschenswert sein, das Objekt, das gegenwärtig im Set-Top-Terminal resident ist, zu entfernen, und die in der Befehlsnachricht identifizierte Version zu erwerben. Vorzugsweise umfasst die Befehlsnachricht von dem Dienstanbieter, die das Erwerben neuer Codeobjekte initiiert, ebenfalls eine Markierung in der Nachricht von dem Systembetreiber, die das Set-Top-Terminal anweist, ob es Codeobjekte, die bereits im Speicher (212) des Set-Top-Terminals resident sind und die in der Objektliste der Nachricht durch einen einzigartigen Transport-Objekt-Identifikator (d. h. object_name) identifiziert sind, aber eine andere Version sind als die, die in der Objektliste der Nachricht aufgelistet sind (d. h. object_version), automatisch säubern soll. Sowohl die Selbstsäuberungs-Markierung und die Listen-Freigabe-Markierung, die den Empfang aller aufgelisteten Codeobjekte erfordert, bevor auch nur eins freigegeben wird, müssen nur eine Länge von einem Bit aufweisen.
  • Unter den Prinzipien der vorliegenden Erfindung kann dann eine systemspezifische oder Betriebsprogrammfamilie, die aus einer Reihe von Codeobjekten besteht, übertragen und durch die Set-Top-Terminals in einer Kabelfernsehanlage für alle Absichten und Zwecke verwendet werden, als ob die Programmfamilie ein einzelnes Codeobjekt wäre. Dieses Merkmal der vorliegenden Erfindung ermöglicht es Systembetreibern, Unterbrechungen des Dienstes und Verwirrung, die andernfalls entstehen könnten, wenn der Codeobjekt-Satz nur teilweise erfolgreich heruntergeladen wird, zu minimieren.
  • Die vorhergehende Beschreibung wurde nur vorgestellt, um die Erfindung darzustellen und zu beschreiben. Sie soll nicht vollständig sein oder die Erfindung auf eine bestimmte offenbarte Form einschränken. Viele Modifizierungen und Variationen sind angesichts der obigen Lehre möglich.
  • Die bevorzugte Ausführungsform wurde ausgewählt und beschrieben, um die Prinzipien der Erfindung und ihre praktische Anwendung am besten zu erklären. Die vorhergehende Beschreibung soll es anderen Fachleuten ermöglichen, die Erfindung in verschiedenen Ausführungsformen und mit verschiedenen Modifizierungen, wie sie für die vorgesehene Verwendung geeignet sind, am besten zu benutzen.

Claims (18)

  1. Ein Verfahren zum Verwalten und Steuern eines Herunterladens von Programmiercodeobjekten auf ein Set-Top-Terminal (202), das mit einer Kabelfernsehanlage verbunden ist, wobei das Verfahren Folgendes beinhaltet: Identifizieren einer Vielzahl von neuen Programmiercodeobjekten, die vom Set-Top-Terminal (202) erworben werden sollen, wobei jedes neue Programmiercodeobjekt der Vielzahl von neuen Programmiercodeobjekten ein Programm ist, wobei jedes der Codeobjekte unabhängig ausführbar ist, aber die Vielzahl von Codeobjekten funktional voneinander abhängig sind; Herunterladen der Vielzahl von neuen Programmiercodeobjekten von einem Transportstrom, der aus einer Kopfstelle (201) durch das Set-Top-Terminal (202) empfangen wurde; Speichern der Vielzahl von neuen Programmiercodeobjekten in einen Speicher (212) des Set-Top-Terminals (202); und Festlegen des Zeitpunkts, an dem alle der neuen Programmiercodeobjekte durch das Set-Top-Terminal (202) erworben worden sind; dadurch gekennzeichnet, dass der Schritt des Identifizierens einer Vielzahl von neuen Programmiercodeobjekten, die erworben werden sollen, ferner Folgendes beinhaltet: Erwerben einer Befehlsnachricht (401) zum Herunterladen, wobei die Befehlsnachricht (401) zum Herunterladen das Set-Top-Terminal (202) anweist, die Vielzahl von neuen Programmiercodeobjekten zu erwerben; dadurch, dass die Befehlsnachricht (401) zum Herunterladen eine Nur-Liste-Freigabe-Markierung (402) umfasst, dadurch, dass jedes der neuen Programmiercodeobjekte innerhalb des Speichers (212) bleibt, wenn alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erfolgreich erworben worden sind, und dadurch, dass die Vielzahl von neuen Programmiercodeobjekten aus dem Speicher (212) je nach dem Status der Nur-Liste-Freigabe-Markierung (402) gesäubert wird, wenn mindestens eines der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten nicht erfolgreich erworben worden ist.
  2. Verfahren gemäß Anspruch 1, das ferner Folgendes beinhaltet: Beenden des Schrittes des Erwerbens und des Schrittes des Speicherns, nachdem das Set-Top-Terminal (202) alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben hat.
  3. Verfahren gemäß Anspruch 1, wobei keines der Vielzahl von neuen Programmierobjekten ausführbar ist, bis alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben worden sind.
  4. Verfahren gemäß Anspruch 1, wobei das Programm ein Anteil einer systemspezifischen Programmfamilie (Native Suite) (111) ist.
  5. Verfahren gemäß Anspruch 1, wobei die Befehlsnachricht (401) zum Herunterladen innerhalb des Set-Top-Terminals (202) als Teil des Basis-Plattform-Codes oder des Betriebssystemcodes eingeschlossen ist.
  6. Verfahren gemäß Anspruch 1, wobei das Set-Top-Terminal (202) die Befehlsnachricht (401) zum Herunterladen von der Kopfstelle (201) empfängt.
  7. Verfahren gemäß Anspruch 1, wobei die Befehlsnachricht (401) zum Herunterladen eine Liste umfasst, die die Vielzahl von neuen Programmiercodeobjekten, die durch das Set-Top-Terminal (202) erworben werden sollen, identifiziert.
  8. Verfahren gemäß Anspruch 1, wobei die Befehlsnachricht (401) zum Herunterladen eine Selbstsäuberungs-Freigabe-Markierung (403) umfasst, wobei jedes Programmiercodeobjekt, das eine andere Version als die Version eines neuen Programmiercodeobjekts der Vielzahl von neuen Programmiercodeobjekten aufweist, vom Speicher (212) gesäubert wird, wenn die Selbstsäuberungs-Freigabe-Markierung (403) positiv ist.
  9. Verfahren gemäß Anspruch 1, wobei, nachdem alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben worden sind: jedes neue Programmiercodeobjekt durch das Set-Top-Terminal (202) freigegeben und ausführbar wird, wenn die Nur-Liste-Freigabe-Markierung (402) positiv ist, und; jedes neue Programmiercodeobjekt innerhalb des Speichers (212) bleibt, aber nichtfreigegeben und unausgeführt, wenn die Nur-Liste-Freigabe-Markierung (402) negativ ist.
  10. Ein System zum Verwalten und zum Steuern eines Herunterladens von Programmiercodeobjekten, wobei das System ein Set-Top-Terminal (202), das mit einer Kabelfernsehanlage verbunden ist, für Folgendes beinhaltet: Identifizieren einer Vielzahl von neuen Programmiercodeobjekten, die vom Set-Top-Terminal (202) erworben werden sollen, wobei jedes neue Programmiercodeobjekt der Vielzahl von neuen Programmiercodeobjekten ein Programm ist, wobei jedes der Codeobjekte unabhängig ausführbar ist, aber die Vielzahl von Codeobjekten funktional voneinander abhängig sind; Herunterladen der Vielzahl von neuen Programmiercodeobjekten aus einem Transportstrom, der von einer Kopfstelle (201) durch das Set-Top-Terminal (202) empfangen wurde; Speichern der Vielzahl von neuen Programmiercodeobjekten in einen Speicher (212) des Set-Top-Terminals (202); und Festlegen des Zeitpunkts, an dem alle der neuen Programmiercodeobjekte durch das Set-Top-Terminal (202) erworben worden sind; dadurch gekennzeichnet, dass das Identifizieren einer Vielzahl von neuen Programmiercodeobjekten, die erworben werden sollen, ferner Folgendes beinhaltet: Erwerben einer Befehlsnachricht (401) zum Herunterladen, wobei die Befehlsnachricht (401) zum Herunterladen das Set-Top-Terminal (202) anweist, die Vielzahl von neuen Programmiercodeobjekten zu erwerben; dadurch, dass die Befehlsnachricht (401) zum Herunterladen eine Nur-Liste-Freigabe-Markierung (402) umfasst, dadurch, dass jedes der neuen Programmiercodeobjekte innerhalb des Speichers (212) bleibt, wenn alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erfolgreich erworben worden sind, und dadurch, dass die Vielzahl von neuen Programmiercodeobjekten aus dem Speicher (212) je nach dem Status der Nur-Liste-Freigabe-Markierung (402) gesäubert wird, wenn mindestens eines der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten nicht erfolgreich erworben worden ist.
  11. System gemäß Anspruch 10, das ferner Folgendes beinhaltet: Beenden des Erwerbens und des Speicherns, nachdem das Set-Top-Terminal (202) alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben hat.
  12. System gemäß Anspruch 10, wobei keines der Vielzahl von neuen Programmiercodeobjekten ausführbar ist, bis alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben worden sind.
  13. System gemäß Anspruch 10, wobei das Programm ein Anteil einer systemspezifischen Programmfamilie (Native Suite) (111) ist.
  14. System gemäß Anspruch 10, wobei die Befehlsnachricht (401) zum Herunterladen innerhalb des Set-Top-Terminals (202) als Teil des Basis-Plattform-Codes oder des Betriebssystemcodes eingeschlossen ist.
  15. System gemäß Anspruch 10, wobei das Set-Top-Terminal (202) die Befehlsnachricht (401) zum Herunterladen von der Kopfstelle (201) empfängt.
  16. System gemäß Anspruch 10, wobei die Befehlsnachricht (401) zum Herunterladen eine Liste umfasst, die die Vielzahl von neuen Programmiercodeobjekten, die durch das Set-Top-Terminal (202) erworben werden sollen, identifiziert.
  17. System gemäß Anspruch 10, wobei die Befehlsnachricht (401) zum Herunterladen eine Selbstsäuberungs-Freigabe-Markierung (403) umfasst, wobei jedes Programmiercodeobjekt, das eine andere Version als die Version eines neuen Programmiercodeobjekts der Vielzahl von neuen Programmiercodeobjekten aufweist, vom Speicher (212) gesäubert wird, wenn die Selbstsäuberungs-Freigabe-Markierung (403) positiv ist.
  18. System gemäß Anspruch 10, wobei, wenn alle der Vielzahl von neuen, als zu erwerben identifizierten Programmiercodeobjekten erworben worden sind: jedes neue Programmiercodeobjekt durch das Set-Top-Terminal (202) freigegeben und ausführbar wird, wenn die Nur-Liste-Freigabe-Markierung (402) positiv ist, und; jedes neue Programmiercodeobjekt innerhalb des Speichers (212) bleibt, aber nichtfreigegeben und unausgeführt, wenn die Nur-Liste-Freigabe-Markierung (402) negativ ist.
DE60016427T 1999-08-16 2000-08-15 Verfahren und system zum herunterladen und zur steuerung der ausführung einer liste von kodeobjekten Expired - Fee Related DE60016427T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14869199P 1999-08-16 1999-08-16
US148691P 1999-08-16
US617627 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
PCT/US2000/022403 WO2001013643A1 (en) 1999-08-16 2000-08-15 Method and system for downloading and managing the execution of a list of code objects

Publications (2)

Publication Number Publication Date
DE60016427D1 DE60016427D1 (de) 2005-01-05
DE60016427T2 true DE60016427T2 (de) 2005-10-27

Family

ID=26846078

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60016427T Expired - Fee Related DE60016427T2 (de) 1999-08-16 2000-08-15 Verfahren und system zum herunterladen und zur steuerung der ausführung einer liste von kodeobjekten

Country Status (10)

Country Link
US (2) US6813778B1 (de)
EP (1) EP1210823B1 (de)
JP (1) JP2003520364A (de)
CN (1) CN1187984C (de)
AU (1) AU6775500A (de)
BR (1) BR0013418A (de)
CA (1) CA2382260A1 (de)
DE (1) DE60016427T2 (de)
TW (1) TW480888B (de)
WO (1) WO2001013643A1 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
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
US6886038B1 (en) * 2000-10-24 2005-04-26 Microsoft Corporation System and method for restricting data transfers and managing software components of distributed computers
US7606898B1 (en) * 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
EP1227667A1 (de) * 2001-01-18 2002-07-31 Sony Service Centre (Europe) N.V. Verfahren und Vorrichtung zur Bereitstellung von heruntergeladenen Objekten an eine Applikation
US7072950B2 (en) * 2001-01-23 2006-07-04 Sony Corporation Method and apparatus for operating system and application selection
EP1383060A4 (de) * 2001-04-24 2010-02-10 Sony Corp Informationsverarbeitungseinrichtung zur gebührenberechnung und verfahren dazu
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
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
US8122106B2 (en) 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US20040268420A1 (en) * 2003-06-20 2004-12-30 N2 Broadband, Inc. Systems and methods for activating a host in 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
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
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
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
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
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
US7802144B2 (en) 2005-04-15 2010-09-21 Microsoft Corporation Model-based system monitoring
US7797147B2 (en) 2005-04-15 2010-09-14 Microsoft Corporation Model-based system monitoring
US20060235664A1 (en) * 2005-04-15 2006-10-19 Microsoft Corporation Model-based capacity planning
US20070005320A1 (en) * 2005-06-29 2007-01-04 Microsoft Corporation Model-based configuration management
US8549513B2 (en) 2005-06-29 2013-10-01 Microsoft Corporation Model-based virtual system provisioning
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)

* Cited by examiner, † Cited by third party
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
US5768539A (en) 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
US5666293A (en) 1994-05-27 1997-09-09 Bell Atlantic Network Services, Inc. Downloading operating system 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 (de) 1997-10-03 1999-04-07 CANAL+ Société Anonyme Datenfernladung
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

Also Published As

Publication number Publication date
DE60016427D1 (de) 2005-01-05
JP2003520364A (ja) 2003-07-02
TW480888B (en) 2002-03-21
WO2001013643A1 (en) 2001-02-22
CN1379956A (zh) 2002-11-13
BR0013418A (pt) 2002-07-23
EP1210823B1 (de) 2004-12-01
CN1187984C (zh) 2005-02-02
WO2001013643A9 (en) 2002-09-12
US6813778B1 (en) 2004-11-02
AU6775500A (en) 2001-03-13
EP1210823A1 (de) 2002-06-05
CA2382260A1 (en) 2001-02-22
US20040210941A1 (en) 2004-10-21

Similar Documents

Publication Publication Date Title
DE60016427T2 (de) Verfahren und system zum herunterladen und zur steuerung der ausführung einer liste von kodeobjekten
DE60011147T2 (de) Verfahren und system zur kontrolle des herunterladens von software- und firmwareobjekten uber ein kabelfernsehsystem
DE60223890T2 (de) Verfahren zur Bereitstellung eines Software-Upgrades an ein Endgerät mit Chipkarten-Schnittstelle
DE69733580T2 (de) Senden und Empfangen von Fernsehprogrammen und anderen Daten
DE60018067T2 (de) Digitalfernsehempfänger zur steuerung einer anwendung gemäss eines anwendungslebenszyklus
DE69733438T2 (de) System und Verfahren zur Schnittstellenbildung zwischen verschiedenen elektronischen Vorrichtungen
DE102005032281A1 (de) Verfahren, hergestellter Gegenstand und Vorrichtung zum Aktualisieren von Software in einer Verbrauchervorrichtung
EP1360588B1 (de) Verfahren zur automatischen ergänzung von software
DE60006415T2 (de) Dynamische ermittlung von hardwarekonfiguration in einem digitalen endgerät
DE69819507T2 (de) Set-top-box gerätetreiber für die ieee1394 norm
DE3312723A1 (de) Signaluebertragungsanlage
DE60025599T2 (de) Verfahren und system für gezielte oder universale aktualisierungen der programmierung in einer population verbesserter aufsatzendgeräte in einem kabelfernsehsystem
DE60008764T2 (de) Verfahren und system zur automatischen bereinigung von kodeobjekten, die durch herunterladen aktualisiert werden
DE60002921T2 (de) Schnittstelle und dekodiergerät für ein host-system
EP2247061A1 (de) Verfahren und Vorrichtung zum berechtigungsabhängigen Zugriff auf Multimediainhalte sowie die Vorrichtung umfassendes System
DE10223929A1 (de) Einrichtung zur Bereitstellung der Wahlmöglichkeit für einen Set-Top-Box-Benutzer, nicht abonnierte Programme/Dienste bei der Betrachtung der Informationen des Führers aus einem elektronischen Programmführer zu entfernen
DE19816280B4 (de) Vorrichtung zum Herunterladen und Verfahren dazu für einen digitalen Fernsehempfänger
DE69838599T2 (de) Verfahren und Vorrichtung zum Empfangen von Daten
DE60102811T2 (de) Terminal, Netzwerkzugangsserversystem,Verfahren und Computerprogrammprodukt welches zumindest einem Benützer erlaubt wenigstens ein Dienstesystem zu kontaktieren
DE69912098T2 (de) Konfigurierungsmethode und -vorrichtung
DE602005002670T2 (de) Empfänger für analoge und digitale Fernsehsignale und Empfangsverfahren für analoge und digitale Signale
DE69815711T2 (de) System zur verarbeitung von rundfunksignalen
DE102019001644A1 (de) Automatisierter intelligenter Knoten für Hybride Glasfaserkabel-Koaxialkabel (HFC)-Netze
DE69837856T2 (de) Modemkontrolle
DE60002747T2 (de) Objekts- und merkmalsberechtigung für digitale kommunikationsendgeräte

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee