FAHRZEUGEINHEIT UND VERFAHREN ZUM BETREIBEN DER FAHRZEUGEINHEIT

申请号 EP12729145.8 申请日 2012-06-25 公开(公告)号 EP2727039A1 公开(公告)日 2014-05-07
申请人 Continental Automotive GmbH; 发明人 BECKER, Bernd;
摘要 The invention describes a vehicle unit and a method for controlling vehicle functions with a microprocessor and connected memory, on which a main operating system which forms the hardware interface for application programs and user interactions is implemented. Provision is made for the microprocessor to be constructed in a microkernel architecture with separate partitions for a main operating system unit (1), a cryptographic unit (4) and a supervision unit (2), wherein the main operating system is set up in the main operating system unit (1), wherein software certificates are stored in the cryptographic unit (4) and a verification program for verifying certificates and software packages is set up therein, and wherein a monitoring program for monitoring the operation of the other partitions of the microkernel architecture is provided in the supervision unit (2).
权利要求
Patentansprüche
1. Fahrzeugeinheit zur Steuerung von Fahrzeugfunktionen mit einem Mikroprozessor und angeschlossenem Speicher, auf welchen ein Hauptbetriebssystem implementiert ist, welches die Schnittstelle der Hardware zu Anwendungspro ¬ grammen und Benutzerinteraktionen bildet, dadurchgekennzeichnet , dass der Mikroprozessor in einer Mikrokernel-Architektur mit separaten Partitionen für eine Hauptbetriebssystem-Einheit (1), eine Crypto- Einheit (4) und eine Supervisions-Einheit (2) aufgebaut ist, wobei in der Hauptbetriebssystem-Einheit (1) das Hauptbetriebssystem eingerichtet ist, wobei in der Cryp- to-Einheit (4) Software-Zertifikate gespeichert sind und ein Überprüfungsprogramm zur Überprüfung von Zertifikaten und Softwarepakten eingerichtet ist und wobei in der Supervisions-Einheit (2) ein Überwachungsprogramm zur Überwachung der Funktion der anderen Partitionen der Mikrokernel-Architektur vorgesehen ist.
2. Fahrzeugeinheit nach Anspruch 1, dadurchgekennzeichnet , dass die Partition mit der Hauptbetriebssystem-Einheit (1) dazu eingerichtet ist, durch einen Endnutzer veränderbar zu sein.
3. Fahrzeugeinheit nach Anspruch 1 oder 2, dadurchgekennzeichnet , dass andere Partitionen als die Partition mit der Hauptbetriebssystem-Einheit (1) der Mikrokernel-Architektur in dem Mikroprozessor dazu eingerichtet sind, durch den Endnutzer nicht änderbar zu sein .
4. Fahrzeugeinheit nach einem der vorhergehenden Ansprüche, dadurchgekennzeichnet , dass die Crypto-Einheit (4) dazu eingerichtet ist, in der Fahr ¬ zeugeinheit zu installierende Software mit dem Überprü- fungsprogramm paketweise zu entschlüsseln und/oder zu überprüfen .
Fahrzeugeinheit nach einem der vorhergehenden Ansprüche, dadurchgekennzeichnet , dass die Su- pervisions-Einheit (2) dazu eingerichtet ist, mit dem Überwachungsprogramm im Falle eines Fehlers in dem
Hauptbetriebssystem ein Wiederherstellungsverfahren für die Partition mit dem Hauptbetriebssystem einzuleiten.
Fahrzeugeinheit nach einem der vorhergehenden Ansprüche, dadurchgekennzeichnet , dass die Mikrokernel-Architektur als Separationskernel mit einer separaten Partition für eine Policy-Einheit (3) ausge ¬ bildet ist, wobei die Policy-Einheit (3) dazu eingerich ¬ tet ist, die Kommunikation zwischen den einzelnen Partitionen der Mikrokernel-Architektur zu überwachen.
Verfahren zum Betreiben der Fahrzeugeinheit mit einem Mikroprozessor, insbesondere nach einem der vorhergehenden Ansprüche, auf welchem eine Mikrokernel-Architektur mit separaten Partitionen für eine Hauptbetriebssystem- Einheit (1), eine Crypto-Einheit (4) und eine Supervisi- ons-Einheit (2) aufgesetzt ist, wobei in der Hauptbe ¬ triebssystem-Einheit (1) das Hauptbetriebssystem einge ¬ richtet ist, wobei in der Crypto-Einheit (4) Software- Zertifikate gespeichert sind und ein Überprüfungspro ¬ gramm zur Überprüfung von Zertifikaten und vollständige! Softwarepakte eingerichtet ist und wobei in der Supervi- sions-Einheit (2) ein Überwachungsprogramm zur Überwachung der Funktion der anderen Partitionen der Mikrokernel-Architektur vorgesehen ist, dadurchgekennzeichnet , dass durch das Überwachungspro ¬ gramm der Supervisions-Einheit (2) das Hauptbetriebssys ¬ tem während des Starts und/oder Betriebs überwacht und bei Abweichungen von einem vorgegebenen Verhalten ein Wiederherstellungsverfahren für das Hauptbetriebssystem einleitet .
Verfahren nach Anspruch 7, dadurchgekennzeichnet , dass zur Feststellung von Abweichungen während des Starts und/oder Betriebs des Hauptbetriebs ¬ systems eine typische Startzeit für eine Benutzer ¬ schnittstelle, die durch das Hauptbetriebssystem beanspruchte Rechenzeit des Mikroprozessors und/oder der durch das Hauptbetriebssystem beanspruchte Speicherplatzbedarf überwacht wird.
Verfahren nach Anspruch 7 oder 8, dadurchgekennzeichnet , dass bei dem Wiederherstel ¬ lungsverfahren die Partition mit der Hauptbetriebssystem-Einheit abgeschaltet und aus der Mikrokernel- Architektur entladen wird.
Verfahren nach einem der Ansprüche 7 bis 9, dadurchgekennzeichnet , dass bei dem Wie ¬ derherstellungsverfahren ein Rückschreiben eines in der Fahrzeugeinheit gespeicherten Backup-Images der Partiti on des Hauptbetriebssystems erfolgt.
Verfahren nach einem der Ansprüche 7 bis 9, dadurchgekennzeichnet , dass bei dem Wie ¬ derherstellungsverfahren das Ausführen eines Benutzerinteraktiven Downloads einer aktuellen Hauptbetriebssys tem-Version erfolgt, wobei die aktuelle Hauptbetriebs ¬ system-Version insbesondere über ein externes Speichermedium eingelesen und in der Partition für das Hauptbetriebssystem installiert wird.
Verfahren nach einem der Ansprüche 7 bis 10, dadurchgekennzeichnet , dass vor oder während der Installation des Hauptbetriebssystems eine Überprüfung durch die Crypto-Einheit (4) erfolgt. Computerprogrammprodukt mit Programmcodemitteln zur Ein ¬ richtung in einer Recheneinheit, dadurchgekennzeichnet , dass durch die Programmcodemit ¬ tel bei Ausführen des Computerprogramms eine Mikroker- nel-Architektur gemäß einem der Ansprüche 1 bis 6 und/oder ein Verfahren gemäß einem der Ansprüche 7 bis 12 in dem Mikroprozessor der Fahrzeugeinheit eingerichtet wird.
说明书全文

Beschreibung

Fahrzeugeinheit und Verfahren zum Betreiben der Fahrzeugeinheit

Die Erfindung betrifft eine Fahrzeugeinheit zur Steuerung von Fahrzeugfunktionen, beispielsweise eine zentrale Fahr ¬ zeugsteuereinheit, eine Multimedia-Fahrzeugeinheit oder der ¬ gleichen, sowie ein Verfahren zum Betreiben dieser Fahrzeug- einheit. Die Fahrzeugeinheit weist wie üblich einen Mikropro ¬ zessor mit einem angeschlossenen Speicher auf, wobei auf dem Mikroprozessor ein Hauptbetriebssystem, welches nachfolgend auch als Main Operating System OS bezeichnet wird, implementiert ist. Das Hauptbetriebssystem bildet erfindungsgemäß die Schnittstelle der Hardware der Fahrzeugsteuereinheit zu in dem Hauptsystem implementierten und/oder gegebenenfalls auch auf den Mikroprozessor zusätzlich implementierten Anwendungsprogrammen (Applikationen) und Benutzerinteraktionen über eine Benutzerschnittstelle (User Interface) .

Derartige elektronische Fahrzeugeinheiten kommen zunehmend in Fahrzeugen zum Einsatz, wobei auf den Fahrzeugeinheiten Anwendungsprogramme installiert sind, die durch Benutzereinga ¬ ben oder an die Fahrzeugeinheit angeschlossene Hardwarekompo- nenten oder beides gesteuert werden. Solche offenen Systeme führen mit einiger Wahrscheinlichkeit dazu, dass das Hauptbe ¬ triebssystem und/oder Anwendungsprogramme auf der Fahrzeug ¬ einheit unter bestimmten Bedingungen nicht mehr funktionieren, beispielsweise aufgrund von Fehlern beim Beschreiben des in der Fahrzeugeinheit angeschlossenen Speichers. Derartige Probleme können bei zu vielen Rollback-Speicherzugriffen auf frühere Speichereinträge oder Hinzufüge- oder Löschaktionen von Programmen entstehen. Häufig ist dann eine Neuinstallati ¬ on des Hauptbetriebssystems sowie gegebenenfalls der Anwen- dungsprogramme notwendig. Diese Neuinstallation ist für Erst ¬ ausrüster, Zwischenhändler und Endkunden sehr aufwendig, weil die Fahrzeugeinheit aus dem Fahrzeug ausgebaut und an einen Reparaturservice versandt werden muss, der dann in einem auch als "Flashing" bezeichneten Prozess den Speicher neu beschreiben muss, um das Hauptbetriebssystem und gegebenenfalls die Anwendungsprogramme auf dem Mikroprozessor neu zu imple- mentieren.

Weil dies sehr arbeits- und kostenintensiv ist, liegt die Aufgabe der vorliegenden Erfindung darin, die Anzahl der Fälle zu reduzieren, in denen die zuvor beschriebene Reparatur durch Ausbau und Übersendung der Fahrzeugeinheit an einen Re ¬ paraturservice ausgeführt werden müssen.

Diese Aufgabe wird durch eine Fahrzeugeinheit mit den Merkma ¬ len des Anspruchs 1 und ein Verfahren zu deren Betreiben ge- maß den Merkmalen des Anspruchs 7 gelöst. Bei einer Fahrzeug ¬ einheit der eingangs beschriebenen Art ist dazu vorgesehen, dass der Mikroprozessor in einer Mikrokernel-Architektur mit separaten Partitionen für eine Hauptbetriebssystem-Einheit, eine Crypto-Einheit und eine Supervisions-Einheit aufgebaut ist, wobei in der Hauptbetriebssystem-Einheit das Hauptbe ¬ triebssystem sowie gegebenenfalls Anwendungsprogramme einge ¬ richtet sind, in der Crypto-Einheit Software-Zertifikate ge ¬ speichert sind und ein Überprüfungsprogramm zur Überprüfung von Zertifikaten und Softwarepaketen eingerichtet ist, und wobei in der Supervisions-Einheit ein Überwachungsprogramm zur Überwachung der Funktionen der anderen Partitionen der Mikrokernel-Architektur vorgesehen ist.

Erfindungsgemäß arbeiten die separaten Partitionen mit den darauf eingerichteten Programmen unabhängig voneinander, wobei das Überwachungsprogramm der Supervisions-Einheit die Funktionen der anderen Partitionen überwacht und vorzugsweise bei Feststellen eines Fehlers einen Reparaturvorgang einleitet, beispielsweise durch Neubeschreiben der fehlerhaften Partition in der Mikrokernel-Architektur. Ein derartiger

Flash-Vorgang dient dem Reparieren des Systems durch Zurückbringen auf den letztbekannten stabilen Zustands des Systems. Durch das Vorsehen der Mikrokernel-Architektur mit den separaten Partitionen ist es daher erfindungsgemäß möglich, die Supervisions-Einheit auch dann zu verwenden, wenn die Haupt ¬ betriebssystem-Einheit fehlerhaft ist, so dass durch die Su- pervisions-Einheit eine Reparatur des gesamten Systems erfol ¬ gen kann, die herkömmlich durch Anschließen eines entsprechenden Reparatursystems bei einem Reparaturservice erfolgen musste. Das Überwachungsprogramm der Supervisions-Einheit kann dabei beispielsweise als eine Art Watchdog-Funktion ins- besondere für die Hauptbetriebssystem-Einheit realisiert sein. Erfindungsgemäß ist die gesamte Mikrokernel-Architektur vorzugsweise auf genau einem Mikroprozessor implementiert, auf dem also alle Einheiten der verschiedenen Partitionen eingerichtet sind und auf dem alle den verschiedenen Einhei- ten zugewiesenen Funktionen durch Implementierung geeigneter Programme ablaufen.

Erfindungsgemäß kann die Partition mit der Hauptbetriebssys ¬ tem-Einheit dazu eingerichtet sein, von einem Endnutzer, bei- spielsweise durch einen Download und Installation neuer Anwendungsprogramme und/oder Firmwareprogramme, veränderbar sein. Firmwareprogramme können insbesondere auch neue Versio ¬ nen des Hauptbetriebssystems umfassen. Dabei ist es erfindungsgemäß möglich, sowohl Updates zu in ¬ stallieren als auch die Partition vollständig neu zu schrei ¬ ben (Flashing) , wobei das Hauptbetriebssystem in der Fahrzeugeinheit neu installiert wird. Dies stellt eine Möglich ¬ keit dar, die Fahrzeugeinheit bei einem Softwarefehler wieder in einen funktionsfähigen Zustand zu versetzen.

Gemäß einer besonders vorteilhaften Weiterbildung der vorliegenden Erfindung können weitere Partitionen der Mikrokernel- Architektur in dem Mikroprozessor dazu eingerichtet sein, durch den Endnutzer nicht änderbar zu sein. Dies kann vorzugsweise alle weiteren Partitionen der Mikrokernel-Architektur betreffen, insbesondere aber die Crypto-Einheit und die Supervisions-Einheit beziehungsweise die jeweiligen Partitio ¬ nen mit der Crypto-Einheit und der Supervisions-Einheit.

Hierdurch lässt sich insgesamt eine hohe Systemsicherheit bei gleichzeitiger Einflussnahme durch den Benutzer auf die

Hauptbetriebssystem-Einheit erreichen, da die für eine mögli ¬ che Wiederherstellung des Hauptbetriebssystems verantwortli ¬ chen Partitionen und Einheiten der Mikrokernel-Architektur nicht durch Benutzereingriffe verändert werden können und da ¬ her eine Wiederherstellung der Fahrzeugeinheit auf einen vor- gegebenen, definierten Stand ermöglichen.

In Weiterentwicklung des erfindungsgemäßen Gedankens kann die Crypto-Einheit dazu eingerichtet sein, in der Fahrzeugeinheit zu installierende Software mit in dem Überprüfungsprogramm paketweise zu entschlüsseln und/oder zu überprüfen. Hierdurch wird das Problem gelöst, dass der in den Fahrzeugeinheiten an den Mikroprozessor angeschlossene Speicher, insbesondere ein Flash-Speicher, nur eine vergleichsweise geringe Speicherplatzkapazität aufweist, die häufig für das Zwischenspeichern vollständiger Applikationen nicht ausreichend ist. Dies gilt beispielsweise auch für ein vollständiges Image (Abbild) der Partition mit dem Hauptbetriebssystem.

In diesem Zusammenhang ist aus der US 2009/0217136 AI bereits ein Speichergerät mit einem Flash-Speichermodul und einem in dem Speichergerät enthaltenen Controller beschrieben, welcher einen eigenen Mikroprozessor mit einem Fehlerkorrekturmodul aufweist, das bei dem Speichern oder Lesen von Daten aus dem Flash-Speichermodul eine paketweise Korrektur durchführt. Hierfür schlägt die US 2009/0217136 AI jedoch einen eigen ¬ ständigen Mikroprozessor vor, der der Speichereinheit fest zugeordnet ist, wobei die Speichereinheit selbst an ein Host- Computersystem angeschlossen werden kann. Eine Realisierung dieser Funktion im Rahmen einer Mikrokernel-Architektur bie- tet dagegen den Vorteil, dass ein einziger Mikroprozessor verwendet werden kann, weil auch die erfindungsgemäße Crypto- Einheit im Rahmen der Mikrokernel-Architektur als eine von außen nicht veränderbare Partition ausgestaltet ist, die da ¬ her gegen ungewollte oder bewusste Manipulationen gesichert ist und im Rahmen der Entschlüsselung und Überprüfung der Hauptbetriebssystem- und/oder Anwendungssoftware besonders zuverlässig arbeitet. Im Rahmen dieser vorgeschlagenen Architektur ist es nicht notwendig, hierfür einen separaten Prozessor und Controller vorzusehen.

Vorteilhafterweise ist die erfindungsgemäß besonders wichtige Supervisions-Einheit dazu eingerichtet, mit dem Überwachungs ¬ programm im Falle eines Fehlers in dem Hauptbetriebssystem ein Wiederherstellungsverfahren für die Partitionen mit dem Hauptbetriebssystem einzuleiten. Indem dies automatisch bei dem Feststellen eines Fehlers in dem Hauptbetriebssystem der Fahrzeugeinheit erfolgt, kann die Fahrzeugbetriebseinheit hierdurch besonders sicher und zuverlässig betrieben werden.

Gemäß einer einfachen Variante kann in dem an die Fahrzeug ¬ einheit angeschlossenen Flash-Speicher die Grundversion eines funktionierenden Hauptbetriebssystems mit den wesentlichen Anwendungsprogrammen beispielsweise in Form eines Abbildes (Image) abgelegt sein, welches als Backup-Image der Partition des Hauptbetriebssystems durch die Supervisionseinheit zu ¬ rückgeschrieben wird.

Alternativ oder ergänzend kann im Rahmen des Wiederherstel ¬ lungsverfahrens ein vorzugsweise Benutzer-interaktiver Download einer aktuellen Hauptbetriebssystem-Version stattfinden, welche anschließend in der Partition der Hauptbetriebssystem- Einheit durch die Supervisions-Einheit installiert wird. Da ¬ bei kann vor oder während der Installation durch die Crypto- Einheit die Integrität der installierten Software überprüft werden . Um eine einfache Übertragung einer aktuellen Hauptbetriebs ¬ systemversion oder aktueller Anwendungsprogramme zu ermögli ¬ chen, kann die Fahrzeugeinheit eine Schnittstelle für ein ex- ternes Speichermedium aufweisen, welche auch durch die Super- visions-Einheit ansteuerbar ist. Diese Schnittstelle kann beispielsweise eine USB-Schnittstelle, eine Schnittstelle zum Einstecken einer Secure-Digital-Card (SD-Karte) , einer ande- ren Datenkarte oder dergleichen sein. Dabei muss die Schnitt ¬ stelle nicht unmittelbar an der Fahrzeugeinheit vorgesehen sein, sondern kann erfindungsgemäß auch in eine in dem Fahrzeug ohnehin vorhandene Benutzerschnittstelle integriert sein .

Vorzugsweise weist die Supervisions-Einheit beziehungsweise das darin implementierte Überwachungsprogramm ein Not- Betriebssystem auf, welches dazu eingerichtet ist, benötigte Benutzerschnittstellen wie beispielsweise ein Display, eine Eingabeeinheit und dergleichen, sowie Schnittstellen für ein externes Speichermedium anzusteuern und das Wiederherstel ¬ lungsverfahren auszuführen.

Gemäß einer besonders bevorzugten Ausführungsform kann die Mikrokernel-Architektur als sogenannter Separationskernel (Separation Kernel) mit einer separaten Partition für eine Policy-Einheit ausgebildet sein, wobei die Policy-Einheit da ¬ zu eingerichtet ist, die Kommunikation zwischen den einzelnen Partitionen der Mikrokernel-Architektur zu überwachen und ge- gebenenfalls zu steuern. So hindert zum Beispiel die Policy- Einheit das Hauptbetriebssystem an einem Zugriff auf die anderen Partitionen und kontrolliert Kommunikationsabläufe zwi ¬ schen den einzelnen Partitionen. Hierdurch wird eine besonders hohe Betriebssicherheit und Manipulationssicherheit der Fahrzeugeinheit erreicht, weil durch die ebenfalls durch den Benutzer nicht veränderbare Policy-Einheit unvorhergesehene Aktionen innerhalb des an den Mikroprozessor angeschlossenen Speichers oder innerhalb des Mikroprozessors selbst nicht er ¬ folgen können.

Die Fahrzeugeinheit beziehungsweise die jeweiligen Einheiten der verschiedenen Partitionen der Mikrokernel-Architektur sind erfindungsgemäß zur Durchführung des nachfolgend be ¬ schriebenen Verfahrens zum Betreiben der Fahrzeugeinheit oder Teilen davon eingerichtet. Dieses Verfahren dient dem Betrei ¬ ben einer Fahrzeugeinheit mit einem Mikroprozessor, auf wel- ehern die vorbeschriebene Mikrokernel-Architektur mit den separaten Partitionen für eine Hauptbetriebssystem-Einheit, ei ¬ ne Crypto-Einheit und eine Supvervisions-Einheit aufgesetzt ist. In der Hauptbetriebssystem-Einheit sind erfindungsgemäß das Hauptbetriebssystem sowie gegebenenfalls Anwendungspro- gramme eingerichtet. Diese können durch den Nutzer verändert werden. In der Crypto-Einheit sind erfindungsgemäß Software- Zertifikate gespeichert und ein Überprüfungsprogramm zur Überprüfung von Zertifikaten und vollständiger Softwarepakete eingerichtet. In der Supervisions-Einheit ist erfindungsgemäß ein Überwachungsprogramm zur Überwachung der Funktionen der anderen Partitionen in der Mikrokernel-Architektur vorgesehen, wobei durch das Überwachungsprogramm der Supervisions- Einheit das Hauptbetriebssystem sowie gegebenenfalls vorhan ¬ dene Anwendungssoftware während des Starts und/oder des Be- triebs des Hauptbetriebssystems beziehungsweise der Fahrzeug ¬ einheit überwacht und bei Abweichungen von einem vorgegebenen Verhalten ein Wiederherstellungsverfahren für das Hauptbetriebssystem eingeleitet wird. Dadurch lässt sich die Fahrzeugeinheit in vielen Fällen bei einem Ausfall neu starten und in einen betriebsfähigen Zustand zurückversetzen, ohne dass ein Ausbau der Fahrzeugeinheit und ein Neubeschreiben des an den Mikroprozessor angeschlossenen Speichers zur Neuimplementierung der Hauptbetriebssystem-Software sowie der Anwendungsprogramme notwendig werden.

In einer besonders vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrens wird zur Feststellung von Abweichungen während des Starts und/oder Betriebs des Hauptbetriebs ¬ systems eine typische Startzeit für eine Benutzerschnittstel- le (Human Machine Interface - HMI), die durch das Hauptbe ¬ triebssystem beanspruchte Rechenzeit des Mikroprozessors und/oder der durch das Hauptbetriebssystem beanspruchte Spei- cherplatzbedarf beispielsweise durch Vergleich mit vorgegebenen Grenzwerten für einen Normalbetrieb überwacht. Derartige Daten lassen sich durch das Überwachungsprogramm in einer Art Watchdog-Funktion einfach überwachen, indem beispielsweise ein Ansprechen der Benutzerschnittstelle simuliert und abge ¬ fragt sowie der Betrieb des Mikroprozessors und des Speicher ¬ platzes überwacht werden. Dies ist im Rahmen eines eigenstän ¬ digen Prozesses in der Supervisions-Einheit ohne Weiteres möglich, ohne dass mögliche Fehler in der Partition der

Hauptbetriebssystem-Einheit diese Funktion beeinträchtigen.

Sofern bei dem Feststellen eines nicht ordnungsgemäßen Betriebs der Partition mit der Hauptbetriebssystem-Einheit das Wiederherstellungsverfahren gestartet wird, kann im Rahmen dieses Wiederherstellungsverfahrens vorzugsweise die Partiti ¬ on mit der Hauptbetriebssystem-Einheit vollständig abgeschal ¬ tet und aus der Mikrokernel-Architektur entladen werden. Erfindungsgemäß übernimmt dann das Not-Betriebssystem der Su ¬ pervisions-Einheit die Ansteuerung der Benutzerschnittstelle und/oder einer Schnittstelle für das externe Speichermedium, um den Ausfall der Fahrzeugeinheit anzuzeigen und ein neues Implementieren der Hauptbetriebssystem-Einheit in der ent ¬ sprechenden Partition der Mikrokernel-Architektur vornehmen zu können. Das erfindungsgemäße Wiederherstellungsverfahren kann dann automatisiert und/oder benutzergesteuert durchge ¬ führt werden. Eine besonders schnelle, automatische Wieder ¬ herstellung der defekten Partition lässt sich dann erreichen, wenn bei dem erfindungsgemäßen Verfahren ein Rückschreiben eines in der Fahrzeugeinheit, beispielsweise dem an dem

Mikroprozessor angeschlossenen Speicher, gespeichertes Backup-Images der Partition des Hauptbetriebssystems erfolgt. Nach dem Rückschreiben eines solchen Backup-Images kann die Fahrzeugeinheit neu gestartet werden, wobei bei dem Neustart das neuinstallierte Hauptbetriebssystem ausgeführt wird.

Alternativ kann bei dem Wiederherstellungsverfahren das Ausführen eines Benutzer-interaktiven Downloads einer aktuellen Hauptbetriebssystem-Version erfolgen, wobei die aktuelle Hauptbetriebssystem-Version insbesondere über ein externes Speichermedium eingelesen und in der Partition für das Hauptbetriebssystem installiert wird. Erfindungsgemäß kann dem Be- nutzer dazu eine Seriennummer, eine Versionsidentifikations ¬ nummer oder dergleichen ausgegeben werden, um dem Benutzer die Auswahl des passenden Hauptbetriebssystems, das heißt ei ¬ ner geeigneten Firmware, von einer Herstellerseite in dem Internet zu ermöglichen. In Abwandlung dieser zusätzlich gege- benen Informationen kann auch ein geeigneter Internet-Link, insbesondere in Form einer html-Datei, auf dem externen Spei ¬ chermedium ausgegeben werden, der nach Anschluss an ein anderes Computersystem mit Internet-Anschluss unmittelbar aufge ¬ rufen werden kann und zum Download des geeigneten Hauptbe- triebssystems führt. Die html-Datei, gegebenenfalls mit Ja ¬ vaScript-Anteilen, überprüft die Größe des Speichermediums und speichert eine Image-Datei und/oder eine Update-Datei des zu installierenden Hauptbetriebssystems in ein geeignetes Verzeichnis. Hierdurch wird eine Fehlerreduktion erreicht, weil eine fehlerhafte Installation eines falschen Betriebs ¬ systems von vornherein vermieden wird, ohne dass die in der Fahrzeugeinheit installierte Crypto-Einheit entsprechend ein ¬ greifen müsste. Gegebenenfalls kann hierbei auch ein Zertifi ¬ kat eingesetzt werden.

Trotzdem ist es besonders vorteilhaft, wenn vor oder während der Installation des Hauptbetriebssystems und/oder einer für das Hauptbetriebssystem geeigneten Anwendung in Form eines Anwendungsprogramms eine Überprüfung durch die Crypto-Einheit erfolgt. Dabei können Seriennummer, Hardwareversion, Integrität, Zertifikat oder dergleichen überprüft und gegebenenfalls auch eine Entschlüsselung vorgenommen werden.

Erfindungsgemäß kann nach dem Schreiben eines Internet-Links, beispielsweise in Form der html-Datei, in einen automatischen Start-Up-Modus geschaltet werden, der beim Starten bezie ¬ hungsweise Hochfahren der Fahrzeugeinheit das Vorhandensein eines externen Speichermediums mit der Image-Datei und/oder der Update-Datei überprüft und bei Vorhandensein deren In ¬ stallation sofort startet. Andernfalls wird das Vorhandensein des externen Speichers nicht geprüft. Hierdurch wird auch si- chergestellt , dass nicht mehrmals ein Update mit derselben Softwareversion erfolgt, was unter Umständen zu einem instabilen System führen kann. Nach einer erfolgreichen Neuinstallation des Hauptbetriebssystems, auch Flashen genannt, wird dann wieder in den normalen und üblicher Weise auch schnelle- ren Startmodus geschaltet.

Schließlich betrifft die vorliegende Erfindung auch ein Computerprogrammprodukt mit Programmcodemitteln zur Einrichtung in einer Recheneinheit, welches Computerprogrammprodukt da- durch gekennzeichnet ist, dass durch die Programmcodemittel bei Ausführen des Computerprogramms eine Mikrokernel-Archi- tektur gemäß einem der Ansprüche 1 bis 6 und/oder ein Verfahren gemäß einem der Ansprüche 7 bis 12 in dem Mikroprozessor der Fahrzeugeinheit eingerichtet wird.

Weitere Vorteile, Merkmale und Anwendungsmöglichkeiten der vorliegenden Erfindung ergeben sich auch aus der nachfolgenden Beschreibung eines Ausführungsbeispiels und der Zeich ¬ nung. Dabei bilden alle beschriebenen und/oder bildlich dar- gestellten Merkmale für sich oder in beliebiger Kombination den Gegenstand der vorliegenden Erfindung, auch unabhängig von ihrer Zusammenfassung in den Ansprüchen oder deren Rück- bezügen. Es zeigen: Fig. 1: schematisch den Aufbau einer erfindungsgemäßen

Mikrokernel-Architektur und

Fig. 2: einen schematischen Ablauf zum Betrieb einer Fahrzeug-Einheit gemäß der vorliegenden Erfindung.

In Fig. 1 ist dazu die Systempartitionierung eines an den Mikroprozessor angeschlossenen Speichers dargestellt, auf den der Speicher zum Ablauf der verschiedenen Programme in den Partitionen zugreift. Diese Partition ist als ein Separati ¬ onskernel ausgebildet, der eine spezielle Variante einer Mikrokernel-Architektur darstellt. Bei der Mikrokernel- Architektur sind die verschiedenen Partitionen 1, 2, 3, 4 für die Hauptbetriebssystem-Einheit, die Supervisions-Einheit , die Policy-Einheit und die Crypto-Einheit auf demselben Mik ¬ roprozessor mit angeschlossenem Speicher implementiert, wobei die verschiedenen Partitionen unabhängig voneinander auf dem Mikroprozessor ablaufen und auch parallel ausgeführt werden können .

In der Partition 1 der Hauptbetriebssystem-Einheit ist das Hauptbetriebssystem der Fahrzeugeinheit installiert, welches durch den Endnutzer beispielsweise durch den Download und Installation neuer Anwendungsprogramme oder neuer Hauptbe ¬ triebssystem-Softwareversionen verändert werden kann.

Die Partition 4 mit der Crypto-Einheit ist für das Speichern und Validieren von Zertifikaten und das Überprüfen der Zertifikate von Anwendungssoftware oder kompletten Softwarepaketen zuständig. Alle Softwarezertifikate sind im Inneren der Par ¬ titionen 4 mit der Crypto-Einheit installiert, ohne dass die anderen Partitionen 1, 2, 3 Zugriff auf die Partition 4 ha- ben. Hierdurch wird erfindungsgemäß die Sicherheit erhöht, weil die Crypto-Einheit durch den Benutzer nicht verändert werden kann.

Die Partition 2 mit der Supervisions-Einheit überwacht bei- spielsweise mit Wachtdog-ähnlichen Mechanismen die anderen

Partitionen 1, 3, 4, und insbesondere die Partition 1 mit der Hauptbetriebssystem-Einheit, welche für die ordnungsgemäße Funktion der Fahrzeugeinheit zuständig ist. Diese Einheit ist erfindungsgemäß also für das Detektieren eines nicht funkti- onsfähigen Hauptbetriebssystems und das Einleiten eines auto ¬ matischen oder Benutzer-interaktiven Wiederherstellungsprozesses zuständig. Die Partition 3 mit der Policy-Einheit ist eine Standard- Einheit eines Separationskernels und überwacht beziehungswei ¬ se steuert die Kommunikation zwischen den verschiedenen Partitionen 1, 2, 4. So wird beispielsweise überprüft, ob eine Partition A eine Mitteilung M an eine Partition B senden darf. Ferner steuert die Policy-Einheit die Zugriffsrechte auf physikalische Speicherbereiche oder Flash-Partitionen und ändert die Budgets für die Zuweisung an Prozessorleistung zu einzelnen Prozessen oder von Speicherplatz.

Ein wesentliches Konzept der vorliegenden Erfindung liegt nun darin, den für die Überwachung und Wiederherstellung der gesamten Fahrzeugeinheit zuständigen Programmcode aus der Par ¬ tition 1 mit der Hauptbetriebssystem-Einheit in die Partition 2 mit der Supervisions-Einheit auszulagern, wobei diese Par ¬ tition 2 durch die Mikrokernel-Architektur vor einer Beeinflussung oder einem Zugriff aus der Partition 1 geschützt ist, während sie dennoch auf demselben Mikroprozessor abläuft .

Mit dieser Funktion wird auch die Überwachungsfunktion von einem hierfür üblicherweise vorgesehenen externen Mikrokon- troller in die Partition 2 der Supervisions-Einheit übertra ¬ gen, die im Rahmen ihrer Aufgaben mit der Policy-Einheit und der Crypto-Einheit zusammenwirkt.

Alle diese Einheiten in den Partitionen 2, 3 und 4 können nicht durch Softwareupdates oder Benutzereingriffe verändert werden, so dass diese ab dem Moment der Herstellung der Fahr- zeugeinheit unveränderlich feststehen. Hierdurch lässt sich eine Wiederherstellung der Partitionen 1 mit dem Hauptbetriebssystem in vorhersehbarer Weise kontrollieren. Das Zusammenwirken der Supervisions-Einheit, der Crypto-Einheit und der Policy-Einheit im Rahmen des Separationskernels in der Mikrokernel-Architektur stellen damit sicher, dass nur die Flash-Partitionen überschrieben werden, die der Hauptbetriebssystem-Einheit in der Partition 1 zugerechnet werden, die durch herunterladbare Anwendungsprogramme oder neue Firm ¬ wareversionen verändert werden können. Gleichzeitig verhindert die Policy-Einheit in der Partition 3 einen Zugriff der Hauptbetriebssystem-Einheit auf die anderen Partitionen 2, 3 und 4. Erfindungsgemäß können die Supervisions-Einheit , die Crypto-Einheit und die Policy-Einheit anstelle der drei ver ¬ schiedenen Partitionen 2, 3 und 4 auch in einer gemeinsamen Partition zusammengefasst werden, die erfindungsgemäß jedoch von der Partition 1 der Hauptbetriebssystem-Einheit verschie- den ist. Hierdurch lässt sich gegebenenfalls Speicher sparen und die Laufzeitperformance durch einen optimaleren Schedu- ling-Aufwand des Mikrokernes verbessern.

Innerhalb dieser Mikrokernel-Architektur, wie sie in Fig. 1 dargestellt ist, lässt sich der nachfolgend beschriebene Ab ¬ lauf zum Feststellen von Fehlern in der Hauptbetriebssystem- Einheit und zum Wiederherstellen der Hauptbetriebssystem- Einheit zuverlässig implementieren. Das erfindungsgemäße Verfahren wird nachfolgend anhand des schematischen Verfahrensablaufs gemäß Fig. 2 beschrieben.

Während des Startens der Fahrzeugeinheit läuft in der Super ¬ visions-Einheit der Partition 2 ein Überwachungsprogramm ab, um Fehler des Hauptbetriebssystems festzustellen. Dazu über ¬ wacht die Supervisions-Einheit das Starten des Hauptbetriebs ¬ systems im Hinblick auf einige Detailfunktionen. Diese Detailfunktionen beinhalten wichtige Servicefunktionen und Zustände des Hauptbetriebssystems.

Diese wichtigen Zustände und Funktionen betreffen zum einen eine Basis-Benutzerinteraktion über eine Mensch-Maschine- Schnittstelle HMI, die über das Hauptbetriebssystem angesteu ¬ ert wird. Dazu wird die Funktion der Mensch-Maschine-Schnitt- stelle durch die Supervisions-Einheit beispielsweise mittels einer fingierten Eingabe überprüft. Sofern die Mensch- Maschine-Schnittstelle beim Starten der Fahrzeugeinheit nach einer vorgegebenen Zeit nicht einsatzbereit ist, kann dies als Fehler des Hauptbetriebssystems gewertet werden.

Zusätzlich kann die Partition 1 des Hauptbetriebssystems als fehlerhaft angesehen werden, wenn eine außergewöhnliche Be ¬ lastung der Rechenleistung des Prozessors oder ein außergewöhnlicher Speicherplatzbedarf festgestellt wird. Auch ein übermäßiger Netzwerkverkehr zwischen den einzelnen Partitionen des Separationskernels kann als Merkmal für ein fehler- haftes Hauptbetriebssystems gewertet werden.

Im Falle eines festgestellten Fehlers des Hauptbetriebssys ¬ tems wird eine Wiederherstellung eingeleitet. Im Rahmen die ¬ ser Wiederherstellung startet die Überwachungseinheit einen Wiederherstellungsmodus, in welchem die Partition 1 mit der

Hauptbetriebssystem-Einheit vollständig ausgeschaltet und aus der Mikrokernel-Architektur entladen wird. Die Supervisions- Einheit übernimmt dann im Rahmen eines Not-Betriebssystems die verbliebenen Funktionen der Fahrzeugeinheit, zu der ins- besondere auch das Ansprechen der Mensch-Maschine-Schnitt ¬ stelle gehört.

So gibt die Supervisions-Einheit über einen Bildschirm der Mensch-Maschine-Schnittstelle eine Fehlermeldung an den End- nutzer aus. Auf demselben Bildschirm, auf dem die Fehlermitteilung angezeigt wird, wird ein Internetlink, insbesondere ein https-Link, mit einigen Einzelheiten wie der Seriennummer oder einer Versionsidentifikationsnummer ausgegeben, so dass der Endbenutzer ein aktuelles Software-Paket für das Hauptbe- triebssystem und/oder die von ihm benötigte Anwendungssoft ¬ ware aus dem Internet von einer Serviceseite des Herstellers der Fahrzeugeinheit herunterladen kann.

Der Softwaredownload kann von einem herkömmlichen PC erfolgen und auf einem externen Speichermittel, beispielsweise einem USB-Speicherstick, erfolgen. Um diesen Softwaredownload einlesen zu können, aktiviert die Supervisions-Einheit in dem Not-Betriebssystem die benötigten Treiber für externe

Schnittstellen zur Anbindung externer Speichermittel. Wenn das Not-Betriebssystem beispielsweise bei einem Neustart der Fahrzeugeinheit ein derartiges externes Speichermittel an ei- ner Schnittstelle feststellt, wird deren Dateisystem nach ei ¬ nem Software-Update-Paket durchsucht. Sobald ein solches Pa ¬ ket festgestellt wird, wird der Hash-Wert des Paketes berech ¬ net, eine entsprechende Signatur gelesen und die verschlüs ¬ selte Software-Version und die Hardware-Kompatibilität des Pakets von dem Speichergerät ausgelesen und an die Partition 4 mit der Crypto-Einheit übersandt. Die Crypto-Einheit über ¬ prüft die Inhalte des Software-Pakets und gibt der Überwa ¬ chungs-Einheit eine Rückmeldung, ob das Software-Paket für die vorliegende Hardware zulässig ist. Ferner kann das Cryp- to-Paket die Software paketweise entschlüsseln und zur In ¬ stallation bereitstellen.

Wenn das Software-Paket für die Hardware gültig ist, führt die Supervisions-Einheit eine vollständige Überprüfung der Blöcke der Flash-Partitionen durch, die für das Hauptbetriebssystem verwendet werden. Danach startet es eine Neuinstallation der Flash-Partition mit dem Hauptbetriebssystem (Flashing) . Nach einer erfolgreichen Installation in der Partition 1 der Hauptbetriebssystem-Einheit startet die Fahr- zeugeinheit bei dem nächsten Start mit dem neuen Betriebssys ¬ tem. Neben einer Fehlerbehandlung lassen sie auf diese Weise auch gezielte Updates einspielen, die beispielsweise durch eine Benutzereingabe in dem Hauptbetriebssystem ausgelöst werden können.

Statt nur die Link-Adresse für den Download der Software an ¬ zugeben, ist es erfindungsgemäß auch möglich, dass die Super ¬ visions-Einheit auf einem an die Fahrzeugeinheit angeschlos ¬ senen Speichergerät einen im Internet aufrufbaren Link spei- chert, in dem bereits die notwendigen Angaben zur Identifika ¬ tion der passenden und benötigten Software enthalten sind. Auf diese Weise werden Fehlereingaben vermieden. Damit kann durch die erfindungsgemäße Mikrokernel-Architektur ein durch den Benutzer steuerbares Verfahren zum Betreiben der Fahrzeugeinheit ausgeführt werden, das im Falle eines Software-Fehlers ein Wiederherstellen der Einheit erlaubt, ohne dass diese ausgebaut und an eine spezielle Servicestelle gesendet werden muss.

QQ群二维码
意见反馈