DE102004057768A1 - Verfahren und System zum Aktualisieren von Software eines Mobiltelefons - Google Patents

Verfahren und System zum Aktualisieren von Software eines Mobiltelefons Download PDF

Info

Publication number
DE102004057768A1
DE102004057768A1 DE102004057768A DE102004057768A DE102004057768A1 DE 102004057768 A1 DE102004057768 A1 DE 102004057768A1 DE 102004057768 A DE102004057768 A DE 102004057768A DE 102004057768 A DE102004057768 A DE 102004057768A DE 102004057768 A1 DE102004057768 A1 DE 102004057768A1
Authority
DE
Germany
Prior art keywords
program
data
version number
data group
record
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102004057768A
Other languages
English (en)
Other versions
DE102004057768B4 (de
Inventor
Li-Sen Liu
Yu-Chuan Yang
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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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 MediaTek Inc filed Critical MediaTek Inc
Publication of DE102004057768A1 publication Critical patent/DE102004057768A1/de
Application granted granted Critical
Publication of DE102004057768B4 publication Critical patent/DE102004057768B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Abstract

Ein Verfahren und ein System zum Aktualisieren von Software (S), die ein erstes Programm (C1) und eine erste Datengruppe (DG1) umfasst. Das erste Programm (C1) hat eine entsprechende erste Programm-Versionsnummer (CN1), und die erste Datengruppe (DG1) hat eine erste Datengruppen-Versionsnummer (DGN1). DOLLAR A Das Verfahren umfasst: Bereitstellen eines zweiten Programms (C2), das eine entsprechende zweite Programm-Versionsnummer (CN2) hat; Aktualisieren des ersten Programms (C1) unter Verwendung des zweiten Programms (C2), dann, wenn der Wert der ersten Programm-Versionsnummer (CN1) sich von dem Wert der zweiten Programm-Versionsnummer (CN2) unterscheidet; und Entscheiden entsprechend der aktualisierten ersten Programm-Versionsnummer (CN2) des aktualisierten ersten Programms (C2), ob die erste Datengruppe (DG1) aktualisiert werden soll oder nicht.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren entsprechend dem Oberbegriff von Anspruch 1 und ein System zum Aktualisieren oder Updaten von Software entsprechend dem Oberbegriff von Anspruch 7.
  • Bedingt durch das Durchlaufen von Herstellung, Entwicklung, Wartung oder Kundendienst vergrößert oder verbessert ein Hersteller von Mobiltelefons üblicherweise die Funktionalität des Mobiltelefons durch Updaten, also Aktualisieren der in dem Mobiltelefon gespeicherten Software. Allgemein umfasst die oben erwähnte Software ein Programm und Daten. Ein gattungsgemäßes Verfahren zum Aktualisieren von Software besteht darin, ein gewünschtes Programm in das Mobiltelefon zu laden, sodass das ursprüngliche Programm in dem Mobiltelefon unter Verwendung des gewünschten Programms aktualisiert wird. In dem herkömmlichen Verfahren werden neue Daten geladen und überschreiben alle ursprünglichen, in dem Mobiltelefon gespeicherten Daten. Jedoch bestehen die neuen Daten zumeist aus Leerstellen, wie etwa eine vorbestimmte logische Größe „1" oder „0", die keine vollständige Information aufnimmt. Daraus folgt, dass beim Aktualisieren alle ursprünglichen Daten zerstört werden, auch wenn einige der ursprünglichen Daten keinerlei Beziehung zu dem aktualisierten Programm oder Programm-Update haben.
  • Mit anderen Worten: in den meisten Fällen haben die meisten ursprünglich in einem Mobiltelefon gespeicherten Daten keine Beziehung zu dem Programm-Update, was bedeutet, dass die Daten ohne Beziehung zu dem Programm-Update (auch) durch eine neue Version des Programms (nämlich das aktualisierte Programm-Update) (weiter) genutzt werden können. Diese Daten umfassen zum Beispiel Einstellungen/Parameter für Komponenten von Schaltkreisen eines Mobiltelefons, ursprünglich von einem Benutzer eingegebene Einstellungen und Daten eines Telefonbuches eines Mobiltelefons. Man kann Einstellungen/Parameter in Verbindung mit Komponenten von Schaltkreisen eines Mobiltelefons als Beispiel dafür nehmen, dass unterschiedliche Schaltkreis-Komponenten von unterschiedlichen Herstellern geliefert werden können. Sogar für einen spezifischen, vom gleichen Hersteller gelieferten Typ von Schaltkreis-Komponenten können auf Grund von Einflüssen bei der Produktion geringe Abweichungen zwischen Einzelkomponenten auftreten. Entsprechend ist es notwendig, vor der Markteinführung eines Mobiltelefons Zeit aufzuwenden, um alle Schaltkreis-Komponenten des Mobiltelefons abzustimmen, um sicherzustellen, dass alle Komponenten richtig funktionieren. Dazu ist es unerwünscht, von einem Benutzer zu verlangen, noch einmal Zeit für die von dem Benutzer ursprünglich in ein Mobiltelefon eingegebenen Einstellungen, wie im Benutzer-Interface verwendete Sprachen und Daten, eines Telefonbuches aufzuwenden, um diese Einstellungen erneut in das Mobiltelefon einzugeben. Deshalb sollten die oben erwähnten ursprünglichen, mit einer neuen Version eines Programms unverknüpften Daten nicht zerstört werden. In den meisten Fällen brauchen für eine neue Version des Programms ziemlich wenige ursprüngliche Daten zerstört oder modifiziert werden. Der herkömmliche Prozess von Aktualisierung oder Update der Software lädt jedoch alle neuen Daten, die vorgegebene Werte darstellen. Sämtliche ursprünglich in einem Mobiltelefon gespeicherten Daten werden ersetzt. Deshalb ist es für einen Nutzer lästig, die Software eines Mobiltelefons mit dem herkömmlichen Update-Verfahren zu aktualisieren.
  • Im Hinblick darauf zielt die vorliegende Erfindung darauf ab, ein Verfahren und ein System zur Aktualisierung oder zum Update von Software zum Aktualisieren von Software eines Mobiltelefons durch Vergleichen von Daten-Versionsnummern anzugeben, ohne alle ursprünglich in dem Mobiltelefon gespeicherten Daten durch Vorgabewerte zu ersetzen.
  • Dies wird erreicht durch ein Verfahren nach Anspruch 1 und ein System zur Aktualisierung von Software nach Anspruch 7. Die abhängigen Ansprüche betreffen zugehörige weitere Entwicklungen und Verbesserungen.
  • Wie klarer aus der unten folgenden detaillierten Beschreibung ersichtlich ist, wird das beanspruchte, in einem elektronischen Gerät zum Aktualisieren von Software des elektronischen Gerätes angewendete Verfahren angegeben. Die Software enthält ein erstes Programm und eine erste Datengruppe. Das erste Programm hat eine zugehörige erste Programm-Versionsnummer, und die erste Gruppe von Daten hat eine zugehörige Versionsnummer für die erste Datengruppe. Das beanspruchte Verfahren umfasst das Vorsehen eines zweiten Programms, das eine zugehörige zweite Programm-Versionsnummer hat; das Aktualisieren des ersten Programms unter Verwendung des zweiten Programms, sobald der Wert der ersten Programm-Versionsnummer sich von dem Wert der zweiten Programm-Versionsnummer unterscheidet; und Entscheidung entsprechend der aktualisierten ersten Programm-Versionsnummer des aktualisierten ersten Programms, ob die erste Datengruppe zu aktualisieren ist oder nicht.
  • Wie klarer aus der unten folgenden genauen Beschreibung ersichtlich ist, wird das beanspruchte, in einem elektronischen Gerät zum Aktualisieren von Software des elektronischen Gerätes angewendete System zum Aktualisieren von Software angegeben. Die Software umfasst ein erstes Programm und eine erste Datengruppe. Das erste Programm hat eine zugehörige erste Programm-Versionsnummer, und die erste Datengruppe hat eine entsprechende Versions-Nummer für die erste Datengruppe. Das beanspruchte System zur Aktualisierung von Software umfasst ein zweites Programm, das eine zugehörige zweite Programm-Versionsnummer hat; und ein Aktualisierungs- oder Update-Modul, das zum Vergleichen der ersten Programm-Versionsnummer und der zweiten Programm-Versionsnummer verwendet wird und das das erste Programm unter Verwendung des zweiten Programms aktualisiert, wenn der Wert der ersten Programm-Versionsnummer von dem der zweiten Programm-Versionsnummer abweicht, und das gemäß der aktualisierten ersten Programm-Versionsnummer des aktualisierten ersten Programms entscheidet, ob die erste Gruppe von Daten aktualisiert werden soll oder nicht.
  • Im Folgenden wird die Erfindung mit Bezug auf die begleitenden Zeichnungen beispielsweise weiter erläutert. Dabei zeigt:
  • 1 ein Blockdiagramm eines Systems zum Aktualisieren von Software, nach der Erfindung;
  • 2 ein Flussdiagramm zur Erläuterung einer von dem in 1 dargestellten System zur Aktualisierung von Software ausgeführten ersten Stufe einer Aktualisierung von Software; und
  • 3 ein Flussdiagramm zur Erläuterung einer von dem in 1 dargestellten System zur Aktualisierung von Software ausgeführten zweiten Stufe einer Aktualisierung von Software.
  • 1 ist ein Blockdiagramm eines Systems 10 zur Aktualisierung der Software nach der vorliegenden Erfindung. Das System 10 zur Aktualisierung der Software wird in einem elektronischen Gerät eingesetzt. In dem vorliegenden Ausführungsbeispiel ist das elektronische Gerät ein Mobiltelefon 20. Das Mobiltelefon 20 umfasst einen Microprozessor 11 und eine Speichereinheit 13. Der Microprozessor 11 ist mit der Speichereinheit 13 elektrisch verbunden. Software S ist in der Speichereinheit 13 gespeichert. Das System 10 zur Aktualisierung der Software nach der vorliegenden Erfindung wird verwendet, um die in dem elektronischen Gerät 20 gespeicherte Software S zu aktualisieren, also upzudaten. Die Software S umfasst ein erstes Programm C1 und eine erste Datengruppe DG1, wobei das erste Programm C1 eine zugehörige erste Programm-Versionsnummer CN1 hat, und die erste Datengruppe DG1 hat eine zugehörige erste Datengruppen-Versionsnummer DGN1. Das System 10 zum Aktualisieren der Software umfasst weiter ein zweites Programm C2, eine zweite Datengruppe DG2 und ein Update- oder Aktualisierungsmodul 15, wobei das zweite Programm C2 eine zugehörige zweite Programm-Versionsnummer CN2 hat, und die zweite Datengruppe DG2 hat eine zugehörige zweite Datengruppen-Versionsnummer DGN2. Das zweite Programm C2, die zweite Programm-Versionsnummer CN2, die zweite Datengruppe DG2 und die zweite Datengruppen-Versionsnummer DGN2 sind in einer Speichereinheit 14 außerhalb des Mobiltelefons 20 gespeichert. Im vorliegenden Ausführungsbeispiel wird der Microprozessor 11 über eine Netzwerkverbindung oder über Schaltkreise mit der Speichereinheit 14 verbunden. Daher kann er auf in der Speichereinheit 14 gespeicherte Daten zugreifen. Die erste Datengruppe DG1 umfasst mehrere erste Datensätze D1, und jeder erste Datensatz D1 hat einen zugehörigen ersten Datensatz-Code DC1 und eine zugehörige erste Datensatz-Versionsnummer DN1. Die zweite Datengruppe DG2 umfasst mehrere zweite Datensätze D2, und jeder zweite Datensatz D2 hat einen zugehörigen zweiten Datensatz-Code DC2 und eine zugehörige zweite Datensatz-Versionsnummer DN2. In dem vorliegenden Ausführungsbeispiel umfasst die erste Datengruppe DG1 „N" erste Datensätze D1, und die zweite Datengruppe umfasst „N" zweite Datensätze D2. Dazu sind das erste Programm Cl und das zweite Programm C2 jeweils ausführbare Programmfiles.
  • Das Aktualisierungsmodul 15 ist in der Speichereinheit 13 gespeichert und vergleicht die erste Programm-Versionsnummer CN1 und die zweite Programm-Versionsnummer CN2. Wenn der Wert der ersten Programm-Versionsnummer CN1 vom Wert der zweiten Programm-Versionsnummer CN2 abweicht, führt das Aktualisierungsmodul 15 unter Verwendung des zweiten Programms C2 die Aktualisierung bzw. das Update des ersten Programms C1 durch. Wenn dann das Mobiltelefon erneut gebootet, also hochgefahren wird, vergleicht das Aktualisierungsmodul 15 die Versionsnummer CN1 des aktualisierten ersten Programms und die Versionsnummer DGN1 der ersten Datengruppe. Wenn die aktualisierte erste Programm-Versionsnummer CN1 von dem Wert der ersten Datengruppen-Versionsnummer DGN1 abweicht, dann aktualisiert das Aktualisierungsmodul 15 die erste Datengruppe DG1 unter Verwendung der zweiten Datengruppe DG2.
  • Sobald das Aktualisierungsmodul 15 das erste Programm C1 auf das zweite Programm C2 aktualisiert bzw. updatet, aktualisiert das Aktualisierungsmodul 15 eine Daten-Aktualisierungstabelle DT. Wenn dann das Mobiltelefon 20 neu gebootet wird, aktualisiert das Aktualisierungsmodul 15 die erste Datengruppe DG1 entsprechend der Daten-Aktualisierungstabelle DT.
  • Die Daten-Aktualisierungstabelle DT ist in der Speichereinheit 13 gespeichert und umfasst mehrere Aktualisierungsfelder DTF. Jedes Aktualisierungsfeld DTF entspricht einem ersten Datensatz D1 und umfasst Unter-Felder Fa und Fb. Für einen ersten Datensatz D1 enthält ein Unter-Feld Fa einen ersten Datensatz-Code DC1, der dem ersten Datensatz D1 entspricht, und ein Unter-Feld Fb enthält eine erste Datensatz-Versionsnummer DN1, die dem ersten Datensatz D1 entspricht. Sobald das Aktualisierungsmodul 15 das erste Programm C1 mit dem zweiten Programm C2 aktualisiert oder updatet, aktualisiert das Aktualisierungsmodul 15 die Daten-Aktualisierungstabelle DT entsprechend den von dem zweiten Programm C2 verwendeten Versionen der Datensätze. Mit anderen Worten: wenn ein von dem ersten Programm C1 verwendeter erster Datensatz D1 von dem zweiten Programm C2 nicht verwendet werden kann, muss das Aktualisierungsmodul in einer nachfolgenden Aktualisierungs-Operation für Daten den ersten Datensatz D1 mit einem entsprechenden zweiten Datensatz D2 aktualisieren, wobei der dem ersten Datensatz D1 entsprechende zweite Datensatz D2 von dem zweiten Programm C2 verwendet wird. Weil der erste Datensatz D1 nicht von dem zweiten Programm C2 verwendet werden kann, unterscheidet sich die erste Datensatz-Versionsnummer DN1 des ersten Datensatzes D1 von der zweiten Datensatz-Versionsnummer DN2 des zweiten Datensatzes D2, der dem ersten Datensatz D1 entspricht.
  • Wenn während eines Prozesses, in dem das Aktualisierungsmodul 15 das erste Programm Cl mit Hilfe des zweiten Programms C2 aktualisiert, irgendein erster Datensatz D1 von dem zweiten Programm C2 nicht verwendet werden kann, aktualisiert deshalb das Aktualisierungsmodul 15 die oben erwähnte Daten-Aktualisierungstabelle DT. Darüber hinaus wird eine erste, ursprünglich in der Daten-Aktualisierungstabelle DT gespeicherte Datensatz-Versionsnummer DN1 mit Hilfe einer zweiten Datensatz-Versionsnummer DN2 eines zweiten Datensatzes D2 aktualisiert, der dem aktualisierten ersten Datensatz D1 entspricht.
  • Es sollte festgehalten werden, dass Datengruppen wie die erste Datengruppe DG1 und die zweite Datengruppe DG2 dazu verwendet werden können, Einstellungen der Leuchtstärke einer Flüssigkristallanzeige (LCD), Einstellungen einer Benutzer-Oberfläche, Einstellungen für Batterie oder Sendefrequenzeinstellung (RF) des Mobiltelefons 20 oder von einem Nutzer in das Mobiltelefon 20 eingegebene Informationen festzuhalten. Jede der Einstellungen wird mit Hilfe eines Parameters oder eines Satzes von Parametern festgehalten, wie etwa, bei dem vorliegenden Ausführungsbeispiel, ein erster Datensatz D1 bzw. eine erste Datengruppe DG1.
  • Es wird auf 1, 2 und 3 Bezug genommen. In dem vorliegenden Ausführungsbeispiel umfasst die Operation zur Software-Aktualisierung bzw. zum Software-Update zwei Stufen: eine erste Stufe und eine zweite Stufe. 2 ist ein Flussdiagramm, das die erste Stufe der Software-Aktualisierung erläutert, die von dem System 10 zum Aktualisieren der Software aus 1 ausgeführt wird. 3 ist ein Flussdiagramm, das die zweite Stufe der Software-Aktualisierung erläutert, die von dem System 10 zum Aktualisieren der Software aus 1 ausgeführt wird. Die erste Stufe umfasst die folgenden Schritte: Schritt 200: Start.
  • Schritt 201: Bestimmen, ob der Wert der zweiten Programm-Versionsnummer CN2 gleich dem Wert der ersten Programm-Versionsnummer CN1 ist. Wenn Ja, weiter zu Schritt 204; sonst weiter zu Schritt 202.
  • Schritt 202: Aktualisieren des ersten Programms Cl unter Verwendung des zweiten Programms C2 und aktualisieren der ersten Programm-Versionsnummer CN1 mit der zweiten Programm-Versionsnummer CN2.
  • Schritt 203: Aktualisieren der Daten-Aktualisierungstabelle DT.
  • Schritt 204: Ende.
  • Die zweite Stufe umfasst die folgenden Schritte:
  • Schritt 206: Anschalten des Mobiltelefons 20.
  • Schritt 208: Bestimmen, ob der Wert der aktualisierten ersten Programm-Versionsnummer CN2 des aktualisierten ersten Programms C2 gleich der ersten Datengruppen-Versionsnummer DGN1 ist. Wenn Ja, weiter zu Schritt 220, sonst weiter zu Schritt 210.
  • Schritt 210: Setzen eines aktualisiertes Aktualisierungsfeldes DTF der aktualisierten Daten-Aktualisierungstabelle DT als Ziel-Aktualisierungsfeld DTF.
  • Schritt 212: Bestimmen, ob der Wert der ersten Datensatz-Versionsnummer DN1, die einem spezifischen, in dem Ziel-Aktualisierungsfeld DTF enthaltenen ersten Datensatz D1 entspricht, gleich dem Wert der ersten Datensatz-Versionsnummer DN1 des spezifischen ersten Datensatzes D1 der ersten Datengruppe DG1 ist. Wenn Ja, weiter zu Schritt 218, sonst weiter zu Schritt 214.
  • Schritt 214: Aktualisieren des spezifischen ersten Datensatzes D1 der ersten Datengruppe DG1 unter Verwendung des dem spezifischen ersten Datensatz D1 entsprechenden zweiten Datensatzes D2 der zweiten Datengruppe DG2, und aktualisieren der ersten Datensatz-Versionsnummer DN1 des spezifischen ersten Datensatzes D1 mit der zweiten Datensatz-Versionsnummer DN2.
  • Schritt 216: Bestimmen, ob das vorliegende Ziel-Aktualisierungs-Feld DTF das letzte Aktualisierungs-Feld DTF der Daten-Aktualisierungstabelle DT ist. Wenn Ja, weiter zu Schritt 220; sonst weiter zu Schritt 218.
  • Schritt 218: Setzen eines nächsten Aktualisierungsfeldes DTF als Ziel-Aktualisierungsfeld DTF, und dann weiter zu Schritt 212.
  • Schritt 220: Ende.
  • Die von dem System 10 zum Aktualisieren der Software ausgeführte Operation des Software-Update wird wie folgt beschrieben. In der ersten Stufe liest der Microprozessor 11 das in der Speichereinheit 13 gespeicherte Aktualisierungsmodul 15 und führt dann das Aktualisierungsmodul 15 aus (Schritt 201). Als nächstes bestimmt das Aktualisierungsmodul 15, ob der Wert der zweiten Programm-Versionsnummer CN2 gleich der ersten Programm-Versionsnummer CN1 ist (Schritt 201). Wenn Ja, beendet das System 10 zur Aktualisierung der Software die Aktualisierung bzw. das Software-Update, denn das ermittelte Ergebnis bedeutet, dass das zweite Programm C2 mit dem ersten Programm C1 übereinstimmt. Wenn andernfalls der Wert der zweiten Programm-Versionsnummer CN2 vom Wert der ersten Programm-Versionsnummer CN1 abweicht, aktualisiert das Aktualisierungs-Modul 15 das erste Programm Cl unter Verwendung des zweiten Programms C2 und aktualisiert die erste Programm-Versionsnummer CN1 mit der zweiten Programm Versionsnummer CN2. Deshalb entsprechen nun das in der Speichereinheit 13 gespeicherte aktualisierte erste Programm C1 und die aktualisierte erste Programm-Versionsnummer CN1 jeweils dem zweiten Programm C2 bzw. der zweiten Programm-Versionsnummer CN2 (Schritt 202). Als nächstes aktualisiert das Aktualisierungsmodul 15 die Daten-Aktualisierungstabelle DT entsprechend den Datenversionen, die von dem aktualisierten ersten Programm C1 (dem zweiten Programm C2) verwendet werden (Schritt 203).
  • Zu beachten ist, dass dann, wenn in der ersten Stufe der Wert der zweiten Programm-Versionsnummer CN2 gleich dem der ersten Programm-Versionsnummer CN1 ist, das System 10 zur Aktualisierung der Software eine Aktualisierung des ersten Programms C1 nicht ausführen wird. Deshalb wird in der zweiten Stufe das Ergebnis in Schritt 208 Ja sein (detaillierte Beschreibung im folgenden Absatz), was bedeutet, dass der Wert der ersten Programm-Versionsnummer CN1 gleich dem Wert der ersten Datengruppen-Versionsnummer DGN1 ist, und das System 10 zur Aktualisierung der Software beendet die zweite Stufe der Software-Aktualisierung.
  • Sobald danach das Mobiltelefon 20 wieder hochgefahren wird, liest der Mikroprozessor 11 das in der Speichereinheit 13 abgelegte Aktualisierungsmodul 15 und führt das Aktualisierungsmodul 15 aus. Das Aktualisierungsmodul 15 fragt ab, ob der Wert der aktualisierten ersten Programm-Versionsnummer CN1 (die jetzt die zweite Programm-Versionsnummer CN2 ist) gleich dem Wert der ersten Datengruppen-Versionsnummer DGN1 ist (Schritt 208). Wenn Ja, beendet das System zur Aktualisierung der Software das Software-Update. Wenn jedoch das Ergebnis in Schritt 208 Nein ist, was bedeutet, dass das erste Programm C1 unter Verwendung des zweiten Programms C2 aktualisiert worden ist, dann müssen einer oder mehrere aus der Zahl von ersten Datensätzen D1 aus der ersten Datengruppe DG1 unter Verwendung der entsprechenden zweiten Datensätze D2 aktualisiert werden. Mit anderen Worten: die erste Datengruppe DG1 muss unter Verwendung der zweiten Datengruppe DG2 aktualisiert werden, um in dem zweiten Programm C2 verwendet zu werden. Entsprechend setzt das Aktualisierungsmodul 15 ein aktualisiertes Aktualisierungsfeld DTF aus der aktualisierten Daten-Aktualisierungstabelle DT als Ziel-Aktualisierungsfeld DTF (Schritt 210). Danach bestimmt das Aktualisierungsmodul 15, ob der Wert der ersten Datensatz-Versionsnummer DN1, der einem spezifischen ersten, in dem Ziel-Aktualisierungsfeld DTF abgelegten Datensatz D1 entspricht, gleich dem Wert der ersten Datensatz-Versionsnummer DN1 des spezifischen ersten Datensatzes D1 der ersten Datengruppe DG1 (Schritt 212) ist. Wenn das Ergebnis im Schritt 212 Nein ist, aktualisiert das Aktualisierungsmodul 15 den spezifischen ersten Datensatz D1 der ersten Datengruppe DG1 unter Verwendung des zweiten Datensatzes D2 der zweiten Datengruppe DG2, der dem spezifischen ersten Datensatz D1 entspricht, und aktualisiert die erste Datensatz-Versionsnummer DN1 des spezifischen ersten Datensatzes mit Hilfe der zweiten Datensatz-Versionsnummer DN2 (Schritt 214). Wenn das Ergebnis in Schritt 212 Ja ist, führt das System 10 zur Aktualisierung der Software den Schritt 218 aus, der im nächsten Absatz beschrieben ist.
  • Nachdem die Ausführung von Schritt 214 abgeschlossen ist, bestimmt das Aktualisierungsmodul 15, ob das vorliegende Ziel-Aktualisierungsfeld DTF das letzte Aktualisierungsfeld DTF der Daten-Aktualisierungstabelle DT ist (Schritt 216). Wenn das Ergebnis in Schritt 216 Ja ist, beendet das System 10 zum Aktualisieren der Software die Aktualisierung der Software. Wenn das Ergebnis im Schritt 216 Nein ist, führt das System 10 zum Aktualisieren der Software Schritt 218 aus, in welchem das Aktualisierungsmodul 15 ein nächstes Aktualisierungsfeld DTF als Ziel-Aktualisierungsfeld DTF setzt. Nachdem die Ausführung von Schritt 218 beendet ist, geht das System 10 zum Aktualisieren der Software zurück, um Schritt 212 auszuführen. Das System zum Aktualisieren der Software und das Verfahren zum Aktualisieren der Software nach der vorliegenden Erfindung werden in erster Linie in einer mobilen Einheit wie einem Mobiltelefon angewendet, um sicher zu stellen, dass das Aktualisieren einer Software eines Mobiltelefons keine Unbequemlichkeit für den Benutzer mit sich bringt. Jedoch sind das System zur Aktualisierung von Software und das Verfahren zur Aktualisierung von Software nach der vorliegenden Erfindung nicht auf die oben angesprochenen Anwendung bzw. Anwendungen beschränkt.
  • Im Gegensatz zum Stand der Technik stellen das System zum Aktualisieren der Software und das Verfahren zum Aktualisieren der Software nach der vorliegenden Erfindung sicher, dass Daten ohne Beziehung zu der Software-Aktualisierung nicht zerstört werden. Daher kann das zeitaufwändige Zurücksetzen und neu Eingeben von Daten vermieden und Zeit gespart werden. Folglich braucht zum Beispiel ein Mobiltelefon kein zusätzliches Einstellen, um die Parameter des Mobiltelefons zurückzusetzen, damit jede Schaltkreis-Komponente richtig arbeitet. Dazu braucht ein Benutzer nicht noch einmal die Einstellungen für das Mobiltelefon vorgeben und das Telefonbuch des Mobiltelefons eingeben.
  • Zusammenfassend offenbart die Erfindung ein Verfahren und ein System zum Aktualisieren von Software, die ein erstes Programm und eine erste Datengruppe umfasst. Das erste Programm hat eine entsprechende erste Programm-Versionsnummer, und die erste Datengruppe hat eine erste Datengruppen-Versionsnummer. Das Verfahren umfasst: Bereitstellen eines zweiten Programms, das eine entsprechende zweite Programm-Versionsnummer hat; Aktualisieren des ersten Programms unter Verwendung des zweiten Programms dann, wenn der Wert der ersten Programm-Versionsnummer sich von dem Wert der zweiten Programm-Versionsnummer unterscheidet; und Entscheiden entsprechend der aktualisierten ersten Programm-Versionsnummer des aktualisierten ersten Programms, ob die erste Datengruppe aktualisiert werden soll oder nicht.

Claims (13)

  1. Verfahren, angewendet in einem elektronischen Gerät (20) zum Aktualisieren einer Software (S) des elektronischen Gerätes (20), wobei die Software (S) ein erstes Programm (Cl) und eine erste Datengruppe (DG1) enthält, das erste Programm (Cl) eine zugehörige erste Programm-Versionsnummer (CN1) hat und die erste Datengruppe (DG1) eine zugehörige erste Datengruppen-Versionsnummer (DGN1) hat, gekennzeichnet durch Bereitstellen eines zweiten Programms (C2), das eine entsprechende Programm-Versionsnummer (CN2) hat, Aktualisieren des ersten Programms (Cl) unter Verwendung des zweiten Programms (C2) sobald der Wert der ersten Programm-Versionsnummer (CN1) von dem Wert der zweiten Programm-Versionsnummer (CN2) abweicht, Entscheiden an Hand der aktualisierten ersten Programm-Versionsnummer (CN2) des aktualisierten ersten Programms (C2), ob die erste Datengruppe (DG1) aktualisiert werden soll oder nicht.
  2. Verfahren nach Anspruch 1, weiter gekennzeichnet durch Bereitstellen einer zweiten Datengruppe (DG2) mit einer zugehörigen zweiten Datengruppen-Versionsnummer (DGN2), und Aktualisieren der ersten Datengruppe (DG1) unter Verwendung der zweiten Datengruppe (DG2) sobald der Wert der aktualisierten ersten Programm-Versionsnummer (CN2) von dem Wert der ersten Datengruppen-Versionsnummer (DGN1) abweicht.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die erste Datengruppe (DG1) eine Mehrzahl von ersten Datensätzen (D1) enthält und dass jeder erste Datensatz (D1) einen zugehörigen ersten Datensatz-Code (DC1) und eine zugehörige erste Datensatz-Versionsnummer (DN1) hat, die zweite Datengruppe (DG2) eine Mehrzahl von zweiten Datensätzen (D2) enthält und dass jeder zweite Datensatz (D2) einen zugehörigen zweiten Datensatz-Code (DC2) und eine zugehörige zweite Datensatz-Versionsnummer (DN2) hat, eine in dem elektronischen Gerät (20) gespeicherte Daten-Aktualisierungstabelle (DT) eine Mehrzahl von Aktualisierungsfeldern (DTF) umfasst und jedes Aktualisierungsfeld (DTF) einem ersten Datensatz (D1) entspricht, um einen ersten Datensatz-Code (DC1) und eine erste Datensatz-Versionsnummer (DN1) des ersten Datensatzes (D1) aufzunehmen, wobei jeder erste Datensatz (D1) einem zweiten Datensatz (D2) entspricht und das Verfahren im Schritt des Aktualisierens des ersten Programms (Cl) mit dem zweiten Programm (C2) und gekennzeichnet durch Aktualisieren von mindestens einem Aktualisierungsfeld (DTF) der Daten-Aktualisierungstabelle (DT), um einen Wert einer in dem Aktualisierungsfeld (DTF) abgelegten ersten Datensatz-Versionsnummer (DN1) zu verändern.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass in dem Schritt des Aktualisierens der ersten Datengruppe (DG1) mit Hilfe der zweiten Datengruppe (DG2) der Schritt entsprechend der aktualisierten Daten-Aktualisierungstabelle (DT) ausgeführt wird.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass in dem Schritt der Aktualisierung der ersten Datengruppe (DG1) unter Verwendung der zweiten Datengruppe (DG2) das Verfahren weiter gekennzeichnet ist durch Bestimmen, ob ein Wert einer in einem Aktualisierungsfeld (DTF) der Daten-Aktualisierungstabelle (DT) abgelegten ersten Datensatz-Versionsnummer (DN1) gleich dem Wert einer ersten Datensatz-Versionsnummer (DN1) eines zugehörigen ersten Datensatzes (D1) der ersten Datengruppe (DG1) ist, und wenn nicht, Aktualisieren des ersten Datensatzes (D1) der ersten Datengruppe (DG1) unter Verwendung des entsprechenden zweiten Datensatzes (D2) der zweiten Datengruppe (DG2).
  6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das elektronische Gerät (20) eine bewegliche Einheit ist.
  7. System zum Aktualisieren von Software, das in einem elektronischen Gerät (20) zum Aktualisieren einer Software (S) des elektronischen Gerätes (20) angewendet wird, wobei die Software (S) ein erstes Programm (Cl) und eine erste Datengruppe (DG1) umfasst, das erste Programm (C1) eine zugehörige erste Programm-Versionsnummer (CN1) hat und die erste Datengruppe (DG1) eine zugehörige erste Datengruppen-Versionsnummer (DGN1) hat, und wobei das System (10) zur Aktualisierung der Software (S) gekennzeichnet ist durch: ein zweites Programm (C2) mit einer zugehörigen zweiten Programm-Versionsnummer (CN2), und ein Aktualisierungsmodul (15), das zum Vergleichen der ersten Programm-Versionsnummer (CN1) und der zweiten Programm-Versionsnummer (CN2) verwendet wird und das das erste Programm (C1) unter Verwendung des zweiten Programms (C2) aktualisiert, wenn der Wert der ersten Programm-Versionsnummer (CN1) vom Wert der zweiten Programm-Versionsnummer (CN2) abweicht, und das entsprechend der aktualisierten ersten Programm-Versionsnummer (CN2) des aktualisierten ersten Programms (C2) entscheidet, ob die erste Datengruppe (DG1) aktualisiert wird oder nicht.
  8. System zum Aktualisieren von Software, nach Anspruch 7, gekennzeichnet durch eine zweite Datengruppe (DG2) mit einer zugehörigen zweiten Datengruppen-Versionsnummer (DGN2) und dadurch gekennzeichnet, dass das Aktualisierungsmodul (15) die erste Datengruppe (DG1) unter Verwendung der zweiten Datengruppe (DG2) aktualisiert, sofern der Wert der aktualisierten ersten Programm-Versionsnummer (CN2) sich von dem Wert der ersten Datengruppen-Versionsnummer (DGN1) unterscheidet.
  9. System zum Aktualisieren von Software, nach Anspruch 8, dadurch gekennzeichnet, dass das erste Programm (C1), die erste Programm-Versionsnummer (CN1), die erste Datengruppe (DG1) und die erste Datengruppen-Versionsnummer (DGN1) in einer ersten Speichereinheit (13) gespeichert sind, und das zweite Programm (C2), die zweite Programm-Versionsnummer (CN2), die zweite Datengruppe (DG2) und die zweite Datengruppen-Versionsnummer (DGN2) in einer zweiten Speichereinheit (14) gespeichert sind.
  10. System zum Aktualisieren von Software, nach Anspruch 8, dadurch gekennzeichnet, dass die erste Datengruppe (DG1) eine Mehrzahl von ersten Datensätzen (D1) umfasst und jeder erste Datensatz (D1) einen zugehörigen ersten Datensatzcode (DC1) und eine zugehörige erste Datensatz-Versionsnummer (DN1) hat, die zweite Datengruppe (DG2) eine Mehrzahl von zweiten Datensätzen (D2) umfasst und jeder zweite Datensatz (DG2) einen zugehörigen zweiten Datensatzcode (DC2) und eine zugehörige zweite Datensatz-Versionsnummer (DN2) hat, eine in dem elektronischen Gerät (20) gespeicherte Daten-Aktualisierungstabelle (DT) eine Mehrzahl von Aktualisierungsfeldern (DTF) umfasst, und jedes Aktualisierungsfeld (DTF) einem ersten Datensatz (D1) zum Aufnehmen eines ersten Datensatz-Codes (DC1) und einer ersten Datensatz-Versionsnummer (DN1) des ersten Datensatzes (D1) entspricht, wobei jeder erste Datensatz (D1) einem zweiten Datensatz (D2) entspricht, und wenn dann das Aktualisierungsmodul (15) das erste Programm (C1) unter Verwendung des zweiten Programms (C2) aktualisiert, dann aktualisiert das Aktualisierungsmodul (15) mindestens ein Aktualisierungsfeld (DTF) der Daten-Aktualisierungstabelle (DT), um einen Wert einer in dem Aktualisierungsfeld (DTF) aufgenommenen ersten Datensatz-Versionsnummer (DN1) zu verändern.
  11. System zum Aktualisieren von Software, nach Anspruch 10, dadurch gekennzeichnet, dass das Aktualisierungsmodul (15) entsprechend der aktualisierten Daten-Aktualisierungstabelle (DT) die erste Datengruppe (DG1) unter Verwendung der zweiten Datengruppe (DG2) aktualisiert.
  12. System zum Aktualisieren von Software, nach Anspruch 11, dadurch gekennzeichnet, dass dann, wenn das Aktualisierungsmodul (15) die erste Datengruppe (DG1) unter Verwendung der zweiten Datengruppe (DG2) aktualisiert, das Aktualisierungsmodul (15) bestimmt, ob ein Wert einer ersten Datensatz-Versionsnummer (DN2), der in einem Aktualisierungsfeld (DTF) der Daten-Aktualisierungstabelle (DT) aufgenommenist, gleich einem Wert einer ersten Datensatz-Versionsnummer (DN1) eines entsprechenden ersten Datensatzes (D1) der ersten Datengruppe (DG1) ist, und wenn nicht, dann aktualisiert das Aktualisierungsmodul (15) den ersten Datensatz (D1) der ersten Datengruppe (DG1) unter Verwendung des entsprechenden zweiten Datensatzes (D2) der zweiten Datengruppe (DG2).
  13. System zum Aktualisieren von Software, nach Anspruch 7, dadurch gekennzeichnet, dass das elektronische Gerät (20) eine bewegliche Einheit ist.
DE102004057768A 2004-08-30 2004-11-30 Verfahren und System zum Aktualisieren von Software eines Mobiltelefons Expired - Fee Related DE102004057768B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW93126060 2004-08-30
TW093126060A TWI260514B (en) 2004-08-30 2004-08-30 Method and system for updating software of a cellular phone

Publications (2)

Publication Number Publication Date
DE102004057768A1 true DE102004057768A1 (de) 2006-03-16
DE102004057768B4 DE102004057768B4 (de) 2011-06-01

Family

ID=35853655

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004057768A Expired - Fee Related DE102004057768B4 (de) 2004-08-30 2004-11-30 Verfahren und System zum Aktualisieren von Software eines Mobiltelefons

Country Status (3)

Country Link
US (1) US7330718B2 (de)
DE (1) DE102004057768B4 (de)
TW (1) TWI260514B (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813514B2 (en) 2002-06-12 2017-11-07 Good Technology Holdings Limited Information repository system including a wireless device and related method
US7516451B2 (en) * 2004-08-31 2009-04-07 Innopath Software, Inc. Maintaining mobile device electronic files including using difference files when upgrading
US20060135190A1 (en) * 2004-12-20 2006-06-22 Drouet Francois X Dynamic remote storage system for storing software objects from pervasive devices
US7620392B1 (en) 2006-02-27 2009-11-17 Good Technology, Inc. Method and system for distributing and updating software in wireless devices
US7702322B1 (en) 2006-02-27 2010-04-20 Good Technology, Llc Method and system for distributing and updating software in wireless devices
GB2450160A (en) * 2007-06-15 2008-12-17 Symbian Software Ltd Collaborative data sharing
DE102007037959A1 (de) * 2007-08-11 2009-04-09 Deutsche Telekom Ag Verfahren und Vorrichtung zum automatischen Adaptieren von Netzen
US8689206B2 (en) * 2009-03-05 2014-04-01 International Business Machines Corporation Isolating operating system in-memory modules using error injection
US9823917B2 (en) * 2011-10-20 2017-11-21 Facebook, Inc. Update application user interfaces on client devices
US9262149B2 (en) * 2012-04-12 2016-02-16 International Business Machines Corporation Managing incrementally applied system updates
US9203624B2 (en) 2012-06-04 2015-12-01 Apple Inc. Authentication and notification heuristics

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954941A (en) * 1988-08-31 1990-09-04 Bell Communications Research, Inc. Method and apparatus for program updating
DE19543843C2 (de) 1995-11-24 2001-02-08 Acer Peripherals Inc Verfahren zur Aktualisierung der Software in einem mikrocomputergestützten Telefon
US6643506B1 (en) * 1996-08-07 2003-11-04 Telxon Corporation Wireless software upgrades with version control
US6496978B1 (en) 1996-11-29 2002-12-17 Hitachi, Ltd. Microcomputer control system in which programs can be modified from outside of the system and newer versions of the modified programs are determined and executed
US5974429A (en) 1997-09-03 1999-10-26 Northern Telecom Limited Method and apparatus for updating distributed databases in a telecommunications network
JPH11259284A (ja) * 1998-03-12 1999-09-24 Fujitsu Ltd オンラインプログラム更新システム及びプログラム更新用プログラムを記録したコンピュータ読み取り可能な記録媒体
US6470496B1 (en) * 1998-08-03 2002-10-22 Matsushita Electric Industrial Co., Ltd. Control program downloading method for replacing control program in digital broadcast receiving apparatus with new control program sent from digital broadcast transmitting apparatus
JP3669619B2 (ja) * 1999-09-06 2005-07-13 富士通株式会社 無線端末装置のソフトウェア更新方法及びその装置
EP1369778A3 (de) * 2002-01-09 2004-01-02 Matsushita Electric Industrial Co., Ltd. Programmverteilungssystem

Also Published As

Publication number Publication date
DE102004057768B4 (de) 2011-06-01
TW200608247A (en) 2006-03-01
US7330718B2 (en) 2008-02-12
TWI260514B (en) 2006-08-21
US20060046703A1 (en) 2006-03-02

Similar Documents

Publication Publication Date Title
DE60221708T2 (de) Sicheres booten für chip-geräten
DE102004057768B4 (de) Verfahren und System zum Aktualisieren von Software eines Mobiltelefons
DE4235193A1 (de) Netzwerksystem und zugehoeriges softwareverwaltungsverfahren
DE102005013285A1 (de) Verfahren zum Konfigurieren eines Steuergeräts und Steuergerät
DE10315490A1 (de) Verfahren und System zum Wechsel zwischen zwei oder mehreren Firmwareabbildungen auf einer Hostvorrichtung
EP1639603A2 (de) Verfahren zur durchführung eines software-updates eines elektronischen steuergerätes durch eine flash-programmierung über eine serielle schnittstelle und ein entsprechender zustandsautomat
DE102004062434A1 (de) System und Verfahren zum automatischen Aktualisieren von Funktionalitäten in einem verteilten Netzwerk
DE102008040761A1 (de) Verfahren zum Laden und Speichern ausführbarer Codeerweiterungen in Messinstrumenten
EP1430369A1 (de) Dynamischer zugriff auf automatisierungsressourcen
DE19803697C2 (de) Verfahren zum Aufrüsten eines Softwaresystems und Vorrichtung zur Durchführung des Verfahrens
DE112011105259T5 (de) Parametereinstellvorrichtung und Parametereinstellsystem
DE112020001385T5 (de) Elektronische Steuerungsvorrichtung und Verfahren zum Einstellen von Steuerungsdaten
EP1237078A1 (de) Durchführung eines zeitoptimierten Austausches einer Software-Applikation
EP1241570A2 (de) Automatisierte Versions-Analyse von zu einer Softwareapplikation gehörenden Softwarekomponenten
DE10206000A1 (de) Installations-Server
DE3820728A1 (de) Verfahren zum pruefen eines festwertspeichers und anordnung zur durchfuehrung des verfahrens
EP3452946B1 (de) Verfahren zur erstmaligen inbetriebnahme eines nicht vollständig personalisierten sicheren elements
WO2020099023A2 (de) Steuergerät für eine fahrzeugkomponente, kit umfassend ein steuergerät und eine testereinrichtung, fahrzeug, verfahren zum aktualisieren eines steuergeräts und computerlesbares speichermedium
WO2020064443A1 (de) Firmwareupdate durch zentrales steuermodul einer ladestation
DE602004013269T2 (de) Verfahren und Gerät zur Aktualisierung nichtflüchtiger Speicherinhalte auf einem schnurlosen Gerät durch Überprüfen und Vergleich eines spezifischen, in besagtem Speicher abgelegten Identifikations-Elements mit einer Software-Identifikation
WO2004072744A2 (de) Verfahren zur ermittlung der verarbeitungsreihenfolge von funktionsbausteinen eines automatisierungssystems und automatisierungssystem
DE102007006184B3 (de) Verfahren zum rechnergestützten Betrieb eines technischen Netzwerks
WO2009103728A1 (de) Verfahren und vorrichtung zum speichern von informationsdaten
WO2020001809A1 (de) Effiziente firmware-updates
WO2023202801A1 (de) Verfahren und system zur personalisierung eines sicheren elements

Legal Events

Date Code Title Description
OR8 Request for search as to paragraph 43 lit. 1 sentence 1 patent law
8105 Search report available
8110 Request for examination paragraph 44
R020 Patent grant now final

Effective date: 20110902

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee