DE10340372A1 - Verfahren zur Installation einer Programmkomponente - Google Patents

Verfahren zur Installation einer Programmkomponente Download PDF

Info

Publication number
DE10340372A1
DE10340372A1 DE10340372A DE10340372A DE10340372A1 DE 10340372 A1 DE10340372 A1 DE 10340372A1 DE 10340372 A DE10340372 A DE 10340372A DE 10340372 A DE10340372 A DE 10340372A DE 10340372 A1 DE10340372 A1 DE 10340372A1
Authority
DE
Germany
Prior art keywords
program
program component
component
version
arithmetic unit
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.)
Ceased
Application number
DE10340372A
Other languages
English (en)
Inventor
Erich Esders
Michael Uelschen
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE10340372A priority Critical patent/DE10340372A1/de
Priority to PCT/EP2004/051894 priority patent/WO2005022382A2/de
Priority to US10/570,469 priority patent/US8095926B2/en
Priority to EP04766589A priority patent/EP1665031A2/de
Publication of DE10340372A1 publication Critical patent/DE10340372A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

Es wird ein Verfahren zur Installation einer Programmkomponente auf einer Recheneinheit vorgeschlagen, das zur Sicherstellung der Kompatibilität von Softwareeinheiten und Komponenten insbesondere in eingebetteten Systemen dient, die durch einen Nachladevorgang aktualisiert werden können. Hierbei wird vor der Installation überprüft, ob die zu installierende Programmkomponente zu einer auf der Recheneinheit bereits vorhandenen Programmkomponente kompatibel ist. Eine Installation wird nur bei einer positiven Überprüfung der Kompatibilität ausgeführt.

Description

  • Stand der Technik
  • Die Erfindung geht aus von einem Verfahren zur Installation einer Programmkomponente nach der Gattung des Hauptanspruchs. Es ist bekannt, Recheneinheiten so auszuführen, dass bestimmte Programmkomponenten nachträglich installiert oder durch neuere Versionen der jeweiligen Programmkomponente ersetzt werden können. Hierzu ist es bekannt, vor der Installation zu überprüfen, ob die zu installierende Komponente bereits auf der Recheneinheit in der entsprechenden Version vorliegt, um einen unnötigen Installationsaufwand zu vermeiden.
  • Vorteile der Erfindung
  • Das erfindungsgemäße Verfahren zur Installation einer Programmkomponente mit den Merkmalen des Hauptanspruchs hat demgegenüber den Vorteil, dass zudem die Kompatibilität einer Programmkomponente zu auf der Recheneinheit bereits vorhandenen Programmkomponenten vor der Eingabe überprüft wird. Hierdurch wird ein unnötiger Installationsvorgang vermieden, da die installierte Software bei einer Inkompatibilität zu übrigen Programmkomponenten nicht lauffähig ist. Darüber hinaus wird vermieden, dass eine lauffähige Version einer Programmkomponente durch eine nicht lauffähige Version überschrieben wird. Zudem wird sichergestellt, dass die Recheneinheit nach Installation der Programmkomponente lauffähig bleibt. Unter Kompatibilität ist hierbei zu verstehen, dass die in dem Gerät vorhandene und ungeändert verbleibende Softwarekomponente zusammen mit der neu installierten Programmkomponente lauffähig ist. Zwei Komponenten werden insbesondere dann als kompatibel zueinander angesehen, wenn alle ihre Schnittstellen jeweils zueinander kompatibel sind. Unter Lauffähigkeit ist zu verstehen, dass eine zuvor definierte Funktionalität auch nach der Installation einer Komponente durch die Recheneinheit noch bereitgestellt wird. Durch die Installation der weiteren Programmkomponente kann die Funktionalität gegebenenfalls umfangreicher, aber auch eingeschränkter bezogen auf den ursprünglichen Funktionsstand sein.
  • Durch die in den Unteransprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im Hauptanspruch angegebenen Verfahrens zur Installation einer Programmkomponente möglich. Besonders vorteilhaft ist, eine Kompatibilität zweier Programmkomponenten durch eine Überprüfung der Kompatibilität der einzelnen Schnittstellen der Programmkomponenten zu bestimmen. Hierdurch kann z.B. auf eine Untersuchung des Codes der einzelnen Programmkomponenten selbst verzichtet werden. Hierdurch wird die Kompatibilitätsprüfung vereinfacht.
  • Ferner ist es vorteilhaft, eine Kompatibilität von Programmkomponenten durch einen Vergleich von den Programmkomponenten zugeordneten Versionskennzahlen zu ermitteln. Ein Vergleich zweier Programmkomponenten wird damit auf einen Vergleich von Versionskennzahlen zurückgeführt und damit weiter vereinfacht. Insbesondere wird hierdurch ein schneller Vergleich möglich, wobei nur ein Mindestmaß an Arbeitsspeicher benötigt wird. Insbesondere gegenüber einem Vergleich, bei dem die Kompatibilität der einzelnen Schnittstellen jeweils für sich überprüft werden, wird eine erhebliche Zeitersparnis erreicht. Besonders vorteilhaft ist, eine Versionskennzahl einer Programmkomponente aus der Schnittstellenkonfiguration der Programmkomponente herzuleiten und damit in Abhängigkeit von ihrer Schnittstellenkonfiguration einer Programmkomponente eine Versionskennzahl zuzuordnen. Es ist ferner besonders vorteilhaft, den einzelnen Programmkomponenten Listen mit Versionskennzahlen zuzuordnen, aus denen die entsprechenden Versionen ersichtlich sind, zu der die jeweilige Programmkomponente kompatibel ist. Da bei einer Aktualisierung möglicherweise zukünftige Programmkomponenten nicht bekannt sind, ist es ferner vorteilhaft, als Kriterium für eine Kompatibilität lediglich zu verlangen, dass es ausreicht, wenn bereits eine der beiden Programmkomponenten in einer Liste der jeweiligen anderen Programmkomponente enthalten ist. Die Programmkomponente selbst muss dann keinen Hinweis auf die andere Programmkomponente mehr umfassen, um eine Kompatibilität festzustellen. Das vorgestellte Verfahren ist insbesondere dann vorteilhaft, wenn die einzelnen Programmkomponenten eine Vielzahl von unabhängigen Schnittstellen aufweisen, wobei die Programmkomponenten gegenseitig auf die Schnittstellen zugreifen. Es ist ferner vorteilhaft, die zu installierende Programmkomponente zum Austausch einer bereits auf der Recheneinheit vorhandenen Programmkomponente zu installieren. Durch die erfindungsgemäße Installation nur bei vorliegender Kompatibilität wird sichergestellt, dass ein möglicherweise nicht mehr verfügbarer Datensatz einer ursprünglich installierten Programmkomponente nicht durch eine Programmkomponente ersetzt wird, die mit den übrigen Programmkomponenten nicht lauffähig ist. Das erfindungsgemäße Verfahren erlaubt es dabei eine Kompatibilitätsprüfung durchzuführen, wenn zum einen eine Programmkomponente durch eine neuere Version ausgetauscht wird, und zum anderen, wenn eine Programmkomponente durch eine ältere Version ersetzt wird.
  • Es ist ferner vorteilhaft, bei der Installation von Anwendungsprogrammen, die gegebenenfalls des öfteren aktualisiert werden, jeweils bei der Installation eine Kompatibilitätsprüfung durchzuführen.
  • Sollte eine Installation nicht erfolgt sein, so wird vorteilhaft eine Fehlermeldung ausgegeben, durch die ein Benutzer auf die nicht erfolgte Installation hingewiesen wird.
  • Das erfindungsgemäße Verfahren kann für beliebige Recheneinheiten und damit für beliebige technische Geräte mit Recheneinheiten verwendet werden. Besonders vorteilhaft ist die Verwendung des erfindungsgemäßen Verfahrens in einem Kraftfahrzeug, das eine Recheneinheit mit darin eingebrachten eingebetteten Systemen aufweist. Da in der Regel Programme schneller entwickelt werden, als dass ein Kraftfahrzeug ersetzt wird, kann insbesondere eine Nachinstallation von Programmkomponenten mit dem erfindungsgemäßen Verfahren sicher durchgeführt werden, ohne dass ein Benutzer Gefahr läuft, dass das Fahrzeug hinterher nicht mehr funktioniert oder dass z. B. bei einer vor Ort auftretenden Störung nicht mehr verfügbare Daten durch eine falsche Installation überschrieben werden.
  • Zeichnung
  • Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigen
  • 1 eine Fahrerinformationsvorrichtung in einem Fahrzeug mit verschiedenen installierten Programmkomponenten,
  • 2a bis 2c Programmkomponenten verschiedener Versionen, die miteinander in Verbindung stehen,
  • 3 ein Ablauf eines erfindungsgemäßen Verfahrens zur Installation einer Programmkomponente auf einer Recheneinheit.
  • Beschreibung des Ausführungsbeispiels
  • Im Folgenden wird die Erfindung am Beispiel einer Fahrerinformationsvorrichtung in einem Fahrzeug erläutert. Das Verfahren ist entsprechend auf beliebige andere Recheneinheiten übertragbar.
  • 1 zeigt eine Recheneinheit 1, auf der eine erste Programmkomponente 11, eine zweite Programmkomponente 12 und eine dritte Programmkomponente 13 installiert sind. Die Programmkomponenten interagieren dabei in der Weise, dass sie über in Software realisierte Schnittstellen verfügen, bei denen Daten und Parameter von einer Programmkomponente an eine andere Programmkomponente übertragen werden. Die einzelnen Schnittstellen sind jeweils unidirektional ausgeführt, wobei zwischen zwei Programmkomponenten eine Vielzahl einzelner Schnittstellen vorgesehen sein kann.
  • Diese Vielzahl von Schnittstellen kann dabei insgesamt unidirektional ausgerichtet sein, sie kann jedoch auch eine Datenübertragung in beide Richtungen zulassen. Zwischen der dritten Programmkomponente 13 und der ersten Programmkomponente 11 sind eine erste Schnittstelle 131 und eine zweite Schnittstelle 132 vorgesehen, mit denen Daten von der dritten Programmkomponente 13 an die erste Programmkomponente 11 übertragen werden können. Ferner ist eine dritte Schnittstelle 133 vorgesehen, mit der Daten von der ersten Programmkomponente 11 an die dritte Programmkomponente 13 übertragen werden können. Ferner ist eine erste Schnittstelle 121 zwischen der ersten Programmkomponente 11 und der zweiten Programmkomponente 12 vorgesehen, die dazu dient, Daten von der zweiten Programmkomponente 12 an die erste Programmkomponente 11 zu übertragen. Eine zweite Schnittstelle 122 dient zum Datentransport in die umgekehrte Richtung. Die Programmkomponenten 11, 12, 13 werden von einer in der 1 nicht gezeigten Prozessoreinheit der Recheneinheit 1 abgearbeitet.
  • Die Schnittstellen können dabei z.B. auch Funktionsaufrufe umfassen, die für eine Ausführung der Funktion durch die jeweils andere Programmkomponente einen bestimmten Parametersatz erfordern, der für die Bearbeitung der Funktion in der anderen Programmkomponente erforderlich ist.
  • Die Programmkomponenten sind in einem der Recheneinheit 1 zugeordneten Speicher für die Ausführung der Programmkomponenten abgelegt, der in der 1 nicht gezeigt ist. Der Speicher kann einerseits ein Magnetspeicher sein, z. B. ein Festplattenlaufwerk, kann aber auch als eine überschreibbare Speicherzelle, z. B. ein EEPROM, ausgeführt sein. Unter einer Installation der Programmkomponenten kann einerseits ein reines Kopieren von Daten in den Speicher der Recheneinheit verstanden werden. Darüber hinaus ist es auch möglich, dass die installierten Programmkomponenten in ein auf der Recheneinheit 1 installiertes Betriebssystem, also ein Betriebsprogramm zur Bereitstellung der Grundfunktionen der Recheneinheit, eingebunden werden. Hierzu ist es erforderlich, dass zusätzlich zu der Programmkomponente z.B. Systemdateien an die Recheneinheit 1 übertragen werden. Ferner ist es auch möglich, dass der Recheneinheit 1 Registrierungsdaten zum Verwalten der Programmkomponente mitübertragen werden.
  • Die Recheneinheit 1 ist in dem hier dargestellten Ausführungsbeispiel als eine Navigationsvorrichtung in einem Fahrzeug ausgeführt. Die erste Programmkomponente dient in diesem Fall als Betriebssystem für die Recheneinheit, die noch weitere Funktionen übernehmen kann, deren Programmkomponenten ebenfalls in der Recheneinheit 1 abgelegt, in der 1 jedoch nicht dargestellt sind. Die zweite Programmkomponente 12 dient z.B. als eine Routenberechnungsfunktion, während die dritte Programmkomponente eine Datenbereitstellungsfunktion von Straßenkartendaten einerseits und Multimediadaten andererseits beinhaltet. Sowohl bei der Routenberechnungsfunktion, als auch bei der Datenbereitstellungsfunktion ist es wahrscheinlich, dass sich diese Programmkomponenten während der Nutzung der Recheneinheit, also während der Lebensdauer des Fahrzeugs, ändern werden. Gründe hierfür könnten erweiterte, bereitzustellende Daten sein, bei der z.B. die touristischen Hinweisfunktionen erweitert werden. Ferner ist es auch möglich, dass ein optimierter Routenermittlungsalgorithmus zur Verfügung steht, der entweder schneller eine zu fahrende Route ermitteln kann oder der z.B. in der Lage ist, die aktuelle Verkehrssituation in die Routenberechnung mit einzubeziehen, wenn dies bisher noch nicht der Fall war.
  • Will ein Benutzer nun eine derartige neue Programmkomponente auf der Recheneinheit 1 installieren, so sind hierfür verschiedene Installationsmöglichkeiten vorhanden, die an einer Recheneinheit jeweils ausschließlich, aber auch zur Auswahl realisiert werden können. In einer ersten Ausführungsform weist die Recheneinheit eine Luftschnittstelle 2 auf, die z.B. eine Schnittstelle zu einem Datennetz oder zu einem Mobilfunknetz darstellt. Die Daten der Programmkomponente werden der Recheneinheit 1 über die Luftschnittstelle zur Verfügung gestellt. Ferner ist auch eine drahtlose Übertragung von einem Rechner im Fahrzeug möglich, z.B. über eine sogenannte Bluetooth-Schnittstelle. Ferner weist die Recheneinheit 1 einen Steckkontakt 3 zum Anschluss eines weiteren Rechners auf, von dem die Daten übertragbar sind. In einer weiteren Ausführungsform weist die Recheneinheit 1 ein Datenträgerlaufwerk 14 auf, in das ein Datenträger mit einer entsprechend aktualisierten Softwarekomponente zur Installation eingelegt werden kann.
  • Bei der Installation ist es einerseits möglich, dass eine neue, zusätzliche Programmkomponente in der Recheneinheit 1 installiert wird. Hierzu könnte z.B. die dritte Programmkomponente 13 eine vierte Schnittstelle 134 aufweisen, die bei der Darstellung in der 1 noch offen ist, an die jedoch eine zu installierende, weitere Programmkomponente angehängt werden kann. In einer bevorzugten Ausführungsform wird bei der Installation eine bereits vorhandene Programmkomponente, z.B. die zweite Programmkomponente, für die Routenberechnungsfunktion 12, durch eine neu installierte Programmkomponente ersetzt.
  • Eine Installation einer derartigen Programmkomponente ist in der 3 gezeigt. Ausgehend von einem Initialisierungsschritt 20, mit dem eine Installation gestartet wird, wird in einem Ermittlungsschritt 21 sowohl eine Versionskennzahl einer auf der Recheneinheit 1 bereits installierten Komponente, als auch eine Versionskennzahl der zu installierenden Komponente ermittelt. Diese Versionskennzahl wird dadurch bestimmt, dass bei jeder Änderung einer Schnittstellenkonfiguration einer jeweiligen Programmkomponente eine neue Versionskennzahl zugewiesen wird. Die Versionskennzahl ist durch ein einfaches Auslesen eines entsprechenden Parameterwertes der jeweiligen Programmkomponente möglich. Ferner ist jeder Programmkomponente eine Liste für jede mit ihr verbindbare Programmkomponente zugeordnet, die jeweils alle Versionskennzahlen der zu der Programmkomponente kompatiblen Versionen der anderen Programmkomponente aufweist. In einem anschließenden ersten Prüfschritt 22 wird überprüft, ob die Versionskennzahl der zu installierenden Komponente in der Liste der auf der Recheneinheit bereits vorhandenen Komponente vorhanden ist oder ob die Versionskennzahl der auf dem Rechner vorhandenen Komponente in der Liste der zu installierenden Komponente vorhanden ist. Ist bereits eine dieser beiden Bedingungen erfüllt, so ist die Kompatibilität der beiden Programmkomponenten zueinander sichergestellt. In diesem Fall wird zu einem zweiten Prüfschritt 23 weiterverzweigt, in dem überprüft wird, ob die zu installierende Komponente außer zu dieser ersten Programmkomponente noch zu weiteren, auf dem Rechner bereits vorhandenen Programmkomponenten kompatibel sein muss. Dies wäre z.B. der Fall, wenn gemäß dem Ausführungsbeispiel der 1 die erste Programmkomponente 11 durch eine neuere Version zu ersetzen würde, da diese sowohl mit der zweiten, als auch mit der dritten Programmkomponente 12, 13 in Wechselwirkung steht. In diesem Fall wird zu dem Ermittlungsschritt 21 zurückverzweigt und es wird derselbe Vergleich zwischen der zu installierenden Programmkomponente und der weiteren, auf dem Rechner bereits vorhandenen Programmkomponente durchgeführt. Gibt es keine weiteren zu überprüfenden Programmkomponenten, so wird zu einem Installationsschritt 24 verzweigt, in dem die zu installierende Programmkomponente in den Speicher der Recheneinheit 1 übertragen wird, wobei die dort bereits vorhandene Programmkomponente entweder überschrieben wird, zumindest aber aus der Abarbeitung des Programms herausgenommen wird.
  • Wird in dem ersten Prüfschritt 22 festgestellt, dass die zu installierende Komponente nicht kompatibel zu einer in der Recheneinheit 1 bereits vorhandenen Komponente ist, so wird zu einem Abbruchschritt 25 verzweigt und es wird über eine Anzeige 4 oder über einen Lautsprecher 5 der Recheneinheit 1 ein akustisches und/oder optisches Warnsignal an einen Benutzer ausgegeben. Es wird darauf hingewiesen, dass eine Installation nicht erfolgt ist. Bevorzugt wird auch mitgeteilt, welcher Softwarestand für eine Installierung erforderlich ist.
  • Sollte eine Installierung umfangreicher sein, kann es gegebenenfalls erforderlich sein, bestimmte Komponenten in einer vorgegebenen Reihenfolge so zu installieren, dass stets nur zueinander kompatible Programmkomponenten auf der Recheneinheit vorliegen. Sollen nun z.B. die erste und die zweite Programmkomponente 11, 12 ausgetauscht werden, kann es gegebenenfalls erforderlich sein, zuerst eine neue Version der ersten Programmkomponente und dann eine neue Version der zweiten Programmkomponente zu installieren, da gegebenenfalls die neu zu installierende zweite Programmkomponente zu der auf der Recheneinheit bereits vorhandenen ersten Programmkomponente 11 nicht kompatibel sein mag.
  • In den 2a, 2b und 2c sind verschiedene Beispiele für eine Aktualisierung der ersten und der zweiten Programmkomponente 11, 12 dargestellt. In der 2a stehen die erste Programmkomponente und die zweite Programmkomponente über die erste und die zweite Schnittstelle 121, 122 in Verbindung. Hierbei ist der ersten und der zweiten Programmkomponente 11, 12 jeweils die Versionskennzahl 1 zugeordnet. Die erste Programmkomponente 11 weist eine Versionskennzahlliste 6 auf, in der alle Versionen der zweiten Programmkomponente abgelegt sind, die zu der vorliegenden Version der ersten Programmkomponente 11 kompatibel sind. In dem hier vorliegenden Ausführungsbeispiel ist dies lediglich die Versionskennzahl 1 der zweiten Programmkomponenten. Ebenso weist die zweite Programmkomponente 12 eine entsprechende Versionskennzahlliste 7 auf, in der diejenigen Versionskennzahlen der ersten Programmkomponente 11 abgelegt sind, zu denen die zweite Programmkomponente 12 mit der Versionskennzahl 1 kompatibel ist. Dies ist hier ebenfalls nur die Versionskennzahl 1.
  • In der 2b ist nun eine neuere Version 110 der ersten Programmkomponente 11 und eine neuere Version 120 der zweiten Programmkomponente 12 dargestellt. Die Programmkomponenten unterscheiden sich dadurch, dass die erste Schnittstelle 121 durch eine neuere Schnittstelle 123 ersetzt wurde. Die beiden Schnittstellen können sich z.B. dadurch unterscheiden, dass gegenüber der ersten Schnittstelle 121 ein zusätzlicher Parameter von der neuen ersten Programmkomponente 110 zur Bearbeitung durch die neue zweite Programmkomponente 120 bereitgestellt wird. Die neue erste Programmkomponente 110 erhält damit die Versionskennzahl 2, ebenso wie die neue zweite Programmkomponente 120. In einer Versionskennzahlliste 60 der neuen ersten Programmkomponente 110 ist lediglich die Versionskennzahl 2 enthalten, während in der Versionskennzahlliste 70 der neuen zweiten Programmkomponente 120 die Versionskennzahlen 1 und 2 enthalten sind. Wird nun ausgehend von der Konfiguration gemäß der 2b versucht, die neue zweite Programmkomponente 120 durch die zweite Programmkomponente 12 in der ursprünglichen Ausführung zu ersetzen, wird bei einem Vergleich der Versionskennzahllisten eine Inkompatibilität festgestellt. Denn in der Versionskennzahlliste der zweiten Programmkomponente 12 ist lediglich die Versionskennzahl 1 vorhanden, die neue zweite Programmkomponente 110 hat jedoch die Versionskennzahl 2. In der Versionskennzahlliste 60 dieser neuen ersten Programmkomponente 110 ist jedoch ebenfalls lediglich die Versionskennzahl 2 abgelegt. Da die jeweils andere Komponente in keiner der beiden Versionskennzahllisten aufgefunden werden kann, wird eine Installation abgebrochen.
  • Wird dagegen versucht, ausgehend von der Konfiguration gemäß der 2a die zweite Programmkomponente 12 durch die neue zweite Programmkomponente 120 zu ersetzen, so wäre dies möglich, da in deren Versionskennzahlliste 70 auch die Versionskennzahl 1 vorhanden ist. Ausgehend von der Konfiguration in der 2a wäre also ein Austausch der zweiten Programmkomponente 12 durch die neue zweite Programmkomponente 120 möglich. Eine entsprechende Konfiguration ist in der 2c dargestellt. Mit dem Bezugszeichen 121' ist hiermit die Schnittstelle von der ersten Komponente 11 zu der neuen zweiten Programmkomponente 120 bezeichnet. Dies könnte z.B. dadurch realisiert werden, dass der von der ersten Programmkomponente 11 nicht bereitgestellte, zusätzliche Parameter entweder auf einen Standardwert eingestellt wird oder ganz ignoriert wird. Gegebenenfalls wäre es auch möglich, von der Konfiguration in der 2b ebenfalls zu der Konfiguration in der 2c zu gelangen. Gegebenenfalls kann ein Benutzer vor der Installation noch davor gewarnt werden, dass eine aktuellere Version durch eine ältere Version einer Programmkomponente ersetzt werden soll.
  • Für einen Vergleich ist es damit ausreichend, den Inhalt der Versionskennzahllisten 6, 60, 7, 70 mit den Versionskennzahlen der jeweils anderen Programmkomponente zu vergleichen.
  • Der Kompatibilitätsvergleich ist bevorzugt für Geräte vorgesehen, bei denen die verschiedenen Programmkomponenten in ein einziges großes Programmpaket eingebunden sind. Jedoch ist es auch möglich, z.B. die Kompatibilität von Programmen auf verschiedenen Recheneinheiten, die miteinander verbunden sind und bei denen zumindest auf einer Recheneinheit eine Installation erfolgen soll, entsprechend zu überprüfen.
  • Neben einer Verwendung für die Überprüfung bei einem Endnutzer ist es jedoch auch möglich, bereits während der Fertigung die Funktionalität des Systems dadurch zu überprüfen, dass das erfindungsgemäße Installationsverfahren bei der Erstinstallation von Software auf einem Gerät berücksichtigt wird und die Kompatibilität z.B. zu einem auf dem System bereits vorhandenen Betriebssystem jeweils überprüft wird.

Claims (9)

  1. Verfahren zur Installation einer Programmkomponente auf einer Recheneinheit, wobei auf der Recheneinheit bereits mindestens eine weitere Programmkomponente installiert ist, dadurch gekennzeichnet, dass eine Installation der Programmkomponente nur dann erfolgt, wenn die zu installierende Programmkomponente zu der bereits installierten mindestens einen Programmkomponente auf der Recheneinheit kompatibel ist.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass Programmkomponenten dann zueinander kompatibel sind, wenn die Schnittstellen der Programmkomponenten zueinander kompatibel sind.
  3. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass eine Kompatibilität von Programmkomponenten durch einen Vergleich von den Programmkomponenten zugeordneten Versionskennzahlen ermittelt wird.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass einer ersten Programmkomponente zur Bestimmung der Kompatibilität zu einer zweiten Programmkomponente eine Liste mit Versionen der zweiten Programmkomponente zugeordnet ist, die zu der ersten Programmkomponente kompatibel sind.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass zwei Programmkomponenten bereits dann kompatibel zueinander sind, wenn in einer Liste kompatibler Versionen, insbesondere in einer Liste kompatibler Versionskennzahlen, einer der beiden Programmkomponenten, die Version oder die Versionskennzahl der anderen Komponente enthalten ist.
  6. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die zu installierende Programmkomponente zum Austausch einer bereits auf der Recheneinheit vorhandenen Programmkomponente installiert wird.
  7. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die auf der Recheneinheit vorhandene Programmkomponente ein Betriebsprogramm der Recheneinheit ist und dass die zu installierende Komponente ein Anwendungsprogramm ist.
  8. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass bei einer aufgrund mangelnder Kompatibilität nicht durchgeführten Installation eine Fehlermeldung ausgegeben wird.
  9. Verwendung eines Verfahrens nach einem der vorherigen Ansprüche für die Installation von Programmkomponenten in einem Fahrerinformationssystem in einem Kraftfahrzeug, insbesondere in einer Navigationsvorrichtung.
DE10340372A 2003-09-02 2003-09-02 Verfahren zur Installation einer Programmkomponente Ceased DE10340372A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE10340372A DE10340372A1 (de) 2003-09-02 2003-09-02 Verfahren zur Installation einer Programmkomponente
PCT/EP2004/051894 WO2005022382A2 (de) 2003-09-02 2004-08-25 Verfahren zur installation einer programmkomponente
US10/570,469 US8095926B2 (en) 2003-09-02 2004-08-25 Method for the installation of a program component
EP04766589A EP1665031A2 (de) 2003-09-02 2004-08-25 Verfahren zur installation einer programmkomponente

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10340372A DE10340372A1 (de) 2003-09-02 2003-09-02 Verfahren zur Installation einer Programmkomponente

Publications (1)

Publication Number Publication Date
DE10340372A1 true DE10340372A1 (de) 2005-03-24

Family

ID=34202327

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10340372A Ceased DE10340372A1 (de) 2003-09-02 2003-09-02 Verfahren zur Installation einer Programmkomponente

Country Status (4)

Country Link
US (1) US8095926B2 (de)
EP (1) EP1665031A2 (de)
DE (1) DE10340372A1 (de)
WO (1) WO2005022382A2 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7735079B1 (en) * 2005-02-04 2010-06-08 Symantec Corporation Securely hooking installations for compatibility with other applications
US7506336B1 (en) * 2005-06-29 2009-03-17 Emc Corporation System and methods for version compatibility checking
EP2002334A1 (de) * 2006-03-31 2008-12-17 British Telecommunications Public Limited Company Auf xml basierender transfer und lokale speicherung von java-objekten
EP2002337A1 (de) * 2006-03-31 2008-12-17 British Telecommunications Public Limited Company Programmfehler-handler zur aufrüstung von java-objekten in einem verteilten system
US9032390B2 (en) * 2008-07-29 2015-05-12 Qualcomm Incorporated Framework versioning
US8832676B2 (en) * 2009-09-30 2014-09-09 Zynga Inc. Apparatuses, methods and systems for a social networking application updater
US8631398B2 (en) * 2010-09-20 2014-01-14 Sony Corporation Method and apparatus for facilitating creation of a network interface
US20130042231A1 (en) * 2011-08-10 2013-02-14 Ford Global Technologies, Llc Methods and Apparatus for Software Updating
US9342298B2 (en) * 2013-03-14 2016-05-17 Microsoft Technology Licensing, Llc Application compatibility checking in a distributed computing environment
JP7043783B2 (ja) * 2017-10-20 2022-03-30 富士フイルムビジネスイノベーション株式会社 ソフトウエア管理装置、ソフトウエア管理システム及びプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579509A (en) 1991-02-08 1996-11-26 International Business Machines Corporation Apparatus and method for verifying compatibility of system components
DE69516634T2 (de) * 1994-11-04 2000-09-21 Canon Information Syst Inc Intelligente Wiederprogrammierung eines Flash-Speichers
US5951639A (en) * 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
JP2001067232A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ソフトウエアの配信システムおよびソフトウエアの受信端末装置
JP2001331324A (ja) * 2000-05-19 2001-11-30 Sony Corp 情報処理方法および装置、ならびに、記録媒体
JP2002318692A (ja) * 2001-04-19 2002-10-31 Sony Corp インストール支援システム、インストール支援装置、インストール支援方法、インストールを支援するためのプログラムおよびそのプログラムを記録した記録媒体
US6971093B1 (en) * 2001-05-14 2005-11-29 Cisco Technology, Inc. Techniques for maintaining compatibility of a software core module and an interacting module
US7350207B2 (en) * 2001-05-25 2008-03-25 Tellabs Operations, Inc. Rule-based system and method for downloading computer software over a network
DE10158991A1 (de) * 2001-11-30 2003-06-12 Bosch Gmbh Robert Verfahren und Installation von einem Softwaremodul in einem Gerät

Also Published As

Publication number Publication date
WO2005022382A2 (de) 2005-03-10
WO2005022382A3 (de) 2005-09-29
EP1665031A2 (de) 2006-06-07
US20070234352A1 (en) 2007-10-04
US8095926B2 (en) 2012-01-10

Similar Documents

Publication Publication Date Title
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
DE102020111880A1 (de) Datenfreigabe zur fahrzeugaktualisierung
EP1421460B1 (de) Verfahren zur bereitstellung von software zur verwendung durch ein steuergerät eines fahrzeugs
DE112012003795T5 (de) Fahrzeugnetwerksystem und Fahrzeug-Informationsverarbeitungsverfahren
WO2003003200A1 (de) Verfahren zum übertragen von software-modulen
WO2019068375A1 (de) Verfahren und zentrale datenverarbeitungsvorrichtung zum aktualisieren von software in einer vielzahl von fahrzeugen
DE10340372A1 (de) Verfahren zur Installation einer Programmkomponente
DE102005040142A1 (de) Verfahren zur Identifikation komplexer Diagnosesituationen im Kundendienst
EP2326959A1 (de) Verfahren zum freischalten von funktionen eines tachographen
DE102019004612A1 (de) Verfahren zum Betreiben eines Fahrzeugs mit einem Steuergerät
DE112020006441T5 (de) Fahrzeugsteuervorrichtung und Fahrzeugsteuerverfahren
DE102022110251A1 (de) Ota-master, center, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE102022113922A1 (de) Ota-master, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE102022104321A1 (de) Center, aktualisierungsmanagementverfahren und nicht-transitorisches speichermedium
DE102009002898A1 (de) Verfahren zur Aktualisierung eines Steuergeräts eines Fahrzeugs
DE102019005545A1 (de) Verfahren zum Betreiben eines Maschinendatenkommunikationsnetzwerks, sowie Maschinendatenkommunikationsnetzwerk
EP4144003B1 (de) Verfahren zum erzeugen einer softwarekomponente für eine elektronische recheneinrichtung eines kraftfahrzeugs, computerprogrammprodukt, computerlesbares speichermedium sowie kraftfahrzeugexternes aktualisierungssystem
DE102017208986A1 (de) Verfahren zum Testen eines geplanten Softwareupdates für ein Fahrzeug
WO2009103728A1 (de) Verfahren und vorrichtung zum speichern von informationsdaten
DE102021112661A1 (de) Verfahren, Vorrichtung, Computerprogramm und computerlesbares Speichermedium zur Ermittlung von fehlerbehafteten Fahrzeugen
WO2024008340A1 (de) Verfahren, vorrichtung, computerprogramm und computerlesbares speichermedium zur ermittlung von zumindest einem fehlerbehafteten fahrzeug
DE102022110824A1 (de) Ota-master, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE112021001453T5 (de) Fahrzeugdatenkommunikationsvorrichtung, zentralvorrichtung, datenkommunikationsverfahren und computerprogramm
DE102022002173A1 (de) Verfahren zur Verbesserung einer Fahrzeugsystemfunktion und ein System zur Verbesserung der Fahrzeugsystemfunktion
DE102021125749A1 (de) Vorrichtung, Verfahren und Computerprogramm für eine Überwachung einer Sicherheit von Rechen-Funktionsblöcken in einem Fahrzeug

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20121115