DE4214184A1 - Computersystem mit einem nicht-fluechtigen speicher und verfahren zu dessen aktualisierung - Google Patents
Computersystem mit einem nicht-fluechtigen speicher und verfahren zu dessen aktualisierungInfo
- Publication number
- DE4214184A1 DE4214184A1 DE4214184A DE4214184A DE4214184A1 DE 4214184 A1 DE4214184 A1 DE 4214184A1 DE 4214184 A DE4214184 A DE 4214184A DE 4214184 A DE4214184 A DE 4214184A DE 4214184 A1 DE4214184 A1 DE 4214184A1
- Authority
- DE
- Germany
- Prior art keywords
- processing logic
- computer system
- update
- volatile memory
- bios
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 203
- 238000012545 processing Methods 0.000 claims abstract description 156
- 238000011084 recovery Methods 0.000 claims abstract description 69
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000008672 reprogramming Effects 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 7
- 230000003213 activating effect Effects 0.000 claims description 5
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 2
- 230000004913 activation Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 8
- 230000008901 benefit Effects 0.000 abstract description 2
- 238000003860 storage Methods 0.000 description 10
- 238000013500 data storage Methods 0.000 description 7
- 238000012795 verification Methods 0.000 description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000009434 installation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- COCAUCFPFHUGAA-MGNBDDOMSA-N n-[3-[(1s,7s)-5-amino-4-thia-6-azabicyclo[5.1.0]oct-5-en-7-yl]-4-fluorophenyl]-5-chloropyridine-2-carboxamide Chemical compound C=1C=C(F)C([C@@]23N=C(SCC[C@@H]2C3)N)=CC=1NC(=O)C1=CC=C(Cl)C=N1 COCAUCFPFHUGAA-MGNBDDOMSA-N 0.000 description 2
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Description
Die Erfindung betrifft ein Computersystem. Insbesondere be
zieht sich die Erfindung auf eine Computersystemarchitektur und
einer nicht-flüchtigen Art der Verarbeitungslogik eines Grund
betriebssystems.
Viele bekannte Computersysteme sind üblicherweise zumindest
mit einem Prozessor, einem Speicher mit wahlfreiem Zugriff
(RAM) und einem Nur-Lese-Speicher (ROM) ausgestattet. Einige
Systeme, beispielsweise verschiedene Taschenrechner, arbeiten
nur mit einem Prozessor und einem ROM. ROM-Bauelemente stellen
eine nicht-flüchtige Speicherart zur Verfügung, bei der die ge
speicherten Informationen nicht zerstört werden, wenn das Com
putersystem von der Stromversorgung entfernt wird.
Bekannte Computersysteme sind typischerweise mit einem An
fangslader versehen (d. h. durch Einschalten zu initialisieren),
wobei die im Inneren des Computersystems im ROM gespeicherte
Verarbeitungslogik (d. h. Firmware) benutzt wird. Da der ROM
nicht flüchtig ist, ist sichergestellt, daß die Firmware im ROM
gültige Daten oder Befehle enthält; folglich können bekannte
Computersysteme unter Benutzung der Firmware im ROM zuverlässig
anfangsgeladen werden. Viele Computer haben erfolgreich diese
Technik benutzt. Eines dieser Systeme ist der durch die IBM
Corporation (in Armonk, N.Y., entwickelte IBM PC. Bekannte Ver
sionen des IBM PC benutzen ROM-Bauelemente zur Speicherung der
Firmware oder eines Basis-Eingabe-Ausgabe-Steuersystems (BIOS).
Das BIOS stellt die Verarbeitungslogik des Betriebssystems dar,
die die unterste Ebene der Softwaresteuerung der Hardware und
der Ressourcen des Computersystems zur Verfügung stellt. Die
ROM-Speicherung kann außerdem für eine nicht-flüchtige Ablage
von Netzwerkkonfigurationsdaten oder anwendungsspezifischen Da
ten benutzt werden. Bekannte ROM-Bauelemente schließen die
Grundform des Nur-Lese-Speichers (ROM), programmierbare
Nur-Lese- Speicher (PROM) und löschbare programmierbare Nur-Lese-Speicher
(EPROM) ein.
Obwohl ROM-basierte Computersysteme bisher sehr erfolgreich
waren, gibt es eine Anzahl von Problemen bei der Benutzung die
ser Bauelemente in einem Computersystem. Nur-Lese-Speicher müs
sen vor ihrem Einbau in das System während der Herstellung und
Montage des Computersystems mit einem BIOS und/oder Daten pro
grammiert werden. Häufig ist der BIOS-ROM auf einer Systempla
tine innerhalb des Computergehäuses installiert. Um die Firm
ware eines ROM-basierten Computersystems zu ersetzen, zu modi
fizieren oder zu aktualisieren, müssen das Computergehäuse ent
fernt und die ROM-Bauelemente auf einer Systemplatine innerhalb
des Computersystems herausgelöst und ersetzt oder umprogram
miert werden. Dieses das Bauelement angreifende Verfahren des
Ersetzens und Umprogrammierens des ROMs ist aus mehreren Grün
den von Nachteil. Erstens muß das Ersetzen des ROM im allgemei
nen manuell durch qualifiziertes Kundendienst- oder Computerre
paraturpersonal ausgeführt werden; folglich neigt der Vorgang
dazu, aufwendig und zeitraubend zu sein. Zweitens können selbst
bei qualifiziertem technischen Personal Probleme während des
Ersetzens des ROMs auftreten. Wenn Lötverbindungen notwendig
sind, können existierende Verbindungen während des Verfahrens
zerstört oder erweicht werden. Auch können elektrostatische
Entladungen unbeabsichtigte Zerstörungen bei anderen Komponen
ten auf der Leiterkarte während des Ersetzens des ROMs hervor
rufen. Drittens können ROM-basierte Computersysteme nicht ein
fach auf spezielle Anwendungen zugeschnitten werden. Ein sol
ches den Kundenwünschen entsprechendes Zuschneiden schließt Mo
difikationen für ein Arbeiten in nicht englischsprachigen Län
dern ein. Um ein Computersystem durch Speicherung länderspezi
fischer Daten in einem nicht-flüchtigen Speicher auf Kundenwün
sche zurechtzuschneiden, muß ein Benutzer ein Nur-Lese-Speicher
auf einer Leiterplatte im Computersystem programmieren und in
stallieren. Aufgrund der bisherigen unkomfortablen ROM-Instal
lationsprozedur ist der Benutzer nicht oder kaum in der Lage,
sein Computersystem auf seine Ansprüche zurechtzuschneiden.
Folglich besteht Bedarf an einer verbesserten Einrichtung
zur Speicherung und Aktualisierung nicht-flüchtiger Befehlsco
des und/oder Daten in einem Computersystem.
Die vorliegende Erfindung ist ein Computersystem, bei dem
ein Teil der in einem nicht-flüchtigen Speicher gespeicherten
Befehlscodes/Daten dynamisch geändert oder aktualisiert werden
kann, ohne daß irgendeine Verkleidung oder Teile des Computer
systems entfernt werden. Das Computersystem des bevorzugten
Ausführungsbeispiels weist einen Bus zum Informationsaustausch,
einen mit dem Bus gekoppelten Prozessor zur Informationsverar
beitung, einen mit dem Bus gekoppelten RAM zur Speicherung von
Informationen und Befehlen für den Prozessor, ein mit dem Bus
zum Austausch von Informationen und Befehlsaufrufen für den
Prozessor gekoppeltes Eingabegerät, wie beispielsweise ein al
phanumerisches Eingabegerät oder ein Cursorsteuergerät, ein mit
dem Bus gekoppeltes Anzeigegerät zur Anzeige von Information zu
einem Computerbenutzer und ein mit dem Bus gekoppeltes Daten
speichergerät, wie beispielsweise eine Magnetplatte oder ein
Diskettenlaufwerk, zum Speichern von Informationen und Befeh
len. Zusätzlich weist das Computersystem des bevorzugten Aus
führungsbeispiels eine mit dem Bus gekoppelte Flash-Speicher
baugruppe zur Speicherung nicht-flüchtiger Befehlscodes und Da
ten auf. Zur Speicherung nicht-flüchtiger Befehlscodes und Da
ten können anstelle des Flash-Speichers auch andere Bauelemente
benutzt werden. Bei Benutzung der Erfindung können die Inhalte
des Flash-Speichers ohne eine Notwendigkeit zum Entfernen
und/oder Ersetzen irgendeiner Hardwarekomponente des Computer
systems ersetzt, geändert, aktualisiert oder umprogrammiert
werden.
Der Flash-Speicher des bevorzugten Ausführungsbeispiels
enthält vier getrennt lösch- und programmierbare nicht symme
trische Speicherblöcke. Einer dieser vier Blöcke kann nach der
Installation elektronisch gesperrt werden, um ein Löschen oder
eine Änderung seines Inhalts zu verhindern. Diese Konfiguration
gestattet der Verarbeitungslogik des Computersystems die Aktua
lisierung oder Änderung irgendeines ausgewählten Speicherblocks
ohne eine Beeinflussung der Inhalte der anderen Blöcke. Ein
Speicherblock enthält ein normales BIOS. Das BIOS enthält Be
fehle der Verarbeitungslogik, die durch den Prozessor ausge
führt werden. Ein zusätzlicher BIOS-Bereich kann benutzt wer
den, um den Speicherbereich des System-BIOS zu erweitern. Ein
elektronisch geschützter (d. h. gesperrter) Bereich des Flash-Spei
chers wird zur Speicherung eines Wiederherstellungs-BIOS
benutzt, welches für Wiederherstellungs-Operationen benutzt
wird. Jeder dieser getrennt programmierbaren Bereiche des Flash-Spei
chers kann mit Hilfe des dynamischen Aktualisiermechanis
mus der vorliegenden Erfindung geändert oder aktualisiert wer
den.
Um zu vermeiden, daß eine abgebrochene BIOS-Aktualisierung
das Computersystem funktionsunfähig macht, arbeitet das Aktua
lisierungsverfahren nach der Erfindung in zwei getrennten Be
nutzerumgebungen: einem normalen Aktualisierungsmodus und einem
Wiederherstellungs-Aktualisierungsmodus. Im normalen Aktuali
sierungsmodus sind die Tastatur und die Videoausgabe des Com
putersystems zum Empfang von Befehlsaufrufen und zur Anzeige
von Ergebnissen verfügbar. Der normale Aktualisierungsmodus
schafft außerdem die Funktionalität zum Sichern, Überprüfen
oder Aktualisieren der neben dem BIOS-Bereich zusätzlichen Be
reiche des Flash-Speichers. Im Wiederherstellungs-Aktualisie
rungsmodus kann nur der Bereich des System-BIOS aktualisiert
werden. Der Wiederherstellungs-Aktualisierungsmodus wird be
nutzt, wenn ein Benutzer das System nicht laden (booten) kann,
weil das normale System-BIOS entweder infolge eines Stromver
sorgungsfehlers während einer normalen BIOS-Aktualisierung oder
aus anderen Gründen verfälscht wurde.
Ein dynamisches BIOS-Aktualisierungsprogramm enthält den
größten Teil der Verarbeitungslogik der Erfindung. Der verblei
bende Teil der Verarbeitungslogik der Erfindung ist in der
BIOS-Abbildung selbst enthalten. Die Verarbeitungslogik zur dy
namischen Aktualisierung schließt die Logik zur Handhabung ei
nes normalen Aktualisierungsmodus und des Wiederherstellungs-Aktu
alisierungsmodus ein.
Die Erfindung schließt außerdem Hardwaremittel zur Auswahl
einer dieser zwei verfügbaren Aktualisierungsmoden ein. Im be
vorzugten Ausführungsbeispiel sind diese Mittel zur Auswahl ei
nes Aktualisierungsmodus als ein Jumper auf einer Leiterplatte
im Computersystem implementiert.
Ist der Wiederherstellungsmodus mit Hilfe des Jumpers ge
setzt, so kann der Prozessor des Computersystems durch Ein
schalten oder Rücksetzen initialisiert werden. Beim Einschalten
oder Rücksetzen springt der Prozessor an eine Stelle innerhalb
des geschützten Wiederherstellungs-BIOS-Blocks. Auf diese Weise
kann der Flash-Speicher in einem Wiederherstellungs-Modus durch
Aktivieren der sich im Wiederherstellungs-BIOS-Block aufhalten
den Verarbeitungslogik des Wiederherstellungsmodus umkonfigu
riert werden. Folglich kann mit Hilfe der Modusauswahlmittel
entweder ein normales System-BIOS oder ein Wiederherstellungs-BIOS
aktiviert werden.
Bei Ausführung des normalen BIOS zeigt das dynamische Ak
tualisierungsprogramm ein Menü von Optionen zur Auswahl durch
den Benutzer an. Diese Optionen schließen ein: die Überprüfung
eines Flash-Speicherbereichs, das Sichern eines ausgewählten
Flash-Speicherbereichs, das Aktualisieren eines Flashbereichs
und das Verlassen des Programms. Bei Benutzung dieser Kommando
optionen können die aktualisierbaren Bereiche des Flash-Spei
chers den normalen System-BIOS-Bereich, einen für den Benutzer
reservierten Bereich, einen Bereich für ein BIOS eines lokalen
Netzwerks (LAN), einen SCSI-BIOS-Bereich, einen Videodatenbe
reich, andere Hardware- oder Software-spezifische BIOS- oder
Daten-Bereiche oder einen Bereich des Flash-Speichers mit ir
gendeiner anderen anwendungsspezifischen Verarbeitungslogik
einschließen.
Folglich liefert die Erfindung Mittel zur Speicherung
nicht-flüchtiger Befehlscodes und Daten in einem Computersy
stem, wobei nicht-flüchtige Befehlscodes und Daten ohne Entfer
nen irgendeines Teils vom Computersystem aktualisiert werden
können. Die Erfindung liefert ferner ein Mittel zum Aktualisie
ren eines ausgewählten Teils eines nicht-flüchtigen Speichers,
während die anderen Teile unmodifiziert gelassen werden. Außer
dem liefert die Erfindung ein Mittel zur Wiederherstellung im
Falle eines Fehlers während der normalen Aktualisierungsproze
dur des nicht-flüchtigen Speichers. Die Erfindung liefert auch
Mittel zur Sicherung der aktuellen Inhalte des nicht-flüchtigen
Speichers und zur Überprüfung des Inhalts der sich aktuell im
nicht-flüchtigen Speicher aufhaltenden Befehlscodes und/oder
Daten. Außerdem liefert die Erfindung Mittel zum Einbetten der
Aktualisierungssteuerungssoftware in das System-BIOS, so daß
die Aktualisierungssteuerungssoftware später ausgeblendet und
zur Steuerung der Aktualisierungsprozedur des nicht-flüchtigen
Speichers benutzt werden kann.
Im folgenden wird die Erfindung anhand eines in der Zeich
nung dargestellten Ausführungsbeispiels näher erläutert. In der
Zeichnung zeigen:
Fig. 1 eine Darstellung eines erfindungsgemäßen Com
putersystems;
Fig. 2 eine Darstellung der Speicherbelegung des BIOS
in dem in der Erfindung benutzten Flash-Spei
cher;
Fig. 3a eine Speicherbelegung des BIOS während der nor
malen Arbeitsweise;
Fig. 3b eine Darstellung der Speicherbelegung des BIOS
während des Wiederherstellungs-Modus;
Fig. 4 ein Blockdiagramm der Architektur der Verarbei
tungslogik des dynamischen BIOS-Aktualisie
rungsmechanismus; und
Fig. 5 und 6 Flußdiagramme der erfindungsgemäßen Ver
arbeitungslogik der dynamischen BIOS-Aktuali
sierung.
Die vorliegende Erfindung stellt ein Computersystem dar, bei
dem ein Teil des nicht-flüchtigen Speichers ohne ein Entfernen
von Hardwarekomponenten des Systems geändert oder aktualisiert
werden kann. In der folgenden Beschreibung werden zahlreiche
spezielle Details aufgeführt, um ein besseres Verständnis der
Erfindung zu erreichen. Für den Fachmann ist es jedoch klar,
daß diese speziellen Details zur Realisierung der Erfindung
nicht notwendig sind. An anderen Stellen werden bekannte Struk
turen, Schaltungen und Schnittstellen nicht im Detail gezeigt,
um das Verständnis der Erfindung nicht unnötig zu erschweren.
In Fig. 1 ist ein Blockdiagramm des erfindungsgemäßen Com
putersystems dargestellt. Das bevorzugte Ausführungsbeispiel
der Erfindung wurde mit Hilfe eines durch den Anmelder der Er
findung herstellten Mikroprozessors 80386 realisiert. Für den
Fachmann ist es jedoch klar, daß auch andere Prozessoren und
Computersystemarchitekturen benutzt werden können. Im allgemei
nen weisen solche in Fig. 1 dargestellten Computersysteme einen
Bus 100 zum Austauschen von Informationen, einen mit dem Bus
gekoppelten Prozessor 101 zum Verarbeiten von Informationen,
einen mit dem Bus 100 gekoppelten RAM 102 zum Speichern von In
formationen und Befehlen für den Prozessor 101, ein mit dem Bus
100 gekoppeltes Eingabegerät 104, wie beispielsweise ein alpha
numerisches Eingabegerät oder ein Cursorsteuergerät, zum Aus
tauschen von Informationen und Befehlsaufrufen mit dem Prozes
sor 101, ein mit dem Bus 100 gekoppeltes Anzeigegerät 105 zum
Anzeigen von Informationen für einen Computerbenutzer und ein
mit dem Bus 100 gekoppeltes Datenspeichergerät, wie beispiels
weise eine Magnetplatte und ein Diskettenlaufwerk, zur Speiche
rung von Informationen und Befehlen.
Zusätzlich weist das Computersystem des bevorzugten Ausfüh
rungsbeispiels eine mit dem Bus 100 gekoppelte Flash-Speicherbaugruppe 103
zum Speichern nicht-flüchtiger Befehlscodes und
Daten auf. Die Flash-Speicherbaugruppe 103 stellt eine nicht
flüchtige Speicherart zur Verfügung, die nicht gelöscht wird,
wenn die Spannungsversorgung des Computersystems abgeschaltet
wird; deren Speicherinhalte jedoch gelöscht und umprogrammiert
werden können. Flash-Speicher sind hinreichend bekannt. Die Ba
sis-Eingabe-Ausgabe-Verarbeitungslogik (BIOS) des Computersy
stems ist im Flash-Speicher 103 gespeichert. Zusätzlich können
andere Systemsoftware- und anwendungsspezifische Parameter im
Flash-Speicher 103 gespeichert sein. Beispielsweise kann ein
Teil des Flash-Speichers zur Speicherung von Verarbeitungslogik
für ein lokales Netzwerk (LAN) oder für ein SCSI-Interface be
nutzt werden. Die folgenden Abschnitte beschreiben, wie Teile
des Flash-Speichers 103 ersetzt, geändert oder umprogrammiert
(d. h. aktualisiert) werden ohne die Notwendigkeit zum Entfernen
und/oder Ersetzen irgendeiner Hardwarekomponente des Computer
systems.
Gegenwärtig sind verschiedene Typen nicht-flüchtiger Spei
cher bekannt, die ohne Entfernen des Bauelements von einer Lei
terplatte, auf welcher das Bauelement installiert ist, umpro
grammiert werden können. Eine Klasse umprogrammierbarer nicht-
flüchtiger Speicher stellen die Flash-Speicher dar. Bekannt
sind verschiedene Arten von Flash-Speichern. Mit Hilfe eines
bestimmten Satzes elektrischer Signale können die Inhalte von
Flash-Speichern gelöscht und mit neuen Daten umprogrammiert
werden. Viele bekannte Flash-Speicher gestatten nur ein kom
plettes Löschen und Umprogrammieren aller Speicherplätze des
Bauelements. Andere Flash-Speicher sind jedoch eingeteilt in
getrennt löschbare und programmierbare Speicherblöcke in einem
einzelnen Flash-Speicher. Im bevorzugten Ausführungsbeispiel
der Erfindung wird ein solcher partitionierter Flash-Speicher
benutzt. Es wird ein Flash-Speicher mit der Bezeichnung
28F001BT benutzt, der durch den Anmelder der vorliegenden Er
findung hergestellt wird. Für den Fachmann ist es klar, daß für
die Erfindung andere Arten von umprogrammierbaren nicht-flüch
tigen Speichern benutzt werden können. Eine Alternative zum
Flash-Bauelement ist ein elektrisch löschbarer programmierbarer
Nur-Lese-Speicher (EEPROM).
Der im bevorzugten Ausführungsbeispiel benutzte Flash-Spei
cher enthält vier getrennt lösch-/programmierbare nicht symme
trische Speicherblöcke. Einer dieser vier Blöcke kann elektro
nisch gesperrt werden, um ein Löschen oder Verändern des einmal
installierten Inhalts zu verhindern. Diese Konfiguration ge
stattet es der Verarbeitungslogik des Computersystems, irgend
einen ausgewählten Speicherblock zu aktualisieren oder zu ver
ändern, ohne die Inhalte der anderen Blöcke zu beeinflussen. In
Fig. 2 sind verschiedene getrennt lösch-/programmierbare nicht
symmetrische Blöcke des Flash-Speichers des bevorzugten Ausfüh
rungsbeispiels dargestellt. Fig. 2 zeigt eine normale BIOS-
Speicherbelegung 200 der Inhalte des Flash-Speichers. Das BIOS
enthält Befehle der Verarbeitungslogik, die durch den Prozessor
ausgeführt werden. Im bevorzugten Ausführungsbeispiel der Er
findung ist der Prozessor des Computersystems ein Mikroprozes
sor 80386. Wenn die Stromversorgung des Computersystems des be
vorzugten Ausführungsbeispiels eingeschaltet wird, springt der
Prozessor zu einer Anfangsadresse FFFF0H und beginnt mit der
Ausführung. Um die Initialisierung des Computersystems zu be
handeln, muß folglich das aktive System-BIOS die Adresse FFFF0H
einschließen. Wie durch die in Fig. 2 dargestellte normale
BIOS-Speicherbelegung 200 gezeigt wird, springt der Prozessor
nach dem Einschalten oder Rücksetzen des Prozessors zur einen
Speicherplatz (einer Adresse) innerhalb eines normalen System-BIOS
201. Die Verarbeitungslogik in dem Bereich 201 kann be
nutzt werden, um die normale Initialisierung und Steuerfunktio
nen des Computersystems zu behandeln. Der zusätzliche BIOS-Be
reich 205 kann benutzt werden, um den Speicherbereich des Sy
stem-BIOS zu erweitern.
Der elektronisch geschützte (d. h. gesperrte) Flash-Speicher
bereich 202 ist ein Bereich zum Speichern eines für
Wiederherstellungs-Operationen benutzten Wiederherstellungs-BIOS.
Die Wiederherstellungs-Operation wird in weiter unten
folgenden Abschnitten beschrieben. Der getrennt programmierbare
Bereich 203 ist ein Speicherbereich, der für die Benutzung
durch einen bestimmten Benutzer oder eine bestimmte Anwendung
reserviert ist. Dieser Bereich kann benutzt werden, um die Ar
beitsweise des Computersystems auf Kundenwünsche zuzuschneiden
oder um die Funktionalität des System-BIOS zu erhöhen. Wie wei
ter unten beschrieben kann der getrennt programmierbare Bereich
203 LAN-Verarbeitungslogik, SCSI-Verarbeitungslogik, Videodaten
oder Steuerlogik, andere Hardware- oder Software-spezifische
Daten oder irgendeine andere anwendungsspezifische Verarbei
tungslogik in einem Bereich des Flash-Speichers enthalten. Wenn
der getrennt programmierbare Bereich 203 LAN- oder SCSI-Logik
enthält, wird das System-BIOS zur Abarbeitung dieser zusätzli
chen Flash-Bereiche aktiviert, um das Computersystem von einem
Netzwerk oder einem anderen externen Gerät aus zu laden. Der
getrennt programmierbare Bereich 204 ist ein für eine Benutzung
durch das System reservierter Bereich. Dieser Bereich kann ein
zusätzlicher Überlaufbereich eines normalen System-BIOS sein.
Jeder dieser separat programmierbaren Bereiche des Flash-Spei
chers kann mit Hilfe des unten beschriebenen dynamischen Aktua
lisierungsmechanismus der Erfindung verändert oder aktualisiert
werden.
Ein Nachteil bei der Benutzung eines Flash-Speichers zum
Speichern eines BIOS ist die Möglichkeit eines Stromversor
gungsausfalls oder eines anderen Fehlers während des Aktuali
sierungsprozesses. Das sich ergebende unvollständige oder zer
störte BIOS würde das System funktionsunfähig machen. Um die
Arbeitsfähigkeit des Computersystems nach einer abgebrochenen
BIOS-Aktualisierung wiederherzustellen, müßten Teile des Com
putersystems entfernt und umprogrammiert werden. Das Entfernen
von Flash-Speicherbaugruppen kann zusätzlich dadurch kompli
ziert werden, daß oberflächenmontierte Flash-Bauelemente be
nutzt werden.
Um zu verhindern, daß eine abgebrochene BIOS-Aktualisierung
das Computersystem funktionsunfähig macht, arbeitet das erfin
dungsgemäße Aktualisierungsverfahren in zwei getrennten Benut
zerumgebungen: einem normalen Aktualisierungsmodus und einem
Wiederherstellungs-Aktualisierungsmodus. Der Hauptunterschied
zwischen diesen beiden Umgebungen ist die Benutzerschnitt
stelle. Im normalen Aktualisierungsmodus sind die Tastatur- und
Videodienste des Computersystems für den Empfang von Befehls
aufrufen und die Anzeige von Ergebnissen verfügbar. Bei Benut
zen der robusten Benutzerschnittstelle der normalen Aktualisie
rung kann der Benutzer eine Sicherungs-, Überprüfungs- oder Ak
tualisierungs-Operation für den Flash-Speicher im einzelnen an
geben. Der Benutzer kann auch die Dateien im einzelnen angeben,
die von verschiedenen Quellen, wie beispielsweise einem Floppy-
Disk-Laufwerk, einem Festplattenlaufwerk, einem Netzwerk oder
einem Modem wiedergewonnen oder gesichert werden sollen. Die in
einer wiedergewonnenen oder gesicherten Datei enthaltenen Daten
können eine BIOS-Abbildung, Datenabbildung oder eine andere
Speicherbildrepräsentation des Inhalts eines nicht-flüchtigen
oder Flash-Speicherbereichs ein. Der normale Aktualisierungsmo
dus schafft außerdem die Funktionalität zum Sichern, Überprüfen
oder Aktualisieren anderer Bereiche des Flash-Speichers zusätz
lich zu den BIOS-Bereichen.
Im Wiederherstellungs-Aktualisierungsmodus können nur die
Bereiche des System-BIOS aktualisiert werden. Der Wiederher
stellungs-Aktualisierungsmodus wird benutzt, wenn ein Benutzer
das System nicht laden (booten) kann, weil das normale System-BIOS
entweder infolge eines Stromausfalls während einer norma
len BIOS-Aktualisierung oder aus irgendeinem anderen Grund zer
stört wurde. In dieser Situation wird ein sich in dem geschütz
ten Wiederherstellungs-BIOS-Block 202 (Fig. 2) aufhaltender ge
trennter Satz von Verarbeitungslogik allein für den Zweck der
Aktualisierung des zerstörten normalen System-BIOS-Bereichs 201
ausgeführt. Um die durch die Verarbeitungslogik des Wiederher
stellungs-BIOS belegte Speicherfläche zu reduzieren, wird nur
ein minimaler Grad der Funktionalität zur Verfügung gestellt
und keine Benutzerschnittstellen-Fähigkeit unterstützt. Die Ta
statur- und Video-Dienste sind nicht verfügbar und es müssen
vorgegebene Aktionen durch das Wiederherstellungs-BIOS ohne Be
nutzerinteraktionen ausgeführt werden. Von einem Lautsprecher
des Computersystem ausgegebene hörbare Piepcodes zeigen den
Status der Programmierung des BIOS-Bereichs an.
Bei der normalen Arbeitsweise des Computersystems des be
vorzugten Ausführungsbeispiels führt der Prozessor 101 anfäng
lich Befehle außerhalb des normalen System-BIOS-Bereichs 201
des Flash-Speichers 103 aus. Nachfolgend kann ein vollständig
ausgestattetes Betriebssystem vom Datenspeichergerät 106 in den
RAM 102 eingelesen und ausgehend vom RAM 102 ausgeführt werden.
Der Befehlscode des System-BIOS 201 kann außerdem für die Ini
tialisierung und den normalen Zugriff zum Eingabegerät 104, zum
Anzeigegerät 105 und zum Datenspeichergerät 106 benutzt werden.
Sobald das vollständig ausgestattete Betriebssystem zum RAM 102
übertragen wurde und in ihm abläuft, kann auf andere ausführ
bare Anwendungsdateien und Datendateien im Datenspeichergerät
106 zugegriffen werden. Eine dieser ausführbaren Dateien ist
das dynamische Aktualisierungsprogramm für den nicht-flüchtigen
Speicher, das den größten Teil der Verarbeitungslogik für die
dynamische Aktualisierung gemäß der Erfindung enthält. Die ver
bleibenden Teile der erfindungsgemäßen Verarbeitungslogik hal
ten sich in der Speicherabbildung selbst auf. Ebenfalls im Da
tenspeichergerät 106 halten sich Speicherabbildungen enthal
tende Dateien und eine Datei, die eine für Aktualisierungen im
Wiederherstellungsmodus benutzte vorgegebene Wiederherstellungs-
BIOS-Abbildung enthält, auf. Eine Speicherabbildung, von wel
cher eine BIOS-Abbildung ein spezieller Typ ist, sind die
binären Inhalte des Zielbereichs der Aktualisierung in einen
nicht-flüchtigen oder Flash-Speicher. Die Verarbeitungslogik
zur dynamischen Aktualisierung kann durch die für einen Fach
mann bekannten Mittel aktiviert und ausgeführt werden. Die so
aktivierte Verarbeitungslogik für eine dynamische Aktualisie
rung schließt die Logik zur Behandlung eines normalen Aktuali
sierungsmodus und des Wiederherstellungs-Aktualisierungsmodus
ein. Die Architektur und die Arbeitsweise der Verarbeitungslo
gik zur dynamischen Aktualisierung wird im folgenden beschrie
ben.
Wie bereits gesagt arbeitet das bevorzugte Ausführungsbei
spiel in zwei Grundmoden: einem normalen Aktualisierungsmodus
und einem Wiederherstellungs-Aktualisierungsmodus. Die Erfin
dung schließt auch die Hardwaremittel zur Auswahl eines dieser
beiden verfügbaren Aktualisierungsmoden ein. Im bevorzugten
Ausführungsbeispiel sind diese Mittel zur Auswahl eines Aktua
lisierungsmodus als ein Jumper auf einer Leiterkarte im Com
putersystem realisiert. Der Jumper wird zur Änderung der Adreß
leitung 16 in einer Schnittstelle zum Flash-Speicher benutzt.
Durch Setzen des Jumpers in eine erste Einstellung können die
normale in Fig. 2 dargestellte BIOS-Speicherbelegung und das
entsprechende normale BIOS-Aktualisierungshilfsprogramm benutzt
werden. Wenn der Jumper in eine zweite Einstellung gesetzt
wurde, ist die Wiederherstellungs-BIOS-Speicherbelegung konfi
guriert und der Wiederherstellungs-Aktualisierungsmodus freige
geben. Für den Fachmann ist es offensichtlich, daß auch andere
Mittel zur Auswahl eines dieser beiden Moden in einem Computer
system benutzt werden können, wie beispielsweise ein Schalter
oder eine Drucktaste.
In den Fig. 3a und 3b ist die Wirkung des Jumpers beim
Setzen des Wiederherstellungsmodus auf die Speicherkonfigura
tion des Flash-Speichers dargestellt. In Fig. 3a veranschau
licht eine normale BIOS-Speicherbelegung 200 die Konfiguration
des Flash-Speichers, wenn der Jumper in der Stellung des norma
len Modus gesetzt ist. Diese Konfiguration entspricht der oben
beschriebenen und in Fig. 2 dargestellten. Beim Einschalten
oder nach einem System-Rücksetzen springt der Prozessor an eine
Stelle im normalen System-BIOS 201, die durch den Pfeil 311 in
Fig. 3a angezeigt ist. Die Verarbeitungslogik im normalen Sy
stem-BIOS 201 übernimmt dann die Steuerung und initialisiert
das Computersystem für die normale Arbeitsweise. Wenn jedoch
das normale System-BIOS 201 beispielsweise infolge einer abge
brochenen BIOS-Aktualisierung zerstört wurde, wird die Ausfüh
rung innerhalb des normalen BIOS 201 unvorhersehbar. Folglich
wäre ohne die Möglichkeit eines Wiederherstellungsmodus das
Computersystem mit einem zerstörten normalen System-BIOS 201
funktionsunfähig.
Wenn die Initialisierung des normalen System-BIOS 201 auf
grund eines zerstörten BIOS 201 erfolglos ist, kann der Wieder
herstellungsmodus durch Umschalten der Auswahlmittel (d. h. des
Jumpers) ausgewählt werden. Im Wiederherstellungsmodus ist die
Adreßleitung 16, die zur Adressierung von Speicherorten im
Flash-Speicher benutzt wird, in einen komplementären Zustand
geändert. Durch diese Änderung sind die untere und die obere
Hälfte des Flash-Speichers logisch ausgetauscht. Folglich wird
die Adresse FFFFFH auf den Speicherplatz EFFFFH und die Adresse
F0000H auf den Speicher E0000H abgebildet. Die umbelegte Spei
cherkonfiguration im Wiederherstellungsmodus ist in der in Fig.
3b dargestellten Wiederherstellungs-BIOS-Speicherbelegung dar
gestellt. Im Wiederherstellungsmodus ist das normale System-BIOS
201 auf den Speicherbereich 301 der Wiederherstellungs-BIOS-Spei
cherbelegung umgelegt. In ähnlicher Weise ist der Wie
derherstellungs-BIOS-Block 202 auf den Ort 302 der Wiederher
stellungs-BIOS-Speicherbelegung 300 umgelegt. Die Speicherbe
reiche 203, 204 und 205 sind ebenfalls auf die Plätze 303, 304
bzw. 305 umgelegt.
Sobald der Wiederherstellungsmodus mit Hilfe des Jumpers
gesetzt ist und eine Wiederherstellungs-BIOS-Speicherbelegung
wie in Fig. 3b dargestellt erreicht wurde, kann der Prozessor
des Computersystems durch Einschalten oder Rücksetzen initiali
siert werden. Beim Einschalten oder Rücksetzen springt der Pro
zessor zu einem Ort in dem geschützten Wiederherstellungs-BIOS-
Block 302, der durch den Pfeil 312 gezeigt ist. Auf diese Weise
kann die Speicherbelegung des Flash-Bauelements in einem Wie
derherstellungsmodus rekonfiguriert werden, wobei der Wieder
herstellungsmodus die sich im Wiederherstellungs-BIOS-Block 302
aufhaltende Verarbeitungslogik aktiviert. Folglich kann mit
Hilfe der Modusauswahlmittel entweder ein normales System-BIOS
201 oder ein Wiederherstellungs-BIOS 302 aktiviert werden. So
bald entweder das normale BIOS oder das Wiederherstellungs-BIOS
aktiviert ist, kann die erfindungsgemäße dynamische Verarbei
tungslogik zum Aktualisieren des BIOS aus dem Datenspeicherge
rät 106 wiedergewonnen und in den RAM 102 zur Ausführung durch
den Prozessor 101 geladen werden. Für die dynamische Verarbei
tungslogik zur Aktualisierung wird außerdem ein den Modus an
zeigendes Datenfeld gesetzt. Diese Modusanzeige gibt im einzel
nen an, ob das Computersystem in einem normalen oder einem Wie
derherstellungsmodus arbeitet.
Sobald die erfindungsgemäße dynamische Aktualisierungs-Ver
arbeitungslogik aktiviert ist, arbeitet sie in einer unten nä
her beschriebenen und in den Flußdiagrammen der Fig. 5 und 6
dargestellten Art und Weise. Die dynamische Verarbeitungslogik
zur Aktualisierung des BIOS stellt in Abhängigkeit davon, ob
entweder ein normaler Modus oder ein Wiederherstellungs-Modus
ausgewählt wurde, zwei Sätze von Merkmalen zur Verfügung. Im
normalen Modus wird eine robuste Benutzerschnittstelle zur Ver
fügung gestellt. Diese Schnittstelle schafft grafische Reprä
sentationen für Auswahlmenüs, Dateiselektionen, Hilfsinforma
tionen und Statusnachrichten zum Aktualisieren irgendeines
Flash-Speicherbereichs einschließlich des System-BIOS-Speicher
bereichs. Dieses Paket der grafischen Benutzerschnittstelle
stellt Subroutinen zum Definieren und Anzeigen von farbigen
Bildschirmanzeigen der Benutzerschnittstelle zur Verfügung.
Dieses Paket unterstützt außerdem eine On-Line-Hilfe zur Unter
stützung des Benutzers.
Im Wiederherstellungsmodus ist die Verarbeitungslogik zur
Wiederherstellung des BIOS nur dazu bestimmt, die kritischen
Abschnitte des Systems aufzubauen ohne den Vorteil der Konfigu
rationsinformation. Das Wiederherstellungs-BIOS nimmt an, daß
das normale System-BIOS zerstört wurde. Folglich ist die ein
zige Funktion des Wiederherstellungs-BIOS, das System an einem
Punkt freizugeben, wo das normale System-BIOS in das Flash-
Speicher geladen werden kann. Das Wiederherstellungs-BIOS wird
nach dem Einschalten automatisch ohne die Möglichkeit eines Be
nutzereingriffs ausgeführt. Von einem Lautsprecher des Com
putersystems aus gegebene hörbare Piepcodes zeigen den Status
der Programmierung des BIOS-Bereichs an. Das Wiederherstel
lungs-BIOS ist ein Subset des normalen BIOS.
Wenn das dynamische Aktualisierungsprogramm außerhalb des
normalen BIOS ausgeführt wird, zeigt es ein Menü von Optionen
zur Auswahl durch den Benutzer an. Diese Optionen schließen
ein: die Überprüfung eines Flash-Speicherbereichs, die Siche
rung eines ausgewählten Flash-Speicherbereichs, die Aktualisie
rung eines Flash-Speicherbereichs und das Beenden. Dann kor
respondiert das dynamische Aktualisierungsprogramm mit dem nor
malen System-BIOS, um die Bereiche des Flash-Speichers zu be
stimmen, die für ein Lesen oder Schreiben verfügbar sind. Dann
wird ein Submenü angezeigt, das die zum Lesen oder Schreiben
verfügbaren Speicherbereiche anzeigt. Der Benutzer kann dann
den Bereich von diesem Menü für eine Überprüfungs-, Sicherungs-
oder Aktualisierungs-Operationen auswählen. Zusätzliche Menüs
werden angezeigt, um den Benutzer zu veranlassen, Dateinamen
für Sicherungs-/Überprüfungs-/Aktualisierungs-Operationen und
für eine Überprüfung von Dateiinformationen vor einer Aktuali
sierung einzugeben. Außerdem werden zusätzliche Menüs benutzt,
um dem Benutzer zusätzliche Informationen über eine gesicherte
Dateiabbildung zur Verfügung zu stellen. Die Operation wird
dann ausgeführt und der Benutzer wird über den Status der Fer
tigstellung der Operation informiert. Ein normaler Aktualisie
rungsmodus kann zur Aktualisierung entweder des normalen Sy
stem-BIOS-Bereichs 201 und 205, des für den Benutzer reservier
ten Bereichs 203 oder des für das System reservierten Bereichs
204 benutzt werden. Diese Bereiche können entweder getrennt
oder kombiniert aktualisiert werden. Der getrennt programmier
bare Bereich 203 oder andere getrennt programmierbare Bereiche
können LAN-Verarbeitungslogik, SCSI-Verarbeitungslogik, andere
Netzwerklogik oder Daten, Videodaten oder Steuerlogik, andere
hardware- oder softwarespezifische Logik oder Daten oder ir
gendeine andere anwendungsspezifische Verarbeitungslogik in ei
nem Bereich des Flash-Speichers enthalten. Die Bereiche 201 und
205 sind in demselben physikalischen Block enthalten und werden
folglich gleichzeitig gelöscht.
Wie bereits oben erwähnt kann das dynamische Aktualisie
rungsprogramm zur Aktualisierung irgendeines Bereichs des
Flash-Speichers benutzt werden. Die Aktualisierung des normalen
System-BIOS-Bereichs wurde oben beschrieben. Erweiterungen der
Erfindung schließen die Aktualisierung des Bereichs 203 oder
anderer getrennt programmierbarer Bereiche mit LAN-Verarbei
tungslogik, SCSI-Verarbeitungslogik, Videodaten oder Steuerlo
gik, anderer hardware- oder softwarespezifischer Logik oder Da
ten oder irgendeiner anderen anwendungsspezifischen Verarbei
tungslogik in einem Bereich des Flash-Speichers ein. Wenn ein
LAN-Verarbeitungslogik, SCSI-Verarbeitungslogik oder Netz
werklogik oder -daten enthaltender Flash-Speicherbereich aktua
lisiert wird, kann das Computersystem für eine bestimmte Netz
werkverbindung konfiguriert werden. In bekannten vernetzten
Computersystemen ist ein Netzwerk-Lade-PROM für jedes spezielle
Netzwerk notwendig. Es ist notwendig, die PROMs auszutauschen
oder eine andere Netzwerkleiterkarte hinzuzufügen, um ein Com
putersystem für ein bestimmtes Netzwerk umzukonfigurieren.
Durch Benutzung der Erfindung können andere Flash-Speicher
bereiche neben dem System-BIOS-Bereich, wie beispielsweise der
Bereich 203, mit LAN-Verarbeitungslogik, SCSI-Verarbeitungslo
gik, anderer Netzwerklogik oder -daten, Videodaten oder Steuer
logik, anderer hardware- oder softwarespezifischer Logik oder
Daten oder irgendeiner anderen anwendungsspezifischen Verarbei
tungslogik in einem Bereich des Flash-Speichers programmiert
werden. Die Programmierung dieser nicht zur System-BIOS-Aktua
lisierung gehörigen Bereiche wird mit Hilfe der gleichen dyna
mischen Aktualisierungsverfahren ausgeführt, die für die Aktua
lisierung des System-BIOS-Bereichs beschrieben wurden. Zusätz
lich kann das System-BIOS so konfiguriert werden, daß der nicht
zur System-BIOS-Aktualisierung gehörige Bereich beim Laden des
Systems abgetastet wird, um zu ermitteln, ob der sich dort auf
haltende Befehlscode ausgeführt werden soll, um das Computersy
stem in einer anderen Art und Weise, beispielsweise von einem
Netzwerk aus, zu laden (zu booten). Folglich kann die Realisie
rung der dynamischen Aktualisierung eines nicht zum System-BIOS
gehörigen Bereichs des Flash-Speichers einen zusätzlichen
Schritt zum Freigeben des Abtastens des nicht zur System-BIOS-
Aktualisierung gehörigen Bereiches durch das System-BIOS ein
schließen.
Dieser Freigabeschritt kann auf verschiedene Weise ausge
führt werden. Zunächst kann ein Hardwareschalter im Computersy
stem oder eine bestimmte Tastenkombination zum Aktivieren des
dem Programmieren des Bereichs folgenden Abtastens des aktuali
sierten Bereichs vorgesehen sein. Ein alternatives Ausführungs
beispiel des Freigabeschrittes sieht ein Aktualisieren des Sy
stem-BIOS-Bereichs nach einem Aktualisieren des nicht zum Sy
stem-BIOS gehörigen Bereichs vor. Beim Aktualisieren des Sy
stem-BIOS-Bereichs kann ein Datenfeld gesetzt werden, das die
Abtastung des nicht zum System-BIOS gehörigen Bereichs frei
gibt. In einem dritten Ausführungsbeispiel kann das System-BIOS
so konfiguriert sein, daß es stets den nicht zum System-BIOS
gehörigen Bereich abtastet und hier den Befehlscode ausführt,
wenn ein bestimmtes Datenmuster an einem festen Speicherplatz
in dem nicht zum System-BIOS gehörigen Bereich erkannt wird. In
jedem dieser Ausführungsbeispiele kann ein nicht zum System-BIOS
gehöriger Bereich des Flash-Speichers aktualisiert werden,
wobei die Notwendigkeit einer netzwerkspezifischen Hardware
oder eines PROM-Bauelements beseitigt wird. Mit Hilfe des ak
tualisierten, nicht zum System-BIOS gehörigen Bereichs kann ein
Computersystem von einem Netzwerk aus geladen (gebootet) werden
oder in einer Konfiguration ohne Disketten arbeiten.
In Fig. 4 ist die Architektur des dynamischen Aktualisie
rungsprogramms der Erfindung dargestellt. Im bevorzugten Aus
führungsbeispiel gibt es fünf getrennte Kompiliermodule (470,
471, 472, 473, 475), die miteinander verbunden sind, um das dy
namische Aktualisierungsprogramm 490 der Erfindung zu bilden.
Der Hauptverarbeitungsmodul 470 übernimmt die gesamte Steue
rung, Entscheidungsbildung und die Schnittstellen zu den ver
bleibenden vier Modulen. Der Speicherabbildungs-Schnittstellen
modul 471 wird benutzt, um Speicherabbildungen zu bearbeiten
(d. h. zu lesen und zu schreiben). Eine Speicherabbildung ist
der binäre Inhalt des Zielbereichs im nicht-flüchtigen Spei
cher. Speicherabbildungen werden von einem externen Speicherme
dium, wie beispielsweise einem magnetischen Plattenlaufwerk,
gelesen, welches eine Vielzahl von Speicherabbildungsdateien
479 enthält. Speicherabbildungen werden in Dateien 478 in dem
externen Speichermedium zum dauerhaften Verbleib geschrieben.
Die Speicherabbildungsdateien 479 enthalten jeweils einen Kopf
teil mit verschiedenen Informationen über die Speicherabbil
dung.
Um einen nicht-flüchtigen Speicherbereich zu aktualisieren,
muß Aktualisierungslogik verwendet werden, die sich nicht in
dem zu aktualisierenden nicht-flüchtigen Speicher aufhält. Wenn
Logik benutzt würde, die sich in dem zu aktualisierenden nicht
flüchtigen Speicher aufhält, könnte die Aktualisierungsopera
tion diese Logik ändern oder zerstören. Um das Ziel zu errei
chen, keine hardwarespezifischen Prozeduren zu implementieren,
ist es vorteilhaft, die notwendige Aktualisierungslogik in je
der der zu aktualisierenden Speicherabbildungen 479 zu spei
chern. Diese Aktualisierungslogik ist in den Speicherabbildun
gen 479 in Form geschützter Softwareprozeduren gespeichert. Ein
wichtiger Grund für die Speicherung der geschützten Prozeduren
in den Speicherabbildungen 479 selbst ist die Zuteilung der
hardwareabhängigen Befehlscodes zu den Speicherabbildungen 479,
während die hardwareunabhängigen Befehlscodes in dem aus dem
RAM heraus ausgeführten dynamischen Aktualisierungsprogramm 490
gehalten werden: Folglich kann das gleiche dynamische Aktuali
sierungsprogramm 490 für viele verschiedene Hardwarekonfigura
tionen benutzt werden, da die Aktualisierungslogik in jeder
Speicherabbildung 479 die hardwarespezifischen Angelegenheiten
handhabt. Wenn ein Benutzer eine Aktualisierungsoperation an
fordert, fordert das dynamische Aktualisierungsprogramm 490 das
normale System-BIOS 481 auf, diese Prozeduren in eine durch das
dynamische Aktualisierungsprogramm 490 spezifizierte sichere
RAM-Position zu speichern. Diese Arbeitsweise sichert, daß die
Speicherabbildung selbst diese geschützten Prozeduren definiert
und aufrechterhält und daß diese sich nicht in dem zu aktuali
sierenden Adreßbereich während der Aktualisierungen des Flash-
Speichers aufhalten. Der Modul der geschützten Aktualisierungs
prozeduren 472 ist dafür verantwortlich, diese geschützten Pro
zeduren von der Aktualisierungsspeicherabbildung 479 zu erhal
ten und sie dem Hauptverarbeitungsmodul 470 des dynamischen Ak
tualisierungsprogramm 490 zu Verfügung zu stellen.
Der Videoschnittstellenmodul 473 führt alle geforderten In
teraktionen mit dem Videoanzeigegerät 474 aus. Diese Interak
tionen schließen die Anzeige von Menüs, bestimmten Fehlernach
richten und Statusnachrichten und das Erlangen der geforderten
Informationen über die Orte der Speicherabbildung (d. h. Datei
namen) ein. Benutzertastatur-Eingabemittel 480 sind ebenfalls
zum Empfangen von Benutzereingaben und Befehlsaufrufen vorgese
hen. Der Flash-Interfacemodul 475 stellt eine Brücke zwischen
einem Satz ungeschützter BIOS-Prozeduren 476 und dem Hauptver
arbeitungsmodul 470 zu Verfügung. Die ungeschützten BIOS-Proze
duren 476, wie beispielweise "Lies den Flash-Speicher" erfor
dern nicht die Benutzung der früher definierten geschützten
Prozeduren. Auf diese ungeschützten BIOS-Prozeduren 476 wird
über ein Prozessor-Interrupt (INT 15) zugegriffen, wobei ein
Zugriff auf das Flash-Speicher 477 zur Verfügung gestellt wird.
Die Schnittstellenspezifikationen sowohl für die geschützten
als auch für die ungeschützten Prozeduren werden am Ende der
Beschreibung geliefert.
Die Verarbeitungslogik des dynamischen Aktualisierungspro
gramms des bevorzugten Ausführungsbeispiels ist betriebsfähig
im RAM 102 angeordnet und wird durch den Prozessor 101 des oben
beschriebenen Computersystems ausgeführt. Die erfindungsgemäße
Verarbeitungslogik kann in äquivalenter Weise in anderen Spei
chermitteln, auf die der Prozessor 101 zur Ausführung zugreifen
kann, angeordnet sein. Die Verarbeitungslogik des dynamischen
Aktualisierungsprogramms 490 kann eine getrennt kompilierte und
geladene Einheit sein oder als ein Teil in ein größeres Softwa
resystem eingegliedert werden. In jedem Falle können Mittel zum
Aktivieren der erfindungsgemäßen Verarbeitungslogik mit Hilfe
der oben beschriebenen Techniken ausgeführt werden. Sobald sie
aktiviert wurde, arbeitet die erfindungsgemäße Verarbeitungslo
gik in der unten beschriebenen und in den Flußdiagrammen der
Fig. 5 und 6 dargestellten Weise.
Wie in Fig. 5 dargestellt, startet das erfindungsgemäße dy
namische Aktualisierungsprogramm bei seiner Aktivierung am
Block 501. Am Entscheidungsblock 502 wird ein Test ausgeführt,
um zu bestimmen, ob der normale oder der Wiederherstellungs-Mo
dus ausgewählt wurde. Wie zuvor beschrieben setzen sowohl das
normale BIOS als auch das Wiederherstellungs-BIOS ein den Modus
anzeigendes Datenfeld, wenn eines der BIOS aktiviert wurde.
Durch Zugriff auf dieses Datenfeld kann im Entscheidungsblock
502 der aktive Modus bestimmt werden. Wurde der Wiederherstel
lungs-Modus ausgewählt, wird der Verarbeitungspfad 503 zum Ver
arbeitungsblock 505 beschritten, wo eine vorgegebene normale
System-BIOS-Abbildung aus dem Datenspeichergerät wiedergewon
nen, d. h. in den RAM eingelesen wird. Als nächstes wird auf das
Wiederherstellungs-BIOS zugegriffen, um die geschützten BIOS-
Aktualisierungs-Prozeduren wiederzugewinnen (Verarbeitungsblock
506). Die in Block 506 wiedergewonnenen (retrieved) geschützten
Prozeduren schließen eine Prozedur zum Löschen des BIOS und
eine Prozedur zum Programmieren des BIOS ein. Als nächstes wird
das Computersystem auf die Löschung und Programmierung des
Flash-Speichers vorbereitet (Verarbeitungsblock 535). Die Vor
bereitung des Computersystems auf das Löschen und die Program
mierung des Flash-Speichers schließt Operationen zum Sperren
der Cache- und Shadowing-Funktionen, zur Freigabe der Schreib
operationen zum Flash-Speicher und andere hardwarespezifische
Operationen ein. Sobald die geschützten Prozeduren wiedergewon
nen und das Computersystem vorbereitet wurden, wird die Proze
dur zum Löschen des BIOS aktiviert, um den normalen System-
BIOS-Bereich im Flash-Speicher zu löschen. Sobald die Lösch-
Operation beendet wurde, wird die Prozedur zum Programmieren
des BIOS benutzt, um die vordefinierte BIOS-Abbildung in den
normalen System-BIOS-Bereich des Flash-Speichers zu laden
(Programmierblock 507). Wenn diese Operation abgeschlossen
wurde, endet die Verarbeitungslogik des dynamischen Aktualisie
rungsprogramms am Verarbeitungsblock 508. Der Benutzer wird
durch einen vom Lautsprecher des Computersystems ausgegebenen
hörbaren Piepcode über den Abschluß informiert. Nach Abschluß
der Abarbeitung des Wiederherstellungs-Modus können der Jumper
bzw. die Modusauswahlmittel zur Auswahlposition des normalen
Modus zurückgeschaltet werden und das Computersystem kann er
neut gestartet oder durch Einschalten initialisiert werden, um
die Steuerung auf das frisch geladene normale System-BIOS im
Flash-Speicher zu übertragen.
Wenn ein normaler Modus ausgewählt wurde, führt der Verar
beitungspfad 504 vom Entscheidungsblock 502 zum Verarbeitungs
block 510, wo ein Hauptmenü von normalen Aktualisierungsoptio
nen dem Benutzer angezeigt wird. Diese Optionen schließen eine
Operation zur Überprüfung eines Flash-Bereichs, eine Operation
zum Sichern eines Flash-Bereichs, eine Operation zum Aktuali
sieren eines Flash-Bereichs und eine Beendigungsoperation ein.
Sobald ein Menü dem Benutzer präsentiert wird, wird im Verar
beitungsblock 511 eine Menüauswahl vom Eingabegerät 104 gewon
nen. Wenn die Beendigungsoperation ausgewählt wurde, führt vom
Entscheidungsblock 512 der Verarbeitungspfad 513 zum Beendi
gungsblock 515, wo die Ausführung des dynamischen Aktualisie
rungsprogramms abgebrochen wird.
Wenn jedoch die Beendigungsoperation nicht ausgewählt
wurde, wird der Verarbeitungspfad 514 zum Verarbeitungsblock
516 genommen, wo eine ungeschützte normale System-BIOS-Prozedur
aktiviert wird, um die aktiven Flash-Bereiche des BIOS, die
überprüft, gesichert oder aktualisiert werden können, zu gewin
nen. Die aktiven Flash-Bereiche werden im Verarbeitungsblock
517 in einem sekundären Menü angezeigt. Der Benutzer wird wie
derum aufgefordert, im Verarbeitungsblock 518 eine Menüauswahl
über das Eingabegerät 104 zu treffen. Wenn eine Überprüfung ei
nes Flash-Bereichs ausgewählt wurde, führt der Verarbeitungs
pfad 520 zu dem in Fig. 6 dargestellten mit A bezeichneten
Kreis. Wenn eine Operation zum Sichern eines Flash-Bereichs
ausgewählt wurde, führt der Verarbeitungspfad 523 zu dem mit B
bezeichneten Kreis in Fig. 6. Wenn eine Operation zum Aktuali
sieren eines Flash-Bereichs ausgewählt wurde, führt in ähnli
cher Weise der Verarbeitungspfad 526 zu dem mit C bezeichneten
Kreis in Fig. 6. Wenn eine ungeeignete (d. h. Rückkehr zum
Hauptmenü) Befehlsauswahl getroffen wurde, führt der Verarbei
tungspfad 527 zum mit D bezeichneten Kreis, wo die Steuerung
zum Verarbeitungsblock 510 zurückkehrt, wo das Hautmenü erneut
dem Benutzer präsentiert wird.
In Fig. 6 ist die Verarbeitungslogik für jede der drei
Flash-Speicherbereichs-Operationen dargestellt. Wenn eine Ope
ration zum Überprüfen des Flash-Speichers ausgewählt wurde,
wird die Verarbeitungslogik unter dem mit A bezeichneten Kreis
ausgeführt. Im Verarbeitungsblock 601 wird der Benutzer auf
gefordert, den Namen einer Datei einzugeben, die mit dem spezi
fizierten Flash-Speicherbereich verglichen werden soll. Wenn
eine einzelne Datei nicht groß genug ist, um den gesamten In
halt des spezifizierten Flash-Speicherbereichs zu enthalten,
können verschiedene Dateien, die Teile der Flash-Datenver
gleichsabbildung enthalten, miteinander verkettet werden, wobei
eine bekannte Dateiverkettungstechnik angewendet wird. In der
Schleife zwischen dem Verarbeitungsblock 602 und dem Entschei
dungsblock 604 werden die Inhalte der Vergleichsdatei oder der
verketteten Dateien gelesen und mit den Inhalten des spezifi
zierten Flash-Speicherbereichs verglichen. Wenn Differenzen ge
funden werden, wird die Schleife mit einem Überprüfungs-Fehler
beendet. Das Überprüfungsverfahren wird fortgesetzt, bis der
gesamte Inhalt der Vergleichsdatei und der zugeordneten verket
teten Dateien mit den Inhalten des gewählten Flash-Speicherbe
reichs verglichen wurde. Wenn die Überprüfung vollständig ist,
führt der Verarbeitungspfad 606 zum Verarbeitungsblock 607, wo
die Vergleichsergebnisse dem Benutzer angezeigt werden. Die
Verarbeitung wird dann an dem in Fig. 5 dargestellten mit E be
zeichneten Kreis fortgesetzt, wo der Bediener zur nächsten Be
fehlsauswahl aufgefordert wird.
In Fig. 6 wiederum ist unter dem mit B bezeichneten Kreis
die mit dem Kommando zum Sichern eines Flash-Speicherbereichs
verbundene Verarbeitungslogik dargestellt. Wenn der Benutzer
ein Kommando zum Sichern eines Flash-Speicherbereichs auswählt,
wird die Verarbeitungssteuerung an den Verarbeitungsblock 608
übergeben, wo der Benutzer zur Eingabe eines Namens einer Datei
aufgefordert wird, welche zur Speicherung des ausgewählten
Flash-Speicherbereichs benutzt werden soll. Mehrere Dateien
können mit Hilfe bekannter Techniken miteinander verkettet wer
den, wenn eine einzelne Datei nicht groß genug ist, um den ge
samten ausgewählten Flash-Speicherbereich zu speichern. An
schließend wird eine Schleife zwischen dem Verarbeitungsblock
609 und dem Entscheidungsblock 611 initialisiert, wo die In
halte des ausgewählten Flash-Speicherbereichs gelesen
(Verarbeitungsblock 609) und dann in die spezifizierte Datei
oder die verketteten Dateien geschrieben (Verarbeitungsblock
610) werden. Die Sicherungsoperation wird fortgesetzt, bis der
gesamte Inhalt des ausgewählten Flash-Speicherbereichs in die
spezifizierte Datei oder die Dateien übertragen wurde. Wenn
dies der Fall ist, führt der Verarbeitungspfad 613 zum Verar
beitungsblock 614, wo der Status der Sicherungsoperation dem
Benutzer angezeigt wird. Die Verarbeitung wird dann an dem in
Fig. 5 dargestellten mit E bezeichneten Kreis fortgesetzt, wo
der Bediener zur Eingabe des nächsten Befehlsaufrufs aufgefor
dert wird.
Wiederum in Fig. 6 ist die Verarbeitungslogik des Kommandos
zum Aktualisieren des Flash-Bereichs unter den mit C bezeichne
ten Kreis dargestellt. Wenn das Kommando zum Aktualisieren des
Flash-Bereichs durch den Benutzer ausgewählt wurde, wird die
Verarbeitungssteuerung an den Verarbeitungsblock 615 übertra
gen, wo der Benutzer zur Eingabe eines Namens einer Datei auf
gefordert wird, die eine Abbildung der Flash-Daten enthält, die
in den spezifizierten Flash-Speicherbereich übertragen werden
sollen. Damit die Aktualisierungs-Utility der Erfindung ver
schiedene Computerkonfigurationen und Flash-Speicher handhaben
kann, ist die Aktualisierungs-Verarbeitungslogik im normalen
System-BIOS als geschützte Prozedur eingebettet. Das Computer
system wird für die Löschung und Programmierung des Flash-Spei
chers vorbereitet (Verarbeitungsblock 635). Der Flash-Speicher
bereich wird im Verarbeitungsblock 636 gelöscht. Diese ge
schützten Prozeduren werden aus dem BIOS im Verarbeitungsblock
616 zur Benutzung durch die erfindungsgemäße dynamische Aktua
lisierungs-Utility wiedergewonnen. Diese geschützten Aktuali
sierungsprozeduren werden durch die dynamische Aktualisierungs-
Utility benutzt, um die Inhalte der spezifizierten Datei oder
der Dateien in die spezifizierten Flash-Speicherbereiche zu
übertragen (Verarbeitungsblock 617). Die Aktualisierungsopera
tion wird fortgesetzt, bis der gesamte Inhalt der spezifizier
ten Datei zum spezifizierten Flash-Speicherbereich übertragen
wurde. Wenn die Aktualisierung vollständig ist
(Verarbeitungspfad 620) werden die Status-Ergebnisse der Aktua
lisierungsoperationen dem Benutzer im Verarbeitungsblock 621
angezeigt. Wenn die Aktualisierung ein erneutes Laden des Com
putersystems erfordert (Verarbeitungspfad 623), kann das gerade
aktualisierte BIOS durch erneutes Anfangsladen des Computersy
stems im Verarbeitungsblock 625 aktiviert werden. Wenn kein er
neutes Laden erforderlich ist, führt der Verarbeitungspfad 624
zu dem in Fig. 5 dargestellten mit E bezeichneten Kreis, wo der
Benutzer zur Eingabe einer neuen Kommandoauswahl aufgefordert
wird.
Es wurde ein Computersystem beschrieben, bei dem ein Teil
der in einem nicht-flüchtigen Speicher gespeicherten Befehlsco
des/Daten dynamisch geändert oder aktualisiert werden kann,
ohne Verkleidungen oder Teile vom Computersystem zu entfernen.
Die folgenden BIOS-Serviceaufrufe sind für die Flash-Speicherschnittstelle.
INTERRUPT = 15H
FUNKTION (AH) = 0DBH
SUBFUNKTIONEN (AL)
FUNKTION (AH) = 0DBH
SUBFUNKTIONEN (AL)
Eingabe:
DS = Segment des Ausgabedateikopfteils
SI = Offset des Ausgabedateikopfteils
ES = Segment des Puffers zum Plazieren der gelesenen Informationen
DI = Offset des Puffers zum Plazieren der gelesenen Informationen
DS = Segment des Ausgabedateikopfteils
SI = Offset des Ausgabedateikopfteils
ES = Segment des Puffers zum Plazieren der gelesenen Informationen
DI = Offset des Puffers zum Plazieren der gelesenen Informationen
Ausgabe:
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
Eingabe:
CL = Logische Bereichsnummer (0-0FFh)
CL = Logische Bereichsnummer (0-0FFh)
Ausgabe:
DI = Offset des Zeigers auf den 32-Byte-Bereich der Info-Struktur
ES = Segment des Zeigers auf den 32-Byte-Bereich der Info-Struktur
AH = Statusausgabe
0 = erfolgreich
1 = ungültige Eingabe
DI = Offset des Zeigers auf den 32-Byte-Bereich der Info-Struktur
ES = Segment des Zeigers auf den 32-Byte-Bereich der Info-Struktur
AH = Statusausgabe
0 = erfolgreich
1 = ungültige Eingabe
Eingabe:
keine
Ausgabe:
BX = Größe der geschützten Prozeduren in Bytes
keine
Ausgabe:
BX = Größe der geschützten Prozeduren in Bytes
Eingabe:
ES = Segment des Puffers zum Plazieren der geschützten Prozeduren
DI = Offset des Puffers zum Plazieren der geschützten Prozeduren
DS = Segment des Kopfteils der Eingabedatei
SI = Offset des Kopfteils der Eingabedatei
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
ES = Segment des Puffers zum Plazieren der geschützten Prozeduren
DI = Offset des Puffers zum Plazieren der geschützten Prozeduren
DS = Segment des Kopfteils der Eingabedatei
SI = Offset des Kopfteils der Eingabedatei
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
Ausgabe:
BX = Menge des durch das BIOS geforderten zusätzlichen Speichers zum Abschließen der Operation
AH = Statusausgabe
0 = erfolgreicher Abschluß
1 = ungültige Eingabe
2 = ungültige Operation
3 = ungültige Größe
4 = ungültiger Datentyp
BX = Menge des durch das BIOS geforderten zusätzlichen Speichers zum Abschließen der Operation
AH = Statusausgabe
0 = erfolgreicher Abschluß
1 = ungültige Eingabe
2 = ungültige Operation
3 = ungültige Größe
4 = ungültiger Datentyp
Eingabe:
keine
keine
Ausgabe:
BX =
0 = Wiederherstellungs-Modus aktiv
nicht 0 = normaler Modus aktiv
AH = Statusausgabe
0 = erfolgreicher Abschluß
1 = Flash-Speicher wird von diesem System nicht unterstützt
BX =
0 = Wiederherstellungs-Modus aktiv
nicht 0 = normaler Modus aktiv
AH = Statusausgabe
0 = erfolgreicher Abschluß
1 = Flash-Speicher wird von diesem System nicht unterstützt
Auf die geschützten Prozeduren wird zugegriffen durch einen
weiten Aufruf (far call) zu den Adressen, die in ES : DI durch
den "Vorbereiten zum Löschen"-Interrupt-Aufruf zurückgegeben
wurden und sie erfordern die folgenden Schnittstellen:
Eingabe:
DS = Segment des Eingabedateikopfteils
SI = Offset des Eingabedateikopfteils
ES = Segment des zusätzlichen Speichers, der durch das BIOS angefordert wurde
DI = Offset des zusätzlichen Speichers, der durch das BIOS angefordert wurde
CH = Status
0 = normaler Modus
1 = Wiederherstellungs-Modus
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
DS = Segment des Eingabedateikopfteils
SI = Offset des Eingabedateikopfteils
ES = Segment des zusätzlichen Speichers, der durch das BIOS angefordert wurde
DI = Offset des zusätzlichen Speichers, der durch das BIOS angefordert wurde
CH = Status
0 = normaler Modus
1 = Wiederherstellungs-Modus
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
Ausgabe:
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
2 = Löschfehler
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
2 = Löschfehler
Eingabe:
CH = Status
0 = normaler Modus
1 = Wiederherstellungs-Modus
DS = Segment des Eingabedateikopfteils
SI = Offset des Eingabedateikopfteils
ES = Segment des zusätzlichen Speichers, der durch das BIOS angefordert wurde
DI = Offset des zusätzlichen Speichers, der durch das BIOS angefordert wurde.
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
CH = Status
0 = normaler Modus
1 = Wiederherstellungs-Modus
DS = Segment des Eingabedateikopfteils
SI = Offset des Eingabedateikopfteils
ES = Segment des zusätzlichen Speichers, der durch das BIOS angefordert wurde
DI = Offset des zusätzlichen Speichers, der durch das BIOS angefordert wurde.
BX = Segment des Puffers für BIOS-Tabellen
DX = Offset des Puffers für BIOS-Tabellen
Ausgabe:
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
3 = Bereich nicht gelöscht
4 = Überprüfungsfehler
AH = Statusausgabe
0 = erfolgreiches Lesen
1 = ungültige Eingabe
3 = Bereich nicht gelöscht
4 = Überprüfungsfehler
Claims (21)
1. Computersystem mit einem Prozessor (101) zur Ausführung
von Verarbeitungslogik,
dadurch gekennzeichnet,
daß in einem mit dem Prozessor gekoppelten nicht-flüchtigen Speicher (103) die Verarbeitungslogik des Betriebssystems und Daten gespeichert sind;
daß mit dem Prozessor (101) Mittel zum Lesen des Inhalts des nicht-flüchtigen Speichers, Mittel zum Löschen des Inhalts des nicht-flüchtigen Speichers und Mittel zum Programmieren des nicht-flüchtigen Speichers gekoppelt sind; und
daß das Computersystem Mittel zum Aktualisieren der Verar beitungslogik des Betriebssystems während der Ausführung der Verarbeitungslogik des Betriebssystems aufweist.
daß in einem mit dem Prozessor gekoppelten nicht-flüchtigen Speicher (103) die Verarbeitungslogik des Betriebssystems und Daten gespeichert sind;
daß mit dem Prozessor (101) Mittel zum Lesen des Inhalts des nicht-flüchtigen Speichers, Mittel zum Löschen des Inhalts des nicht-flüchtigen Speichers und Mittel zum Programmieren des nicht-flüchtigen Speichers gekoppelt sind; und
daß das Computersystem Mittel zum Aktualisieren der Verar beitungslogik des Betriebssystems während der Ausführung der Verarbeitungslogik des Betriebssystems aufweist.
2. Computersystem nach Anspruch 1, dadurch gekennzeichnet,
daß der nicht-flüchtige Speicher (103) ein Flash-Speicherbau
element ist.
3. Computersystem nach Anspruch 1 oder 2, dadurch gekenn
zeichnet, daß der nicht-flüchtige Speicher (103) in mindestens
zwei getrennt löschbare und programmierbare Abschnitte (201,
202) eingeteilt ist, daß in einem ersten Abschnitt (202) Wie
derherstellungs-Verarbeitungslogik und Daten gespeichert und
daß in einem zweiten Abschnitt (201) Verarbeitungslogik und Da
ten des normalen Betriebssystems gespeichert sind.
4. Computersystem nach einem der Ansprüche 1 bis 3, dadurch
gekennzeichnet, daß ein RAM (102) mit dem Prozessor (101) ge
koppelt ist.
5. Computersystem nach einem der Ansprüche 1 bis 4, dadurch
gekennzeichnet, daß die Verarbeitungslogik des Betriebssystems
ein Basis-Eingabe-Ausgabe-System (BIOS) ist.
6. Computersystem nach einem der Ansprüche 1 bis 5, dadurch
gekennzeichnet, daß die Mittel zum Aktualisieren ferner mit dem
Prozessor (101) gekoppelte Mittel zum Auswählen einer Aktuali
sierungsart aufweisen und daß die Aktualisierungsart entweder
eine normale oder eine Wiederherstellungs-Aktualisierungsart
ist.
7. Computersystem nach Anspruch 6, dadurch gekennzeichnet,
daß die normale Aktualisierung-Verarbeitungslogik arbeitsfähig
in dem RAM (102) angeordnet ist und daß die Mittel zum Aktuali
sieren ferner Mittel zum Aktivieren der normalen Aktualisie
rungs-Verarbeitungslogik bei Auswahl der normalen Aktualisie
rungsart durch die Mittel zum Auswählen der Aktualisierungsart
und Mittel zum Umprogrammieren des zweiten Abschnitts (201) bei
Aktivierung der normalen Aktualisierungs-Verarbeitungslogik
enthalten.
8. Computersystem nach Anspruch 7, dadurch gekennzeichnet,
daß die Mittel zum Umprogrammieren ferner aufweisen:
eine geschützte Aktualisierungs-Verarbeitungslogik, die sich innerhalb der normalen, im zweiten Abschnitt gespeicherten Verarbeitungslogik des Betriebssystems befindet,
Mittel zum Übertragen der geschützten Aktualisierungs-Ver arbeitungslogik zu dem RAM (102) und
Mittel zum Aktivieren der geschützten Aktualisierungs-Ver arbeitungslogik, wobei die geschützte Aktualisierungs-Verarbei tungslogik die Programmierung des zweiten Abschnitts steuert.
eine geschützte Aktualisierungs-Verarbeitungslogik, die sich innerhalb der normalen, im zweiten Abschnitt gespeicherten Verarbeitungslogik des Betriebssystems befindet,
Mittel zum Übertragen der geschützten Aktualisierungs-Ver arbeitungslogik zu dem RAM (102) und
Mittel zum Aktivieren der geschützten Aktualisierungs-Ver arbeitungslogik, wobei die geschützte Aktualisierungs-Verarbei tungslogik die Programmierung des zweiten Abschnitts steuert.
9. Computersystem nach Anspruch 6, dadurch gekennzeichnet,
daß die Mittel zum Aktualisieren ferner aufweisen:
Mittel zum Aktivieren der Wiederherstellungs-Verarbeitungs logik bei Auswahl der Wiederherstellungs-Aktualisierungsart durch die Mittel zum Auswählen der Aktualisierungsart und
Mittel zum Umprogrammieren des zweiten Abschnitts bei Akti vierung der Wiederherstellungs-Verarbeitungslogik.
Mittel zum Aktivieren der Wiederherstellungs-Verarbeitungs logik bei Auswahl der Wiederherstellungs-Aktualisierungsart durch die Mittel zum Auswählen der Aktualisierungsart und
Mittel zum Umprogrammieren des zweiten Abschnitts bei Akti vierung der Wiederherstellungs-Verarbeitungslogik.
10. Computersystem, nach einem der Ansprüche 3 bis 9, da
durch gekennzeichnet, daß der erste Abschnitt (202) elektro
nisch gegen Löschen und/oder Verändern geschützt ist.
11. Computersystem mit einem Prozessor (101) zur Ausführung
von Verarbeitungslogik,
dadurch gekennzeichnet,
daß in einem mit dem Prozessor (101) gekoppelten nicht- flüchtigen Speicher (103) die Verarbeitungslogik des Betriebs systems und Daten gespeichert sind;
daß mit dem Prozessor (101) Mittel zum Lesen des Inhalts des nicht-flüchtigen Speichers, Mittel zum Löschen des Inhalts des nicht-flüchtigen Speichers und Mittel zum Programmieren des nicht-flüchtigen Speichers gekoppelt sind; und
daß das Computersystem Mittel zum Aktualisieren von in ei nem Bereich (203, 204, 205) des nicht-flüchtigen Speichers (103) angeordneter anwendungsspezifischer Verarbeitungslogik während der Ausführung der Verarbeitungslogik des Betriebssy stems aufweist.
daß in einem mit dem Prozessor (101) gekoppelten nicht- flüchtigen Speicher (103) die Verarbeitungslogik des Betriebs systems und Daten gespeichert sind;
daß mit dem Prozessor (101) Mittel zum Lesen des Inhalts des nicht-flüchtigen Speichers, Mittel zum Löschen des Inhalts des nicht-flüchtigen Speichers und Mittel zum Programmieren des nicht-flüchtigen Speichers gekoppelt sind; und
daß das Computersystem Mittel zum Aktualisieren von in ei nem Bereich (203, 204, 205) des nicht-flüchtigen Speichers (103) angeordneter anwendungsspezifischer Verarbeitungslogik während der Ausführung der Verarbeitungslogik des Betriebssy stems aufweist.
12. Computersystem nach Anspruch 11, dadurch gekennzeich
net, daß es ferner Mittel zum Freigeben einer Abtastung desje
nigen Bereichs (203, 204, 205) des nicht-flüchtigen Speichers
(103) aufweist, der anwendungsspezifische Verarbeitungslogik
enthält.
13. Computersystem nach Anspruch 11 oder 12, dadurch ge
kennzeichnet, daß die anwendungsspezifische Verarbeitungslogik
LAN-Verarbeitungslogik aufweist.
14. Computersystem nach einem der Ansprüche 11 bis 13, da
durch gekennzeichnet, daß die anwendungsspezifische Verarbei
tungslogik SCSI-Verarbeitungslogik aufweist.
15. In Anwendung auf ein Computersystem mit einem Verarbei
tungslogik ausführenden Prozessor und einem mit dem Prozessor
gekoppelten nicht-flüchtigen Speicher, in welchem Verarbei
tungslogik des Betriebssystems und Daten gespeichert werden,
ein Verfahren zum Aktualisieren der Verarbeitungslogik eines
Betriebssystems während der Ausführung der Verarbeitungslogik,
dadurch gekennzeichnet,
daß entweder eine normale Aktualisierungsart oder eine Wie derherstellungs-Aktualisierungsart ausgewählt wird;
daß eine Wiederherstellungs-Verarbeitungslogik aktiviert wird, wenn die Wiederherstellungs-Aktualisierungsart ausgewählt wurde; und
ein erster Abschnitt des nicht-flüchtigen Speichers umpro grammiert wird, wenn die Wiederherstellungs-Verarbeitungslogik aktiviert wurde, wobei der Umprogrammierungsschritt ausgeführt wird, während die Verarbeitungslogik des Betriebssystems ausge führt wird.
daß entweder eine normale Aktualisierungsart oder eine Wie derherstellungs-Aktualisierungsart ausgewählt wird;
daß eine Wiederherstellungs-Verarbeitungslogik aktiviert wird, wenn die Wiederherstellungs-Aktualisierungsart ausgewählt wurde; und
ein erster Abschnitt des nicht-flüchtigen Speichers umpro grammiert wird, wenn die Wiederherstellungs-Verarbeitungslogik aktiviert wurde, wobei der Umprogrammierungsschritt ausgeführt wird, während die Verarbeitungslogik des Betriebssystems ausge führt wird.
16. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß
der Schritt des Umprogrammierens ferner folgende Schritte ein
schließt:
Übertragen geschützter Aktualisierungs-Verarbeitungslogik von der Wiederherstellungs-Verarbeitungslogik zum einem RAM; und
Aktivieren der geschützten Aktualisierungs-Verarbeitungslo gik, wobei die geschützte Aktualisierungs-Verarbeitungslogik das Programmieren des ersten Abschnitts steuert.
Übertragen geschützter Aktualisierungs-Verarbeitungslogik von der Wiederherstellungs-Verarbeitungslogik zum einem RAM; und
Aktivieren der geschützten Aktualisierungs-Verarbeitungslo gik, wobei die geschützte Aktualisierungs-Verarbeitungslogik das Programmieren des ersten Abschnitts steuert.
17. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß
folgende Schritte ausgeführt werden:
Aktivieren einer normalen Aktualisierungs-Verarbeitungslo gik, wenn die normale Aktualisierungsart ausgewählt wurde; und
Umprogrammieren eines zweiten Abschnitts des nicht-flüchti gen Speichers, wenn die normale Aktualisierungs-Verarbeitungs logik aktiviert wurde, wobei der Schritt des Umprogrammierens eines zweiten Abschnitts ausgeführt wird, während die Verarbei tungslogik des Betriebssystems ausgeführt wird.
Aktivieren einer normalen Aktualisierungs-Verarbeitungslo gik, wenn die normale Aktualisierungsart ausgewählt wurde; und
Umprogrammieren eines zweiten Abschnitts des nicht-flüchti gen Speichers, wenn die normale Aktualisierungs-Verarbeitungs logik aktiviert wurde, wobei der Schritt des Umprogrammierens eines zweiten Abschnitts ausgeführt wird, während die Verarbei tungslogik des Betriebssystems ausgeführt wird.
18. In Anwendung auf ein Computersystem mit einem Verarbei
tungslogik ausführenden Prozessor und einem mit dem Prozessor
gekoppelten nicht-flüchtigen Speicher, in dem Verarbeitungslo
gik des Betriebssystems und Daten gespeichert werden, ein Ver
fahren zum Aktualisieren von in einem Bereich des nicht-flüch
tigen Speichers befindlicher anwendungsspezifischer Verarbei
tungslogik während die Verarbeitungslogik des Betriebssystems
ausgeführt wird,
dadurch gekennzeichnet,
daß ein Bereich in dem nicht-flüchtigen Speicher zum Aktua lisieren ausgewählt wird; und
daß der zum Aktualisieren ausgewählte Bereich des nicht- flüchtigen Speichers mit anwendungsspezifischer Verarbeitungs logik umprogrammiert wird, wobei das Umprogrammieren während der Ausführung der Verarbeitungslogik des Betriebssystems er folgt.
daß ein Bereich in dem nicht-flüchtigen Speicher zum Aktua lisieren ausgewählt wird; und
daß der zum Aktualisieren ausgewählte Bereich des nicht- flüchtigen Speichers mit anwendungsspezifischer Verarbeitungs logik umprogrammiert wird, wobei das Umprogrammieren während der Ausführung der Verarbeitungslogik des Betriebssystems er folgt.
19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß
zusätzlich ein Schritt des Freigebens der Abtastung des Be
reichs des anwendungsspezifische Verarbeitungslogik enthalten
den nicht-flüchtigen Speichers ausgeführt wird.
20. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß
die anwendungsspezifische Verarbeitungslogik LAN-Verarbeitungs
logik einschließt.
21. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß
die anwendungsspezifische Verarbeitungslogik SCSI-Verarbei
tungslogik einschließt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US69595291A | 1991-05-06 | 1991-05-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4214184A1 true DE4214184A1 (de) | 1992-11-12 |
DE4214184C2 DE4214184C2 (de) | 2002-11-21 |
Family
ID=24795113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4214184A Expired - Lifetime DE4214184C2 (de) | 1991-05-06 | 1992-04-30 | Computersystem mit einem nicht-flüchtigen Speicher und Verfahren zu dessen Aktualisierung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5579522A (de) |
JP (1) | JP3372964B2 (de) |
DE (1) | DE4214184C2 (de) |
IT (1) | IT1254937B (de) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0536793A2 (de) * | 1991-10-11 | 1993-04-14 | Kabushiki Kaisha Toshiba | PC mit integriertem wiederbeschreibbarem ROM zur Speicherung des BIOS |
EP0524719A3 (en) * | 1991-05-29 | 1993-09-08 | Dell Usa L.P. | Computer system with alterable bootstrapping software |
US5388083A (en) * | 1993-03-26 | 1995-02-07 | Cirrus Logic, Inc. | Flash memory mass storage architecture |
EP0642090A2 (de) * | 1993-08-30 | 1995-03-08 | Siemens Aktiengesellschaft | Elektronische Baugruppe mit wenigstens einer dezentralen Prozessoreinrichtung eines mehrprozessorgesteuerten Systems |
FR2722015A1 (fr) * | 1994-06-29 | 1996-01-05 | Mitsubishi Electric Corp | Systeme de traitement d'informations |
US5522076A (en) * | 1993-05-13 | 1996-05-28 | Kabushiki Kaisha Toshiba | Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function |
EP0723226A1 (de) * | 1995-01-18 | 1996-07-24 | Hewlett-Packard Company | Stromversorgungsausfallbeständige Aktualisierung eines Flash-EEPROM-Speichers |
EP0909095A1 (de) * | 1992-12-09 | 1999-04-14 | Discovery Communications, Inc. | Reprogrammierbares Endgerät für Programmvorschläge eines Fernsehprogrammversorgungssystems |
WO1999026166A2 (de) * | 1997-11-14 | 1999-05-27 | Robert Bosch Gmbh | Verfahren zum laden eines programms und datenverarbeitungsgerät |
US6040997A (en) * | 1998-03-25 | 2000-03-21 | Lexar Media, Inc. | Flash memory leveling architecture having no external latch |
EP1058930A1 (de) * | 1998-01-06 | 2000-12-13 | Macronix International Co., Ltd. | Ein speicherunterstützendes multiples addressenprotokoll |
US6181335B1 (en) | 1992-12-09 | 2001-01-30 | Discovery Communications, Inc. | Card for a set top terminal |
WO2001014965A1 (en) * | 1999-08-24 | 2001-03-01 | Koninklijke Philips Electronics N.V. | Data processing apparatus with non-volatile memory for both program and data |
DE10146609A1 (de) * | 2001-09-21 | 2003-04-10 | Abb Patent Gmbh | Busteilnehmergerät mit integriertem Flash-Speicher und Verfahren zur Änderung, Erweiterung und Fehlerkorrektur von in einem Mikrocontroller gespeicherten Daten |
DE10146611A1 (de) * | 2001-09-21 | 2003-04-10 | Abb Patent Gmbh | Busteilnehmergerät und Verfahren zur Änderung, Erweiterung und Fehlerkorrektur von blockweise gespeicherten Daten in einem Mikrocontroller eines Busteilnehmers |
DE10141894A1 (de) * | 2001-08-28 | 2003-06-26 | Siemens Ag | Vorrichtung für den Einsatz in Bussystemen |
EP1872210A1 (de) * | 2005-04-22 | 2008-01-02 | Endress+Hauser GmbH+Co. KG | Verfahren zum aufrüsten eines mikroprozessorgesteuerten geräts mit neuem softwarecode über ein kommunikationsnetzwerk |
EP2180403A1 (de) * | 2008-10-21 | 2010-04-28 | Moxa Inc. | Sicherungssystem, das Bootdatendateien eines eingebetteten Systems in verschiedenen Speicherabschnitten speichert und Verfahren dafür |
US8578410B2 (en) | 2001-08-03 | 2013-11-05 | Comcast Ip Holdings, I, Llc | Video and digital multimedia aggregator content coding and formatting |
US8621521B2 (en) | 2001-08-03 | 2013-12-31 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US9078014B2 (en) | 2000-06-19 | 2015-07-07 | Comcast Ip Holdings I, Llc | Method and apparatus for targeting of interactive virtual objects |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
Families Citing this family (247)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6131159A (en) * | 1992-05-08 | 2000-10-10 | Paradyne Corporation | System for downloading programs |
US5659350A (en) | 1992-12-09 | 1997-08-19 | Discovery Communications, Inc. | Operations center for a television program packaging and delivery system |
US5864698A (en) * | 1994-08-24 | 1999-01-26 | Packard Bell Nec | Disk based bios |
JP2669365B2 (ja) * | 1994-11-24 | 1997-10-27 | 日本電気株式会社 | 書換え可能なromファイル装置 |
GB9601900D0 (en) * | 1996-01-31 | 1996-04-03 | Neopost Ltd | Electronic apparatus including a memory device and method of reprogramming the memory device |
KR0172001B1 (ko) * | 1995-12-05 | 1999-03-30 | 윤종용 | 바이오스 메모리의 재프로그램 장치 및 그 방법 |
US5822581A (en) * | 1995-09-29 | 1998-10-13 | Intel Corporation | Method for CMOS configuration information storage and retrieval in flash |
US5829013A (en) | 1995-12-26 | 1998-10-27 | Intel Corporation | Memory manager to allow non-volatile memory to be used to supplement main memory |
US5918047A (en) * | 1996-01-26 | 1999-06-29 | Texas Instruments Incorporated | Initializing a processing system |
US5701492A (en) * | 1996-03-29 | 1997-12-23 | Canon Kabushiki Kaisha | Fail-safe flashing of EPROM |
CN100543667C (zh) * | 1996-04-11 | 2009-09-23 | 株式会社日立制作所 | 盘驱动器 |
US5802592A (en) * | 1996-05-31 | 1998-09-01 | International Business Machines Corporation | System and method for protecting integrity of alterable ROM using digital signatures |
US6449735B1 (en) | 1996-07-01 | 2002-09-10 | Intel Corporation | Method and apparatus for providing improved diagnostic functions in a computer system |
US5793943A (en) | 1996-07-29 | 1998-08-11 | Micron Electronics, Inc. | System for a primary BIOS ROM recovery in a dual BIOS ROM computer system |
US5913056A (en) * | 1996-09-25 | 1999-06-15 | Eastman Kodak Company | Remote programming of microprocessor equipment over a standard serial port |
US5889987A (en) * | 1996-09-30 | 1999-03-30 | Intel Corporation | Flexible non-volatile memory controller with boot block emulation |
US6047373A (en) | 1997-01-02 | 2000-04-04 | Intel Corporation | Method and apparatus for setting the operating parameters of a computer system |
US6122733A (en) * | 1997-01-02 | 2000-09-19 | Intel Corporation | Method and apparatus for updating a basic input/output system |
US5922072A (en) * | 1997-01-03 | 1999-07-13 | Ncr Corporation | Method and apparatus for creating alternate boot environments in a computer |
US6560701B1 (en) * | 1997-02-10 | 2003-05-06 | International Business Machines Corporation | Alternate boot record |
US6311290B1 (en) * | 1997-02-14 | 2001-10-30 | Intel Corporation | Methods of reliably allocating, de-allocating, re-allocating, and reclaiming objects in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture |
US6182188B1 (en) * | 1997-04-06 | 2001-01-30 | Intel Corporation | Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture |
KR100298420B1 (ko) * | 1997-03-10 | 2001-10-24 | 윤종용 | 롬바이오스의업데이트방법 |
US5940627A (en) * | 1997-03-13 | 1999-08-17 | Compaq Computer Corporation | User selectable feature set for a flash ROM based peripheral |
US6088759A (en) * | 1997-04-06 | 2000-07-11 | Intel Corporation | Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture |
KR100213102B1 (ko) * | 1997-04-11 | 1999-08-02 | 윤종용 | 피씨카드를 이용한 휴대용 정보단말의 프로그램을 갱신하는 방법 및 그에 따른 장치 |
KR100258966B1 (ko) * | 1997-05-02 | 2000-06-15 | 윤종용 | 시리얼 통신을 이용한 바이오스 업그레이드 방법 |
GB9713094D0 (en) | 1997-06-21 | 1997-08-27 | Philips Electronics Nv | Optical disc drive |
KR19990019426A (ko) * | 1997-08-29 | 1999-03-15 | 윤종용 | 플래쉬 메모리를 내장한 제어장치의 프로그램 관리방법 |
KR19990026189A (ko) * | 1997-09-23 | 1999-04-15 | 윤종용 | 바이오스 롬의 업데이트 방법 |
JP3622444B2 (ja) * | 1997-09-26 | 2005-02-23 | ノーリツ鋼機株式会社 | 写真処理機及びその動作制御情報更新システム |
JP2914360B2 (ja) * | 1997-09-30 | 1999-06-28 | ソニー株式会社 | 外部記憶装置及びデータ処理方法 |
US6374328B1 (en) * | 1997-10-28 | 2002-04-16 | Sony Corporation | Generation computer with program-in-chips (PIC) |
JPH11138918A (ja) * | 1997-11-14 | 1999-05-25 | Brother Ind Ltd | 画像形成装置 |
DE19751093A1 (de) * | 1997-11-18 | 1999-05-27 | Siemens Ag | Programmgesteuerte Einheit |
US6104875A (en) * | 1997-12-18 | 2000-08-15 | Honeywell Inc. | Method for field programming an industrial process transmitter |
US6119226A (en) * | 1998-01-06 | 2000-09-12 | Macronix International Co., Ltd. | Memory supporting multiple address protocols |
US6446184B2 (en) * | 1998-04-28 | 2002-09-03 | International Business Machines Corporation | Address re-mapping for memory module using presence detect data |
US6223284B1 (en) * | 1998-04-30 | 2001-04-24 | Compaq Computer Corporation | Method and apparatus for remote ROM flashing and security management for a computer system |
US6275931B1 (en) * | 1998-06-22 | 2001-08-14 | Elsag International N.V. | Method and apparatus for upgrading firmware boot and main codes in a programmable memory |
US6405311B1 (en) * | 1998-07-28 | 2002-06-11 | Compaq Computer Corporation | Method for storing board revision |
US6205548B1 (en) * | 1998-07-31 | 2001-03-20 | Intel Corporation | Methods and apparatus for updating a nonvolatile memory |
US6356965B1 (en) * | 1998-09-08 | 2002-03-12 | Compaq Computer Corporation | Hotkey for network service boot |
US6353854B1 (en) * | 1998-10-01 | 2002-03-05 | International Business Machines Corporation | Automatic reconfiguration system for change in management servers having protocol destination addresses |
US6122732A (en) * | 1998-10-23 | 2000-09-19 | Compaq Computer Corporation | System management interrupt for a desktop management interface/system management basic input output system interface function |
WO2000025208A1 (en) * | 1998-10-28 | 2000-05-04 | Zf Linux Devices, Inc. | Processor system with fail safe bios configuration |
US6275851B1 (en) | 1998-12-07 | 2001-08-14 | International Business Machines Corporation | Data processing system and method for remotely controlling modification of a client's initialization settings |
US6434695B1 (en) | 1998-12-23 | 2002-08-13 | Apple Computer, Inc. | Computer operating system using compressed ROM image in RAM |
US6549963B1 (en) * | 1999-02-11 | 2003-04-15 | Micron Technology, Inc. | Method of configuring devices on a communications channel |
US6507879B1 (en) | 1999-02-11 | 2003-01-14 | Micron Technology, Inc. | Apparatus for configuration devices on a communications channel |
JP3727485B2 (ja) * | 1999-04-02 | 2005-12-14 | シャープ株式会社 | 不揮発性メモリ内蔵マイクロコンピュータ |
IL129947A (en) * | 1999-05-13 | 2003-06-24 | Tadiran Telecom Business Syste | Method and apparatus for downloading software into an embedded system |
US6282647B1 (en) * | 1999-06-02 | 2001-08-28 | Adaptec, Inc. | Method for flashing a read only memory (ROM) chip of a host adapter with updated option ROM bios code |
US6374338B1 (en) * | 1999-06-25 | 2002-04-16 | International Business Machines Corporation | Method for performing configuration tasks prior to and including memory configuration within a processor-based system |
US6594723B1 (en) * | 1999-09-07 | 2003-07-15 | Microsoft Corporation | Method and apparatus for updating data in nonvolatile memory |
US6438668B1 (en) * | 1999-09-30 | 2002-08-20 | Apple Computer, Inc. | Method and apparatus for reducing power consumption in a digital processing system |
WO2001029762A2 (en) * | 1999-10-20 | 2001-04-26 | Spyrus, Inc. | Method and system for an integrated circuit card interface device with multiple modes of operation |
US6622243B1 (en) | 1999-11-19 | 2003-09-16 | Intel Corporation | Method for securing CMOS configuration information in non-volatile memory |
US6536038B1 (en) | 1999-11-29 | 2003-03-18 | Intel Corporation | Dynamic update of non-upgradeable memory |
US6449683B1 (en) * | 1999-12-14 | 2002-09-10 | Intel Corporation | Using non-volatile memory for power management in a computer |
US6769059B1 (en) | 1999-12-17 | 2004-07-27 | Intel Corporation | System for updating computer's existing video BIOS without updating the whole computer's system BIOS |
US6581159B1 (en) | 1999-12-23 | 2003-06-17 | Intel Corporation | Secure method of updating bios by using a simply authenticated external module to further validate new firmware code |
WO2001050261A2 (en) * | 1999-12-29 | 2001-07-12 | Sun Microsystems, Inc. | Updating non volatile memory in a data processing system |
US20020188886A1 (en) * | 2000-01-07 | 2002-12-12 | Xiaodong Liu | Method and apparatus for backing up application code upon power failure during a code update |
JP2001209543A (ja) | 2000-01-28 | 2001-08-03 | Nec Ic Microcomput Syst Ltd | フラッシュ・マイコンにおけるプログラム書き換え方法 |
US6687815B1 (en) * | 2000-02-01 | 2004-02-03 | Sun Microsystems, Inc. | Method and apparatus for storing non-volatile configuration information |
US7213152B1 (en) * | 2000-02-14 | 2007-05-01 | Intel Corporation | Modular bios update mechanism |
US6615286B1 (en) | 2000-02-14 | 2003-09-02 | Intel Corporation | Method and apparatus for updating device driver control data |
TW461997B (en) * | 2000-05-24 | 2001-11-01 | Asustek Comp Inc | Write protection method of programmable chipset software |
US7069452B1 (en) * | 2000-07-12 | 2006-06-27 | International Business Machines Corporation | Methods, systems and computer program products for secure firmware updates |
US6976163B1 (en) | 2000-07-12 | 2005-12-13 | International Business Machines Corporation | Methods, systems and computer program products for rule based firmware updates utilizing certificate extensions and certificates for use therein |
US7539828B2 (en) * | 2000-08-08 | 2009-05-26 | Faronics Corporation | Method and system for automatically preserving persistent storage |
US6732267B1 (en) * | 2000-09-11 | 2004-05-04 | Dell Products L.P. | System and method for performing remote BIOS updates |
US6728875B1 (en) * | 2000-11-09 | 2004-04-27 | International Business Machines Corporation | Network station suitable for identifying and prioritizing network adapters |
US20030182414A1 (en) * | 2003-05-13 | 2003-09-25 | O'neill Patrick J. | System and method for updating and distributing information |
US7401320B2 (en) * | 2000-11-17 | 2008-07-15 | Hewlett-Packard Development Company, L.P. | Operator network that routes customer care calls based on subscriber/device profile and CSR skill set |
US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
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 |
US7082549B2 (en) * | 2000-11-17 | 2006-07-25 | Bitfone Corporation | Method for fault tolerant updating of an electronic device |
US6832373B2 (en) * | 2000-11-17 | 2004-12-14 | Bitfone Corporation | System and method for updating and distributing information |
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 |
US7028184B2 (en) * | 2001-01-17 | 2006-04-11 | International Business Machines Corporation | Technique for digitally notarizing a collection of data streams |
US6990444B2 (en) | 2001-01-17 | 2006-01-24 | International Business Machines Corporation | Methods, systems, and computer program products for securely transforming an audio stream to encoded text |
JP2002244874A (ja) * | 2001-02-15 | 2002-08-30 | Toshiba Corp | 情報処理装置およびファームウェア更新方法 |
US6976136B2 (en) * | 2001-05-07 | 2005-12-13 | National Semiconductor Corporation | Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller |
US6898705B2 (en) * | 2001-05-31 | 2005-05-24 | International Business Machines Corporation | Automatic appliance server re-provision/re-purposing method |
US7161899B2 (en) * | 2001-07-20 | 2007-01-09 | Bay Microsystems, Inc. | Interlocking SONET/SDH network architecture |
US7069431B2 (en) * | 2001-07-31 | 2006-06-27 | Lenovo ( Singapore) Pte Ltd. | Recovery of a BIOS image |
US7165137B2 (en) * | 2001-08-06 | 2007-01-16 | Sandisk Corporation | System and method for booting from a non-volatile application and file storage device |
US7281125B2 (en) * | 2001-08-24 | 2007-10-09 | Lenovo (Singapore) Pte. Ltd. | Securing sensitive configuration data remotely |
US20030046524A1 (en) * | 2001-08-30 | 2003-03-06 | Zimmer Vincent J. | Method for dynamically designating initialization modules as recovery code |
US6918062B2 (en) * | 2001-09-28 | 2005-07-12 | Intel Corporation | System and method to implement a cost-effective remote system management mechanism using a serial communication controller and interrupts |
TWI237759B (en) * | 2001-10-04 | 2005-08-11 | Via Tech Inc | Method for data accessing in a computer and the computer thereof |
GB2383441B (en) * | 2001-12-24 | 2004-01-14 | Inventec Corp | Display system and method for bios updating |
US6934873B2 (en) * | 2002-02-28 | 2005-08-23 | Dell Products L.P. | Automatic BIOS recovery in a multi-node computer system |
US7225363B2 (en) * | 2002-03-18 | 2007-05-29 | Sun Microsystems, Inc. | Method and apparatus for abandoning an interrupted task |
US20040194081A1 (en) * | 2002-03-23 | 2004-09-30 | Iyad Qumei | Update system for facilitating firmware/software update in a mobile handset |
US6792478B2 (en) | 2002-03-29 | 2004-09-14 | Intel Corporation | System and method to configure input/output (IO) devices to use selected pairs of port addresses |
US7369851B2 (en) * | 2002-04-19 | 2008-05-06 | Hewlett-Packard Development Company, L.P. | Communications network capable of determining SIM card changes in electronic devices |
US20030204633A1 (en) * | 2002-04-30 | 2003-10-30 | Compaq Information Technologies Group, L.P. | Method and apparatus for updating operating instructions in a modem in a router |
US6898651B2 (en) * | 2002-05-10 | 2005-05-24 | Intel Corporation | Method, apparatus, and system for generating serial interrupt requests (IRQ) with power savings |
US7039796B2 (en) | 2002-06-04 | 2006-05-02 | Hewlett-Packard Development Company, L.P. | Method and system of locating a position in memory at which to store incoming firmware image |
US20030233534A1 (en) * | 2002-06-12 | 2003-12-18 | Adrian Bernhard | Enhanced computer start-up methods |
US20040025045A1 (en) * | 2002-07-30 | 2004-02-05 | Sentry Technologies Pte, Ltd. | Method for switching rapidly between computing modes |
US7305668B2 (en) * | 2002-07-31 | 2007-12-04 | Intel Corporation | Secure method to perform computer system firmware updates |
NZ520786A (en) * | 2002-08-14 | 2005-06-24 | Daniel James Oaeconnell | Method of booting a computer system using a memory image of the post boot content of the system RAM memory |
US7340736B2 (en) * | 2002-08-22 | 2008-03-04 | Hewlett-Packard Development Company, L.P. | Electronic device with an update agent that employs preprocessing techniques for update |
US8233893B2 (en) * | 2002-08-22 | 2012-07-31 | Hewlett-Packard Development Company, L.P. | Mobile handset update package generator that employs nodes technique |
US7185331B2 (en) * | 2002-08-27 | 2007-02-27 | Inrange Technologies Corporation | Method and apparatus for downloading executable code in a non-disruptive manner |
US7669197B1 (en) | 2002-09-12 | 2010-02-23 | Hewlett-Packard Development Company, L.P. | Embedded system employing component architecture platform |
US7472380B1 (en) | 2002-09-23 | 2008-12-30 | Hewlett-Packard Development Company, L.P. | Processing system with component architecture platform support |
US7082525B2 (en) | 2002-10-02 | 2006-07-25 | Sandisk Corporation | Booting from non-linear memory |
US7461372B2 (en) * | 2002-10-11 | 2008-12-02 | Hewlett-Packard Development Company, L.P. | System for optimizing distribution of information employing a universal dictionary |
JP3969278B2 (ja) * | 2002-10-21 | 2007-09-05 | 株式会社デンソー | 電子制御装置 |
US20040076043A1 (en) * | 2002-10-21 | 2004-04-22 | Phoenix Technologies Ltd. | Reliable and secure updating and recovery of firmware from a mass storage device |
AU2003284292A1 (en) * | 2002-10-21 | 2004-05-13 | Bitfone Corporation | System with required enhancements to syncml dm environment to support firmware updates |
US20040093592A1 (en) | 2002-11-13 | 2004-05-13 | Rao Bindu Rama | Firmware update in electronic devices employing SIM card for saving metadata information |
US7984435B2 (en) * | 2002-11-13 | 2011-07-19 | Hewlett-Packard Development Company, L.P. | Update system employing reference software to reduce number of update packages |
JP4128516B2 (ja) * | 2002-11-18 | 2008-07-30 | 株式会社リコー | 画像形成装置、プログラム更新方法 |
US7047448B2 (en) * | 2002-11-21 | 2006-05-16 | Bitfone Corporation | Software self-repair toolkit for electronic devices |
US6996818B2 (en) * | 2002-11-22 | 2006-02-07 | Bitfone Corporation | Update system for facilitating software update and data conversion in an electronic device |
US7434216B1 (en) | 2002-11-25 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Update package generator that employs genetic evolution to determine bank order |
JP2004199277A (ja) * | 2002-12-17 | 2004-07-15 | Fujitsu Ltd | Biosの冗長管理方法、データ処理装置及びストレージシステム |
AU2003300431A1 (en) * | 2002-12-31 | 2004-07-29 | Bitfone Corporation | Management of service components installed in an electronic device in a mobile services network |
US7480907B1 (en) | 2003-01-09 | 2009-01-20 | Hewlett-Packard Development Company, L.P. | Mobile services network for update of firmware/software in mobile handsets |
US7890427B1 (en) | 2003-01-09 | 2011-02-15 | Hewlett-Packard Development Company, L.P. | Authentication of notifications received in an electronic device in a mobile services network |
WO2004063899A2 (en) | 2003-01-13 | 2004-07-29 | Bitfone Corporation | Mobile handset capable of updating its update agent |
US7644406B2 (en) * | 2003-01-21 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Update system capable of updating software across multiple FLASH chips |
WO2004072773A2 (en) * | 2003-02-11 | 2004-08-26 | Bitfone Corporation | Electronic device supporting multiple update agents |
US20040230965A1 (en) * | 2003-02-28 | 2004-11-18 | Harri Okkonen | Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server |
US7689981B1 (en) | 2003-02-28 | 2010-03-30 | Hewlett-Packard Development Company, L.P. | Mobile handset with efficient interruption point detection during a multiple-pass update process |
US8082339B2 (en) | 2003-02-28 | 2011-12-20 | Hewlett-Packard Development Company, L.P. | Electronic device network having graceful denial of service |
US7881745B1 (en) | 2003-03-10 | 2011-02-01 | Hewlett-Packard Development Company, L.P. | Electronic device network employing provisioning techniques to update firmware and/or software in electronic devices |
US7356727B1 (en) | 2003-03-10 | 2008-04-08 | Hewlett-Packard Development Company, L.P. | Electronic device employing efficient fault tolerance |
US7548986B1 (en) | 2003-03-17 | 2009-06-16 | Hewlett-Packard Development Company, L.P. | Electronic device network providing streaming updates |
WO2004086196A2 (en) * | 2003-03-24 | 2004-10-07 | Bitfone Corporation | Electronic device supporting multiple update agents |
US7975147B1 (en) | 2003-03-31 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Electronic device network supporting enciphering and deciphering and update generation in electronic devices |
US7174451B2 (en) * | 2003-03-31 | 2007-02-06 | Intel Corporation | System and method for saving and/or restoring system state information over a network |
US7174446B2 (en) | 2003-04-25 | 2007-02-06 | Dell Products L.P. | System and method for managing the boot sequence of an information handling system |
EP1475704A2 (de) * | 2003-05-08 | 2004-11-10 | Matsushita Electric Industrial Co., Ltd. | Informationsverarbeitungsgerät |
US7322029B2 (en) * | 2003-05-08 | 2008-01-22 | American Megatrends, Inc. | Method and system for recovering program code in a computer system |
US20040225874A1 (en) * | 2003-05-09 | 2004-11-11 | Jeremy Burr | Method for reduced BIOS boot time |
US7188238B2 (en) * | 2003-05-21 | 2007-03-06 | Intel Corporation | Methods and apparatus to update a basic input/output system (BIOS) |
US7987449B1 (en) | 2003-05-22 | 2011-07-26 | Hewlett-Packard Development Company, L.P. | Network for lifecycle management of firmware and software in electronic devices |
US7747994B1 (en) | 2003-06-04 | 2010-06-29 | Hewlett-Packard Development Company, L.P. | Generator based on multiple instruction streams and minimum size instruction set for generating updates to mobile handset |
EP1654640B1 (de) * | 2003-06-04 | 2018-08-01 | Qualcomm Incorporated | Netzwerk mit konfiguriebaren generatoren von software-aktualisierungen und mit mobilen elektronischen geräten, die ein konfigurierbares programm zum aktualisieren von software besitzen |
US7584466B1 (en) * | 2003-06-16 | 2009-09-01 | Hewlett-Packard Development Company, L.P. | Management tree management in a mobile handset |
US8046753B1 (en) | 2003-06-18 | 2011-10-25 | Hewlett-Packard Development Company, L.P. | Mobile handset with symbian OS and update agent |
EP1636700A1 (de) * | 2003-06-24 | 2006-03-22 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum nachladen einer software in den bootsektor eines programmierbaren lesespeicher |
WO2005001665A2 (en) * | 2003-06-27 | 2005-01-06 | Bitfone Corporation | System and method for downloading update packages into a mobile handset in a carrier network |
US20040268116A1 (en) * | 2003-06-30 | 2004-12-30 | Vasisht Virender K | Fault tolerant recovery block with reduced flash footprint |
US20040268336A1 (en) * | 2003-06-30 | 2004-12-30 | Chen-Jen Lu | System and method for equipment automation program refresh |
US7343443B1 (en) | 2003-07-08 | 2008-03-11 | Hewlett-Packard Development Company, L.P. | Updated package generation based on analysis of bank dependency |
WO2005008940A2 (en) * | 2003-07-09 | 2005-01-27 | Bitfone Corporation | Carrier network capable of conducting remote diagnostics in a mobile handset |
US7366125B1 (en) | 2003-07-24 | 2008-04-29 | Bbn Technologies Corp. | Extensible satellite communication system |
JP2005050073A (ja) * | 2003-07-28 | 2005-02-24 | Matsushita Electric Ind Co Ltd | データ復旧方法およびデータ記録装置 |
EP1652075B1 (de) * | 2003-07-29 | 2018-10-31 | Qualcomm Incorporated | Mobiler handapparat mit in hardware implementiertem aktualisierungs-agent |
US7886093B1 (en) | 2003-07-31 | 2011-02-08 | Hewlett-Packard Development Company, L.P. | Electronic device network supporting compression and decompression in electronic devices |
EP1660996A2 (de) * | 2003-09-03 | 2006-05-31 | Bitfone Corporation | Dreiphasen-boot-prozess in elektronischen einrichtungen |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
US7668612B1 (en) | 2003-09-18 | 2010-02-23 | Hewlett-Packard Development Company, L.P. | System and method for efficient manufacture and update of electronic devices |
US7694293B2 (en) * | 2003-09-26 | 2010-04-06 | Hewlett-Packard Development Company, L.P. | Update package catalog for update package transfer between generator and content server in a network |
WO2005036916A1 (en) * | 2003-10-03 | 2005-04-21 | Bitfone Corporation | Network and method for registration of mobile devices and management of the mobile devices |
US7716276B1 (en) | 2003-11-17 | 2010-05-11 | Hewlett-Packard Development Company, L.P. | Network that supports user-initiated device management |
US7571484B2 (en) * | 2003-12-04 | 2009-08-04 | Microsoft Corporation | System and method for image authentication of a resource-sparing operating system |
US20050125412A1 (en) * | 2003-12-09 | 2005-06-09 | Nec Laboratories America, Inc. | Web crawling |
US20050132351A1 (en) * | 2003-12-12 | 2005-06-16 | Randall Roderick K. | Updating electronic device software employing rollback |
US7797693B1 (en) | 2003-12-12 | 2010-09-14 | Hewlett-Packard Development Company, L.P. | NAND mobile devices capable of updating firmware or software in a manner analogous to NOR mobile devices |
US7424603B2 (en) * | 2003-12-18 | 2008-09-09 | Intel Corporation | Method and apparatus to store initialization and configuration information |
US7099967B2 (en) * | 2003-12-22 | 2006-08-29 | Hewlett-Packard Development Company, L.P. | System and method for storing an image file in a computer system |
US7103687B2 (en) * | 2003-12-22 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | System and method for providing an image file in a computer system |
US8924522B2 (en) | 2003-12-23 | 2014-12-30 | Intel Corporation | Method and apparatus for remote modification of system configuration setting |
US8990366B2 (en) | 2003-12-23 | 2015-03-24 | Intel Corporation | Method and apparatus for remote modification of system configuration |
US7373498B2 (en) * | 2003-12-23 | 2008-05-13 | Intel Corporation | Method and apparatus for updating a system configuration through an active or passive update |
US9323515B1 (en) | 2004-01-16 | 2016-04-26 | Qualcomm Incorporated | Network with broker for device management |
US8838754B1 (en) | 2004-01-26 | 2014-09-16 | Qualcomm Incorporated | Mobile device with a management forest in a device management network |
JP4534498B2 (ja) * | 2004-01-28 | 2010-09-01 | ソニー株式会社 | 半導体装置およびその起動処理方法 |
US7984485B1 (en) | 2004-01-29 | 2011-07-19 | Hewlett-Packard Development Company, L.P. | Ingestion interface for transferring update package containers into a distribution network |
KR100987628B1 (ko) * | 2004-02-07 | 2010-10-13 | 엘지전자 주식회사 | 엠비디드 컨트롤러의 펌웨어 갱신방법 및 갱신용 펌웨어저장매체 |
WO2005079334A2 (en) * | 2004-02-12 | 2005-09-01 | Bitfone Corporation | Device management network that facilitates selective billing |
KR100564613B1 (ko) * | 2004-02-25 | 2006-03-29 | 삼성전자주식회사 | 플래시 메모리 및 광 드라이브의 펌웨어 모듈 동적 로딩동작 방법 |
US7739679B2 (en) * | 2004-04-06 | 2010-06-15 | Hewlett-Packard Development Company, L.P. | Object ordering tool for facilitating generation of firmware update friendly binary image |
WO2005103896A1 (en) * | 2004-04-20 | 2005-11-03 | Koninklijke Philips Electronics N.V. | Restoring the firmware and all programmable content of an optical drive |
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 |
US7971199B1 (en) | 2004-05-03 | 2011-06-28 | Hewlett-Packard Development Company, L.P. | Mobile device with a self-updating update agent in a wireless network |
US7689982B1 (en) | 2004-05-07 | 2010-03-30 | Hewlett-Packard Development Company, L.P. | Transparent linker profiler tool with profile database |
US7543118B1 (en) | 2004-05-07 | 2009-06-02 | Hewlett-Packard Development Company, L.P. | Multiple variance platform for the management of mobile devices |
US7657886B1 (en) | 2004-06-03 | 2010-02-02 | Hewlett-Packard Development Company, L.P. | Mobile device with a MMU for faster firmware updates in a wireless network |
US7269829B2 (en) * | 2004-07-30 | 2007-09-11 | Signature Control Systems, Inc. | Method and system for remote update of microprocessor code for irrigation controllers |
EP1624707B1 (de) * | 2004-08-05 | 2009-03-25 | Sony Ericsson Mobile Communications AB | Softwareaktualisierung in einem tragbaren Funkkommunikationsgerät |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US7353377B2 (en) * | 2004-09-10 | 2008-04-01 | Intel Corporation | Remotely providing basic input/output system to a client system |
US7624452B2 (en) * | 2004-10-20 | 2009-11-24 | Digi International | Automatic device configuration using removable storage |
DE102004061294B4 (de) * | 2004-12-20 | 2020-03-19 | Tridonic Gmbh & Co Kg | Verfahren zur Programmierung eines Betriebsgerätes für Leuchtmittel, Schnittstelle für ein Betriebsgerät für Leuchtmittel und Betriebsgerät für Leuchtmittel |
US20060175271A1 (en) * | 2005-01-31 | 2006-08-10 | Emrey David A | Apparatus and method of holding a golf score card and writing instrument, and golf bag and system incorporating the same |
TWI273383B (en) * | 2005-06-29 | 2007-02-11 | Inventec Corp | Computer platform system program remote control recovery method and system |
TW200713037A (en) * | 2005-09-06 | 2007-04-01 | Benq Corp | System and method for updating firmware |
WO2007085987A1 (en) * | 2006-01-27 | 2007-08-02 | Koninklijke Philips Electronics N.V. | Method for keeping track of upgrade safety, electronic device with upgradable firmware, server and data carrier |
US8968105B2 (en) * | 2006-02-14 | 2015-03-03 | Wms Gaming Inc. | Reorganizing a wagering game machine's NVRAM |
EP2036412B1 (de) * | 2006-06-01 | 2012-11-14 | Exaflop LLC | Gesteuerter warmlufteinfang |
CN101501599B (zh) * | 2006-06-01 | 2011-12-21 | 谷歌公司 | 模块化计算环境 |
WO2007142656A2 (en) * | 2006-06-01 | 2007-12-13 | Exaflop Llc | Data center uninterruptible power distribution architecture |
WO2007146710A2 (en) | 2006-06-08 | 2007-12-21 | Hewlett-Packard Development Company, L.P. | Device management in a network |
US8752044B2 (en) | 2006-07-27 | 2014-06-10 | Qualcomm Incorporated | User experience and dependency management in a mobile device |
US20080079539A1 (en) * | 2006-08-15 | 2008-04-03 | Daley Robert C | Friends Finder Service for a Mobile Device in a Network |
DE102006043636A1 (de) * | 2006-09-18 | 2008-03-27 | Fujitsu Siemens Computers Gmbh | Computersystem und Verfahren zum Aktualisieren von Programmcode |
US8286238B2 (en) * | 2006-09-29 | 2012-10-09 | Intel Corporation | Method and apparatus for run-time in-memory patching of code from a service processor |
US7870379B2 (en) * | 2006-10-10 | 2011-01-11 | Exaflop Llc | Updating a power supply microcontroller |
JP5040264B2 (ja) | 2006-11-01 | 2012-10-03 | セイコーエプソン株式会社 | 情報処理装置、情報更新方法及びそのプログラム |
CN201015041Y (zh) * | 2006-12-29 | 2008-01-30 | 鸿富锦精密工业(深圳)有限公司 | Bios芯片扩展装置 |
US9348730B2 (en) * | 2007-01-31 | 2016-05-24 | Standard Microsystems Corporation | Firmware ROM patch method |
US8572598B1 (en) * | 2007-04-18 | 2013-10-29 | Nvidia Corporation | Method and system for upgrading software in a computing device |
US7822935B2 (en) * | 2007-05-03 | 2010-10-26 | Sandisk Il Ltd. | Methods for data-smuggling |
WO2008135969A1 (en) * | 2007-05-03 | 2008-11-13 | Sandisk Il Ltd. | Storage device and method for data-smuggling |
US10339227B1 (en) | 2007-06-08 | 2019-07-02 | Google Llc | Data center design |
US8080900B2 (en) * | 2007-07-18 | 2011-12-20 | Exaflop Llc | Direct-coupled IT load |
US8721458B2 (en) * | 2007-11-09 | 2014-05-13 | Wms Gaming Inc. | NVRAM management in a wagering game machine |
US8332838B2 (en) * | 2007-11-14 | 2012-12-11 | Continental Automotive Systems, Inc. | Systems and methods for updating device software |
US8219595B2 (en) | 2008-02-14 | 2012-07-10 | Hewlett-Packard Development Company, L.P. | System and method for efficient remote data access for server management |
US8132253B2 (en) * | 2008-04-21 | 2012-03-06 | Dell Products L.P. | Memory security override protection for manufacturability of information handling systems |
TW200945200A (en) * | 2008-04-22 | 2009-11-01 | Asustek Comp Inc | Computer system, BIOS structure and power-on method thereof |
US8504811B2 (en) * | 2008-05-21 | 2013-08-06 | Dell Products, Lp | System and method of accessing BIOS change summary information within a BIOS operating environment |
US9547345B2 (en) * | 2008-07-11 | 2017-01-17 | Hewlett-Packard Development Company, L.P. | System and method for safely updating thin client operating system over a network |
TW201009704A (en) * | 2008-08-20 | 2010-03-01 | Incomm Technologies Co Ltd | Memory card and non-volatile memory controller thereof |
TWI370971B (en) * | 2008-08-20 | 2012-08-21 | Incomm Technologies Co Ltd | Memory card and non-volatile memory controller thereof |
TWI460657B (zh) * | 2008-09-05 | 2014-11-11 | Asustek Comp Inc | 更新與修復基本輸入輸出系統的方法 |
US8069343B2 (en) * | 2009-03-20 | 2011-11-29 | Concorso James A | Computer with bootable restoration |
US8046631B2 (en) * | 2009-04-29 | 2011-10-25 | Lsi Corporation | Firmware recovery in a raid controller by using a dual firmware configuration |
US8178997B2 (en) | 2009-06-15 | 2012-05-15 | Google Inc. | Supplying grid ancillary services using controllable loads |
TW201102924A (en) * | 2009-07-03 | 2011-01-16 | Inventec Appliances Corp | Embedded electronic device and method for updating firmware thereof |
CN101706788B (zh) * | 2009-11-25 | 2012-11-14 | 惠州Tcl移动通信有限公司 | 一种嵌入式文件系统的跨区访问方法 |
TWI416373B (zh) * | 2010-03-25 | 2013-11-21 | Wistron Corp | 鍵盤定義更新方法及電腦系統 |
JP5305473B2 (ja) * | 2010-11-26 | 2013-10-02 | Necインフロンティア株式会社 | エラーコード出力装置及びエラーコード出力方法 |
US8595716B2 (en) | 2011-04-06 | 2013-11-26 | Robert Bosch Gmbh | Failsafe firmware updates |
US8193662B1 (en) | 2011-10-17 | 2012-06-05 | Google Inc. | Power supply source blending and smoothing |
US8849647B2 (en) | 2011-10-19 | 2014-09-30 | Lsi Corporation | Dual-firmware for next generation emulation |
US20130166893A1 (en) * | 2011-12-23 | 2013-06-27 | Sandisk Technologies Inc. | Auxiliary card initialization routine |
US9009500B1 (en) | 2012-01-18 | 2015-04-14 | Google Inc. | Method of correlating power in a data center by fitting a function to a plurality of pairs of actual power draw values and estimated power draw values determined from monitored CPU utilization of a statistical sample of computers in the data center |
KR20140007990A (ko) * | 2012-07-09 | 2014-01-21 | 삼성전자주식회사 | 불휘발성 램을 포함하는 사용자 장치 및 그것의 데이터 관리 방법 |
US9032250B1 (en) | 2012-11-05 | 2015-05-12 | Google Inc. | Online testing of secondary power unit |
US9823972B2 (en) * | 2014-10-28 | 2017-11-21 | Samsung Electronics Co., Ltd. | Mobile flash storage boot partition and/or logical unit shadowing |
KR102261815B1 (ko) * | 2014-10-30 | 2021-06-07 | 삼성전자주식회사 | 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템 |
US10824517B2 (en) * | 2017-05-08 | 2020-11-03 | American Megatrends International, Llc | Backup and recovery of configuration files in management device |
US11537389B2 (en) * | 2017-12-12 | 2022-12-27 | Infineon Technologies LLC | Memory devices, systems, and methods for updating firmware with single memory device |
US10395038B2 (en) * | 2018-02-01 | 2019-08-27 | Quanta Computer Inc. | System and method for automatic recovery of firmware image |
US11733994B2 (en) * | 2019-05-03 | 2023-08-22 | EMC IP Holding Company LLC | System and method for state management |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4298949A (en) * | 1976-08-16 | 1981-11-03 | Texas Instruments Incorporated | Electronic calculator system having high order math capability |
US4290104A (en) * | 1979-01-02 | 1981-09-15 | Honeywell Information Systems Inc. | Computer system having a paging apparatus for mapping virtual addresses to real addresses for a memory of a multiline communications controller |
US4374417A (en) * | 1981-02-05 | 1983-02-15 | International Business Machines Corp. | Method for using page addressing mechanism |
US4443847A (en) * | 1981-02-05 | 1984-04-17 | International Business Machines Corporation | Page addressing mechanism |
US4441155A (en) * | 1981-11-23 | 1984-04-03 | International Business Machines Corporation | Page controlled cache directory addressing |
US4608632A (en) * | 1983-08-12 | 1986-08-26 | International Business Machines Corporation | Memory paging system in a microcomputer |
US4663707A (en) * | 1984-05-25 | 1987-05-05 | Scientific Micro Systems, Inc. | Multilevel bootstrap apparatus |
US4799145A (en) * | 1985-04-03 | 1989-01-17 | Honeywell Bull Inc. | Facility for passing data used by one operating system to a replacement operating system |
CA1242809A (en) * | 1985-12-20 | 1988-10-04 | Mitel Corporation | Data storage system |
US4763333A (en) * | 1986-08-08 | 1988-08-09 | Universal Vectors Corporation | Work-saving system for preventing loss in a computer due to power interruption |
US4831522A (en) * | 1987-02-17 | 1989-05-16 | Microlytics, Inc. | Circuit and method for page addressing read only memory |
US4862349A (en) * | 1987-10-19 | 1989-08-29 | International Business Machines Corporation | Method for extracting and/or replacing control system information in a computer operating system |
US5053990A (en) * | 1988-02-17 | 1991-10-01 | Intel Corporation | Program/erase selection for flash memory |
GB8825764D0 (en) * | 1988-11-03 | 1988-12-07 | Lucas Ind Plc | Computer memory addressing system |
US5142680A (en) * | 1989-04-26 | 1992-08-25 | Sun Microsystems, Inc. | Method for loading an operating system through a network |
US5210875A (en) * | 1989-08-25 | 1993-05-11 | International Business Machines Corporation | Initial bios load for a personal computer system |
US5136713A (en) * | 1989-08-25 | 1992-08-04 | International Business Machines Corporation | Apparatus and method for decreasing the memory requirements for bios in a personal computer system |
US5126808A (en) * | 1989-10-23 | 1992-06-30 | Advanced Micro Devices, Inc. | Flash EEPROM array with paged erase architecture |
US5134580A (en) * | 1990-03-22 | 1992-07-28 | International Business Machines Corporation | Computer with capability to automatically initialize in a first operating system of choice and reinitialize in a second operating system without computer shutdown |
EP0500973B1 (de) * | 1991-02-25 | 1999-05-06 | Siemens Aktiengesellschaft | EEPROM und Verfahren zum Ändern einer Initialisierungsroutine im EEPROM |
DE4215063C2 (de) * | 1991-05-10 | 1999-11-25 | Intel Corp | Einrichtung und Verfahren zum Seitenwechsel bei einem nicht-flüchtigen Speicher |
US5388267A (en) * | 1991-05-29 | 1995-02-07 | Dell Usa, L.P. | Method and apparatus for updating and restoring system BIOS functions while maintaining BIOS integrity |
-
1992
- 1992-04-28 IT ITMI921004A patent/IT1254937B/it active IP Right Grant
- 1992-04-30 DE DE4214184A patent/DE4214184C2/de not_active Expired - Lifetime
- 1992-05-06 JP JP13967392A patent/JP3372964B2/ja not_active Expired - Lifetime
-
1995
- 1995-07-24 US US08/505,995 patent/US5579522A/en not_active Expired - Lifetime
Cited By (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0524719A3 (en) * | 1991-05-29 | 1993-09-08 | Dell Usa L.P. | Computer system with alterable bootstrapping software |
EP0536793A3 (en) * | 1991-10-11 | 1993-11-10 | Toshiba Kk | Personal computer using flash memory as bios-rom |
EP1028371A3 (de) * | 1991-10-11 | 2001-02-21 | Kabushiki Kaisha Toshiba | PC mit integriertem wiederbeschreibbarem ROM zur Speicherung des DIOs |
EP1028371A2 (de) * | 1991-10-11 | 2000-08-16 | Kabushiki Kaisha Toshiba | PC mit integriertem wiederbeschreibbarem ROM zur Speicherung des DIOs |
EP0536793A2 (de) * | 1991-10-11 | 1993-04-14 | Kabushiki Kaisha Toshiba | PC mit integriertem wiederbeschreibbarem ROM zur Speicherung des BIOS |
EP0909095A1 (de) * | 1992-12-09 | 1999-04-14 | Discovery Communications, Inc. | Reprogrammierbares Endgerät für Programmvorschläge eines Fernsehprogrammversorgungssystems |
US6181335B1 (en) | 1992-12-09 | 2001-01-30 | Discovery Communications, Inc. | Card for a set top terminal |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
EP0912058A3 (de) * | 1992-12-09 | 1999-05-19 | Discovery Communications, Inc. | Vorrichtung und Verfahren zur Bereitstellung von Rundfunkdatendiensten |
EP0912058A2 (de) * | 1992-12-09 | 1999-04-28 | Discovery Communications, Inc. | Vorrichtung und Verfahren zur Bereitstellung von Rundfunkdatendiensten |
US5388083A (en) * | 1993-03-26 | 1995-02-07 | Cirrus Logic, Inc. | Flash memory mass storage architecture |
US5522076A (en) * | 1993-05-13 | 1996-05-28 | Kabushiki Kaisha Toshiba | Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function |
EP0642090A3 (de) * | 1993-08-30 | 1995-03-22 | Siemens Aktiengesellschaft | Elektronische Baugruppe mit wenigstens einer dezentralen Prozessoreinrichtung eines mehrprozessorgesteuerten Systems |
EP0642090A2 (de) * | 1993-08-30 | 1995-03-08 | Siemens Aktiengesellschaft | Elektronische Baugruppe mit wenigstens einer dezentralen Prozessoreinrichtung eines mehrprozessorgesteuerten Systems |
GB2290890B (en) * | 1994-06-29 | 1999-03-24 | Mitsubishi Electric Corp | Information processing system |
US5835761A (en) * | 1994-06-29 | 1998-11-10 | Mitsubishi Denki Kabushiki Kaisha | Information processing system capable of updating a BIOS programme without interrupting or stopping the operational of a system |
GB2290890A (en) * | 1994-06-29 | 1996-01-10 | Mitsubishi Electric Corp | Updating a basic input/output system programme |
FR2722015A1 (fr) * | 1994-06-29 | 1996-01-05 | Mitsubishi Electric Corp | Systeme de traitement d'informations |
EP0723226A1 (de) * | 1995-01-18 | 1996-07-24 | Hewlett-Packard Company | Stromversorgungsausfallbeständige Aktualisierung eines Flash-EEPROM-Speichers |
WO1999026166A3 (de) * | 1997-11-14 | 1999-07-22 | Bosch Gmbh Robert | Verfahren zum laden eines programms und datenverarbeitungsgerät |
WO1999026166A2 (de) * | 1997-11-14 | 1999-05-27 | Robert Bosch Gmbh | Verfahren zum laden eines programms und datenverarbeitungsgerät |
EP1058930A4 (de) * | 1998-01-06 | 2005-02-16 | Macronix Int Co Ltd | Ein speicherunterstützendes multiples addressenprotokoll |
EP1058930A1 (de) * | 1998-01-06 | 2000-12-13 | Macronix International Co., Ltd. | Ein speicherunterstützendes multiples addressenprotokoll |
US6040997A (en) * | 1998-03-25 | 2000-03-21 | Lexar Media, Inc. | Flash memory leveling architecture having no external latch |
WO2001014965A1 (en) * | 1999-08-24 | 2001-03-01 | Koninklijke Philips Electronics N.V. | Data processing apparatus with non-volatile memory for both program and data |
US9813641B2 (en) | 2000-06-19 | 2017-11-07 | Comcast Ip Holdings I, Llc | Method and apparatus for targeting of interactive virtual objects |
US9078014B2 (en) | 2000-06-19 | 2015-07-07 | Comcast Ip Holdings I, Llc | Method and apparatus for targeting of interactive virtual objects |
US10140433B2 (en) | 2001-08-03 | 2018-11-27 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US10349096B2 (en) | 2001-08-03 | 2019-07-09 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US8578410B2 (en) | 2001-08-03 | 2013-11-05 | Comcast Ip Holdings, I, Llc | Video and digital multimedia aggregator content coding and formatting |
US8621521B2 (en) | 2001-08-03 | 2013-12-31 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
DE10141894A1 (de) * | 2001-08-28 | 2003-06-26 | Siemens Ag | Vorrichtung für den Einsatz in Bussystemen |
DE10146609A1 (de) * | 2001-09-21 | 2003-04-10 | Abb Patent Gmbh | Busteilnehmergerät mit integriertem Flash-Speicher und Verfahren zur Änderung, Erweiterung und Fehlerkorrektur von in einem Mikrocontroller gespeicherten Daten |
DE10146611A1 (de) * | 2001-09-21 | 2003-04-10 | Abb Patent Gmbh | Busteilnehmergerät und Verfahren zur Änderung, Erweiterung und Fehlerkorrektur von blockweise gespeicherten Daten in einem Mikrocontroller eines Busteilnehmers |
EP1872210A1 (de) * | 2005-04-22 | 2008-01-02 | Endress+Hauser GmbH+Co. KG | Verfahren zum aufrüsten eines mikroprozessorgesteuerten geräts mit neuem softwarecode über ein kommunikationsnetzwerk |
EP2180403A1 (de) * | 2008-10-21 | 2010-04-28 | Moxa Inc. | Sicherungssystem, das Bootdatendateien eines eingebetteten Systems in verschiedenen Speicherabschnitten speichert und Verfahren dafür |
Also Published As
Publication number | Publication date |
---|---|
JPH06266552A (ja) | 1994-09-22 |
ITMI921004A0 (it) | 1992-04-28 |
US5579522A (en) | 1996-11-26 |
JP3372964B2 (ja) | 2003-02-04 |
IT1254937B (it) | 1995-10-11 |
ITMI921004A1 (it) | 1993-10-28 |
DE4214184C2 (de) | 2002-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4214184C2 (de) | Computersystem mit einem nicht-flüchtigen Speicher und Verfahren zu dessen Aktualisierung | |
DE69726304T2 (de) | Nichtflüchtiger schreibbarer speicher mit programmierungsaufhebungsbefehl | |
DE60008929T2 (de) | Schnellstart eines mikroprozessorbasierten systems | |
DE69627814T2 (de) | System zum bereitstellen eines bios für den hauptrechner | |
DE69724516T2 (de) | Rechnersystem und Verfahren zur Ausführung von architekturspezifischem Programmcode mit geringen Laufzeitspeicherbereichsanforderungen | |
DE19681704B4 (de) | Verfahren zum Ausführen eines Programms aus einem nichtflüchtigen Speicher heraus | |
DE10297281B4 (de) | Verfahren zum elementaren Aktualisieren einer Vielzahl von Dateien | |
DE4215063A1 (de) | Einrichtung und verfahren zum seitenwechsel bei einem nicht-fluechtigen speicher | |
DE69914595T2 (de) | Geschütztes speichermedium für ein rechnersystem | |
DE69726088T2 (de) | Methode und Apparat zur Speicherverwaltung | |
DE112009002207B4 (de) | Aktualisieren einer Firmware mit mehreren Prozessoren | |
DE60030872T2 (de) | Verfahren und anordnung um atomische aktualisierungen durchzuführen durch verwendung eines logischen flaschspeichergerätes | |
DE112008000180T5 (de) | Verfahren und System für die Umsetzung eines Fast-Wakeup eines Flashspeichersystems | |
DE10238566A1 (de) | Fenster-basierendes Flashspeicher-Speichersystem und Management und Zugriffsverfahren darauf | |
DE60210434T2 (de) | Betriebssystemselektor und Datenplattenspeicher | |
DE10225664A1 (de) | System und Verfahren zum Prüfen von Systemabrufereignissen mit Systemabrufumhüllungen | |
DE602005003778T2 (de) | Verfahren und Vorrichtung zum Wiederbeschreiben eines Sektors mit Bootloader-Software in einem sektor-löschbaren nichtflüchtigen Halbleiterspeicher | |
DE112008003584B4 (de) | Ein einheitliches Aussehen und Anfühlen schaffende Bios-Graphikmaschine | |
DE102006029690A1 (de) | Beibehaltung einer Identifikation einer elektronischen Steuereinheit bei Umprogrammierungsereignissen | |
DE102005037855A1 (de) | System und Verfahren zum Speichern von Benutzerdaten in einer Partitionsdatei oder zum Verwenden einer Partitionsdatei, die Benutzerdaten enthält | |
DE69726034T2 (de) | Elektronischer Apparat mit Speichervorrichtung und Verfahren zum Wiederprogrammieren der Speichervorrichtung | |
DE10330607A1 (de) | Einzelchip-Mikrocomputer und Verfahren zu dessen Boot-Region-Schaltern | |
DE60316804T2 (de) | Verfahren und vorrichtung zum einschreiben von daten in einen nicht flüchtigen speicher | |
DE60210118T2 (de) | Sicherheitseinrichtung für eine massenspeicherung | |
DE19946959B4 (de) | Verfahren zum Laden von Daten für grundlegende Systemroutinen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G06F 9/44 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
R071 | Expiry of right | ||
R071 | Expiry of right |