DE112018007748T5 - Berechnungsverfahren und Vorrichtung mit Mehrphasen/stufen-Start - Google Patents

Berechnungsverfahren und Vorrichtung mit Mehrphasen/stufen-Start Download PDF

Info

Publication number
DE112018007748T5
DE112018007748T5 DE112018007748.9T DE112018007748T DE112018007748T5 DE 112018007748 T5 DE112018007748 T5 DE 112018007748T5 DE 112018007748 T DE112018007748 T DE 112018007748T DE 112018007748 T5 DE112018007748 T5 DE 112018007748T5
Authority
DE
Germany
Prior art keywords
initial
computing platform
task
svm
execution
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.)
Pending
Application number
DE112018007748.9T
Other languages
English (en)
Inventor
Shuo Liu
Yipeng YAO
Hu Chen
Yifan Zhang
Jia Bao
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112018007748T5 publication Critical patent/DE112018007748T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data

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

Vorrichtungen, Verfahren und Speichermedium, die mit Mehrphasen/stufen-Starttechnologie verknüpft sind, werden hierin offenbart. Ein Verfahren kann beinhalten, ein Anfangsausführungsbild einer Rechenplattform von persistentem Speicher fortzusetzen, um eine Anfangsaufgabe auszuführen; und nachfolgend ein vollständiges Ausführungsbild der Rechenplattform von dem persistenten Speicher fortzusetzen, um eine von mehreren Betriebsaufgaben auszuführen.

Description

  • Gebiet der Technik
  • Die vorliegende Offenbarung bezieht sich auf das Gebiet der Berechnung. Genauer bezieht sich die vorliegende Offenbarung auf Berechnungsverfahren und Vorrichtung mit Mehrphasen/stufen-Start, die bestimmte Anwendungen für fahrzeuginterne Systeme computergestützter oder autonom fahrender (CA/AD, Computer-Assisted/Autonomous Driving) Fahrzeuge aufweist.
  • Stand der Technik
  • Die hierin bereitgestellte Beschreibung des Stands der Technik dient dem Zweck, den Kontext der Offenbarung allgemein darzustellen. Außer es ist hierin anders angegeben, sind die in diesem Abschnitt beschriebenen Materialien nicht am Stand der Technik der Ansprüche in dieser Anmeldung und sind nicht durch Einschluss in diesen Abschnitt gestattet, am Stand der Technik zu sein.
  • Client- und eingebettete Berechnungssysteme leiden für gewöhnlich an langer Neustartverzögerung. Ein schneller Start ist aus der Perspektive der Nutzererfahrung sehr wünschenswert. Darüber hinaus ist in bestimmten Arten von Systemen ein schneller Start Voraussetzung. Diese Systeme können sogar mehrere zeitablaufkritische Phasen in der Startsequenz aufweisen. Ein softwaredefiniertes Cockpit- (Software Defined Cockpit) -Fahrzeugsystem ist ein solches Beispiel. Das Seitenspiegelkamerasystem soll so früh wie möglich bereit sein (innerhalb von 2 Sek.); Begrüßungsfenster (oder Verkäuferlogo) soll innerhalb von 4 Sekunden angezeigt werden; und schließlich soll der Start die HMI (Mensch-Maschine-Schnittstelle (Human Machine Interface)) innerhalb von 10 Sek. abschließen. Dies können für einige aktuelle Rechenplattformen sehr herausfordernde Arbeitsleistungsziele sein.
  • Figurenliste
  • Ausführungsformen werden sogleich anhand der folgenden ausführlichen Beschreibung in Verbindung mit den begleitenden Zeichnungen verstanden. Um diese Beschreibung zu erleichtern, bezeichnen ähnliche Referenznummern ähnliche strukturelle Elemente. Ausführungsformen sind mittels Beispiel und nicht mittels Begrenzung in den Figuren der begleitenden Zeichnungen veranschaulicht.
    • 1 veranschaulicht eine Übersicht des Mehrphasen/stufen-Startprozesses der vorliegenden Offenbarung gemäß unterschiedlichen Ausführungsformen.
    • 2 veranschaulicht einen Beispielfortsetzungsprozess für jede Fortsetzung des Ausführungsbilds von 1 in größerem Detail, gemäß unterschiedlichen Ausführungsformen.
    • 3 veranschaulicht ein Beispielspeicherlayout für Mehrphasen/stufen-Start in größerem Detail, gemäß unterschiedlichen Ausführungsformen.
    • 4 veranschaulicht eine Übersicht eines Beispiel-Mehrphasen/stufen-Startprozesses, wie er für ein fahrzeuginternes System umgesetzt ist, gemäß unterschiedlichen Ausführungsformen.
    • 5 veranschaulicht ein Beispiel von sowohl einem Ausschalt- als auch einem Einschaltprozess, gemäß unterschiedlichen Ausführungsformen.
    • 6 veranschaulicht eine Übersicht einer Umgebung zur Integration und Verwendung der Mehrstufen-Starttechnologie der vorliegenden Offenbarung, in Übereinstimmung mit unterschiedlichen Ausführungsformen.
    • 7 veranschaulicht eine Hardware/Software-Ansicht des fahrzeuginternen Systems von 6 in größerem Detail, gemäß unterschiedlichen Ausführungsformen.
    • 8 veranschaulicht ein Beispiel sowohl eines Ausschalt- als auch eines Einschaltprozesses, gemäß unterschiedlichen Ausführungsformen.
    • 9 veranschaulicht eine Beispielrechenplattform, die zur Verwendung geeignet ist, Aspekte der vorliegenden Offenbarung auszuüben, gemäß unterschiedlichen Ausführungsformen.
    • 10 veranschaulicht ein Speichermedium, das Anweisungen aufweist, um in Bezug auf 1-8 beschriebene Verfahren auszuüben, gemäß unterschiedlichen Ausführungsformen.
  • Ausführliche Beschreibung
  • Um sich den im Abschnitt vom Stand der Technik besprochenen Herausforderungen zu widmen, sind Vorrichtungen, Verfahren und Speichermedien, die mit Mehrphasen/stufen-Starttechnologie verknüpft sind, hierin offenbart. In unterschiedlichen Ausführungsformen weist ein Berechnungsverfahren auf, ein Anfangsausführungsbild einer Rechenplattform von persistentem Speicher der Rechenplattform fortzusetzen, um eine Anfangsaufgabe auszuführen. Das Anfangsausführungsbild weist die Anfangsaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur ein Betriebssystem bei einer Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist. Das Verfahren weist weiter nachfolgendes Fortsetzen eines vollständigen Ausführungsbilds der Rechenplattform von dem persistenten Speicher auf, um selektiv mehrere Betriebsaufgaben auszuführen. Das vollständige Ausführungsbild weist die mehreren Betriebsaufgaben auf und wurde vorab in dem persistenten Speicher als Teil eines Aufschiebungsprozesses gespeichert, der durchgeführt wurde, unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe mit mehr Funktionalitäten als der Anfangsfunktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  • In unterschiedlichen Ausführungsformen weist das Verfahren anschließend an Ausführung der Anfangsaufgabe, aber vor dem Fortsetzen des vollständigen Ausführungsbilds der Rechenplattform, auf, ein Zwischenausführungsbild der Rechenplattform von persistentem Speicher der Rechenplattform fortzusetzen, um eine Zwischenaufgabe auszuführen. Das Zwischenaufgabenbild weist die Zwischenaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer Zwischenfunktionalitätsstufe mit mehr Funktionen als der Anfangsfunktionalitätsstufe aber weniger Funktionen als der vollständigen Funktionalitätsstufe und die Zwischenaufgabe aufweist.
  • In unterschiedlichen Ausführungsformen weist mindestens ein computerlesbares Medium (CRM, Computer-Readable Medium) Anweisungen darauf gespeichert auf, um eine Rechenplattform in Antwort auf Ausführung der Anweisung durch die Rechenplattform zu veranlassen, ein Betriebssystem zu betreiben, Ausführungssteuerung zu empfangen, nachdem das Betriebssystem zu einer Anfangsfunktionalitätsstufe gestartet wurde. Weiter wird bei Empfang von Ausführungssteuerung, anstatt den Rest des Betriebssystems zu starten, ein Fortsetzungsprozess initiiert, um ein Anfangsausführungsbild von persistentem Speicher fortzusetzen, auf den die Rechenplattform zugreifen kann. Das Anfangsausführungsbild weist eine zustandslose Anfangsaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Anfangsfunktionalitätsstufe und die zustandslose Anfangsaufgabe aufweist.
  • In unterschiedlichen Ausführungsformen veranlasst Ausführung der Anweisungen die Rechenplattform weiter, das Betriebssystem zu betreiben, nachfolgend einen anderen Fortsetzungsprozess zu initiieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher der Rechenplattform fortzusetzen. Das vollständige Ausführungsbild weist mehrere Betriebsaufgaben auf und wurde als Teil eines Aufschiebungsprozesses in dem persistenten Speicher gespeichert, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  • In unterschiedlichen Ausführungsformen veranlasst Ausführung der Anweisungen die Rechenplattform weiter, das Betriebssystem zu betreiben, um einen anderen Fortsetzungsprozess zu initiieren, um ein Zwischenausführungsbild von dem persistenten Speicher nachfolgend zu der Fortsetzung des Anfangsausführungsbilds und vor der Fortsetzung des vollständigen Ausführungsbilds fortzusetzen. Das Zwischenausführungsbild weist eine zustandslose Zwischenaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Zwischenfunktionalitätsstufe und die zustandslose Zwischenaufgabe aufweist.
  • In unterschiedlichen Ausführungsformen weist eine Vorrichtung zur Berechnung eine Rechenplattform in einem Fahrzeug angeordnet auf, die einen Hypervisor aufweist, um eine virtuelle Dienstmaschine (SVM, Service Virtual Machine) und eine oder mehrere virtuelle Anwendermaschinen (UVMs, User Virtual Machines), ein Startprogramm, Teil der Rechenplattform, und das OS der SVM zu hosten. Das Startprogramm ist angeordnet, eine Anfrage zu empfangen, die Rechenplattform einzuschalten oder zu starten. Das Startprogramm startet in Antwort auf Empfang der Anfrage den Hypervisor zu einer Anfangsfunktionalitätsstufe, der, sobald er zu der Anfangsfunktionalitätsstufe gestartet wurde, die SVM aufruft und ein Betriebssystem (OS, Operating System) der SVM zu einer Anfangsfunktionalitätsstufe initialisiert. Das OS der SVM initialisiert bei Empfang von Ausführungssteuerung, nachdem das OS zu der Anfangsfunktionalitätsstufe initialisiert wurde, anstatt den Rest des OS zu starten, einen Fortsetzungsprozess, um ein Anfangsausführungsbild vom persistenten Speicher der Rechenplattform fortzusetzen. Das Anfangsausführungsbild weist eine Anfangsaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist. Ein Beispiel der Anfangsaufgabe ist eine Rückspiegelkameraaufgabe.
  • In unterschiedlichen Ausführungsformen ist das OS der SVM weiter eingerichtet, um nachfolgend einen anderen Fortsetzungsprozess zu initialisieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher fortzusetzen. Das vollständige Ausführungsbild weist mehrere Betriebsaufgaben auf und wurde als Teil eines Aufschiebungsprozesses in dem persistenten Speicher gespeichert, der durchgeführt wurde, unmittelbar bevor das SVM zuletzt ausgeschaltet wurde, wobei die SVM das OS bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist. Ein Beispiel der Betriebsaufgaben sind Kombiinstrumentaufgaben.
  • In unterschiedlichen Ausführungsformen ist das OS der SVM weiter eingerichtet, einen anderen Fortsetzungsprozess zu initialisieren, um ein Zwischenausführungsbild von dem persistenten Speicher fortzusetzen, anschließend an die Fortsetzung des Anfangsausführungsbilds, aber vor der Fortsetzung des vollständigen Ausführungsbilds. Das Zwischenausführungsbild weist eine Zwischenaufgabe auf und wurde vorab in dem persistenten Speicher gespeichert, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Zwischenfunktionalitätsstufe und die Zwischenaufgabe aufweist. Ein Beispiel der Zwischenaufgabe ist eine Begrüßungsfenster- (Verkäuferlogo) -aufgabe.
  • In der folgenden ausführlichen Beschreibung wird auf die begleitenden Zeichnungen Bezug genommen, die einen Teil hiervon bilden, wobei ähnliche Nummern durchweg ähnliche Teile bezeichnen, und in denen mittels Veranschaulichung Ausführungsformen gezeigt sind, die ausgeübt werden können. Es ist zu verstehen, dass andere Ausführungsformen genutzt werden können und strukturelle oder logische Änderungen vorgenommen werden können, ohne vom Umfang der vorliegenden Offenbarung abzuweichen. Deshalb wird die folgende ausführliche Beschreibung nicht in einem begrenzenden Sinn aufgefasst und der Umfang von Ausführungsformen ist durch die angehängten Ansprüche und deren Äquivalente definiert.
  • Aspekte der Offenbarung sind in der begleitenden Beschreibung offenbart. Alternative Ausführungsformen der vorliegenden Offenbarung und deren Äquivalente können erdacht werden, ohne vom Wesen oder Umfang der vorliegenden Offenbarung abzuweichen. Es sollte angemerkt werden, dass ähnliche Elemente, die unten offenbart sind, durch ähnliche Bezugszahlen in den Zeichnungen angegeben sind.
  • Unterschiedliche Betriebe können als viele diskrete Handlungen oder Betriebe der Reihe nach auf eine Weise beschrieben werden, die beim Verständnis des beanspruchten Gegenstands am hilfreichsten ist. Jedoch sollte die Reihenfolge der Beschreibung nicht angenommen werden zu implizieren, dass diese Betriebe unbedingt von der Reihenfolge abhängig sind. Insbesondere könnten diese Betriebe nicht in der Reihenfolge der Darstellung durchgeführt werden. Beschriebene Betriebe können in einer von der beschriebenen Ausführungsform verschiedenen Reihenfolge durchgeführt werden. Unterschiedliche zusätzliche Betriebe können durchgeführt werden und/oder beschriebene Betriebe können in zusätzlichen Ausführungsformen ausgelassen werden.
  • Für die Zwecke der vorliegenden Offenbarung bedeutet die Phrase „A und/oder B“ (A), (B) oder (A und B). Für die Zwecke der vorliegenden Offenbarung bedeutet die Phrase „A, B und/oder C“ (A), (B), (C), (A und B), (A und C), (B und C) oder (A, B und C).
  • Die Beschreibung kann die Phrasen „in einer Ausführungsform“ oder „in Ausführungsformen“ verwenden, die sich jeweils auf eine oder mehrere derselben oder verschiedener Ausführungsformen beziehen können. Darüber hinaus sind die Ausdrücke „umfassend“, „beinhaltend“, „aufweisend“ und dergleichen, wie in Bezug auf Ausführungsformen der vorliegenden Offenbarung verwendet, synonym.
  • Wie hierin verwendet, kann der Ausdruck „Modul“ sich auf anwendungsspezifische integrierte Schaltung (ASIC), eine elektronische Schaltung, eine kombinatorische Logikschaltung, einen Prozessor (geteilt, dediziert oder Gruppe) und/oder Arbeitsspeicher (geteilt, dediziert oder Gruppe), die ein oder mehrere Software- oder Firmware-Programme ausführen, und/oder andere geeignete Komponenten, die die beschriebene Funktionalität bereitstellen, beziehen, Teil davon sein oder beinhalten.
  • Es wird nun auf 1 Bezug genommen, wobei eine Übersicht des Mehrphasen/stufen-Startprozesses der vorliegenden Offenbarung gemäß unterschiedlichen Ausführungsformen gezeigt ist. Wie veranschaulicht, beinhaltet Prozess 100 zum Starten einer Client- oder eingebetteten Rechenplattform in mehreren Phasen, wobei jede Phase eine zunehmende Funktionalitätsstufe hat, Betriebe, die bei Blöcken 102-114 durchgeführt werden. Bei Empfang einer Anfrage, die Client/eingebettete Rechenplattform einzuschalten oder kalt zu starten, wird bei Block 102 das OS der Client/ eingebetteten Rechenplattform zu einem Anfangszustand gestartet, der konfigurierbar ist, eine Anfangsfunktionalitätsstufe (leicht) bereitzustellen, z.B. mit gerade genug Funktionalitäten, um Ausführung einer Anfangsaufgabe zu unterstützen.
  • Als nächstes kann, bei Block 104, beim Starten des OS der Client/eingebetteten Rechenplattform zu dem Anfangszustand, der konfigurierbar ist, die Anfangsfunktionalitätsstufe (leicht) bereitzustellen, ein Fortsetzungsprozess initialisiert werden, um Ausführung eines Anfangsausführungsbilds fortzusetzen, auch als Phase I oder Stufe I Ausführungsbild bezeichnet. Das Anfangsausführungsbild beinhaltet im Wesentlichen die Daten, um das (leichte) OS bei der Anfangsfunktionalitätsstufe zu konfigurieren, und die Anfangsaufgabe, auch als die Phase I oder Stufe I Aufgabe bezeichnet. Das Anfangsausführungsbild, das die Daten, um das (leichte) OS bei der Anfangsfunktionalitätsstufe zu konfigurieren, und die Anfangsaufgabe beinhaltet, wird vorab in persistentem Speicher der Client/eingebetteten Rechenplattform gespeichert, als ob es ein „aufgeschoben zu persistentem Speicher“-Bild eines Aufschiebungsprozesses wäre, der genau bevor die Client/eingebettete Rechenplattform zuletzt vollständig ausgeschaltet war, ausgeführt wurde. Bei Fortsetzung wird, mit dem (leichten) OS bei der Anfangsfunktionalitätsstufe neukonfiguriert, bei Block 106 Ausführungssteuerung an die Anfangsaufgabe übertragen, um die Anfangsaufgabe auszuführen.
  • In unterschiedlichen Ausführungsformen können der imaginäre „Aufschiebungsprozess“ und der Fortsetzungsprozess ein beliebiger einer Zahl von Prozessen am Stand der Technik sein, die auf den persistenten Speicher aufschieben und von dort fortsetzen. Die Anfangsaufgabe kann eine zustandslose Aufgabe sein. Daher kann der Phase-I-Start, oder Start der Client/eingebetteten Rechenplattform zu dem Punkt, wenn die Anfangsaufgabe verfügbar ist, in relativ wenigen x Sekunden bewerkstelligt werden.
  • Weiter in Bezug auf 1 kann in unterschiedlichen Ausführungsformen, während die Anfangsaufgabe ausgeführt wird, bei Block 107, das OS optional weiter initialisiert werden, konfigurierbar zu sein, die nächste Funktionalitätsstufe (plus) falls nötig bereitzustellen, auch als Phase-II oder Stufe-II-Funktionalitäten bezeichnet. Die Betriebe können auch z.B. für Ausführungsformen durchgeführt werden, wo Ausführung der nächsten Aufgabe, auch als eine Zwischenaufgabe bezeichnet, mehr Funktionalitäten des OS benötigt; ansonsten kann weiter Initialisierung vom OS, um konfigurierbar zu sein, die Phase-II- oder Stufe-II-Funktionalitäten bei Block 107 bereitzustellen, übersprungen werden.
  • Als nächstes, bei Block 108, kann bei Abschluss von Ausführung der Anfangsaufgabe oder bei Leerlauf der Anfangsaufgabe ein anderer Fortsetzungsprozess initiiert werden, um Ausführung eines Zwischenausführungsbilds fortzusetzen, auch als Phase-II- oder Stufe-II-Ausführungsbild bezeichnet. Das Zwischenausführungsbild beinhaltet im Wesentlichen die Daten, um das (plus) OS bei der Zwischenfunktionalitätsstufe zu konfigurieren, und die Zwischenaufgabe, auch als Phase-II- oder Stufe-II-Aufgabe bezeichnet. Das Zwischenausführungsbild, das die Daten, um das (plus) OS bei der Zwischenfunktionalitätsstufe zu konfigurieren, und die Zwischenaufgabe beinhaltet, ist ähnlich vorab in persistentem Speicher der Client/eingebetteten Rechenplattform gespeichert, als wäre es ein „aufgeschoben-zu-persistentem-Speicher“-Bild eines Aufschiebungsprozesses, der genau bevor die Client/eingebettete Rechenplattform zuletzt vollständig ausgeschaltet wurde, ausgeführt wurde. Bei Fortsetzung wird, mit dem (plus) OS bei der Zwischenfunktionalitätsstufe neukonfiguriert, bei Block 110 Ausführungssteuerung an die Zwischenaufgabe übertragen, um die Zwischenaufgabe auszuführen. In unterschiedlichen Ausführungsformen kann die Fortsetzung von Zwischenausführungsbild im Hintergrund durchgeführt werden und in den Vordergrund geschaltet werden, wenn die Fortsetzung abgeschlossen ist und die Zwischenaufgabe verfügbar/bereit zur Fortsetzung ist.
  • Ähnlich Phase I oder Stufe I können der imaginäre „Aufschiebungsprozess“ und der Fortsetzungsprozess, die für Phase-II oder Stufe-II eingesetzt werden, ein beliebiger einer Zahl von Prozessen am Stand der Technik sein, um zu persistentem Speicher aufzuschieben und von dort fortzusetzen. Die Zwischenaufgabe kann auch eine zustandslose Aufgabe sein. Daher kann der Phase-II-Start, oder Start der Client/eingebetteten Rechenplattform zu dem Punkt, wenn die Zwischenaufgabe verfügbar ist, in relativ wenigen y Sekunden, knapp über x Sek., bewerkstelligt werden.
  • Immer noch in Bezug auf 1, kann in unterschiedlichen Ausführungsformen, während die Zwischenaufgabe ausgeführt wird, bei Block 111, das OS optional weiter initialisiert werden, um konfigurier bar zu sein, die vollständige Funktionalitätsstufe falls nötig bereitzustellen, auch als Phase-III- oder Stufe-III-Funktionalitäten bezeichnet. Die Betriebe können z.B. für Ausführungsformen, wo Ausführung der Zwischenaufgabe nicht die vollständige Funktionalitätsstufe des OS benötigt hat, durchgeführt werden; ansonsten kann weitere Initialisierung von OS, um konfigurierbar zu sein, die vollständige Funktionalitätsstufe bei Block 111 bereitzustellen, übersprungen werden.
  • Als nächstes, bei Block 112, kann bei Abschluss von Ausführung der Zwischenaufgabe oder bei Leerlauf der Zwischenaufgabe ein anderer Fortsetzungsprozess initiiert werden, um Ausführung eines vollständigen Ausführungsbilds fortzusetzen, auch als Phase-III- oder Stufe-III-Ausführungsbild bezeichnet. Das vollständige Ausführungsbild beinhaltet im Wesentlichen die Daten, um das OS bei der vollständigen Funktionalitätsstufe zu konfigurieren, und mehrere Betriebsaufgaben, auch als die Phase-III- oder Stufe-III-Aufgaben bezeichnet. Das vollständige Ausführungsbild, das die Daten, um das OS bei der vollständigen Funktionalitätsstufe zu konfigurieren, und die mehreren Betriebsaufgaben beinhaltet, ist in persistentem Speicher der Client/eingebetteten Rechenplattform als Teil eines Aufschiebungsprozesses gespeichert, der genau bevor die Client/eingebettete Rechenplattform zuletzt vollständig ausgeschaltet wurde, ausgeführt wurde. Bei Fortsetzung, mit dem OS bei der vollständigen Funktionalitätsstufe neukonfiguriert, bei Block 114, wird Ausführungssteuerung an eine von Betriebsaufgaben übertragen, um selektive Ausführung der Betriebsaufgaben anzufangen. In unterschiedlichen Ausführungsformen kann die Fortsetzung vom vollständigen Ausführungsbild ähnlich im Hintergrund durchgeführt werden und in den Vordergrund geschaltet werden, wenn die Fortsetzung abgeschlossen ist und die mehreren Betriebsaufgaben verfügbar/bereit zur Ausführung sind.
  • Ähnlich Phase I und II oder Stufe I & II können die Aufschub- und Fortsetzungsprozesse, die für Phase III oder Stufe III eingesetzt sind, ein beliebiger einer Zahl von Prozessen am Stand der Technik sein, um zu persistentem Speicher aufzuschieben oder von dort fortzusetzen. Die mehreren Betriebsaufgaben können zustandslose Aufgaben oder Aufgaben mit Zuständen sein. Mit Phase/Stufe I und II in relativ wenigen x und y Sekunden erzielt, kann der Phase-III-Start, oder Start der Client/eingebetteten Rechenplattform zu dem Punkt, wenn die Betriebsaufgaben verfügbar sind, im passenden Zeitraum von z Sek. bewerkstelligt werden, solange es nötig oder für eine bestimmte Anwendung geeignet ist.
  • Bevor der Mehrphasen/stufen-Start der vorliegenden Offenbarung weiter beschrieben wird, sollte angemerkt werden, dass die Phase „vollständige Funktionalitätsstufe“ nicht bedeutet, dass die Funktionen des OS nicht weiter erweitert werden können, z.B. durch zusätzliche Zusätze und so weiter. Die Phrase soll die Zielmenge von Funktionalitäten der Client/eingebetteten Rechenplattform bei Abschluss eines Kaltstarts oder einer Fortsetzung vermitteln.
  • Weiter, während Prozess 100 mit 3 Phasen oder Stufen von Start beschrieben wurde, ist die vorliegende Offenbarung nicht dahin begrenzt. Prozess 100 kann mit mehr Phasen/Stufen, z.B. mehr „Zwischen“ -phasen/stufen, oder weniger Phasen/Stufen, z.B. ohne irgendeine Zwischenphase/stufe ausgeübt werden.
  • Es wird nun auf 2 Bezug genommen, wobei ein Beispielfortsetzungsprozess für jede der Fortsetzung von Ausführungsbildern von 1 gemäß unterschiedlichen Ausführungsformen gezeigt ist. Für die veranschaulichten Ausführungsformen nimmt Prozess 200 zum Fortsetzen von Ausführung eines aufgeschobenen Ausführungsbilds an, dass der Aufschiebungsprozess das Ausführungsbild komprimiert, wie auch das komprimierte Ausführungsbild zu Sicherheitszwecken verschlüsselt. Prozess 200 beinhaltet Betriebe, die bei Blöcken 202-210 durchgeführt werden.
  • Bei Block 202 ist das verschlüsselte aufgeschoben-zu-persistentem-Speicher-Ausführungsbild zurück in einen Arbeitsbereich vom Arbeitsspeicher der Client/eingebetteten Rechenplattform geladen. Als nächstes, bei Block 204, wird das neugeladene verschlüsselte Ausführungsbild entschlüsselt. Bei Entschlüsselung wird das Klartextausführungsbild geprüft und verifiziert, um sicherzustellen, dass es authentisch ist und nicht kompromittiert wurde. Authentifizierung und Verifizierung können mit einer beliebigen einer Zahl von Authentifizierungs-/Verifizierungstechniken am Stand der Technik bewerkstelligt werden. Bei Block 206 wird das authentifizierte/verifizierte Ausführungsbild dekomprimiert.
  • Bei Block 208 wird das dekomprimierte Ausführungsbild von dem arbeitenden Speicher in die geeigneten Arbeitsspeicherschlitze kopiert. Bei Block 208 wird für jede nachfolgende Phase/Stufe, z.B. Phase/Stufe II oder Phase/Stufe III, die Anfangs-/Zwischenaufgabe gestoppt, leerlaufen gelassen oder anderswie eingefroren, während die Kopie in Gange ist.
  • Letztlich, bei Block 210, bei Abschluss des Kopierens, kann Ausführung zu dem zuletzt neu fortgesetzten/rekonstruierten Ausführungsbild geschaltet werden.
  • Es wird nun auf 3 Bezug genommen, wobei ein Beispielarbeitsspeicherlayout für den Mehrphasen/stufen-Startprozess gemäß unterschiedlichen Ausführungsformen gezeigt ist. Wie für die Beispielausführungsformen veranschaulicht, wenn der Phase/Stufe-I-Fortsetzungsprozess das Anfangsausführungsbild 300a neu in Arbeitsspeicherlädt und das (leichte) OS auf die Anfangsfunktionalitätsstufe neukonfiguriert, werden die unterschiedlichen Teile 304 des Anfangsausführungsbilds, das die Anfangsabschnitte des OS aufweist, die zu konfigurieren sind, die Anfangsfunktionalitätsstufe und die Anfangsaufgabe bereitzustellen, in die jeweiligen Arbeitsspeicherschlitze/-seiten kopiert. Die anderen Arbeitsspeicherschlitze/-seiten 302 sind unberührt.
  • Wenn der Phase/Stufe-II-Fortsetzungsprozess das Zwischenausführungsbild 300b neu in Arbeitsspeicher lädt und das (plus) OS zu der Zwischenfunktionalitätsstufe neukonfiguriert, werden die unterschiedlichen Teile 306 des Zwischenausführungsbilds, die die Zwischenabschnitte des OS aufweisen, das zu konfigurieren ist, die zusätzliche Zwischenfunktionalitätsstufe und die Zwischenaufgabe bereitzustellen, in die jeweiligen Arbeitsspeicherschlitze/-seiten kopiert. Manche Teile 306 können in Abschnitte von zuvor unberührten Arbeitsspeicherschlitzen/-seiten 302 kopiert werden können, während andere in die Arbeitsspeicherschlitze/-seiten 304 kopiert werden, die von der Anfangsausführungsseite 300a verwendet werden, und den Inhalt der Abschnitte ersetzen.
  • Der Kopierprozess (beinhaltend Überlagern) kann für jede nachfolgende Phase/Stufe wiederholt werden, bis Fortsetzung/Neuladen des vollständigen Ausführungsbilds abgeschlossen ist.
  • Es wird nun auf 4 Bezug genommen, wobei eine Übersicht eines Beispielmehrstufenstartprozesses, wie er von einem fahrzeuginternen System ausgeübt wird, gemäß unterschiedlichen Ausführungsformen gezeigt ist. Wie veranschaulicht, beinhaltet Prozess 400 zum Starten eines fahrzeuginternen Systems in vielen Phasen, wobei jede Phase eine zunehmende Funktionalitätsstufe hat, Betriebe, die bei Blöcken 402-414 durchgeführt werden. Bei Empfang einer Anfrage das fahrzeuginterne System einzuschalten oder kalt zu starten, wird bei Block 402 das OS des fahrzeuginternen Systems zu einem Anfangszustand gestartet, der konfigurierbar ist, eine Anfangsfunktionalitätsstufe (leicht) bereitzustellen, z.B. mit gerade genug Funktionalitäten, um Ausführung einer Rückfahrkameraaufgabe zu unterstützen.
  • Als nächstes, bei Block 404, kann beim Starten des OS des fahrzeuginternen Systems zu dem Anfangszustand, der konfigurierbar ist, um die Anfangsfunktionalitätsstufe (leicht) bereitzustellen, ein Fortsetzungsprozess initialisiert werden, um Ausführung eines Anfangsausführungsbilds fortzusetzen, auch als Phase-I- oder Stufe-I-Ausführungsbild bezeichnet. Das Anfangsausführungsbild beinhaltet im Wesentlichen die Daten, um das (leichte) OS bei der Anfangsfunktionalitätsstufe zu konfigurieren und die Rückfahrkameraaufgabe, auch als die Phase-I- oder Stufe-I-Aufgabe bezeichnet. Das Anfangsausführungsbild, das die Daten, um das (leichte) OS bei der Anfangsfunktionalitätsstufe zu konfigurieren, und die Rückfahrkameraaufgabe beinhaltet, wird vorab in persistenten Speicher des fahrzeuginternen Systems gespeichert, als wäre es ein „aufgeschoben zu persistentem Speicher“-Bild eines Aufschiebungsprozesses, der genau bevor die Client/eingebettete Rechenplattform zuletzt vollständig ausgeschaltet wurde, ausgeführt wurde. Bei Fortsetzung, mit dem (leichten) OS bei der Anfangsfunktionalitätsstufe neukonfiguriert, wird, bei Block 406, Ausführungssteuerung an die Rückfahrkameraaufgabe übertragen, um die Rückfahrkameraaufgabe auszuführen.
  • In unterschiedlichen Ausführungsformen können der imaginäre „Aufschiebungsprozess“ und der Fortsetzungsprozess ein beliebiger einer Zahl von bekannten Prozessen am Stand der Technik sein, um zu persistentem Speicher aufzuschieben und von dort fortzusetzen. Die Rückfahrkameraaufgabe ist eine zustandslose Aufgabe. Daher kann das Phase-I-Starten oder Starten des fahrzeuginternen Systems zu dem Punkt, wenn die Rückfahrkameraaufgabe verfügbar ist, in relativ kurzen 2 Sekunden für unterschiedliche aktuell verfügbare Rechenplattformen bewerkstelligt werden.
  • Weiterhin in Bezug auf 1, wird in unterschiedlichen Ausführungsformen, während die Anfangsaufgabe ausgeführt wird, bei Block 407, das OS weiter initialisiert, um konfigurierbar zu sein, die nächste Funktionalitätsstufe (plus) bereitzustellen, auch als Phase-II- oder Stufe-II-Funktionalitäten bezeichnet.
  • Als nächstes, bei Block 408, kann bei Abschluss von Ausführung der Rückfahrkameraaufgabe, oder bei Leerlauf der Rückfahrkameraaufgabe, ein anderer Fortsetzungsprozess initiiert werden, um Ausführung eines Zwischenausführungsbilds fortzusetzen, auch al Phase-II- oder Stufe-II-Ausführungsbild bezeichnet. Das Zwischenausführungsbild beinhaltet im Wesentlichen die Daten, um das (plus) OS bei der Zwischenfunktionalitätsstufe zu konfigurieren, und die Zwischenaufgabe, auch als die Phase-II- oder Stufe-II-Aufgabe bezeichnet. Das Zwischenausführungsbild, das die Daten, um das (plus) OS bei der Zwischenfunktionalitätsstufe zu konfigurieren, und die Zwischenaufgabe beinhaltet, wird ähnlich in persistentem Speicher des fahrzeuginternen Systems gespeichert, als wäre es ein „aufgeschoben zu persistentem Speicher“-Bild eines Aufschiebungsprozesses, der genau bevor die Client/eingebettete Rechenplattform zuletzt vollständig ausgeschaltet wurde, ausgeführt wurde. Bei Fortsetzung, mit dem (plus) OS bei der Zwischenfunktionalitätsstufe neukonfiguriert, wird, bei Block 410, Ausführungssteuerung an die Begrüßungsfenster- (Verkäuferlogo) -aufgabe übertragen um die Begrüßungsfenster- (Verkäuferlogo) -aufgabe auszuführen. In unterschiedlichen Ausführungsformen kann die Fortsetzung des Zwischenausführungsbilds im Hintergrund durchgeführt werden und in den Vordergrund geschaltet werden, wenn die Fortsetzung abgeschlossen ist und die Begrüßungsfenster- (Verkäuferlogo) - aufgabe verfügbar/bereit zur Ausführung ist.
  • Ähnlich Phase I oder Stufe I können der imaginäre „Aufschiebungsprozess“ und der Fortsetzungsprozess, die für Phase II oder Stufe II eingesetzt werden, ein beliebiger einer Zahl von bekannten Prozessen am Stand der Technik sein, um zu persistentem Speicher aufzuschieben und von dort fortzusetzen. Die Begrüßungsfenster- (Verkäuferlogo) -aufgabe kann auch eine zustandslose Aufgabe sein. Daher kann der Phase-II-Start, oder Start des fahrzeuginternen Systems zu dem Punkt, wenn die Begrüßungsfenster- (Verkäuferlogo) -aufgabe verfügbar ist, in relativ kurzen 4 Sekunden bewerkstelligt werden, knapp über 2 Sek..
  • Immer noch in Bezug auf 4 wird in unterschiedlichen Ausführungsformen, während die Begrüßungsfenster- (Verkäuferlogo) -aufgabe ausgeführt wird, bei Block 411, das OS weiter initialisiert, konfigurierbar zu sein, die vollständige Funktionalitätsstufe (mit vollständiger Grafikanwenderschnittstelle (GUI, Graphics User Interface)) bereitzustellen, um Maschine-Mensch-Interaktion zu unterstützen, auch als Phase-III- oder Stufe-III-Funktionalitäten bezeichnet.
  • Als nächstes, bei Block 112, kann bei Abschluss von Ausführung der Begrüßungsfenster- (Verkäuferlogo) -aufgabe oder bei Leerlauf der Begrüßungsfenster-(Verkäuferlogo) -aufgabe, ein anderer Fortsetzungsprozess initiiert werden, um Ausführung eines vollständigen Ausführungsbilds fortzusetzen, auch als Phase-III- oder Stufe-III-Ausführungsbild bezeichnet. Das vollständige Ausführungsbild beinhaltet im Wesentlichen die Daten, um das OS bei der vollständigen Funktionalitätsstufe zu konfigurieren, und mehrere Betriebsaufgaben, auch als die Phase-III- oder Stufe-III-Aufgaben bezeichnet. Das vollständige Ausführungsbild, das die Daten, um das OS bei der vollständigen Funktionalitätsstufe zu konfigurieren, und die mehreren Betriebsaufgaben beinhaltet, wird in persistentem Speicher des fahrzeuginternen als Teil eines Aufschiebungsprozesses gespeichert, der genau bevor das fahrzeuginterne System zuletzt vollständig ausgeschaltet wurde, ausgeführt wurde. Bei Fortsetzung, mit dem OS bei der vollständigen Funktionalitätsstufe neukonfiguriert, wird, bei Block 414, Ausführungssteuerung an eine von Betriebsaufgaben übertragen, um selektive Ausführung der Betriebsaufgaben zu beginnen. In unterschiedlichen Ausführungsformen kann die Fortsetzung vom vollständigen Ausführungsbild ähnlich im Hintergrund durchgeführt werden und in den Vordergrund geschaltet werden, wenn die Fortsetzung abgeschlossen ist und die mehreren Betriebsaufgaben verfügbar/bereit zur Ausführung sind.
  • Ähnlich Phase I und II oder Stufe I & II kann der Aufschiebungs- und Fortsetzungsprozess, der für Phase III oder Stufe III eingesetzt wird, ein beliebiger einer Zahl von bekannten Prozessen am Stand der Technik sein, um zu persistentem Speicher aufzuschieben und von dort fortzusetzen. Mit Phase/Stufe I und II in relativ kurzen 2 und 4 Sekunden erzielt, kann der Phase-III-Start, oder Start der Client/eingebetteten Rechenplattform zu dem Punkt, wenn die Betriebsaufgaben verfügbar sind, in vielen aktuell verfügbaren Rechenplattformen im passenden Zeitraum von etwa 10 Sek. bewerkstelligt werden.
  • Es wird nun auf 5 Bezug genommen, wobei ein Beispiel sowohl eines Ausschalt- als auch eines Einschaltprozesses gemäß unterschiedlichen Ausführungsformen veranschaulicht ist. Wie gezeigt, beinhaltet, für die veranschaulichten Ausführungsformen, Ausschaltprozess 500 Betriebe bei Blöcken 510-516, wohingegen Einschaltprozess 530 Betriebe bei Blöcken 530-540 beinhaltet.
  • Prozess 500 zum Ausschalten einer Rechenplattform, startet bei Block 510. Bei Block 510, vor Ausschalten einer Rechenplattform, wird ein Ausführungsbild vorab in persistenten Speicher der Rechenplattform gespeichert, für jede von Phase/Stufe 1 bis Phase/Stufe n-1 (die Phase/Stufe vor der finalen Phase/Stufe n). Jedes dieser Ausführungsbilder wird gespeichert, als ob wäre es eine Aufschiebung zum persistenten Speicherbild eines Aufschiebungsprozesses, das Daten, um das OS der Rechenplattform, bei Fortsetzung, zu einer entsprechenden Funktionalitätsstufe zu konfigurieren, und eine Aufgabe, die bei der bestimmten Phase/Stufe vom Start auszuführen ist, aufweist. Typischerweise ist das OS jeder Phase/Stufe mit im Wesentlichen gerade ausreichender Funktion konfiguriert, um die Ausführung der Aufgabe für die bestimmte Phase/Stufe zu unterstützen, um ein schnelles Starten zu erleichtern. Zusätzlich können die bei Phasen/Stufen I bis n-1 auszuführenden Aufgaben zustandlos sein, um die Startzeit jeder der Phasen/Stufen weiter zu beschleunigen.
  • Nachfolgend, bei Block 512, kann eine Ausschaltanfrage von der Rechenplattform, z.B. von dem OS der Rechenplattform, empfangen werden. Bei Block 514 wird, anstatt direkt damit fortzufahren, auszuschalten, ein Aufschiebungsprozess initiiert, um die Rechenplattform zu persistentem Speicher aufzuschieben. Als Teil des Aufschiebungsprozesses können unterschiedliche optionale Betriebe durchgeführt werden, um die Rechenplattform vorzubereiten, nachfolgend Fortsetzung vom persistenten Speicher zu beschleunigen, wenn später eine Einschalt- oder Kaltstartanfrage empfangen wird. Diese unterschiedlichen optionalen Betriebe können beinhalten, sind aber nicht begrenz auf, unterschiedliche Anwendungen zu zwingen, manche oder alle ihrer zugewiesenen Arbeitsspeicher freizugeben, um die Menge von Inhalt zu verringern, der vom Arbeitsspeicher zum persistenten Speicher kopiert/gespeichert werden muss, oder die Menge an Inhalt zu komprimieren, die vom Arbeitsspeicher zum persistenten Speicher zu kopieren/speichern ist, um die Menge an Zeit zu verringern, die zum Aufschieben benötigt wird, wie auch die Menge an Zeit um fortzusetzen. Weiter können die unterschiedlichen optionalen Betriebe beinhalten, die vom Arbeitsspeicher zu persistentem Speicher zu kopierenden/speichernden Inhalte derart zu priorisieren, dass der Inhalt höherer Priorität während eines späteren Fortsetzungsprozesses als erstes zurückkopiert würde. Noch weiter können die unterschiedlichen optionalen Betriebe beinhalten, den zu kopierenden/speichernden Inhalt zu signieren und/oder den zu kopierenden/speichernden Inhalt zu verschlüsseln, um den Inhalt zu sichern.
  • Bei Block 516 wird, bei Abschluss der optionalen Vorbereitungsbetriebe, falls es irgendwelche gibt, der Aufschiebungsprozess abgeschlossen. Danach wird die Rechenplattform ausgeschaltet.
  • Es ist zu beachten, dass die Betriebe bei Block 510 nicht nur einmal vor dem ersten Ausschalten durchzuführen sein könnten, außer eines der Fortsetzungsausführungsbilder von Phase/Stufe I bis Phase/Stufe n-1 muss geändert werden.
  • Immer noch in Bezug auf 5 startet Prozess 530, zum Einschalten einer Rechenplattform, bei Block 532. Bei Block 532 wird eine Anfrage, eine Rechenplattform einzuschalten oder kalt zu starten, z.B. von einem Startprogramm der Rechenplattform empfangen. Bei Block 534, wie zuvor beschrieben, wird das OS zu einer Anfangsfunktionalitätsstufe (leicht) kaltgestartet. Als nächstes wird, bei Block 536, ein Fortsetzungsprozess initiiert, um ein Phase/Stufe-I-Ausführungsbild der Rechenplattform zu initiieren, das OS zu einer Phase/Stufe I von Funktionalitäten zu konfigurieren und eine Phase/Stufe-I-Aufgabe auszuführen. In manchen Ausführungsformen kann das OS weiter initialisiert werden, auf andere Phasen/Stufen von Funktionalitäten konfigurierbar zu sein, während die Phase/Stufe-I-Aufgabe ausgeführt wird.
  • Bei Block 538 werden die Betriebe von Block 536 ein- oder mehrmals für eine oder mehr zusätzliche Phasen/Stufen wiederholt, wobei aufeinanderfolgend ein oder mehr aufgeschoben-zu-persistentem-Speicher-Ausführungsbilder für die eine oder mehr Phasen/Stufen fortgesetzt werden und eine Aufgabe für jede der einen oder mehr Phasen/Stufen ausgeführt wird. Und während jeder Ausführung weiteres Initialisieren des OS, für die nächste Phase/Stufe konfigurierbar zu sein, falls es nötig ist.
  • Schließlich, bei Block 540, werden die Betriebe von Block 536 für die finale Phase/Stufe wiederholt, wobei ein aufgeschoben-zu-persistentem-Speicher-Ausführungsbild für die finale Phase/Stufe fortgesetzt wird und eine oder mehr Betriebsaufgaben zur Ausführung verfügbar gemacht werden.
  • Es wird nun auf 6 Bezug genommen, wobei eine Übersicht einer Umgebung zum Eingliedern und Verwenden der Mehrphasen/stufen-Starttechnologie der vorliegenden Offenbarung in Übereinstimmung mit unterschiedlichen Ausführungsformen gezeigt ist. Wie in Ausführungsformen veranschaulicht, beinhaltet Beispielumgebung 650 Fahrzeug 652, das einen Motor, ein Getriebe, Achsen, Räder und so weiter aufweist. Weiter beinhaltet Fahrzeug 652 IVI-System 600, das eine Zahl von Infotainment-Teilsystemen/Anwendungen aufweist, z.B. Kombiinstrument-Teilsystem/Anwendungen, Vordersitz-Infotainment-Teilsystem/Anwendung, wie ein(e) Navigationsteilsystem/-anwendung, ein(e) Medienteilsystem/-anwendung, ein(e) Fahrzeugstatusteilsystem/-anwendung und so weiter, und eine Zahl von Rücksitzunterhaltungsteilsystemen/-anwendungen. Weiter ist IVI-System 600 mit Mehrphasen/stufen-Starttechnologie 650 der vorliegenden Offenbarung bereitgestellt, was IVI-System 600 gestattet, ausgeschaltet zu werden, wenn der Motor ausgeschaltet ist (auch als schlüsselaus (key-offed) bezeichnet), sich aber dennoch unmittelbar verfügbar gibt, wenn IVI-System 600 eingeschaltet wird, wenn der Motor eingeschaltet wird (auch als Schlüssel-Ein (Key On) bezeichnet).
  • In Ausführungsformen kann IVI-System 600 von selbst oder in Antwort auf die Anwenderinteraktionen mit einem oder mehr fahrzeugexternen fernen Inhaltsservern 660 über einen drahtlosen Signalverstärker oder eine Basisstation an Sendeturm 656 nahe Fahrzeug 652 und ein oder mehr private und/oder öffentliche kabelgebundene und/oder drahtlose Netzwerke 658 kommunizieren oder interagieren. Beispiele von privaten und/oder öffentlichen kabelgebundenen und/oder drahtlosen Netzwerken 658 können das Internet, das Netzwerk eines Funkdienstbetreibers und so weiter beinhalten. Es wird verstanden, dass Sendeturm 656 verschiedene Türme zu verschiedenen Zeiten/bei verschiedenen Standorten sein können, während Fahrzeug 652 zu seinem Ziel unterwegs ist.
  • Es wird nun auf 7 Bezug genommen, wobei eine Hardware/Software-Ansicht des fahrzeuginternen Systems von 6 gemäß unterschiedlichen Ausführungsformen in weiteren Details gezeigt ist. Wie veranschaulicht, beinhaltet für die Ausführungsformen fahrzeuginternes System 700 (das fahrzeuginternes System 600 sein kann) Hardware 701 und Software 710. Hardware 701 beinhaltet Prozessor 702, Arbeitsspeichersteuerung 703, Arbeitsspeicher 704, Nur-Lese-Arbeitsspeicher (ROM, Read-Only Memory) 706, Kommunikations- und/oder Eingabe/Ausgabe- (I/O, Input/Output) -geräte 708 und persistenten Speicher 709. Arbeitsspeicher 704 beinhaltet Software 710, während ROM 706 ein Startprogramm 711 beinhaltet.
  • Software 710 beinhaltet Hypervisor 712, der eine Zahl von VMs 722-728 hostet. Hypervisor 712 ist konfiguriert, Ausführung von VMs 722-728 zu hosten. Die VMs 722-728 beinhalten eine Dienst-VM 722 und eine Zahl von Anwender-VMs 724-728. Dienst-VM 722 beinhaltet ein Dienst-OS, das Ausführung einer Zahl von Kombiinstrumentanwendungen 732 hostet. Anwender-VMs 724-728 können eine Anwender-VM 724, die ein Anwender-OS aufweist, das Ausführung von Vordersitz-Infotainment-Anwendungen 734 hostet, und eine Zahl zusätzlicher Anwender-VMs 726-728, die ein entsprechendes Anwender-OS aufweisen, das Ausführung entsprechender Rücksitzunterhaltungsanwendung 736-738 und so weiter hostet, beinhalten.
  • Um fahrzeuginternes System 700 zu ermöglichen ausgeschaltet zu werden, wenn der Motor von Fahrzeug 652 schlüsselaus ist, aber sich dennoch einem Anwender unmittelbar verfügbar gibt, wenn fahrzeuginternes System 700 eingeschaltet wird, wenn der Motor von Fahrzeug 652 schlüsseleingeschaltet wird, ist Software 710 mit Mehrphasen/stufen-Starttechnologie 650 der vorliegenden Offenbarung eingegliedert. Um das gewünschte ausgeschaltet sein und sich dennoch unmittelbar beim Einschalten verfügbar zu geben, zu bewirken, werden in Ausführungsformen die unterschiedlichen Komponenten der Mehrphasen/stufen-Starttechnologie 650 eingerichtet, um eine Aufschiebung zum Speicherprozess während des Ausschaltens zu initiieren, um SVM 722 zu persistentem Speicher aufzuschieben, bevor IVI-System 700 ausgeschaltet wird, und beim Einschalten der Startprozess durch Mehrphasen/stufen-Start geht, das OS von SVM 722 nacheinander zu einer oder mehreren Phasen/Stufen fortzusetzen und eine oder mehrere zeitsensible Aufgaben bei der einen oder den mehreren Phasen/Stufen auszuführen.
  • In Ausführungsformen, um Leistungsverwaltung zu erleichtern, kann sowohl Hypervisor 712 als auch OS von VMs 722-728 einen Leistungsverwalter 740-746 beinhalten. In Ausführungsformen sind Leistungsverwalter 740-746 konfiguriert, Leistungszustände von Hypervisor 712 und VMs 722-728 konform mit dem Advanced Configuration and Power Interface (ACPI) Standard zu verwalten. Das heißt, die Leistungsverwalter 740-746 sind konfiguriert, Hypervisor 712 und VMs 722-729 zu und von einem S3-Aufschiebezustand (auch als Ruhe- oder Schlafzustand bezeichnet), aufzuschieben und fortzusetzen, wie auch die Rechenplattform konform mit dem ACPI-Standard in einen S4-Auszustand zu versetzen. In Ausführungsformen können sowohl OS von Dienst-VM 722 als auch Anwender-VM 724-728 weiter einen Arbeitsspeicherverwalter 772-778 beinhalten, um Zuweisung von Arbeitsspeicher zu unterschiedlichen Diensten und/oder Anwendungen, die innerhalb der jeweiligen VMs laufen, zu verwalten.
  • Außer für Mehrphasen/stufen-Starttechnologie 650 der vorliegenden Offenbarung, in IVI-System 700 eingegliedert, können Elemente 702-708 von Hardware 701 und Elemente 712-738 von Software 710 ein beliebiges einer Zahl von diesen Elementen am Stand der Technik sein. Zum Beispiel kann Prozessor 702 ein beliebiger einer Zahl am Stand der Technik bekannter Mehrkernprozessoren sein, wie die von Intel®, Santa Clara, CA, verfügbaren. Arbeitsspeicher 104 kann ein beliebiger einer Zahl von flüchtigem Arbeitsspeicher am Stand der Technik sein, beinhaltend herkömmlichen dynamischen Direktzugriffarbeitsspeicher (DRAM, Dynamic Random Access Memory) oder fortschrittlichen Schnittpunktarbeitsspeicher. Speichersteuerung 703 kann einfach Zugriffsteuerung bereitstellen, das heißt Lesen und/oder Schreiben von/zu Speicher 704, oder fortschrittliche Funktionen beinhalten, wie Verschlüsselungs-/Entschlüsselungsdienste. ROM 706 kann einer von einer Zahl von persistentem Nur-Lese-Arbeitsspeicher am Stand der Technik sein, wie, aber nicht begrenzt auf, elektrisch löschbarerer programmierbarer Nur-Lese-Arbeitsspeicher (EEPROM, Electrically Erasable Programmable Read-Only Memory). Startprogramm 711 kann ebenso ein beliebiger von einer Zahl von Startprogrammen am Stand der Technik sein, wie ein primärer oder sekundärer Startlader (SBL, Secondary Boot Loader), ein Mehrstartprogramm, z.B. Grub, oder ein Fahrzeugstartlader (ABL, Automotive Boot Loader). Startprogramm 711 kann Teil eines grundlegenden Eingabe-/Ausgabesystems (BIOS, Basic Input/Output System) sein.
  • Kommunikations- und I/O-Geräte 708 können eine beliebige Zahl von Kommunikations- und I/O-Geräten am Stand der Technik beinhalten. Beispiele von Kommunikationsgeräten können Netzwerkschnittstellen für Bluetooth®, Nahfeldkommunikation (NFC, Near Field Communication), WiFi, Funkkommunikation (wie LTE, 4G oder 5G) und so weiter beinhalten, sind aber nicht darauf begrenzt auf. Beispiele von I/O-Geräten können persistenten Speicher 709, Anzeige, Tastaturen, Zeigersteuerung (Maus, Rollkugel usw.) und so weiter beinhalten, sind aber nicht darauf begrenzt. In Ausführungsformen kann persistenter Speicher 709 verwendet werden, um Tauschraum zum Tauschen von Arbeitsspeicherinhalt aus Arbeitsspeicher 704 bereitzustellen, um zu erlauben, dass ein Abschnitt von Arbeitsspeicher 704 für andere Verwendung neuzugewiesen wird, oder Arbeitsspeicher 704 ausgeschaltet wird. Persistenter Speicher 709 kann auch verwendet werden, Arbeitsspeicherinhalte zu speichern, wenn die Rechenplattform vom fahrzeuginternen System 700 zu Speicheraufgeschoben wird.
  • Hypervisor 712 kann ein beliebiger einer Zahl von Hypervisoren am Stand der Technik sein, wie KVM, ein quelloffener Hypervisor, Xen, von Citrix Inc, Fort Lauderdale, FL., verfügbar, oder VMware, von VMWare Inc, Palo Alto, CA, verfügbar, und so weiter. Ähnlich können Dienst-OS vom Dienst-VM 722 und Anwender-OS von Anwender-VMs 724-728 ein beliebiges einer Zahl von OS am Stand der Technik sein, wie Linux, z.B. von Red Hat Enterprise, Raleigh, NC, verfügbar, Android, von Google, Mountain View, CA, verfügbar.
  • In unterschiedlichen Ausführungsformen können Prozessor(en) 702, ROM 706, Arbeitsspeichersteuerung 703 und manche Kommunikations- & I/O-Geräte 708 Teil eines System-auf-einem-Chip (SoC, System-on-Chip) sein. Für manche dieser Ausführungsformen kann das SoC weiter Grafikprozessor, Computervision und/oder Beschleuniger von tiefem maschinellem Lernen beinhalten.
  • Es wird nun auf 8 Bezug genommen, wobei ein Beispiel sowohl eines Ausschalt- als auch eines Einschaltprozesses, die zur Umsetzung durch IVI-System 600/700 geeignet sind, gemäß unterschiedlichen Ausführungsformen veranschaulicht ist. Wie gezeigt, beinhaltet für die veranschaulichten Ausführungsformen Ausschaltprozess 800 Betriebe bei Blöcken 810-816, wohingegen Einschaltprozess 830 Betriebe bei Blöcken 830-840 beinhaltet.
  • Prozess 800 zum Ausschalten einer Rechenplattform startet bei Block 810. Bei Block 810, vor Ausschalten einer Rechenplattform, wird vorab ein Ausführungsbild vorab für Phase/Stufe 1 und Phase/Stufe 2 in persistenten Speicher der Rechenplattform gespeichert. Alle diese Ausführungsbilder werden gespeichert, als wären sie ein Fortsetzungsausführungsbild, das Daten, um das OS der Rechenplattform zu einer entsprechenden Funktionalitätsstufe zu konfigurieren, und eine Aufgabe, die bei der bestimmten Phase/Stufe vom Start auszuführen ist, aufweist. Genauer ist die Aufgabe für Phase/Stufe I eine zustandslose Rückfahrkameraaufgabe und die Aufgabe für Phase/Stufe II ist eine zustandslose Begrüßungsfenster- (Verkäuferlogo) -aufgabe. Für die veranschaulichen Ausführungsformen, um schnellen Start zu erleichtern, ist jede Phase/Stufe OS mit im Wesentlichen gerade genug Funktion konfiguriert, um die Ausführung der Aufgabe für die bestimmte Phase/Stufe zu unterstützen.
  • Nachfolgend, bei Block 812, kann eine Ausschaltanfrage von der Rechenplattform empfangen werden, z.B. durch das OS der SVM der Rechenplattform. Bei Block 814 wird, anstatt direkt damit fortzufahren auszuschalten, ein Aufschiebungsprozess initiiert, um die SVM zu persistentem Speicher aufzuschieben. Als Teil des Aufschiebungsprozesses können unterschiedliche optionale Betriebe durchgeführt werden, um die SVM vorzubereiten, vom persistenten Speicher fortzusetzen, wenn später eine Einschalt- oder Kaltstartanfrage empfangen wird. Diese unterschiedlichen optionalen Betriebe, wie vorher beschrieben, können beinhalten, sind aber nicht darauf begrenzt, unterschiedliche Kombiinstrumentanwendungen der SVM zu zwingen, manche oder alle ihrer zugewiesenen Arbeitsspeicher freizugeben, um die Menge an Inhalt zu verringern, die vom Arbeitsspeicher zu persistentem Speicher kopiert/gespeichert werden muss, oder die Menge an Inhalt zu komprimieren, die vom Arbeitsspeicher zu persistentem Speicher kopiert/gespeichert werden muss, um die Zeitdauer, die benötigt wird aufzuschieben, wie auch die Zeitdauer, die benötigt wird um fortzusetzen, zu verringern. Weiter können die unterschiedlichen optionalen Betriebe beinhalten, die Inhalte, die vom Arbeitsspeicher zu persistentem Speicher kopiert/gespeichert werden sollen, derart zu priorisieren, dass der Inhalt mit höherer Priorität während eines späteren Fortsetzungsprozesses als erstes zurückkopiert werden würde. Noch weiter können die unterschiedlichen optionalen Betriebe beinhalten, den Inhalt der kopiert/gespeichert werden soll zu signieren und/oder den Inhalt der kopiert/gespeichert werden soll zu verschlüsseln, um den Inhalt zu sichern.
  • Bei Block 816 wird bei Abschluss der optionalen Vorbereitungsbetriebe, falls es welche gibt, der Aufschiebungsprozess für die SVM abgeschlossen. Danach wird die Rechenplattform ausgeschaltet.
  • Es ist zu beachten, dass Betriebe bei Block 810 nur einmal vor dem ersten Ausschalten durchgeführt werden müssen, außer eines der Fortsetzungsausführungsbilder von Phase/Stufe I bis Phase/Stufe II muss geändert werden.
  • Immer noch in Bezug auf 8 startet Prozess 830 zum Einschalten einer Rechenplattform bei Block 832. Bei Block 832 wird eine Anfrage eine Rechenplattform einzuschalten oder kalt zu starten empfangen, z.B. durch das Startprogramm der Rechenplattform. Bei Block 834 wird zuerst der Hypervisor, dann das OS der SVM jeweils zu einer Anfangsfunktionalitätsstufe (leicht) kaltgestartet. Als nächstes wird bei Block 836 ein Fortsetzungsprozess initiiert, um ein Phase/Stufe-I-Ausführungsbild des OS der SVM fortzusetzen, das das OS des SVM auf eine Phase/Stufe I von Funktionalitäten konfiguriert und die Phase/Stufe-I-Rückfahrkameraaufgabe ausführt. In manchen Ausführungsformen kann/können der Hypervisor und/oder das OS der SVM weiter initialisiert werden, um auf eine andere Phase/Stufe von Funktionalitäten konfigurierbar zu sein, während die Phase/Stufe-I-Rückfahrkameraaufgabe ausgeführt wird.
  • Bei Block 838 werden die Betriebe von Block 836 wiederholt, um die Phase/Stufe II aufgeschoben-zu-persistentem-Speicher-Ausführungsbilder fortzusetzen und die Phase/Stufe-II-Aufgabe, Begrüßungsfenster, auszuführen. Und während der Ausführung wird der Hypervisor und das OS der SVM weiter initialisiert, um für die nächste Phase/Stufe konfigurierbar zu sein.
  • Bei Block 840 wird die Betriebe von Block 836 für die finale Phase/Stufe wiederholt, was ein aufgeschoben-zu-persistentem-Speicher-Ausführungsbild für die finale Phase/Stufe fortsetzt und eine oder mehrere Betriebsaufgaben zur Ausführung verfügbar macht.
  • Bei Block 842 werden eine von mehreren Anwender-VMs kaltgestartet.
  • 9 veranschaulicht eine Beispielrechenplattform, die zur Verwendung geeignet sein kann, ausgewählte Aspekte der vorliegenden Offenbarung umzusetzen. Wie gezeigt, beinhaltet Rechenpattform 900 ein oder mehrere System-auf-einem-Chip (SoC) 902, wobei jedes einen oder mehrere Prozessorkerne, eine Grafikeinheit, Computervision und/oder Beschleuniger von tiefem Maschinenlernen aufweist. Zusätzlich kann Rechenplattform 900 ROM 903 beinhalten, der ein beliebiger von einer Zahl von ROM am Stand der Technik sein kann, und Systemarbeitsspeicher 904 kann ein beliebiger einer Zahl von volatilem Speicher am Stand der Technik sein. In alternativen Ausführungsformen können Nur-Lese-Arbeitsspeicher (ROM) 903 und Systemarbeitsspeicher 904 Teil von SoC 902 sein.
  • Weiter kann Rechensystem 900 persistente Speichergeräte 906 beinhalten. Beispiel von persistenten Speichergeräten 906 können beinhalten, sind aber nicht begrenzt auf, Flashlaufwerke, Festplatten, Kompaktdatenträger-Nur-Lese-Speicher (CD-ROM, Compact Disc Read-Only Memory) und so weiter. Weiter kann Computersystem 900 Eingabe/Ausgabegeräte 908 (wie Anzeige, Tastatur, Zeigersteuerung und so weiter) und Kommunikationsschnittstellen 910 (wie Netzwerkschnittstellenkarten, Modems und so weiter) beinhalten. Die Elemente können miteinander über Systembus 912 gekoppelt sein, der einen oder mehrere Busse darstellen kann. Im Fall mehrerer Busse können sie von einer oder mehreren Busbrücken (nicht gezeigt) überbrückt sein.
  • Jedes dieser Elemente kann seine herkömmlichen Funktionen am Stand der Technik durchführen. Insbesondere kann ROM 903 grundlegende Eingabe-/Ausgabesystemdienste (BIOS) 905 beinhalten, die einen Startlader aufweisen. Systemarbeitsspeicher 904 und Massenspeichergeräte 906 können eingesetzt werden, um eine Arbeitskopie und eine permanente Kopie der Programmieranweisungen zu speichern, die die mit Hypervisor 712, Dienst/Anwender-OS von Dienst/Anwender-VM 722-728, beinhaltend die jeweiligen Leistungsverwalter, verknüpft ist, gemeinsam als Rechenlogik 922 bezeichnet. Die unterschiedlichen Elemente können durch Assemblieranweisungen implementiert werden, die vom/von Prozessor(en) von SoC 902 oder Sprachen höherer Stufe, wie zum Beispiel C, die in solche Anweisungen kompiliert werden können, unterstützt werden.
  • Wie ein Fachkundiger begrüßen wird, kann die vorliegende Offenbarung als Verfahren oder Computerprogrammprodukte ausgeführt sein. Dementsprechend kann die vorliegende Offenbarung zusätzlich dazu, wie vorher beschrieben in Hardware ausgeführt zu sein, die Form einer gänzlichen Software-Ausführungsform (beinhaltend Firmware, speicherresidente Software, Mikrocode usw.) oder einer Ausführungsform, die Software- und Hardware-Aspekte kombiniert, die alle im Allgemeinen als „Schaltung“, „Modul“ oder „System“ bezeichnet werden, annehmen. Darüber hinaus kann die vorliegende Offenbarung die Form eines Computerprogrammprodukts, das in einem beliebigen greifbaren oder nichttransitorischen Ausdrucksmedium, das computerlesbaren Programmcode in dem Medium eingebettet aufweist, annehmen. 10 veranschaulicht ein computerlesbares nichttransitorisches Beispielspeichermedium, das zur Verwendung geeignet sein kann, Anweisungen zu speichern, die eine Vorrichtung veranlassen, in Antwort auf Ausführung der Anweisungen durch die Vorrichtung, ausgewählte Aspekte der vorliegenden Offenbarung auszuüben. Wie gezeigt, kann das nichttransitorische computerlesbare Speichermedium 1002 eine Zahl von Programmieranweisungen 1004 beinhalten. Programmieranweisungen 1004 können konfiguriert sein, einem Gerät, z.B. Rechenplattform 900, in Antwort auf Ausführung der Programmieranweisungen zu ermöglichen, (Aspekte von) Startprogramm 711, Hypervisor 712, Dienst/Anwender-OS von Dienst/Anwender-VM 722-728, beinhaltend die jeweiligen Leistungsverwalter, zu implementieren. In alternativen Ausführungsformen können Programmieranweisungen 1004 stattdessen an vielen computerlesbaren nichttransitorischen Speichermedien 1002 angeordnet sein. In noch anderen Ausführungsformen können Programmieranweisungen 1004 auf computerlesbaren transitorischen Speichermedien 1002 angeordnet sein, wie etwa Signale.
  • Eine beliebige Kombination ein oder mehrere computerverwendbare oder computerlesbare Medien können genutzt werden. Das computerverwendbare oder computerlesbare Medium kann zum Beispiel ein(e) elektronische(s), magnetische(s), optische(s), elektromagnetische(s), infrarote(s) oder Halbleitersystem, -vorrichtung oder - gerät oder Ausbreitungsmedium sein, ist aber nicht darauf begrenzt. Genauere Beispiele (eine nichterschöpfende Liste) des computerlesbaren Mediums würden das Folgende beinhalten: eine elektrische Verbindung, die einen Draht oder mehr Drähte aufweist, eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffarbeitsspeicher (RAM, Random Access Memory), einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM oder Flasharbeitsspeicher), eine optische Faser, einen tragbaren Kompaktdatenträger-Nur-Lese-Speicher (CD-ROM), ein optisches Speichergerät, Sendemedien, wie die, die das Internet oder ein Intranet unterstützen, oder ein magnetisches Speichergerät. Es ist zu beachten, dass das computerverwendbare oder computerlesbare Medium sogar Papier oder ein anderes geeignetes Medium sein kann, auf dem das Programm gedruckt wird, da das Programm zum Beispiel über optische Abtastung des Papiers oder anderen Mediums elektronisch erfasst werden kann, dann falls nötig kompiliert, interpretiert oder anders auf eine geeignete Weise verarbeitet werden kann und dann in einem Computerarbeitsspeicher gespeichert werden kann. Im Kontext dieses Dokuments kann ein computerverwendbares oder computerlesbares Medium ein beliebiges Medium sein, das das Programm zur Verwendung von oder in Verbindung mit dem/der Anweisungsausführungssystem, - vorrichtung oder -gerät enthalten, speichern, kommunizieren, ausbreiten oder transportieren kann. Das computerverwendbare Medium kann ein ausgebreitetes Datensignal mit dem computerverwendbaren Programmcode darin eingebettet entweder als Basisband oder als Teil einer Trägerwelle beinhalten. Der computerverwendbare Programmcode kann unter Verwendung eines beliebigen angemessenen Mediums gesendet werden, beinhaltend, aber nicht begrenzt auf, drahtlos, kabelgebunden, optisches Faserkabel, RF usw.
  • Computerprogrammcode zum Umsetzen von Betrieben der vorliegenden Offenbarung kann in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben sein, beinhaltend eine objektorientierte Programmiersprache, wie Java, Smalltalk, C++ oder dergleichen, und herkömmliche prozedurale Programmiersprachen, wie die „C“ Programmiersprache oder ähnliche Programmiersprachen. Der Programmcode kann gänzlich auf dem Computer des Anwenders, teilweise auf dem Computer des Anwenders, als ein selbstständiges Softwarepaket, teilweise auf dem Computer des Anwenders und teilweise auf einem fernen Computer oder zur Gänze auf dem fernen Computer oder Server ausgeführt werden. In letzterem Szenario kann der ferne Computer mit dem Computer des Anwenders durch einen beliebigen Typ von Netzwerk verbunden sein, beinhaltend ein lokales Netzwerk (LAN, Local Area Network) oder ein Großraumnetzwerk (WAN, Wide Area Network), oder die Verbindung kann mit einem externen Computer (zum Beispiel durch das Internet unter Verwendung eines Internetdienstanbieters) hergestellt werden.
  • Die vorliegende Offenbarung ist in Bezug auf Ablaufveranschaulichungen und/oder Blockdiagramme von Verfahren, Vorrichtung (Systeme) und Computerprogrammprodukte gemäß Ausführungsformen der Offenbarung beschrieben. Es wird verstanden, dass jeder Block der Ablaufveranschaulichungen und/oder Blockdiagramme und Kombinationen von Blöcken in den Ablaufveranschaulichungen und/oder Blockdiagrammen durch Computerprogrammanweisungen implementiert werden können. Diese Computerprogrammanweisungen können einem Prozessor eines Allzweckcomputers, Sonderzweckcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine derart zu erstellen, dass die Anweisungen, die über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Implementieren der Funktionen/Handlungen schaffen, die in dem Ablaufdiagramm- und/oder Blockdiagrammblock oder -blöcken spezifiziert sind.
  • Diese Computerprogrammanweisungen können auch in einem computerlesbaren Medium gespeichert sein, das einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung lenken kann, in einer bestimmten Weise zu funktionieren, sodass die Anweisungen, die in dem computerlesbaren Medium gespeichert sind, einen Herstellungsartikel erzeugen, der Anweisungsmittel beinhaltet, die die Funktion/Handlung implementieren, die in dem Ablaufdiagramm- und/oder Blockdiagrammblock oder -blöcken spezifiziert ist.
  • Diese Computerprogrammanweisungen können auch auf einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung geladen werden, um eine Durchführung einer Reihe von Betriebsschritten auf dem Computer oder der anderen programmierbaren Datenverarbeitungsvorrichtung zu veranlassen, um einen computerimplementierten Prozess zu erzeugen, sodass die Anweisungen, die auf dem Computer oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Prozesse zum Implementieren der Funktionen/Handlungen bereitstellen, die in dem Ablaufdiagramm- und/oder Blockdiagrammblock oder -blöcken spezifiziert sind.
  • Die Ablauf- und Blockdiagramme in den Figuren veranschaulichen die Architektur, Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß unterschiedlichen Ausführungsformen der vorliegenden Offenbarung. In diesem Bezug kann jeder Block in den Ablauf- oder Blockdiagrammen ein Modul, Segment, oder einen Abschnitt von Code darstellen, das/der ein oder mehrere ausführbare Anweisungen zum Implementieren der spezifizierten logischen Funktion(en) umfasst. Es sollte auch festgehalten werden, dass in manchen alternativen Implementierungen die in dem Block festgehaltenen Funktionen außerhalb der in den Figuren genannten Reihenfolge auftreten können. Zum Beispiel können zwei in Abfolge gezeigte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, abhängig von der involvierten Funktionalität. Es wird auch festgehalten, dass jeder Block der Blockdiagramme und/oder Ablaufveranschaulichung und Kombinationen von Blöcken in den Blockdiagrammen und/oder der Ablaufveranschaulichung durch hardwarebasierte Sonderzwecksysteme implementiert werden können, die spezifizierte Funktionen oder Handlungen oder Kombinationen von Sonderzweckhardware und Computeranweisungen implementieren können.
  • Die hierin verwendete Terminologie dient dem Zweck bestimmte Ausführungsformen nur zu beschreiben und soll die Offenbarung nicht begrenzen. Wie hierin verwendet, sollen die Einzahlformen „ein“, „eine“ und „der/die/das“ Mehrzahlformen ebenso beinhalten, außer der Kontext gibt klar anderes vor. Es wird weiter verstanden, dass die Ausdrücke „umfasst“ und/oder „umfassend“, wenn in dieser Anmeldung verwendet", die Gegenwart genannter Merkmale, ganzer Zahlen, Schritte, Betrieb, Elemente und/oder Komponenten spezifizieren, aber nicht die Gegenwart oder Zugabe eines oder mehrerer Merkmale, Integrale, Schritte, Betrieb, Elemente, Komponenten und/oder Gruppen davon ausschließen.
  • Ausführungsformen können als Computerprozess, ein Rechensystem oder als ein Herstellungsartikel, wie ein Computerprogrammprodukt von computerlesbaren Medien, implementiert werden. Das Computerprogrammprodukt kann ein Computerspeichermedium sein, das von einem Computersystem gelesen werden kann und Computerprogrammanweisungen zum Ausführen eines Computerprozesses verschlüsselt.
  • Die entsprechenden Strukturen, das Material, die Handlungen und Äquivalente aller Mittel oder Schritte plus Funktionselemente in den Ansprüchen unterhalb, sind beabsichtigt, ein(e) beliebige(s) Struktur, Material oder Handlung zum Durchführen der Funktion in Kombination mit anderen beanspruchten Elementen zu beinhalten, werden spezifisch beansprucht. Die Beschreibung der vorliegenden Offenbarung wurde zu Zwecken der Veranschaulichung und Beschreibung dargestellt, ist aber nicht beabsichtigt, für die Offenbarung in der offenbarten Form erschöpfend oder begrenzend zu sein. Viele Modifikationen und Variationen werden Durchschnittsfachleuten ersichtlich, ohne von dem Umfang und Wesen der Offenbarung abzuweichen. Die Ausführungsform wurde ausgewählt und in der Reihenfolge beschrieben, um die Prinzipien der Offenbarung und deren praktische Anwendung am besten zu erklären und anderen Durchschnittsfachleuten zu ermöglichen, die Offenbarung für Ausführungsformen mit unterschiedlichen Modifikationen zu verstehen, wie sie für die bestimmte in Betracht gezogene Verwendung geeignet sind.
  • Wieder in Bezug auf 9 kann für eine Ausführungsform mindestens einer von Prozessoren von SoC 920 gemeinsam mit Arbeitsspeicher gepackt sein, der Aspekte von Rechenlogik 922 aufweist. Für eine Ausführungsform kann mindestens einer der Prozessoren von SoC 902 gemeinsam mit Arbeitsspeicher gepackt sein, der Aspekte von Rechenlogik 922 aufweist, um ein System-im-Paket (SiP, System in Package) zu bilden. Für eine Ausführungsform kann mindestens einer von Prozessoren von SoC 902 auf demselben Die mit Arbeitsspeicher, der Aspekte von Rechenlogik 922 aufweist, integriert sein. Für eine Ausführungsform kann mindestens einer von Prozessoren von SoC 902 gemeinsam mit Arbeitsspeicher gepackt sein, der Aspekte von Rechenlogik 922 aufweist, um das SoC zu bilden.
  • Daher wurden unterschiedliche Beispielausführungsformen der vorliegenden Offenbarung beschrieben, beinhaltend, aber nicht begrenzt auf:
    • Beispiel 1 ist mindestens ein computerlesbares Medium (CRM), das Anweisungen darin gespeichert aufweist, um eine Rechenplattform in Antwort auf Ausführung der Anweisung durch die Rechenplattform zu veranlassen, ein Betriebssystem zu betreiben zum: Empfangen von Ausführungssteuerung, nachdem das Betriebssystem zu einer Anfangsfunktionalitätsstufe gestartet wurde; und bei Empfang von Ausführungssteuerung, anstatt den Rest des Betriebssystems zu starten, Initiieren eines Fortsetzungsprozesses, um ein Anfangsausführungsbild von persistentem Speicher fortzusetzen, der für die Rechenplattform zugänglich ist, wobei das Anfangsausführungsbild eine zustandslose Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Anfangsfunktionalitätsstufe und die zustandslose Anfangsaufgabe aufweist.
    • Beispiel 2 ist Beispiel 1, wobei der Abschnitt des Betriebssystems, der die erste Funktionalitätsstufe bereitstellt, in zuerst antwortende einer Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform geladen werden; und wobei das Anfangsausführungsbild fortzusetzen umfasst, das Anfangsausführungsbild in zweite jeweilige der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
    • Beispiel 3 ist Beispiel 1, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, Ausführungssteuerung an die zustandslose Anfangsaufgabe zu übertragen, wenn das Anfangsausführungsbild, das die zustandslose Anfangsaufgabe aufweist, geladen oder neu geladen wird, um die zustandslose Anfangsaufgabe auszuführen.
    • Beispiel 4 ist Beispiel 3, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, das Betriebssystem zu einer Zwischenfunktionalitätsstufe zu initialisieren, die fähiger als die Anfangsfunktionalitätsstufe ist, während die zustandslose Anfangsaufgabe ausgeführt wird.
    • Beispiel 5 ist Beispiel 3, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, einen anderen Fortsetzungsprozess zu initiieren, um ein Zwischenausführungsbild von dem persistenten Speicher fortzusetzen, wobei das Zwischenausführungsbild eine zustandslose Zwischenaufgabe aufweist und vorab in den persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Zwischenfunktionalitätsstufe und die zustandslose Zwischenaufgabe aufweist.
    • Beispiel 6 ist Beispiel 5, wobei die Zwischenausführungsbilder fortzusetzen umfasst, den Abschnitt des Betriebssystems, der die Zwischenfunktionalitätsstufe über die Anfangsfunktionalitätsstufe hinaus bereitstellt, und das Zwischenausführungsbild in jeweilige einer Zwischenmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
    • Beispiel 7 ist Beispiel 5, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, Ausführungssteuerung an die zustandslose Zwischenaufgabe zu übertragen, wenn das Betriebssystem zu der Zwischenfunktionalitätsstufe geladen oder neugeladen wird, und wobei das Zwischenausführungsbild die zustandslose Zwischenaufgabe aufweist, um die Zwischenaufgabe auszuführen.
    • Beispiel 8 ist Beispiel 4, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, das Betriebssystem zu seinen vollständigen Funktionalitäten zu initialisieren, während die zustandslose Anfangsaufgabe ausgeführt wird oder nachdem die zustandslose Anfangsaufgabe ausgeführt wurde.
    • Beispiel 9 ist Beispiel 4, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, einen anderen Fortsetzungsprozess zu initiieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher fortzusetzen, wobei das vollständige Ausführungsbild mehrere Betriebsaufgaben aufweist und als Teil eines Aufschiebungsprozesses in den persistenten Speicher gespeichert wurde, der unmittelbar bevor das Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
    • Beispiel 10 ist Beispiel 9, wobei die vollständigen Ausführungsbilder fortzusetzen umfasst, den Abschnitt des Betriebssystems, der die vollständige Funktionalitätsstufe über mindestens die Anfangsfunktionalitätsstufe hinaus bereitstellt, und das finale Ausführungsbild in jeweilige mehrerer Arbeitsspeicherschlitze von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
    • Beispiel 11 ist Beispiel 10, wobei die Rechenplattform weiter veranlasst ist, das Betriebssystem zu betreiben, Ausführungssteuerung an eine der Betriebsaufgaben zu übertragen, wenn das Betriebssystem zu der vollständigen Funktionalitätsstufe geladen oder neugeladen wird und das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist, um die mehreren Betriebsaufgaben auszuführen.
    • Beispiel 12 ist ein Verfahren zum Berechnen, umfassend: Fortsetzen eines Anfangsausführungsbilds einer Rechenplattform von persistentem Speicher der Rechenplattform, um eine Anfangsaufgabe auszuführen, wobei das Anfangsausführungsbild die Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur ein Betriebssystem bei einer Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist; und nachfolgend Fortsetzen eines vollständigen Ausführungsbilds der Rechenplattform von dem persistenten Speicher, um eine von mehreren Betriebsaufgaben auszuführen, wobei das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist und vorab als Teil eines Aufschiebungsprozesses in dem persistenten Speicher gespeichert wurde, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe mit mehr Funktionalitäten als der Anfangsfunktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
    • Beispiel 13 ist Beispiel 12, das weiter aufweist, Initialisieren des Betriebssystems zu der Anfangsfunktionalitätsstufe, bevor das Anfangsausführungsbild von dem persistenten Speicher der Rechenplattform fortgesetzt wird; und Übertragen von Ausführungssteuerung an die Anfangsaufgabe, wenn das Betriebssystem zu der Anfangsfunktionalitätsstufe geladen oder neugeladen wird und das Anfangsausführungsbild die Anfangsaufgabe aufweist, um die Anfangsaufgabe auszuführen.
    • Beispiel 14 ist Beispiel 12, das nachfolgend zu Ausführung der Anfangsaufgabe, aber vor Fortsetzen des vollständigen Ausführungsbilds der Rechenplattform weiter aufweist, Fortsetzen eines Zwischenausführungsbilds der Rechenplattform von persistentem Speicher der Rechenplattform, um eine Zwischenaufgabe auszuführen, wobei das Zwischenausführungsbild die Zwischenaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer Zwischenfunktionalitätsstufe mit mehr Funktionen als die Anfangsfunktionalitätsstufe, aber weniger Funktionen als die vollständige Funktionalitätsstufe, und die mehreren Betriebsaufgaben aufweist.
    • Beispiel 15 ist eine Vorrichtung zum Berechnen, aufweisend: eine Rechenplattform, in einem Fahrzeug angeordnet, die einen Hypervisor aufweist, um eine virtuelle Dienstmaschine (SVM) und eine oder mehr virtuelle Anwendermaschinen (UVMs) zu hosten; ein Startprogramm, integral von der Rechenplattform, um eine Anfrage zu empfangen, die Rechenplattform einzuschalten oder zu starten, wobei das Startprogramm, in Antwort auf Empfang der Anfrage, den Hypervisor zu einer Anfangsfunktionalitätsstufe startet, die, wenn sie zu der Anfangsfunktionalitätsstufe gestartet wurde, die SVM startet und ein Betriebssystem (OS) der SVM zu einer Anfangsfunktionalitätsstufe initialisiert; und das OS der SVM, wobei bei Empfang von Ausführungssteuerung nachdem das OS zu der Anfangsfunktionalitätsstufe initialisiert wurde, das OS anstatt den Rest des OS zu starten, einen Fortsetzungsprozess initiiert, um ein Anfangsausführungsbild von persistentem Speicher der Rechenplattform fortzusetzen, wobei das Anfangsausführungsbild eine Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist.
    • Beispiel 16 ist Beispiel 15, wobei die Anfangsaufgabe eine Rückfahrkameraaufgabe aufweist und die SVM, bei einem vollständigen Betriebszustand, mehrere Kombiinstrumentaufgaben hostet; und wobei das OS der SVM weiter dazu dient, beim Laden oder Neuladen des Anfangsausführungsbilds, das die Rückfahrkameraaufgabe aufweist, Ausführungssteuerung an die Rückfahrkamera zu übertragen, um die Rückfahrkameraaufgabe auszuführen.
    • Beispiel 17 ist Beispiel 15, wobei, um den Hypervisor bei der Anfangsfunktionalitätsstufe zu starten, das Startprogramm den Abschnitt des Hypervisors lädt, der die Anfangsfunktionalitätsstufe in erste jeweilige einer Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform bereitstellt; wobei, um das OS der SVM zu der Anfangsfunktionalitätsstufe zu initialisieren, der Hypervisor den Abschnitt des OS der SVM, der die Anfangsfunktionalitätsstufe bereitstellt, in jeweilige zweite der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform lädt, und wobei, um das Anfangsausführungsbild fortzusetzen, das OS der SVM das Anfangsausführungsbild in jeweilige dritte der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform lädt oder neu lädt.
    • Beispiel 18 ist Beispiel 17, wobei der Hypervisor oder das OS der SVM dazu dient, den Hypervisor oder das OS des SVM weiter zu einer Zwischenfunktionalitätsstufe zu initialisieren, die fähiger deren jeweilige Anfangsfunktionalitätsstufe ist, während die Anfangsaufgabe ausgeführt wird.
    • Beispiel 19 ist Beispiel 17, wobei das OS der SVM weiter dazu dient, einen anderen Fortsetzungsprozess zu initiieren, um ein Zwischenausführungsbild von dem persistenten Speicher fortzusetzen, wobei das Zwischenausführungsbild eine Zwischenaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Zwischenfunktionalitätsstufe und die Zwischenaufgabe aufweist.
    • Beispiel 20 ist Beispiel 19, wobei die Zwischenaufgabe eine Begrüßungsfensteraufgabe umfasst und die SVM, bei einem vollständigen Betriebszustand, dazu dient, mehrere Kombiinstrumentaufgaben zu hosten; und wobei das OS weiter dazu dient, Ausführungssteuerung an die Begrüßungsfensteraufgabe zu übertragen, wenn das Zwischenausführungsbild, das die Begrüßungsfensteraufgabe aufweist, geladen oder neugeladen wird, um die Begrüßungsfensteraufgabe auszuführen.
    • Beispiel 21 ist Beispiel 19, wobei die Zwischenausführungsbilder fortzusetzen umfasst, das Zwischenausführungsbild in jeweilige einer Zwischenmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
    • Beispiel 22 ist Beispiel 19, wobei der Hypervisor oder das OS der SVM weiter dazu dient, den Hypervisor oder das OS der SVM zu seinen vollständigen Funktionalitäten zu initialisieren, während die Anfangsaufgabe ausgeführt wird oder nachdem die Anfangsaufgabe ausgeführt wurde.
    • Beispiel 23 ist Beispiel 17, wobei das OS der SVM dazu dient, einen anderen Fortsetzungsprozess zu initiieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher fortzusetzen, wobei das vollständige Ausführungsbild mehrere Betriebsaufgaben aufweist und vorab als Teil eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, in dem persistenten Speicher gespeichert wurde, wobei die SVM das OS bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
    • Beispiel 24 ist Beispiel 23, wobei die vollständigen Ausführungsbilder fortzusetzen umfasst, den Abschnitt des OS, der die vollständige Funktionalitätsstufe über mindestens die Anfangsfunktionalitätsstufe hinaus bereitstellt und das vollständige Ausführungsbild in jeweilige mehrerer Arbeitsspeicherschlitze von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
    • Beispiel 25 ist Beispiel 23, wobei das OS der SVM dazu dient, Ausführungssteuerung an eine der Betriebsaufgaben zu übertragen, wenn das OS der SVM zu der vollständigen Funktionalitätsstufe geladen oder neugeladen wird und das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist, um die mehreren Betriebsaufgaben auszuführen.
  • Es wird für Fachkundige ersichtlich, dass unterschiedliche Modifikationen und Variationen an den offenbarten Ausführungsformen des offenbarten Geräts und zugehörigerer vorgenommen werden können, ohne von dem Wesen oder Umfang der Offenbarung abzuweichen. Daher ist es beabsichtigt, dass die vorliegende Offenbarung die Modifikationen und Variationen der zuvor offenbarten Ausführungsformen abdeckt, unter der Voraussetzung, dass die Modifikationen und Variationen in den Umfang beliebiger Ansprüche und deren Äquivalente fallen.

Claims (25)

  1. Computerlesbares Medium (CRM) oder computerlesbare Medien (CRM), die Anweisungen darauf gespeichert aufweisen, um eine Rechenplattform in Antwort auf Ausführung der Anweisung durch die Rechenplattform zu veranlassen, ein Betriebssystem zu betreiben zum: Empfangen von Ausführungssteuerung, nachdem das Betriebssystem zu einer Anfangsfunktionalitätsstufe gestartet wurde; und bei Empfang von Ausführungssteuerung, anstatt den Rest des Betriebssystems zu starten, Initiieren eines Fortsetzungsprozesses, um ein Anfangsausführungsbild von persistentem Speicher fortzusetzen, der für die Rechenplattform zugänglich ist, wobei das Anfangsausführungsbild eine zustandslose Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Anfangsfunktionalitätsstufe und die zustandslose Anfangsaufgabe aufweist.
  2. CRM nach Anspruch 1, wobei der Abschnitt des Betriebssystems, der die erste Funktionalitätsstufe bereitstellt, in zuerst antwortende einer Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform geladen werden; und wobei das Anfangsausführungsbild fortzusetzen umfasst, das Anfangsausführungsbild in jeweilige zweite der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
  3. CRM nach Anspruch 1, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, Ausführungssteuerung an die zustandslose Anfangsaufgabe zu übertragen, wenn das Anfangsausführungsbild, das die zustandslose Anfangsaufgabe aufweist, geladen oder neugeladen wird, um die zustandslose Anfangsaufgabe auszuführen.
  4. CRM nach Anspruch 3, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, um das Betriebssystem zu einer Zwischenfunktionalitätsstufe zu initialisieren, die fähiger als die Anfangsfunktionalitätsstufe ist, während die zustandslose Anfangsaufgabe ausgeführt wird.
  5. CRM nach Anspruch 3, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, einen anderen Fortsetzungsprozess zu initiieren, um ein Zwischenausführungsbild von dem persistenten Speicher fortzusetzen, wobei das Zwischenausführungsbild eine zustandslose Zwischenaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Zwischenfunktionalitätsstufe und die zustandslose Zwischenaufgabe aufweist.
  6. CRM nach Anspruch 5, wobei die Zwischenausführungsbilder fortzusetzen umfasst, den Abschnitt des Betriebssystems, der die Zwischenfunktionalitätsstufe über die Anfangsfunktionalitätsstufe hinaus bereitstellt und das Zwischenausführungsbild in jeweilige einer Zwischenmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
  7. CRM nach Anspruch 5, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, um Ausführungssteuerung an die zustandslose Zwischenaufgabe zu übertragen, wenn das Betriebssystem zu der Zwischenfunktionalitätsstufe geladen oder neugeladen wird, und das Zwischenausführungsbild die zustandslose Zwischenaufgabe aufweist, um die Zwischenaufgabe auszuführen.
  8. CRM nach Anspruch 4, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, um das Betriebssystem zu seinen vollständigen Funktionalitäten zu initialisieren, während die zustandslose Anfangsaufgabe ausgeführt wird oder nachdem die zustandslose Anfangsaufgabe ausgeführt wurde.
  9. CRM nach Anspruch 4, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, um einen anderen Fortsetzungsprozess zu initiieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher fortzusetzen, wobei das vollständige Ausführungsbild mehrere Betriebsaufgaben aufweist und vorab in dem persistenten Speicher als Teil eines Aufschiebungsprozesses gespeichert wurde, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  10. CRM nach Anspruch 9, wobei die vollständigen Ausführungsbilder fortzusetzen umfasst, den Abschnitt des Betriebssystems, der die vollständige Funktionalitätsstufe über mindestens die Anfangsfunktionalitätsstufe hinaus bereitstellt, und das finale Ausführungsbild in jeweilige mehrerer Arbeitsspeicherschlitze von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
  11. CRM nach Anspruch 10, wobei die Rechenplattform weiter dazu veranlasst ist, das Betriebssystem zu betreiben, um Ausführungssteuerung an eine der Betriebsaufgaben zu übertragen, wenn das Betriebssystem zu der vollständigen Funktionalitätsstufe geladen wird oder neugeladen wird und das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist, um die mehreren Betriebsaufgaben auszuführen.
  12. Verfahren zum Berechnen, umfassend: Fortsetzen eines Anfangsausführungsbilds einer Rechenplattform von persistentem Speicher der Rechenplattform, um eine Anfangsaufgabe auszuführen, wobei das Anfangsausführungsbild die Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform nur das Betriebssystem bei der Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist; und nachfolgend, Fortsetzen eines vollständigen Ausführungsbilds der Rechenplattform von dem persistenten Speicher, um eine von mehreren Betriebsaufgaben auszuführen, wobei das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist und in dem persistenten Speicher als Teil eines Aufschiebungsprozesses vorab gespeichert wurde, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei einer vollständigen Funktionalitätsstufe mit mehr Funktionalitäten als der Anfangsfunktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  13. Verfahren nach Anspruch 12, weiter umfassend Initialisieren des Betriebssystems zu der Anfangsfunktionalitätsstufe vor dem Fortsetzen des Anfangsausführungsbilds von dem persistenten Speicher der Rechenplattform; und Übertragen von Ausführungssteuerung an die Anfangsaufgabe, wenn das Betriebssystem zu der Anfangsfunktionalitätsstufe geladen oder neugeladen wird, und wobei das Anfangsausführungsbild die Anfangsaufgabe aufweist, um die Anfangsaufgabe auszuführen.
  14. Verfahren nach Anspruch 12, weiter umfassend nachfolgend zu Ausführung der Anfangsaufgabe, aber vor Fortsetzen des vollständigen Ausführungsbilds der Rechenplattform, Fortsetzen eines Zwischenausführungsbilds der Rechenplattform von persistentem Speicher der Rechenplattform, um eine Zwischenaufgabe auszuführen, wobei das Zwischenausführungsbild die Zwischenaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die Rechenplattform zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die Rechenplattform das Betriebssystem bei der Zwischenfunktionalitätsstufe mit mehr Funktionen als der Anfangsfunktionalitätsstufe, aber weniger Funktionen als der vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  15. Vorrichtung zum Berechnen, umfassend: eine Rechenplattform, in einem Fahrzeug angeordnet, die einen Hypervisor aufweist, um eine virtuelle Dienstmaschine (SVM) und eine oder mehr virtuelle Anwendermaschinen (UVMs) zu hosten; ein Startprogramm, integral von der Rechenplattform, um eine Anfrage zu empfangen, die Rechenplattform einzuschalten oder zu starten, wobei das Startprogramm, in Antwort auf Empfang der Anfrage, den Hypervisor zu einer Anfangsfunktionalitätsstufe startet, die, wenn sie zu der Anfangsfunktionalitätsstufe gestartet wurde, die SVM startet und ein Betriebssystem (OS) der SVM zu einer Anfangsfunktionalitätsstufe initialisiert; und das OS der SVM, wobei bei Empfang von Ausführungssteuerung nachdem das OS zu der Anfangsfunktionalitätsstufe initialisiert wurde, das OS anstatt den Rest des OS zu starten, einen Fortsetzungsprozess initiiert, um ein Anfangsausführungsbild von persistentem Speicher der Rechenplattform fortzusetzen, wobei das Anfangsausführungsbild eine Anfangsaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Anfangsfunktionalitätsstufe und die Anfangsaufgabe aufweist.
  16. Vorrichtung nach Anspruch 15, wobei die Anfangsaufgabe eine Rückfahrkameraaufgabe umfasst und die SVM, bei einem vollständigen Betriebszustand, mehrere Kombiinstrumentaufgaben hostet; und wobei das OS der SVM weiter dazu dient, beim Laden oder Neuladen des Anfangsausführungsbilds, das die Rückfahrkameraaufgabe aufweist, Ausführungssteuerung an die Rückfahrkamera zu übertragen, um die Rückfahrkameraaufgabe auszuführen.
  17. Vorrichtung nach Anspruch 15, wobei, um den Hypervisor bei der Anfangsfunktionalitätsstufe zu starten, das Startprogramm den Abschnitt des Hypervisors, der die Anfangsfunktionalitätsstufe bereitstellt, in erste jeweilige einer Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform lädt; wobei, um das OS der SVM zu der Anfangsfunktionalitätsstufe zu initialisieren, der Hypervisor den Abschnitt des OS der SVM, der die Anfangsfunktionalitätsstufe bereitstellt, in jeweilige zweite der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform lädt, und wobei, um das Anfangsausführungsbild fortzusetzen, das OS der SVM das Anfangsausführungsbild in jeweilige dritte der Anfangsmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform lädt oder neu lädt.
  18. Vorrichtung nach Anspruch 17, wobei der Hypervisor oder das OS der SVM dazu dient, den Hypervisor oder das OS des SVM weiter zu einer Zwischenfunktionalitätsstufe zu initialisieren, die fähiger deren jeweilige Anfangsfunktionalitätsstufe ist, während die Anfangsaufgabe ausgeführt wird.
  19. Vorrichtung nach Anspruch 17, wobei das OS der SVM weiter dazu dient, einen anderen Fortsetzungsprozess zu initiieren, um ein Zwischenausführungsbild von dem persistenten Speicher fortzusetzen, wobei das Zwischenausführungsbild eine Zwischenaufgabe aufweist und vorab in dem persistenten Speicher gespeichert wurde, als wäre es ein Aufschub-zu-persistentem-Speicher-Bild eines Aufschiebungsprozesses, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM nur das OS bei der Zwischenfunktionalitätsstufe und die Zwischenaufgabe aufweist.
  20. Vorrichtung nach Anspruch 19, wobei die Zwischenaufgabe eine Begrüßungsfensteraufgabe umfasst und die SVM, bei einem vollständigen Betriebszustand, dazu dient, mehrere Kombiinstrumentaufgaben zu hosten; und wobei das OS weiter dazu dient, Ausführungssteuerung an die Begrüßungsfensteraufgabe zu übertragen, wenn das Zwischenausführungsbild, das die Begrüßungsfensteraufgabe aufweist, geladen oder neugeladen wird, um die Begrüßungsfensteraufgabe auszuführen.
  21. Vorrichtung nach Anspruch 19, wobei die Zwischenausführungsbilder fortzusetzen umfasst, das Zwischenausführungsbild in jeweilige einer Zwischenmenge von Arbeitsspeicherschlitzen von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
  22. Vorrichtung nach Anspruch 19, wobei der Hypervisor oder das OS der SVM weiter dazu dient, den Hypervisor oder das OS der SVM zu seinen vollständigen Funktionalitäten zu initialisieren, während die Anfangsaufgabe ausgeführt wird oder nachdem die Anfangsaufgabe ausgeführt wurde.
  23. Vorrichtung nach Anspruch 17, wobei das OS der SVM dazu dient, einen anderen Fortsetzungsprozess zu initiieren, um ein vollständiges Ausführungsbild von dem persistenten Speicher fortzusetzen, wobei das vollständige Ausführungsbild mehrere Betriebsaufgaben aufweist und vorab in dem persistenten Speicher als Teil eines Aufschiebungsprozesses gespeichert wurde, der unmittelbar bevor die SVM zuletzt ausgeschaltet wurde durchgeführt wurde, wobei die SVM das OS bei einer vollständigen Funktionalitätsstufe und die mehreren Betriebsaufgaben aufweist.
  24. Vorrichtung nach Anspruch 23, wobei die vollständigen Ausführungsbilder fortzusetzen umfasst, den Abschnitt des OS, der die vollständige Funktionalitätsstufe über mindestens die Anfangsfunktionalitätsstufe hinaus bereitstellt, und das vollständige Ausführungsbild in jeweilige mehrerer Arbeitsspeicherschlitze von Arbeitsspeicher der Rechenplattform zu laden oder neuzuladen.
  25. Vorrichtung nach Anspruch 23, wobei das OS der SVM dazu dient, Ausführungssteuerung an eine der Betriebsaufgaben zu übertragen, wenn das OS der SVM zu der vollständigen Funktionalitätsstufe geladen oder neugeladen wird und das vollständige Ausführungsbild die mehreren Betriebsaufgaben aufweist, um die mehreren Betriebsaufgaben auszuführen.
DE112018007748.9T 2018-12-18 2018-12-18 Berechnungsverfahren und Vorrichtung mit Mehrphasen/stufen-Start Pending DE112018007748T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/121724 WO2020124354A1 (en) 2018-12-18 2018-12-18 Computing method and apparatus with multi-phase/level boot

Publications (1)

Publication Number Publication Date
DE112018007748T5 true DE112018007748T5 (de) 2021-04-08

Family

ID=71100237

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018007748.9T Pending DE112018007748T5 (de) 2018-12-18 2018-12-18 Berechnungsverfahren und Vorrichtung mit Mehrphasen/stufen-Start

Country Status (4)

Country Link
US (1) US11675600B2 (de)
CN (1) CN113168331A (de)
DE (1) DE112018007748T5 (de)
WO (1) WO2020124354A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021004887A1 (de) * 2021-09-28 2023-03-30 Mercedes-Benz Group AG Verfahren zum Betrieb eines informationstechnischen Systems, informationstechnisches System und Fahrzeug

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002072998A (ja) * 2000-08-25 2002-03-12 Internatl Business Mach Corp <Ibm> 輝度制御装置、輝度調節システム、コンピュータシステム、液晶ディスプレイ装置、輝度制御方法、コンピュータプログラム及び記憶媒体
US7818443B2 (en) * 2000-12-01 2010-10-19 O2Micro International Ltd. Low power digital audio decoding/playing system for computing devices
US7522965B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US8176485B2 (en) 2006-05-15 2012-05-08 Microsoft Corporation Launching hypervisor under running operating system
US7882341B2 (en) * 2007-12-31 2011-02-01 Intel Corporation System and method to enable parallelization of early platform initialization
US7987336B2 (en) * 2008-05-14 2011-07-26 International Business Machines Corporation Reducing power-on time by simulating operating system memory hot add
US8219741B2 (en) * 2008-10-24 2012-07-10 Microsoft Corporation Hardware and operating system support for persistent memory on a memory bus
WO2012001787A1 (ja) * 2010-06-30 2012-01-05 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
MY179361A (en) * 2011-10-03 2020-11-05 Intel Corp Hiding boot latency from system users
US9678732B2 (en) * 2012-09-14 2017-06-13 Intel Corporation Firmware agent
US9552211B1 (en) * 2013-03-14 2017-01-24 Nutanix, Inc. Method for performing hot-swap of a storage device in a virtualization environment
US9875115B2 (en) 2013-12-20 2018-01-23 Microsoft Technology Licensing, Llc Memory-preserving reboot
US10162625B2 (en) * 2015-04-14 2018-12-25 Ford Global Technologies, Llc Vehicle control storage methods and systems
CN104778066B (zh) * 2015-04-21 2018-01-23 北京凌阳益辉科技有限公司 一种嵌入式操作系统的快速启动方法及其装置
US20180253556A1 (en) * 2017-03-02 2018-09-06 Qualcomm Incorporated Selective restoration and authentication of a secure image
KR102345086B1 (ko) * 2017-10-31 2021-12-29 미츠비시 쥬고 기카이 시스템 가부시키가이샤 차량 탑재 기기, 제어 방법, 및 프로그램
US20200364040A1 (en) * 2019-05-17 2020-11-19 Dell Products, Lp System and Method for Restoring a Previously Functional Firmware Image on a Non-Volatile Dual Inline Memory Module

Also Published As

Publication number Publication date
CN113168331A (zh) 2021-07-23
US20210064384A1 (en) 2021-03-04
WO2020124354A1 (en) 2020-06-25
US11675600B2 (en) 2023-06-13

Similar Documents

Publication Publication Date Title
DE102019203377B3 (de) Fahrzeugsystem, Fahrzeug und Verfahren zum Betreiben eines solchen Fahrzeugsystems
DE102015102678B4 (de) Systeme und verfahren zur abbild-recovery
DE112012005209T5 (de) Brückenfunktion zwischen Virtual Machine Monitor und Bare-Metal-Bootvorgang
DE112012000693B4 (de) Ausführen einer Vielzahl von Instanzen einer Anwendung
DE102017104077A1 (de) Bereitstellung der hyperkonvergierten Bare-Metal-Infrastruktursysteme durch den Top-of-Rack-Switch
DE112011101929T5 (de) Aktivieren der Steuerung eines Hypervisor in einer Cloud-Datenverarbeitungsumgebung
DE102007012448A1 (de) Ein chipsatz-unabhängiges Verfahren für lokale Aktualisierung und Konfigurierung und Fernkonfigurierung eines System-BIOS
DE112011105098T5 (de) Virtuelles BIOS
DE10297273T5 (de) Verfahren zur Bereitstellung von Systemintegrität und Legacy-Umgebungsemulation
DE112010004784T5 (de) Effizientes Laden von Daten in den Speicher eines Rechnersystems
DE102013104328A1 (de) Aufgabenzuteilung in großen und kleinen Kernen
DE10296798T5 (de) SMM-Lader und -Ausführungsmechanismus für Komponentensoftware für mehrere Architekturen
DE112012004793T5 (de) Verfahren und System zum Erzeugen einer virtuellen Anwendung
CN114461287B (zh) 操作系统启动方法、装置、电子设备和存储介质
DE112012004893T5 (de) Implementieren eines Software-Abbildes auf mehreren Zielen unter Verwendung einer Datenstromtechnik
DE102019122934A1 (de) Automatisierte preboot-leistungsfähigkeit-messung
DE102021109231A1 (de) Bedienungssystem installation mechanismus
DE112016007336B4 (de) Informationsverarbeitungsvorrichtung, Vorrichtungszuweisungsverfahren undVorrichtungszuweisungsprogramm
DE102018131816A1 (de) Bedarfsgesteuerte speicherdeduplizierung
DE112016005868T5 (de) Starten von Anwendungsprozessoren einer virtuellen Maschine
DE202015009918U1 (de) Dynamische Neuzuweisung für Multi-Betriebssystem-Vorrichtungen
DE112016006308T5 (de) Erweiterte virtuelle Funktionsfähigkeiten in einer virtualisierten Netzwerkumgebung
DE112020005789T5 (de) Hierarchische partitionierung von operatoren
DE112020002785T5 (de) Verfahren für ein virtualisierungssystem auf container-grundlage
DE112015006860T5 (de) Applikationsausführungsvorrichtung und Applikationsausführungsverfahren