DE10200902A1 - Schneller Systemstart für eingebettete Systeme - Google Patents
Schneller Systemstart für eingebettete SystemeInfo
- Publication number
- DE10200902A1 DE10200902A1 DE10200902A DE10200902A DE10200902A1 DE 10200902 A1 DE10200902 A1 DE 10200902A1 DE 10200902 A DE10200902 A DE 10200902A DE 10200902 A DE10200902 A DE 10200902A DE 10200902 A1 DE10200902 A1 DE 10200902A1
- Authority
- DE
- Germany
- Prior art keywords
- application
- computer system
- memory
- data
- processor
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Die Erfindung beruht darauf, dass der Inhalt des Datenspeichers und die Prozessorregister nach dem Starten einer Applikation eingefroren und nichtflüchtig abgespeichert wird. Die Verkürzung des Startvorgangs bzw. der Bootup-Zeit wird dadurch erreicht, dass bei dem beschleunigten Bootup die Applikation nicht auf herkömmlichem Wege gestartet werden muss, sondern dass lediglich der Datenspeicher und die Registerinhalte des Prozessors aus dem nichtflüchtigen Speicher rekonstruiert, also im einfachsten Falle kopiert werden müssen.
Description
Die Erfindung betrifft ein Verfahren zur Beschleunigung eines
Startvorganges einer Applikation mit großem Softwareanteil
auf einem Rechnersystem, wobei der Rechner über einen Daten
speicher und einen Prozessor mit Prozessorregistern verfügt,
sowie ein korrespondierendes Rechnersystem mit schneller
Startfunktion zur Ausführung einer Applikation.
Bei Entwicklungen heutiger eingebetteter Systeme bzw. Embed
ded Systeme wächst der Software-Anteil in drastischer Weise.
Durch Initialisierung und Laden dieser großen Software-Pakete
wächst proportional zur Größe der Zeitbedarf, um diese Syste
me zu starten.
Dies wird vom Kunden aber nur sehr schwer toleriert. Wün
schenswert ist ein System, dass trotz einer großen Komplexi
tät in sehr kurzer Zeit aus dem völlig ausgeschalteten Zu
stand in einen für den Benutzer bedienbaren Zustand überführt
werden kann. Beispielsweise soll ein Autoradio nahezu sofort
bedienbar sein, wenn es eingeschaltet wird. Heutige in Ent
wicklung stehende komplexe Systeme der Automatisierung oder
der Automobiltechnik benötigen Startzeiten zwischen 20 bis 60
Sekunden, die nicht akzeptabel sind.
Da oben beschriebene komplexe Systeme gerade in der Entwick
lung sind, trat das Problem eines nicht ausreichend schnellen
Startverhaltens bis jetzt so nicht auf und wurde daher bis
jetzt auch nicht gelöst. Von einem großen Softwareanteil wird
in dieser Erfindung ausgegangen, wenn ein herkömmlicher Lade
vorgang eine Bootzeit von 20 Sekunden bis 60 Sekunden oder
mehr zur Folge hat.
Aufgabe der vorliegenden Erfindung ist es daher, eine Mög
lichkeit zu schaffen, solche Startvorgänge entscheidend zu
verkürzen.
Gemäß der Erfindung wird diese Aufgabe durch ein Verfahren
zur Beschleunigung eines Startvorganges einer Applikation mit
großem Softwareanteil auf einem Rechnersystem gelöst, wobei
der Rechner über einen Datenspeicher und einen Prozessor mit
Prozessorregistern verfügt, indem
- a) alle erforderlichen Ladevorgänge und Konfigurationsvorgän ge der Applikation so vorgenommen werden, dass der Zustand von Datenspeicher und von Prozessorregistern einen lauffähi gen Zustand der Applikation beschreiben, worauf
- b) das so vorgeladene System angehalten wird und der Inhalt des Datenspeichers und die Prozessorregister nichtflüchtig gespeichert werden und
- c) für zukünftige Startvorgänge lediglich die nichtflüchtig gespeicherten Inhalte des Datenspeichers und der Prozessorre gister im Rechnersystem rekonstruiert werden.
Dabei reicht es im Extremfall aus, wenn die Schritte a) und
b) nur einmal bei der Herstellung des Rechnersystems vorge
nommen werden.
Die Durchführung von Schritt b) erfolgt durch:
- - Benachrichtigung von Treibern für an das Rechnersystem an geschlossene Geräte,
- - Anhalten des Systems durch Inaktivierung von Interrupts und/oder durch vorgesehene Systemaufrufe,
- - Auslesen und Abspeichern der aktuellen Prozessorregister,
- - Zurückschreiben von eventuellen modifizierten Daten eines zusätzlichen Vorhaltespeichers in den Datenspeicher und
- - Abspeichern des Inhalts des Datenspeichers und der Regis terinhalte in einem nichtflüchtigen Speicher.
Entsprechend dazu erfolgt die Durchführung von Schritt c)
durch:
- - Aktivierung eines Anhaltezustands durch Inaktivierung von Interrupts und/oder durch vorgesehene Systemaufrufe,
- - Rekonstruktion des Inhalts des Datenspeichers aus dem nichtflüchtigem Speicher,
- - Laden der Prozessorregister mit den im nichtflüchtigen Speicher abgelegten Werten und
- - Benachrichtigung von Treibern für an das Rechnersystem an geschlossene Geräte.
Eine weitere Verbesserung im Hinblick auf die Dauer und den
verbrauchten nichtflüchtigen Speicher eines erfindungsgemäßen
Startvorganges lässt sich erreichen, indem
- - bei der Durchführung von Schritt b) eine Komprimierung der nichtflüchtig zu speichernden Daten erfolgt und
- - bei der Durchführung von Schritt c) eine Dekomprimierung der nichtflüchtig gespeicherten Daten erfolgt.
Vorzugsweise umfasst das Vorladen der Applikation auf dem
Rechnersystem wenigstens eine Auswahl aus den folgenden Ope
rationen:
- - Vorbereiten von Tabellen,
- - Anlegen von Prozessor-Stacks und Speicher-Heaps,
- - Initialisieren von globalen Variablen.
Ferner wird die Aufgabe der Erfindung auch durch ein Rechner
system mit schneller Startfunktion zur Ausführung einer Ap
plikation gelöst mit
- - einem Prozessor mit Prozessorregistern,
- - einem flüchtigen Speicher, der einen Datenspeicher umfasst, und mit
- - einem nichtflüchtigen Speicher, der zumindest solche Inhal te von Datenspeicher und von Prozessorregistern umfasst, die einen lauffähigen Zustand der Applikation beschreiben, und mit
- - einem Mittel zum Anhalten des Systems, insbesondere durch Inaktivierung von Interrupts und/oder durch vorgesehene Sys temaufrufe und mit
- - einem Mittel zur Rekonstruktion von Inhalten von Datenspei cher und Prozessorregistern aus den einen lauffähigen Zustand der Applikation beschreibenden Inhalten des nichtflüchtigen Speichers.
Auch hierbei ist es vorteilhaft, wenn die einen lauffähigen
Zustand der Applikation beschreibenden Inhalte des nicht
flüchtigen Speichers in komprimierter Form vorliegen und ein
Mittel zur Dekomprimierung dieser Inhalte vorgesehen ist.
Ein solches erfindungsgemäßes Rechnersystem lässt sich beson
ders zur Herstellung einer vollständigen Funktionsfähigkeit
aus einem völlig ausgeschalteten Zustand verwenden, wobei ei
ne Rekonstruktion von Inhalten von Datenspeicher und Prozes
sorregistern aus den einen lauffähigen Zustand der Applikati
on beschreibenden Inhalten des nichtflüchtigen Speichers im
Zuge eines Einschaltvorgangs des Rechnersystems erfolgt.
Auf dieser Grundlage lassen sich besonders gut mobile Termi
nals konstruieren, insbesondere Telekommunikationsendgeräte.
Weitere Vorteile und Details der vorliegenden Erfindung erge
ben sich anhand der folgenden Erläuterungen und in Verbindung
mit den Figuren. Es zeigt jeweils in Prinzipdarstellung:
Fig. 1 ein Zeitdiagramm zur Vorbereitung eines vorgeladenen
Systems gemäß der Erfindung,
Fig. 2 ein Zeitdiagramm eines schnellen Startvorgangs durch
Wiederherstellung eines vorgeladenen Systems gemäß
der Erfindung und
Fig. 3 ein Zeitdiagramm eines gewöhnlichen Systemstarts nach
dem Stand der Technik.
Zur näheren Beschreibung der Erfindung soll zuerst geklärt
werden, was es bedeutet eine Applikation zu starten, d. h.
welche Schritte ausgeführt werden müssen. Dazu ist ein her
kömmlicher Startvorgang einer Applikation in der Darstellung
gemäß der Fig. 3 skizziert. Dazu ist auf der linken Seite die
Zeit T in Sekunden aufgetragen. In der Mitte sind die ver
schiedenen Zeitpunkten zugeordneten Ereignisse E und rechts
davon die daraufhin vorgenommenen Aktionen A aufgeführt.
Zum Zeitpunkt T = 0 wird das Rechnersystem eingeschaltet (Er
eignis E1). In einem embedded System liegt der Programmcode
einer Applikation in der Regel im ROM (Read only memory oder
nichtflüchtiger Speicher) oder RAM (Random access memory oder
flüchtiger Speicher) der Hardware-Plattform vor. Es folgt auf
E1 eine Initialisierung A1 und das Kopieren A2 einer Imageda
tei in den RAM-Speicher.
Daraufhin, etwa bei T = 2, wird dem Betriebssystem des Rechners
die Kontrolle übergeben (Ereignis E2). Dazu werden in A3 die
Strukturen des Betriebssystem-Kernel initialisiert. Darauf
werden in A4 Gerätetreiber initialisiert. Bei etwa T = 5 er
folgt dann der eigentliche Start E3 der Applikation.
Damit dieser Code jedoch lauffähig wird, müssen die Adressbe
reiche für Code-Daten und Stack alloziert und zugreifbar ge
macht werden. Für Systeme mit virtuellem Speicher bedeutet
dies, dass Systemtabellen für die MMU (Memory Management U
nit) initialisiert werden müssen. Größere Applikationen be
stehen oft aus einer Vielzahl von DLLs (Dynamic Link Libra
ries), die nacheinander geladen (A5) und in irgend einer Form
registriert und konfiguriert werden müssen. Dazu müssen Kon
figurationsdaten (Registry-Daten) gelesen und durchsucht wer
den. Dieser Vorgang ist vergleichsweise zeitintensiv.
DLL steht dabei als Bezeichnung für Laufzeitbibliotheken oder
als Bezeichnung für Dateien mit Unterroutinen in Form von
bereits kompiliertem Code. Solche Routinen werden aber erst
zur Laufzeit und wenn benötigt von dem zugehörigen Hauptpro
gramm aufgerufen und ausgeführt. Ferner können die Unterpro
gramme gleichzeitig von mehreren verschiedenen Programmen
bzw. von mehreren Instanzen des gleichen Programms gleichzei
tig genutzt werden, so dass dieses Unterprogramm nicht von
jedem Hauptprogramm zusätzlich aufgerufen und in den Haupt
speicher des Rechnersystems geholt wird. Dies verringert die
Größe des Hauptprogramms und damit den Platz, den dieses im
Hauptspeicher benötigt.
Im weiteren Verlauf des Starts der Applikation werden dann
Softwaretreiber initialisiert (A6) und Konfigurationsdaten
gelesen (A7). Etwa nach 30 Sekunden, T = 30, ist das System
dann bereit zur Verarbeitung erster Bedienereingaben (Ereig
nis E4).
Aus Sicht des Prozessors werden während dieser Lade- und Kon
figurationsvorgänge Daten im Bereich des RAM modifiziert. Es
werden Tabellen vorbereitet, Stacks und Heaps angelegt und
globale Variablen initialisiert.
Dieser Bereich wird in der folgenden Beschreibung als Daten
speicher bezeichnet.
Alle diese Aktionen, die während des Startens einer Applika
tion ablaufen, modifizieren den Inhalt des Datenspeichers,
nicht jedoch Codebereiche, die mitunter auch im RAM liegen.
Der Zustand des Datenspeichers beschreibt zusammen mit den
Registerinhalten des Prozessors den Zustand der Applikation
bzw. des ganzen Systems.
Die Erfindung beruht nun darauf, dass der Inhalt des Daten
speichers und die Prozessorregister nach dem Starten der Ap
plikation eingefroren und nichtflüchtig abgespeichert wird
(vgl. Fig. 1). Die Verkürzung des Startvorgangs bzw. der Boo
tup-Zeit wird dadurch erreicht, dass bei dem beschleunigten
Bootup die Applikation nicht auf herkömmlichem Wege gestartet
werden muss, sondern dass lediglich der Datenspeicher und die
Registerinhalte des Prozessors aus dem nichtflüchtigen Spei
cher rekonstruiert, also im einfachsten Falle kopiert werden
müssen (vgl. Fig. 2).
Zunächst soll der Vorgang zur Vorbereitung eines vorgeladenen
Systems gemäß der Erfindung anhand von Fig. 1 erläutert wer
den. Die Fig. 1 entspricht im wesentlichen der voranstehend
erläuterten Fig. 3 bis zur Aktion A5, dem Laden der DLLs und
dadurch bedingten Folgeaktivitäten. Bei etwa T = 25 wird das
System dann, wie weiter unten näher erläutert, eingefroren
(Ereignis Y). Erst anschließend werden die weiteren Aktionen
A6 und A7 durchgeführt.
Zum Zeitpunkt der Abspeicherung muss sichergestellt sein,
dass der Inhalt des Datenspeichers konsistent ist, also genau
den momentanen Zustand des Systems beschreibt. Es wird darauf
geachtet, dass zwischengespeicherte (Fachjargon "gecachte")
Daten, die nicht dem Inhalt des Datenspeichers entsprechen,
im Datenspeicher aktualisiert werden. Der Begriff "Cache"
wird manchmal auch als Vorhaltespeicher bezeichnet. Darunter
versteht man einen Zwischenspeicher, der zwischen zwei ver
schiedenen Speichersystemen angesiedelt ist und die Transfers
zwischen ihnen beschleunigt bzw. vermindert.
Das erfindungsgemäße Fast-Bootup-Konzept beruht nach einem
vorteilhaften Ausführungsbeispiel im wesentlichen auf den
folgenden zwei Schritten.
- A) Einfrieren und Abspeichern des Systemzustandes nach dem
Starten aller relevanten Applikationen:
- - Benachrichtigung der Geräte-Treiber
- - Anhalten des Systems durch Inaktivierung der Interrupts bzw. durch spezielle Systemaufrufe. Dieser Mode wird in der folgenden Beschreibung als "Freeze-Mode" bezeichnet.
- - Auslesen und Abspeichern der Prozessorregister
- - Zurückschreiben (Flush) der modifizierten Daten-Cache Ein trage
- - Abspeichern des Datenspeichers und der Registerinhalte in nichtflüchtigem Speicher
- B) Rekonstruktion des Systemzustandes aus den nichtflüchtig
gespeicherten Daten:
- - Aktivierung des Freeze-Modes
- - Rekonstruktion des Datenspeichers aus dem nichtflüchtigem Speicher
- - Zurückschreiben (Flush) der modifizierten Daten-Cache Ein träge und invalidieren der TLB (Translation Lookaside Bufter) Einträge
- - Laden der Prozessorregister mit den im nichtflüchtigen Speicher abgelegten Werten
- - Benachrichtigung der Geräte-Treiber
Die Darstellung gemäß der Fig. 2 zeigt einen solchen schnellen
Startvorgang durch Wiederherstellung eines vorgeladenen Sys
tems gemäß der Erfindung. Die Ereignisse E1, E2 und die Akti
onen A1 bis A4 verlaufen wie bei einem herkömmlichen Start
vorgang. Etwa bei T = 5 erfolgt dann jedoch ein Rekonstrukti
onsvorgang Y wie oben beschrieben. Dieser hat zur Folge, dass
der z. B. in einen nichtflüchtigen Flash-Speicher gerettete
Inhalt in das RAM des Rechnersystems kopiert wird (A8) und
Treiber informiert werden (A9). Es folgen bei etwa T = 8 das
Ereignis E3 (Konfiguration der Applikation) mit den Aktionen
A6 und A7, so dass bereits nach etwa 10 Sekunden, T = 10, erste
Benutzereingaben verarbeitet werden können (E4).
Für den Austausch des Datenspeichers zwischen nichtflüchtigem
Speicher (z. B. Flash-Speicher) und RAM wird zur weiteren Be
schleunigung und Einsparung von nichtflüchtigem Speicher vor
teilhafterweise optional ein Komprimierungs-/Dekomprimie
rungsalgorithmus eingesetzt.
An einen "Freeze-Mode" werden bei der vorliegenden Erfindung
die folgenden Anforderungen gestellt:
- 1. Der Rechner führt keine konkurrierende Prozesse aus. Es wird eine monothread Ausführung einer bestimmten Routine vor genommen, die Freeze-Routine.
- 2. Die Freeze-Routine wird aufgerufen, nachdem sämtliche Treiber informiert wurden, dass der Rechner heruntergefahren wird.
- 3. Innerhalb der Freeze-Routine ist es möglich, auf die ge samten Ressourcen des Rechners zuzugreifen. Zum Beispiel le sen von physikalischen Speicheradressen, Umsetzen von wichti gen Hardwareeinheiten wie TLB oder Cache usw.
- 4. Das Betriebssystem befindet sich während der Ausführung der Freeze-Routine in einem stabilen Zustand.
- 5. Nachdem die Freeze-Routine zu Ende ausgeführt wurde, wer den sämtliche Treiber darüber informiert, das die Geräte zu überprüfen bzw. neu zu initialisieren sind.
- 6. Als letztes wird in den normalen multithreaded Zustand ü bergangen.
Unter Multithreading versteht man die Fähigkeit einer Soft
ware, bestimmte Funktionen einer Applikation simultan auszu
führen. Es werden also, anders als beim sogenannten Multitas
king, bei dem mehrere verschiedene Programme parallel laufen
innerhalb eines Programms verschiedene Funktionen aus Sicht
des Anwenders gleichzeitig ausgeführt. Ein Thread stellt da
bei die kleinste Einheit von ausführbarem Programmcode dar,
dem entsprechend einer bestimmten Priorität Rechenzeit zuge
teilt wird.
Einen solchen Freeze-Mode kann man je nach Betriebssystem mit
mehr oder weniger Aufwand implementieren. Für die Erfindung
wesentlich ist dabei, den Freeze-Mode so einzusetzen,
- - dass man in diesem Mode ein Abzug eines vorgeladenen (lauf fertigen) Systems "einfrieren" kann und
- - dass man in diesem Mode sehr kurzer Zeit genau dieses vor geladene System wiederherstellen kann.
Der Freeze-Mode wird einerseits dazu genutzt, ein System
"einzufrieren", das sehr aufwendig zu laden ist (20 Sekunden
bis eine Minute). Diese erste Aufgabe der Freeze-Routine wird
im Extremfall nur einmal bei der Herstellung des Rechners
vorgenommen. Dabei wird das vorgeladene System auf einem
nichtflüchtigen Speicher gerettet (vgl. Fig. 1).
Die zweite Aufgabe der Freeze-Routine ist es, gleich nach je
dem boot-Vorgang des Rechners den eingefrorenen Zustand vom
nicht flüchtigem Speicher wiederherzustellen (vgl. Fig. 2).
Dadurch wird das lauffertige System innerhalb kurzer Zeit
wiederhergestellt (im Sekundenbereich).
Die Erfindung wurde bereits im Rahmen einer Entwicklung für
Fahrerinformationssysteme erprobt. Es ergeben sich hierdurch
Zeiteinsparungen im Bereich von 20 Sekunden, so dass das Sys
tem eine Startzeit von unter 10 Sekunden aufweist (ca. 30
Sek. ohne Eingriff). Weitere Anwendungsbeispiele liegen im
mobilen Telekommunikations- und Automatisierungsbereich, bei
denen aus einem völlig ausgeschalteten Zustand (zum Zwecke
des sparen von Strom) in kurzer Zeit eine vollständige Funk
tionsfähigkeit erreicht werden soll.
Claims (10)
1. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersys
tem, wobei der Rechner über einen Datenspeicher und einen
Prozessor mit Prozessorregistern verfügt, wobei
- a) alle erforderlichen Ladevorgänge und Konfigurationsvorgän ge der Applikation so vorgenommen werden, dass der Zustand von Datenspeicher und von Prozessorregistern einen lauffähi gen Zustand der Applikation beschreiben, worauf
- b) das so vorgeladene System angehalten wird und der Inhalt des Datenspeichers und die Prozessorregister nichtflüchtig gespeichert werden und
- c) für zukünftige Startvorgänge lediglich die nichtflüchtig gespeicherten Inhalte des Datenspeichers und der Prozessorre gister im Rechnersystem rekonstruiert werden.
2. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersystem
nach Anspruch 1, wobei die Schritte a) und b) nur einmal bei
der Herstellung des Rechnersystems vorgenommen werden.
3. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersystem
nach Anspruch 1 oder 2, wobei die Durchführung von Schritt b)
erfolgt durch:
- 1. Benachrichtigung von Treibern für an das Rechnersystem an geschlossene Geräte,
- 2. Anhalten des Systems durch Inaktivierung von Interrupts und/oder durch vorgesehene Systemaufrufe,
- 3. Auslesen und Abspeichern der aktuellen Prozessorregister,
- 4. Zurückschreiben von eventuellen modifizierten Daten eines zusätzlichen Vorhaltespeichers in den Datenspeicher und
- 5. Abspeichern des Inhalts des Datenspeichers und der Regis terinhalte in einem nichtflüchtigem Speicher.
4. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersystem
nach einem der vorangehenden Ansprüche, wobei die Durchfüh
rung von Schritt c) erfolgt durch:
- 1. Aktivierung eines Anhaltezustands durch Inaktivierung von Interrupts und/oder durch vorgesehene Systemaufrufe,
- 2. Rekonstruktion des Inhalts des Datenspeichers aus dem nichtflüchtigem Speicher,
- 3. Laden der Prozessorregister mit den im nichtflüchtigen Speicher abgelegten Werten und
- 4. Benachrichtigung von Treibern für an das Rechnersystem an geschlossene Geräte.
5. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersystem
nach einem der vorangehenden Ansprüche, wobei
bei der Durchführung von Schritt b) eine Komprimierung der nichtflüchtig zu speichernden Daten erfolgt und
bei der Durchführung von Schritt c) eine Dekomprimierung der nichtflüchtig gespeicherten Daten erfolgt.
bei der Durchführung von Schritt b) eine Komprimierung der nichtflüchtig zu speichernden Daten erfolgt und
bei der Durchführung von Schritt c) eine Dekomprimierung der nichtflüchtig gespeicherten Daten erfolgt.
6. Verfahren zur Beschleunigung eines Startvorganges einer
Applikation mit großem Softwareanteil auf einem Rechnersystem
nach einem der vorangehenden Ansprüche, wobei das Vorladen
der Applikation auf dem Rechnersystem wenigstens eine Auswahl
aus den folgenden Operationen umfasst:
- - Vorbereiten von Tabellen,
- - Anlegen von Prozessor-Stacks und Speicher-Heaps,
- - Initialisieren von globalen Variablen.
7. Rechnersystem mit schneller Startfunktion zur Ausführung
einer Applikation mit
einem Prozessor mit Prozessorregistern,
einem flüchtigen Speicher, der einen Datenspeicher umfasst, und mit
einem nichtflüchtigen Speicher, der zumindest solche Inhal te von Datenspeicher und von Prozessorregistern umfasst, die einen lauffähigen Zustand der Applikation beschreiben, und mit
einem Mittel zum Anhalten des Systems, insbesondere durch Inaktivierung von Interrupts und/oder durch vorgesehene Sys temaufrufe und mit
einem Mittel zur Rekonstruktion von Inhalten von Datenspei cher und Prozessorregistern aus den einen lauffähigen Zustand der Applikation beschreibenden Inhalten des nichtflüchtigen Speichers.
einem Prozessor mit Prozessorregistern,
einem flüchtigen Speicher, der einen Datenspeicher umfasst, und mit
einem nichtflüchtigen Speicher, der zumindest solche Inhal te von Datenspeicher und von Prozessorregistern umfasst, die einen lauffähigen Zustand der Applikation beschreiben, und mit
einem Mittel zum Anhalten des Systems, insbesondere durch Inaktivierung von Interrupts und/oder durch vorgesehene Sys temaufrufe und mit
einem Mittel zur Rekonstruktion von Inhalten von Datenspei cher und Prozessorregistern aus den einen lauffähigen Zustand der Applikation beschreibenden Inhalten des nichtflüchtigen Speichers.
8. Rechnersystem mit schneller Startfunktion zur Ausführung
einer Applikation nach Anspruch 7, wobei die einen lauffähi
gen Zustand der Applikation beschreibenden Inhalte des nicht
flüchtigen Speichers in komprimierter Form vorliegen und ein
Mittel zur Dekomprimierung dieser Inhalte vorgesehen ist.
9. Verwendung eines Rechnersystems nach Anspruch 7 oder 8 zur
Herstellung einer vollständigen Funktionsfähigkeit aus einem
völlig ausgeschalteten Zustand, wobei eine Rekonstruktion von
Inhalten von Datenspeicher und Prozessorregistern aus den ei
nen lauffähigen Zustand der Applikation beschreibenden Inhal
ten des nichtflüchtigen Speichers im Zuge eines Einschaltvor
gangs des Rechnersystems erfolgt.
10. Mobiles Terminal, insbesondere Telekommunikationsendge
rät, mit einem Rechnersystem nach Anspruch 7 oder 8.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE10200902A DE10200902A1 (de) | 2001-02-22 | 2002-01-11 | Schneller Systemstart für eingebettete Systeme |
| EP02100145A EP1235148A3 (de) | 2001-02-22 | 2002-02-19 | Schneller Systemstart für eingebettete Systeme |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE10108552 | 2001-02-22 | ||
| DE10200902A DE10200902A1 (de) | 2001-02-22 | 2002-01-11 | Schneller Systemstart für eingebettete Systeme |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10200902A1 true DE10200902A1 (de) | 2002-09-26 |
Family
ID=7675127
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE10200902A Withdrawn DE10200902A1 (de) | 2001-02-22 | 2002-01-11 | Schneller Systemstart für eingebettete Systeme |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE10200902A1 (de) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104399109A (zh) * | 2014-11-26 | 2015-03-11 | 沈伟 | 一种凝胶止血材料组合物及其制备方法 |
| CN110879750A (zh) * | 2017-10-13 | 2020-03-13 | 华为技术有限公司 | 资源管理的方法及终端设备 |
-
2002
- 2002-01-11 DE DE10200902A patent/DE10200902A1/de not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104399109A (zh) * | 2014-11-26 | 2015-03-11 | 沈伟 | 一种凝胶止血材料组合物及其制备方法 |
| CN110879750A (zh) * | 2017-10-13 | 2020-03-13 | 华为技术有限公司 | 资源管理的方法及终端设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69423151T2 (de) | Verwendung der zuletzt gültigen Konfiguration zum Laden eines Rechnersystems | |
| DE69229319T2 (de) | System und Verfahren zur Konservierung der Unteilbarkeit eines Quellbefehls in übertragenen Programmbefehlen | |
| DE60226019T2 (de) | Verfahren und system zum steuern von ausführbaren dateien mit geteilten bibliotheken | |
| DE69618221T2 (de) | Mechanismus zur wartung objektorientierter "methoden" der keine unterbrechung des computersystems erfordert | |
| DE60221662T2 (de) | Verfahren zur versionsauswahl von ausführbarer software | |
| DE68916853T2 (de) | Unabhängige Programmlader für virtuelle Maschinenarchitektur. | |
| DE112014000340B4 (de) | Vorablesezugriff auf Daten für einen Chip mit einem übergeordneten Kern und einem Scout-Kern | |
| DE68924719T2 (de) | Vorrichtung und Verfahren zur Ausführung eines Unterprogramms in einem Datenverarbeitungssystem mit Blockumschaltung. | |
| DE19852250A1 (de) | System und Verfahren zum Ändern der Zuordnung einer Partition zu einem logischen Laufwerk in einem Computerspeicher | |
| DE3886756T2 (de) | Betriebsmittelzugriff für Multiprozessorrechnersystem. | |
| DE102009024605A1 (de) | Vorrichtung und Verfahren zum Umgehen eines ersten Programmcodeabschnitts mit einem Ersatzprogrammcodeabschnitt | |
| DE69518468T2 (de) | Verfahren zum Testen von grossen Speichermatrizen während Systeminitialisation | |
| DE4238099C2 (de) | Mikroprozessor mit mehreren Betriebsmoden | |
| DE102010011652A1 (de) | Applikationsplattform und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung mit einer solchen | |
| DE102004037713A1 (de) | Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms | |
| DE102023201932A1 (de) | Chip und verfahren zum ansteuern von speicherbänken | |
| EP1235148A2 (de) | Schneller Systemstart für eingebettete Systeme | |
| DE10200902A1 (de) | Schneller Systemstart für eingebettete Systeme | |
| EP0347970B1 (de) | Verfahren zum Prüfen eines Festwertspeichers und Anordnung zur Durchführung des Verfahrens | |
| DE102004055051B3 (de) | Schneller Systemstart für eingebettete Systeme | |
| WO2006045754A1 (de) | Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms | |
| DE69119286T2 (de) | Verfahren und Gerät zur Schattenprozessgenerierung | |
| DE19946959B4 (de) | Verfahren zum Laden von Daten für grundlegende Systemroutinen | |
| DE102007015507B4 (de) | Prozessor mit einem ersten und einem zweiten Betriebsmodus und Verfahren zu seinem Betrieb | |
| DE10050604A1 (de) | Verfahren zum Starten einer Datenverarbeitungsanlage sowie zugehörige Komponenten |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8130 | Withdrawal |