DE69905946T2 - Verfahren und vorrichtung zum laden von betriebssystemen in einer set-top box umgebung - Google Patents

Verfahren und vorrichtung zum laden von betriebssystemen in einer set-top box umgebung

Info

Publication number
DE69905946T2
DE69905946T2 DE69905946T DE69905946T DE69905946T2 DE 69905946 T2 DE69905946 T2 DE 69905946T2 DE 69905946 T DE69905946 T DE 69905946T DE 69905946 T DE69905946 T DE 69905946T DE 69905946 T2 DE69905946 T2 DE 69905946T2
Authority
DE
Germany
Prior art keywords
operating system
memory
detected
top box
response
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 - Lifetime
Application number
DE69905946T
Other languages
English (en)
Other versions
DE69905946D1 (de
Inventor
J. Aspromonte
A. Houha
J. Stalker
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.)
PowerTV Inc
Original Assignee
PowerTV Inc
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 PowerTV Inc filed Critical PowerTV Inc
Application granted granted Critical
Publication of DE69905946D1 publication Critical patent/DE69905946D1/de
Publication of DE69905946T2 publication Critical patent/DE69905946T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/20Adaptations for transmission via a GHz frequency band, e.g. via satellite
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Astronomy & Astrophysics (AREA)
  • Stored Programmes (AREA)

Description

    HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich allgemein auf Set-Top-Box-Rechnerbetriebssysteme und genauer auf die Wartung von Rechnerbetriebssystemen in einer Set- Top-Box-Fernsehumgebung.
  • Interaktive digitale Set-Top-Boxen stellen eine offene Plattform für die Lieferung von interaktiven Diensten und Multimedien-Inhalt über Broadcast- und Client-Server- Netze an Kunden dar. In den Boxen wird Betriebssystemsoftware verwendet, um Dienste einer niedrigeren Ebene für die innerhalb der Boxen funktionierenden Softwareanwendungen zur Verfügung zu stellen.
  • Neue Versionen des Betriebssystems müssen in die Set-Top-Box heruntergeladen werden, damit der Set-Top-Box Bugfixe für die Betriebssystemsoftware und eine grössere Funktionalität schnell zur Verfügung gestellt werden können. Ein nicht einschränkendes Beispiel eines Nachteils beim Herunterladen von Betriebssystemen ist die Fähigkeit, Fehler oder Anomalien, die mit dem Herunterladen eines Betriebssystems verbunden sind, zu reparieren.
  • Eine solche Anomalie sind während des Herunterladens auftretende Stromausfälle. Beim Neubooten nach einem Stromausfall funktioniert die Set-Top-Box möglicherweise wegen einer unvollständig heruntergeladenen Version des in der Set-Top-Box existierenden Betriebssystems schlecht. Ohne Vorhandensein eines geeigneten Wiederinstandsetzungsprozesses für Betriebssysteme funktioniert die Set-Top-Box weiterhin schlecht.
  • Es kann auf die EP-A-0 803 812 Bezug genommen werden, die ein Verfahren zur Aktualisierung eines Programmes beschreibt. Die Aktualisierung von BIOS wird durchgeführt, nachdem ein altes BIOS in einem Reservespeicherbereich sichergestellt worden ist. Eine in der ersten Bank eines Flash-ROM gespeicherte, derzeitige Version von BIOS wird zu einer zweiten Bank des Flash-ROM verschoben, und ein von einem Homeserver zu einer Netzschnittstellenkarte geliefertes neues BIOS wird in der ersten Bank gespeichert, um die BIOS-Aktualisierung zu beenden. Wenn das neue BIOS nicht gut läuft, wird das alte BIOS von der zweiten Bank im Flash-ROM durch einen RAM zur ersten Bank verschoben, um erneut installiert zu werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Aspekte der Erfindung werden in den Ansprüchen definiert.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Zusätzliche Vorteile und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung und den angefügten Ansprüchen hervorgehen, wenn in Verbindung mit den beigefügten Zeichnungen gelesen, in denen:
  • Fig. 1 eine perspektivische Ansicht eines Set-Top-Box-Systems ist;
  • Fig. 2 ein Blockdiagramm ist, das die verschiedenen beispielhaften rechnerimplementierten Programme schildert, die innerhalb des Set-Top-Box-Systems der Fig. 1 funktionieren;
  • Fig. 3 ein Blockdiagramm ist, das die Komponenten der vorliegenden Erfindung zum Herunterladen und Wiederinstandsetzen von Betriebssystemen schildert; und
  • Fig. 4a und 4b Ablaufdiagramme sind, die die Prozessschritte beim Herunterladen und Wiederinstandsetzen von Betriebssystemen für ein Set-Top-Box-System schildern.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Fig. 1 zeigt eine beispielhafte Set-Top-Box 20, die über Kabel 28 mit einem Fernseher 24 verbunden ist. Kabel 32 liefert der Set-Top-Box 20 analoge Broadcast-, digitale Broadcast- und interaktive digitale Übermittlung. Die Set-Top-Box 20 enthält Anwendungs- und Betriebssystem-Software, um eine fortgeschrittene interaktive Fernsehumgebung zur Verfügung zu stellen. Das Betriebssystem wird von der Set-Top-Box 20 verwendet, um zum Beispiel Schnittstellen zwischen der Anwendungssoftware und den verschiedenen, von der Set-Top-Box 20 verwendeten Geräten zur Verfügung zu stellen.
  • Die Set-Top-Box 20 ist in der Lage, über Kabel 32 ein Betriebssystem zu empfangen, um das derzeit innerhalb der Set-Top-Box 20 funktionierende Betriebssystem zu ersetzen. Ein neues Betriebssystem kann zum Beispiel über Kabel 32 zur Verfügung gestellt werden, um ein Betriebssystem zur Verfügung zu stellen, das eine grössere Funktionalität als das derzeit in der Set-Top-Box 20 verwendete Betriebssystem enthält.
  • Fig. 2 zeigt die Komponenten des Software-Anwendungs- und Betriebssystems, die für eine Set-Top-Box verwendet werden. Unter diesen Komponenten wird ein Bootlader-Programm 50 zur Verfügung gestellt, um das Herunterladen eines neuen Betriebssystems von einem remote Site in eine Set-Top-Box zu verwalten. Bootlader 50 versetzt eine Set-Top-Box in die Lage, sich auf die Frequenz eines Broadcast-Karusselservers abzustimmen und Aufbaustufen der Betriebssystemsoftware zu identifizieren.
  • Wenn eine Aufbaustufe verfügbar ist, lädt der Bootlader 50 die neue Software vom Netz in den EEPROM-(electromagnetic erasable programmable read-only memory: elektromagnetisch löschbarer, programmierbarer Festspeicher) Speicher der Set-Top-Box. Der Bootlader 50 stützt auch ein auf Systemsoftwarebefehl hin erfolgendes zwangsweises Herunterladen. Innerhalb des Gebiets der vorliegenden Erfindung bedeutet der Begriff eines "zwangsweisen Herunterladens", ob das Herunterladen im Wesentlichen unmittelbar erfolgen oder aufgeschoben werden soll. Des Weiteren kann das Herunterladen festlegen, dass eine spezifische Version der Software Heruntergeladen werden soll. Der Server oder die Box können erkennen, dass ein neues Betriebssystem in die Box gebracht werden muss. Meldungen, die ein neues Betriebssystem betreffen, können ebenfalls an eine oder an viele Boxen verschickt werden.
  • In der bevorzugten Ausführungsform ist der EEPROM-Speicher der Set-Top-Box eine Acht-Megabyte-Flashspeicher-Vorrichtung, die in Wörtern von 512 kb · 32 bit konfiguriert ist und bevorzugt unter der Produktenummer AM29F800BB von Advanced Micro Devices, Inc. (AMD) erhältlich ist.
  • Fig. 3 schildert die Komponenten und Datenflüsse, die mit der Funktion des Bootladerprogramms 50 verbunden sind. Die Set-Top-Box 20 enthält ein erstes Betriebssystem 54, das in den Betriebssystem-EEPROM-Speicher 58 geladen ist. Die Set-Top-Box 20 enthält einen zweiten Speicher 62 zur Speicherung eines Anwendungsprogramms (d. h. den Anwendungs-EEPROM-Speicher 62).
  • Der Betriebssystem-EEPROM-Speicher 58 enthält einen ersten Sektor 66 zur Speicherung des mit dem Bootlader 50 verbundenen Befehlscodes. Bevorzugtermassen befindet sich der erste Sektor 66 in einem gesperrten Zustand, damit ein Überschreiben des ersten Sektors 66 verhindert wird.
  • Wenn ein zweites Betriebssystem 70 heruntergeladen und von der Set-Top-Box 20 verwendet werden soll, bildet der Bootlader 50 zuerst eine Backupkopie des ersten Betriebssystems 54 im Anwendungs-EEPROM-Speicher 62. Das zweite Betriebssystem 70 wird dann in den Betriebssystem-EEPROM-Speicher 58 geladen. Wenn der Bootlader 50 irgendwelche Anomalien, die beim Herunterladen des zweiten Betriebssystems 70 erscheinen, oder eine mit der Ausführung des zweiten Betriebssystems 70 nach dessen Herunterladen verbundene Anomalie entdeckt, überträgt der Bootlader 50 das erste Betriebssystem 54 aus dem Anwendungs-EEPROM-Speicher 62 in den Betriebssystem-EEPROM-Speicher 58.
  • Dieses Wiederinstandsetzungssystem verschafft Robustheit beim Herunterladen und bei der Ausführung neuer Betriebssysteme in der Set-Top-Box 20. In einer wechselweisen Ausführungsform der vorliegenden Erfindung erhält der Bootlader 50 ein weiteres Betriebssystem 72 über ein Netz 74, um ein schlecht arbeitendes zweites Betriebssystem 70 zu ersetzen. Das Bootladerprogramm ist in der Lage, auf die richtige Frequenz abzustimmen, um das Herunterladen aus dem Broadcastkarussel durchzuführen, oder kann das Herunterladen über das TCP/IP-Netz der Box oder über die SCSI der Box oder die Ethernetverbindung der Box oder über irgendeine Datenübermittlungsverbindung, die die Box besitzt, ausführen, oder es kann den URL (uniform resource locator) erhalten.
  • In einer weiteren Ausführungsform der vorliegenden Erfindung kann das erste Betriebssystem 54 in einer oder mehreren EEPROM-Speichervorrichtungen gespeichert sein. In einer solchen Ausführungsform enthält der Bootlader 50 einen Speichersearcher 76, um festzustellen, in welcher EEPROM-Speichervorrichtung das erste Betriebssystem gespeichert ist. Zum Beispiel kann das erste Betriebssystem 54 in einer wechselweisen Boot-EEPROM-Speichervorrichtung untergebracht worden sein, die sich auf einem SCSI/Seriellen Optionsboard befindet.
  • Mit einer solchen Funktionalität erlaubt die vorliegende Erfindung eine Erholung von Ausfällen während jedes Stadiums des Ladens eines Betriebssystems, zum Beispiel nichteinschränkend: Ausfall beim Laden eines Betriebssystems aus dem ersten Speicher in den zweiten Speicher (zum Beispiel wegen eines Stromausfalls); oder ein Ausfall beim Laden des zweiten Betriebssystems. Das Bootladerprogramm 50 enthält bevorzugtermassen einen Herunterlader und einen Zustandsdetektor (zum Beispiel einen Ausfalldetektor), um eine oder mehrere seiner Funktionen zu erfüllen.
  • Fig. 4a und 4b schildern die mit dem Herunterladen von Betriebssystemen in die Set-Top-Box 20 verbundenen, detaillierten Verarbeitungsschritte. Unter Bezugnahme auf Fig. 4a zeigt der Startanzeigeblock 100 an, dass der Prozessblock 104 ausgeführt werden soll. Der Prozessblock 104 lädt das erste Betriebssystem in den Anwendungs-ROM (d. h., die Anwendungs-EEPROM-Speichervorrichtung). Der Prozessblock 108 lädt dann das zweite Betriebssystem in den Betriebssystem-EEPROM-Speicher herunter. Die Set- Top-Box wird beim Prozessblock 112 neu gebootet, und die Anzahl von misslungenen Bootversuchen wird beim Prozessblock 116 auf Null gesetzt.
  • Der Bootlader schaltet in der bevorzugten Ausführungsform die Audiotreiber aus, da bestimmte Typen von Set-Top-Boxen nach dem Neubooten Störgeräusche von Audiochips erzeugen. Diese Funktionalität wird durch den Prozessblock 120 wahrgenommen.
  • Darüber hinaus wird eine adaptive Prüfung bezüglich des neuen Betriebssystems durchgeführt, um das Speichervolumen des direkten Zugriffsspeichers (Random Access Memory, RAM) zu bestimmen, das die Set-Top-Box enthält. Diese Funktionalität wird vom Prozessblock 124 wahrgenommen. Der Prozessblock 128 bestimmt die Hardwarekonfiguration der Set-Top-Box, um sicherzustellen, dass ein Betriebssystem nicht irrtümlicherweise für eine andere Variante der Hardware in die Set-Top-Box heruntergeladen worden war. Der Prozessblock 132 verwendet die vom Prozessblock 128 erzeugte Hardwarekonfigurationsinformation, um eine Prüfkontrolle zwischen dem neuen Betriebssystem und der Hardwarekonfiguration der Set-Top-Box durchzuführen. Die Verarbeitung wird beim Fortsetzungsanzeiger 136 fortgesetzt.
  • Unter Bezugnahme auf Fig. 4b zeigt der Fortsetzungsanzeiger 136 an, dass der Entscheidungsblock 140 verarbeitet werden soll. Der Entscheidungsblock 140 fragt, ob Ausfälle während des Bootprozesses entdeckt wurden. Ein Ausfall kann zum Beispiel beinhalten, dass das neue Betriebssystem nicht in der Lage war, richtig zu booten, und zum Beispiel eine oder mehrere der in Fig. 4a beschriebene Funktionen nicht erfüllen konnte, wie (ohne darauf beschränkt zu sein) bei Prozessblock 128 die Hardwarekonfiguration zu bestimmen.
  • Wenn der Entscheidungsblock 140 keinerlei Ausfall während des Bootprozesses festgestellt hat, wird die Verarbeitung bei Prozessblock 141 fortgesetzt. Der Prozessblock 141 führt eine zusätzliche Prüfung aus, um festzustellen, ob das heruntergeladene Betriebssystem richtig funktioniert. Der Prozessblock 141 lädt unter Verwendung des neuen Betriebssystems ein Anwendungsprogramm von einem remote Site herunter. Der Entscheidungsblock 142 prüft, ob die Anwendung erfolgreich heruntergeladen worden ist. Wenn das Herunterladen erfolgreich war, endet die Verarbeitung bei Endblock 148. Wenn das Herunterladen der Anwendung nicht erfolgreich war, lädt der Prozessblock 160 das erste Betriebssystem in den Betriebssystem-ROM, bevor bei Endblock 148 abgeschlossen wird.
  • In einer wechselweisen Ausführungsform, in der das erste Betriebssystem in einer oder mehreren Speicherbänken gespeichert sein kann, durchsucht der Prozessblock 160 über Prozessblock 161 die möglichen Speicherbänke, um das erste Betriebssystem wiederzugewinnen. In noch einer anderen Ausführungsform gewinnt der Prozessblock 160 das Betriebssystem über den Prozessblock 162 über das Netz zurück.
  • Wenn, auf den Entscheidungsblock 140 Rückbezug nehmend, der Entscheidungsblock 140 feststellt, dass ein Ausfall aufgetreten ist, dann wird der Prozessblock 144 ausgeführt, in dem eine fortlaufende Zählung der misslungenen Bootversuche inkrementiert und gespeichert wird. Der Entscheidungsblock 152 fragt, ob die Ausfallzählung drei beträgt. Wenn die Ausfallzählung kleiner als drei ist, wird die Verarbeitung beim Fortsetzungsanzeiger 156 in Fig. 4a fortgesetzt.
  • Wenn die Ausfallzählung drei beträgt, lädt der Prozessblock 160 das erste Betriebssystem aus dem Anwendungs-ROM in den Betriebssystem-ROM. Es versteht sich, dass die vorliegende Erfindung nicht auf eine Ausfallzählung bis drei beschränkt ist, bevor das erste Betriebssystem wieder geladen wird, sondern schliesst auch ein, keine Ausfallzählung zu unterhalten und beim ersten Eintreten eines Ausfalls des zweiten Betriebssystems wieder zu laden. Des weiteren schliesst die vorliegende Erfindung Fehlerzählungen von weniger als drei oder mehr als drei ein.
  • In einer wahlweisen Ausführungsform, in der das erste Betriebssystem in einer oder mehreren verschiedenen Speicherbänken gespeichert sein kann, durchsucht Prozessblock 160 die möglichen Speicherbänke über den Prozessblock 161, um das erste Betriebssystem wiederzugewinnen. In noch einer weiteren Ausführungsform gewinnt der Prozessblock 160 das Betriebssystem über Prozessblock 162 über das Netz wieder. Die Verarbeitung endet dann für den Bootlader bei Endblock 148.
  • Während die oben gegebene, detaillierte Beschreibung die bevorzugte Ausführungsform der vorliegenden Erfindung beschreibt, ist die Erfindung für Modifikationen, Variationen und Änderungen zugänglich, ohne vom Rahmen und der fairen Bedeutung der beigefügten Ansprüche abzuweichen.

Claims (16)

1. Verfahren zur Wiederinstandsetzung von Betriebssystemen in einem Set-Top-Box- System, umfassend die Schritte:
in einem ersten Speicher (58) aus einer Mehrzahl von Speichern ein erstes Betriebssystem (54) zu betreiben;
in einem zweiten Speicher (62) aus der besagten Mehrzahl von Speichern ein Anwendungsprogramm zu betreiben;
in einem Speicher (62) aus der besagten Mehrzahl von Speichern ausser dem besagten ersten Speicher (58) das besagte erste Betriebssystem (54) zu speichern (104);
in den besagten ersten Speicher (58) ein zweites Betriebssystem (70) zu laden (108);
eine mit dem besagten zweiten Betriebssystem zusammenhängende, vorbestimmte Bedingung zu erkennen (140-152);
als eine Reaktion auf die besagte erkannte Bedingung die Mehrzahl von Speichern zu durchsuchen (161), um das gespeicherte erste Betriebssystem aufzufinden; und
als eine Reaktion auf die erkannte vorbestimmte Bedingung das aufgefundene erste Betriebssystem in den besagten ersten Speicher (58) zu laden (160).
2. Verfahren des Anspruchs 1, weiters umfassend den Schritt:
ein Misslingen des Bootens des besagten zweiten Betriebssystems zu erkennen (140, 144, 152), nachdem es in den besagten ersten Speicher geladen worden ist;
als eine Reaktion auf die erkannte vorbestimmte Bedingung das aufgefundene erste Betriebssystem in den besagten ersten Speicher zu laden (160).
3. Verfahren des Anspruchs 1, weiters umfassend die Schritte:
wiederholt zu versuchen (112), das benannte Set-Top-Box-System mit dem besagten zweiten Betriebssystem zu booten;
die Anzahl (144) von mit dem besagten zweiten Betriebssystem verbundenen Bootversuchen festzustellen; und
in Reaktion auf die besagte festgestellte Anzahl, die grösser als ein vorbestimmter Schwellenwert ist, das aufgefundene erste Betriebssystem in den besagten ersten Speicher zu laden (152, 160).
4. Verfahren des Anspruchs 3, weiters umfassend den Schritt:
in dem besagten ersten Speicher (58) einen gesperrten Sektor (66) zur Verfügung zu stellen, um Rechnerbefehle aufzunehmen, um das aufgefundene erste Betriebssystem in Reaktion auf die besagte festgestellte Anzahl, die grösser als der vorbestimmte Schwellenwert ist, in den besagten ersten Speicher (58) zu laden.
5. Verfahren des Anspruchs 1, weiters umfassend die Schritte:
ein Netz (74) zur Kommunikation mit dem besagten Set-Top-Box-System zur Verfügung zu stellen; und
als eine Reaktion auf die erkannte vorbestimmte Bedingung ein drittes Betriebssystem (72) über das besagte Netz (74) in den besagten ersten Speicher (58) zu laden (162).
6. Verfahren des Anspruchs 1, weiters umfassend die Schritte:
ein Netz (74) zur Verfügung zu stellen, das bei einer vorbestimmten Frequenz mit dem besagten Set-Top-Box-System in Kommunikation tritt;
das besagte Set-Top-Box-System auf die besagte vorbestimmte Frequenz abzustimmen; und
als eine Reaktion auf die erkannte vorbestimmte Bedingung ein drittes Betriebssystem (72) über das besagte Netz (74) in den besagten ersten Speicher (58) zu laden (162).
7. Verfahren des Anspruchs 1, weiters umfassend die Schritte:
ein Netz (74) zur Verfügung zu stellen, das bei einer vorbestimmten Frequenz mit dem besagten Set-Top-Box-System in Kommunikation tritt;
das besagte zweite Betriebssystem (70) zu verwenden, um über das besagte Netz (74) ein Anwendungsprogramm herunterzuladen (141);
eine mit dem besagten Herunterladen des besagten Anwendungsprogramms zusammenhängende, vorbestimmte Bedingung zu erkennen;
als eine Reaktion auf die erkannte vorbestimmte Bedingung das besagte aufgefundene erste Betriebssystem in den besagten ersten Speicher (58) zu laden (142, 160).
8. Verfahren des Anspruchs 1, weiters umfassend die Schritte:
die, vorbestimmte Bedingung eines Ausfalls während des besagten Schrittes des Speicherns des besagten ersten Betriebssystems in den besagten zweiten Speicher zu erkennen; und
als eine Reaktion auf die erkannte vorbestimmte Bedingung das besagte aufgefundene erste Betriebssystem in den besagten ersten Speicher zu laden.
9. Vorrichtung zur Wiederinstandsetzung von Betriebssystemen in einem Set-Top- Box-System, umfassend:
eine Mehrzahl von Speichern, darunter einen ersten Speicher (58) für die Ausführung eines ersten Betriebssystems und einen zweiten Speicher (62) für die Ausführung eines Anwendungsprogramms;
einen Herunterlader (50) zur Speicherung des besagten ersten Betriebssystems in einem Speicher aus der Mehrzahl von Speichern, der nicht der erste Speicher (58) ist, und zum Herunterladen eines zweiten Betriebssystems (70) aus einer Quelle ausserhalb der besagten Box in den besagten ersten Speicher;
einen Zustandsdetektor zum Erkennen einer mit dem besagten zweiten Betriebssystem zusammenhängenden, vorbestimmten Bedingung,
Mittel (76) zum Auffinden des gespeicherten ersten Betriebssystems durch Durchsuchen der Mehrzahl von Speichern nach dem besagten ersten gespeicherten Betriebssystem als Reaktion auf die erkannte vorbestimmte Bedingung; und
worin der Herunterlader (50) als eine Reaktion auf die erkannte vorbestimmte Bedingung das aufgefundene erste Betriebssystem in den besagten ersten Speicher (58) lädt.
10. Vorrichtung des Anspruchs 9, weiters umfassend:
einen Ausfalldetektor, um ein Misslingen des Bootens des besagten zweiten Betriebssystems (70) nach seinem Laden in den besagten ersten Speicher zu erkennen;
worin der Herunterlader (50) als eine Reaktion auf die erkannte vorbestimmte Bedingung das aufgefundene erste Betriebssystem in den besagten ersten Speicher (58) lädt.
11. Vorrichtung des Anspruchs 9, weiters umfassend:
Mittel, um wiederholt zu versuchen, das besagte Set-Top-Box-System mit dem besagten zweiten Betriebssystem (70) zu booten;
Mittel, um die Anzahl von mit dem besagten zweiten Betriebssystem (70) zusammenhängenden Bootversuchen festzustellen; und
Mittel, um in Reaktion auf die besagte festgestellte Anzahl, die grösser als ein vorbestimmter Schwellenwert ist, das aufgefundene erste Betriebssystem in den besagten ersten Speicher (58) zu laden.
12. Vorrichtung des Anspruchs 11, weiters umfassend:
in dem besagten ersten Speicher (58) einen gesperrten Sektor (66), um Rechnerbefehle zum Läden des aufgefundenen ersten Betriebssystems in den besagten ersten Speicher (58) in Reaktion auf die besagte festgestellte Anzahl, die grösser als ein vorbestimmter Schwellenwert ist, aufzunehmen.
13. Vorrichtung des Anspruchs 9, weiters umfassend:
ein Netz (74) zur Kommunikation mit dem besagten Set-Top-Box-System, wobei der besagte Herunterlader (50) als eine Reaktion auf die erkannte vorbestimmte Bedingung ein drittes Betriebssystem (72) über das besagte Netz (74) in den besagten ersten Speicher (58) lädt.
14. Vorrichtung des Anspruchs 9, weiters umfassend:
ein Netz (74) zur Kommunikation mit dem besagten Set-Top-Box-System bei einer vorbestimmten Frequenz;
ein Abstimmgerät, um das benannte Set-Top-Box-System auf die besagte vorbestimmte Frequenz abzustimmen, wobei der besagte Herunterlader (50) als eine Reaktion auf die erkannte vorbestimmte Bedingung ein drittes Betriebssystem (72) über das besagte Netz (74) in den besagten ersten Speicher (58) lädt.
15. Vorrichtung des Anspruchs 9, weiters umfassend:
ein Netz (74) zur Kommunikation mit dem besagten Set-Top-Box-System bei einer vorbestimmten Frequenz;
Mittel zur Verwendung des besagten zweiten Betriebssystem (70) zum Herunterladen eines Anwendungsprogramms über das besagte Netz (74);
Mittel zum Erkennen einer mit dem besagten Herunterladen des besagten Anwendungsprogramms zusammenhängenden vorbestimmten Bedingung;
Mittel (50) zum Laden des aufgefundenen ersten Betriebssystem in den besagten ersten Speicher (58) als eine Reaktion auf die erkannte vorbestimmte Bedingung.
16. Vorrichtung des Anspruchs 9, weiters umfassend:
Mittel zum Erkennen der vorbestimmten Bedingung eines Ausfalls während des besagten Schrittes, das benannte erste Betriebssystem in den benannten zweiten Speicher zu laden;
Mittel zum Laden des aufgefundenen ersten Betriebssystems in den besagten ersten Speicher als Reaktion auf die erkannte vorbestimmte Bedingung.
DE69905946T 1998-12-23 1999-12-17 Verfahren und vorrichtung zum laden von betriebssystemen in einer set-top box umgebung Expired - Lifetime DE69905946T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/220,484 US6393585B1 (en) 1998-12-23 1998-12-23 Method and apparatus for restoring operating systems in a set-top box environment
PCT/US1999/030246 WO2000040005A1 (en) 1998-12-23 1999-12-17 Method and apparatus for operating system downloads in a set-top box environment

Publications (2)

Publication Number Publication Date
DE69905946D1 DE69905946D1 (de) 2003-04-17
DE69905946T2 true DE69905946T2 (de) 2003-11-06

Family

ID=22823726

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69905946T Expired - Lifetime DE69905946T2 (de) 1998-12-23 1999-12-17 Verfahren und vorrichtung zum laden von betriebssystemen in einer set-top box umgebung

Country Status (5)

Country Link
US (1) US6393585B1 (de)
EP (1) EP1142309B1 (de)
KR (1) KR20010093216A (de)
DE (1) DE69905946T2 (de)
WO (1) WO2000040005A1 (de)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6817028B1 (en) 1999-06-11 2004-11-09 Scientific-Atlanta, Inc. Reduced screen control system for interactive program guide
US7992163B1 (en) * 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US7010801B1 (en) 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US6948099B1 (en) * 1999-07-30 2005-09-20 Intel Corporation Re-loading operating systems
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
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
US7200857B1 (en) 2000-06-09 2007-04-03 Scientific-Atlanta, Inc. Synchronized video-on-demand supplemental commentary
US7975277B1 (en) 2000-04-03 2011-07-05 Jerding Dean F System for providing alternative services
US8516525B1 (en) 2000-06-09 2013-08-20 Dean F. Jerding Integrated searching system for interactive media guide
US6741978B1 (en) * 2000-04-12 2004-05-25 Intel Corporation Accessing file data stored in non-volatile re-programmable semiconductor memories
US7934232B1 (en) 2000-05-04 2011-04-26 Jerding Dean F Navigation paradigm for access to television services
US8069259B2 (en) 2000-06-09 2011-11-29 Rodriguez Arturo A Managing removal of media titles from a list
US7962370B2 (en) 2000-06-29 2011-06-14 Rodriguez Arturo A Methods in a media service system for transaction processing
JP2002041292A (ja) * 2000-07-13 2002-02-08 Internatl Business Mach Corp <Ibm> コンピュータ用リカバリ装置
US20040226020A1 (en) * 2000-09-28 2004-11-11 Ati Technologies, Inc. Method and system for using general and appliance operating systems in a single information handling device
GB2367656A (en) * 2000-10-06 2002-04-10 Hewlett Packard Co Self-repairing operating system for computer entities
EP1195679A1 (de) * 2000-10-06 2002-04-10 Hewlett-Packard Company, A Delaware Corporation Betriebssystemwiederanlauf mit externem Sicherungsmedia in einer kopflosen Computerinstanz
US7089449B1 (en) * 2000-11-06 2006-08-08 Micron Technology, Inc. Recovering a system that has experienced a fault
US7340759B1 (en) 2000-11-10 2008-03-04 Scientific-Atlanta, Inc. Systems and methods for adaptive pricing in a digital broadband delivery system
US8479189B2 (en) 2000-11-17 2013-07-02 Hewlett-Packard Development Company, L.P. Pattern detection preprocessor in an electronic device update generation system
US7409685B2 (en) 2002-04-12 2008-08-05 Hewlett-Packard Development Company, L.P. Initialization and update of software and/or firmware in electronic devices
US20040068721A1 (en) * 2000-11-17 2004-04-08 O'neill Patrick Network for updating firmware and / or software in wireless communication devices
US8875116B2 (en) * 2000-11-17 2014-10-28 Hewlett-Packard Development Company, L.P. Network for updating firmware and / or software in wireless communication devices
US20020152467A1 (en) * 2001-02-12 2002-10-17 Rosario Fiallos Automated generation of conditional access packets for IRD upgrades via radio frequency software download in satellite television systems
JP2002333990A (ja) * 2001-03-05 2002-11-22 Omron Corp プログラム更新装置およびプログラム更新方法
US6928579B2 (en) * 2001-06-27 2005-08-09 Nokia Corporation Crash recovery system
US7526788B2 (en) 2001-06-29 2009-04-28 Scientific-Atlanta, Inc. Graphic user interface alternate download options for unavailable PRM content
US7496945B2 (en) 2001-06-29 2009-02-24 Cisco Technology, Inc. Interactive program guide for bidirectional services
US7512964B2 (en) 2001-06-29 2009-03-31 Cisco Technology System and method for archiving multiple downloaded recordable media content
US8006262B2 (en) 2001-06-29 2011-08-23 Rodriguez Arturo A Graphic user interfaces for purchasable and recordable media (PRM) downloads
US7137026B2 (en) * 2001-10-04 2006-11-14 Nokia Corporation Crash recovery system
GB2382889A (en) * 2001-12-05 2003-06-11 Cambridge Consultants microprocessor design system
US7334251B2 (en) 2002-02-11 2008-02-19 Scientific-Atlanta, Inc. Management of television advertising
US7823149B2 (en) * 2002-05-08 2010-10-26 Oracle International Corporation Method and system for restoring an operating environment on a computer system
DE10225031A1 (de) * 2002-06-06 2003-12-18 Grundig Ag I Ins Vorrichtung zu einer benutzergesteuerten Veränderung des Arbeitsprogrammes eines in einem Fernsehempfänger angeordneten Mikroprozessors
US7127596B2 (en) * 2002-06-28 2006-10-24 Intel Corporation Method and system for improving computer system boot reliability by executing an application specific test during a boot prior loading an operating system
US7149889B2 (en) * 2002-12-12 2006-12-12 Scientific-Atlanta, Inc. Proactive reboot
US7500092B2 (en) * 2003-01-17 2009-03-03 International Business Machines Corporation Hardware abstraction for set-top box operating systems
US7263648B2 (en) * 2003-01-24 2007-08-28 Wegener Communications, Inc. Apparatus and method for accommodating loss of signal
US7062048B2 (en) 2003-01-27 2006-06-13 Wegener Communications, Inc. Apparatus and method for single encryption with multiple authorization of distributed content data
US7340638B2 (en) * 2003-01-30 2008-03-04 Microsoft Corporation Operating system update and boot failure recovery
US7082526B2 (en) * 2003-03-14 2006-07-25 Elegent Technologies, Inc. Mechanism for intuitively invoking one or more auxiliary programs during a computer booting process
US7171606B2 (en) * 2003-03-25 2007-01-30 Wegener Communications, Inc. Software download control system, apparatus and method
US20040199910A1 (en) * 2003-04-05 2004-10-07 Baack James E. Automated change back off process for restoring the root disk
US7296204B2 (en) * 2003-05-30 2007-11-13 Wegener Communications, Inc. Error correction apparatus and method
US7206411B2 (en) 2003-06-25 2007-04-17 Wegener Communications, Inc. Rapid decryption of data by key synchronization and indexing
US7673297B1 (en) * 2003-09-03 2010-03-02 The Directv Group, Inc. Automatic software update detection and flexible installer for set-top boxes
US8555273B1 (en) 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
US20050125357A1 (en) * 2003-12-09 2005-06-09 Saadat Abbas S. Secure integrated media center
US8161388B2 (en) 2004-01-21 2012-04-17 Rodriguez Arturo A Interactive discovery of display device characteristics
US7904895B1 (en) 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
US7827558B2 (en) * 2004-06-30 2010-11-02 Devicevm, Inc. Mechanism for enabling a program to be executed while the execution of an operating system is suspended
US8526940B1 (en) 2004-08-17 2013-09-03 Palm, Inc. Centralized rules repository for smart phone customer care
US7516315B2 (en) * 2005-03-18 2009-04-07 Research In Motion Ltd. Electronic device having an alterable configuration and methods of manufacturing and configuring the same
FR2888353A1 (fr) * 2005-07-11 2007-01-12 Thomson Licensing Sas Soc Par Procede de detection d'erreurs lors de l'initialisation d'un appareil electronique et appareil implementant le procede
US8189472B2 (en) 2005-09-07 2012-05-29 Mcdonald James F Optimizing bandwidth utilization to a subscriber premises
WO2007062108A2 (en) 2005-11-23 2007-05-31 Pak Siripunkaw Method of upgrading a platform in a subscriber gateway device
EP2025095A2 (de) 2006-06-08 2009-02-18 Hewlett-Packard Development Company, L.P. Geräteverwaltung in einem netzwerk
EP2047420A4 (de) 2006-07-27 2009-11-18 Hewlett Packard Development Co Benutzererfahrungs- und abhängigkeitsverwaltung bei einer mobilen vorrichtung
US10104432B2 (en) 2006-12-01 2018-10-16 Time Warner Cable Enterprises Llc Methods and apparatus for software provisioning of a network device
US8628522B2 (en) 2007-05-21 2014-01-14 Estech, Inc. (Endoscopic Technologies, Inc.) Cardiac ablation systems and methods
KR101249831B1 (ko) 2007-08-06 2013-04-05 삼성전자주식회사 컴퓨터 시스템 및 그 부팅 방법
US9204204B2 (en) * 2007-08-14 2015-12-01 At&T Intellectual Property I, Lp System for managing a configuration of a media content processor
US8108911B2 (en) 2007-11-01 2012-01-31 Comcast Cable Holdings, Llc Method and system for directing user between captive and open domains
US20090217335A1 (en) * 2008-02-27 2009-08-27 Richard Sai Kit Wong Apparatus and methods for network access
KR101021308B1 (ko) * 2008-10-10 2011-03-11 주식회사 현대오토넷 배터리 관리 시스템의 응용 프로그램 복구 장치 및 방법
US8849967B2 (en) * 2009-07-15 2014-09-30 Cisco Technology, Inc. Passive activation of bootloader network features
US20110320794A1 (en) * 2010-06-28 2011-12-29 Chung-Jen Yang Flash System And Method For Updating The Flash System
US9942124B2 (en) 2011-06-28 2018-04-10 Time Warner Cable Enterprises Llc Apparatus and methods for automated device testing in content distribution network
CN104423890A (zh) * 2013-08-27 2015-03-18 鸿富锦精密电子(天津)有限公司 固态硬盘
CN103760950A (zh) * 2014-01-09 2014-04-30 北京奇虎科技有限公司 无线路由设备管理方法和装置
US9740863B2 (en) * 2014-11-25 2017-08-22 Intel Corporation Protecting a secure boot process against side channel attacks
CN106462478B (zh) * 2015-04-29 2019-06-11 华为技术有限公司 数据恢复方法、装置以及终端
US11101014B2 (en) * 2019-03-14 2021-08-24 Micron Technology, Inc. Two-stage flash programming for embedded systems
US10921871B2 (en) 2019-05-17 2021-02-16 Trane International Inc. BAS/HVAC control device automatic failure recovery

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4530052A (en) * 1982-10-14 1985-07-16 Honeywell Information Systems Inc. Apparatus and method for a data processing unit sharing a plurality of operating systems
JPH04133102A (ja) * 1990-09-26 1992-05-07 Mitsubishi Electric Corp プログラマブル・コントローラ及びその制御方法
US5432927A (en) * 1992-06-17 1995-07-11 Eaton Corporation Fail-safe EEPROM based rewritable boot system
US5481714A (en) 1993-10-18 1996-01-02 International Business Machines Corporation Method and system for installing an operating system on a data processing system with abort capability and voice input feature
JP3140906B2 (ja) 1994-04-12 2001-03-05 株式会社エヌ・ティ・ティ・データ システムファイルの更新及び復元方法
US5544255A (en) * 1994-08-31 1996-08-06 Peripheral Vision Limited Method and system for the capture, storage, transport and authentication of handwritten signatures
US5627964A (en) * 1994-12-13 1997-05-06 Microsoft Corporation Reduce or fail-safe bootstrapping of a system having a graphical user interface
US5960445A (en) * 1996-04-24 1999-09-28 Sony Corporation Information processor, method of updating a program and information processing system
JP3673015B2 (ja) 1996-04-26 2005-07-20 沖電気工業株式会社 半導体装置における周辺デバイス識別方法
US5708776A (en) 1996-05-09 1998-01-13 Elonex I.P. Holdings Automatic recovery for network appliances
US5933647A (en) * 1997-01-24 1999-08-03 Cognet Corporation System and method for software distribution and desktop management in a computer network environment
EP0907285A1 (de) 1997-10-03 1999-04-07 CANAL+ Société Anonyme Datenfernladung

Also Published As

Publication number Publication date
US6393585B1 (en) 2002-05-21
DE69905946D1 (de) 2003-04-17
KR20010093216A (ko) 2001-10-27
WO2000040005A1 (en) 2000-07-06
EP1142309A1 (de) 2001-10-10
EP1142309B1 (de) 2003-03-12

Similar Documents

Publication Publication Date Title
DE69905946T2 (de) Verfahren und vorrichtung zum laden von betriebssystemen in einer set-top box umgebung
DE102006047979B4 (de) Datenverarbeitungssystem, Verfahren und Computerprogrammprodukt zum Ausführen einer Testroutine in Verbindung mit einem Betriebssystem
DE69423151T2 (de) Verwendung der zuletzt gültigen Konfiguration zum Laden eines Rechnersystems
DE10003108B4 (de) Verfahren und Computersystem zum Durchführen einer Softwareinstallation
DE10315490B4 (de) Verfahren und System zum Wechsel zwischen zwei oder mehreren Firmwareabbildungen auf einer Hostvorrichtung
DE60122418T2 (de) Verfahren und Apparat zum Herunterladen von Firmware
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
DE69838756T2 (de) Die verarbeitung von eingabe/ausgabeanforderungen von mehreren treibern ermöglichen dateisystem-primitivroutine in einem mehrschicht-treiber-e/a-system
DE4435751B4 (de) Dateiname- und Verzeichnis- Erfassungsverfahren zur Verwendung mit einem Betriebssystem
DE69938547T2 (de) Verfahren, system, gerät und programm zur verteilung und einführung von software-upgrade
DE69835397T2 (de) Endgerät geeignet für ferngesteuertes Laden, Verfahren zum Laden eines Laderprogrammes in einem Endgerät, und Speichermedium, das ein Ladeprogramm speichert
DE10255111A1 (de) System und Verfahren zum Laden von Firmware mit hoher Verfügbarkeit
DE102009020389A1 (de) System zur Aktualisierung von Firmware und Verfahren dazu, und Verfahren zum Erzeugen von Firmware
EP3128383B1 (de) Feldgerät
DE10048942A1 (de) Verfahren und System zur Wartung von Software über ein Netz
DE10296986T5 (de) Automatischer Austausch einer detekten BIOS-Abbildung
EP0849666A2 (de) Verfahren zum Instantiieren einer versionsbehafteten Klasse
DE69130306T2 (de) Steuerverfahren für die Vermeidung eines falschen Resets von einem allgemeinen Betriebsmittel und Mehrrechnersystem für die Ausführung des Verfahrens
EP3218804A1 (de) Update einer firmware
DE19803697C2 (de) Verfahren zum Aufrüsten eines Softwaresystems und Vorrichtung zur Durchführung des Verfahrens
DE69618007T2 (de) Fehlerdatenerfassung beim wiederanlauf eines rechners
DE10303054A1 (de) Verifizieren einer Programmversion
DE3751493T2 (de) Verteiltes Verarbeitungssystem und -verfahren.
WO2022253537A1 (de) Verfahren und system zum erkennen und beseitigen von schwachstellen in einzelnen dateisystemschichten eines container-images
EP4002098A1 (de) Verfahren zur bereitstellung der funktionalität von mehreren mikrodiensten und/oder der funktionalität von mehreren software-containern mittels einer cloud-infrastruktur, system, verwendungssystem, computerprogramm und computerlesbares medium

Legal Events

Date Code Title Description
8364 No opposition during term of opposition