DE102005035736A1 - Sichere Korrektursoftwareinstallation für WWAN-Systeme - Google Patents

Sichere Korrektursoftwareinstallation für WWAN-Systeme Download PDF

Info

Publication number
DE102005035736A1
DE102005035736A1 DE102005035736A DE102005035736A DE102005035736A1 DE 102005035736 A1 DE102005035736 A1 DE 102005035736A1 DE 102005035736 A DE102005035736 A DE 102005035736A DE 102005035736 A DE102005035736 A DE 102005035736A DE 102005035736 A1 DE102005035736 A1 DE 102005035736A1
Authority
DE
Germany
Prior art keywords
processor
patches
memory
processing unit
patch
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
DE102005035736A
Other languages
English (en)
Other versions
DE102005035736B4 (de
Inventor
Axel Wachtler
Richard Powell
Michael Grell
Ralf Findeisen
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.)
GlobalFoundries Inc
Original Assignee
Advanced Micro Devices 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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Priority to DE102005035736.9A priority Critical patent/DE102005035736B4/de
Priority to US11/316,499 priority patent/US7492747B2/en
Publication of DE102005035736A1 publication Critical patent/DE102005035736A1/de
Application granted granted Critical
Publication of DE102005035736B4 publication Critical patent/DE102005035736B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/128Anti-malware arrangements, e.g. protection against SMS fraud or mobile malware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zur Korrektursoftwareaktualisierung von WWAN- (drahtloses Großraumnetzwerk) Kommunikationseinrichtungen und entsprechender WWAN-Kommunikationseinrichtungen, integrierte Schaltungschips und computerlesbare Medien. Die WWAN-Kommunikationseinrichtung umfasst einen ersten Prozessor, einen zweiten Prozessor und einen Speicher. Der erste Prozessor ist ausgebildet, Korrektursoftwareroutinen zu verarbeiten, die in der WWAN-Kommunikationseinrichtung laufende Software aktualisiert. Der zweite Prozessor ist ausgebildet, einen ersten Satz der Korrektursoftwareroutinen zu dem ersten Prozessor zuzuleiten. Der Speicher speichert einen zweiten Satz der von dem ersten Prozessor verarbeitenden Korrektursoftwareroutinen. Der zweite Prozessor ist ferner ausgebildet, ein Korrektursoftware-Ende-Signal zu dem ersten Prozessor zu senden, das diesen veranlasst, die Verarbeitung von dem zweiten Prozessor bereitgestellten Korrektursoftwareroutinen zu stoppen. Der erste Prozessor ist ferner ausgebildet, die in dem Speicher abgelegten Korrektursoftwareroutinen unabhängig von den Korrektursoftware-Ende-Signalen zu verarbeiten.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft WWAN- (drahtlose Weitbereichs- oder Großraumnetzwerke) Kommunikationseinrichtungen und entsprechende Verfahren und integrierte Schaltungschips und betrifft insbesondere die Korrektursoftwareinstallation in derartigen WWAN-Kommunikationseinrichtungen.
  • Drahtlose Netzwerke sind flexible Datenkommunikationssysteme mit Verwendung drahtloser Medien, etwa der Funktechnik oder der Infrarottechnik, um Daten drahtlos zu übertragen und zu empfangen, wodurch der Bedarf für verdrahtete Verbindungen minimiert wird. Somit verknüpfen drahtlose Netzwerke Datenverbund mit Anwendermobilität.
  • Drahtlose Systeme können in einer Vielzahl von Arten konfiguriert sein, um damit die Erfordernisse der speziellen Anwendungen und Installationen zu erfüllen. Konfigurationen können einfach geändert werden und reichen von bilateralen Netzwerken, die für eine kleine Anzahl von Anwendern geeignet ist, bis zu großen Infrastrukturnetzwerken, die eine Kommunikation über einen weiten Bereich ermöglichen.
  • Drahtlose Weitbereichsnetzwerke (WWAN) benutzen Funk, Satelliten- oder Mobiltelefonsysteme, um auf Daten und Informationen von einer beliebigen Stelle aus innerhalb des Bereichs einer Zellenstation, die mit einem Daten aktivierten Netzwerk verbunden ist, zuzugreifen. Unter Anwendung des Mobiltelefons als Modem kann eine mobile Rechnereinheit, etwa ein Notebook-Computer, ein PDA (persönlicher digitaler Assistent) oder eine Einrichtung mit einer eigenständigen Funkkarte Informationen aus dem Netzwerk, beispielsweise ein Firmennetzwerk oder das Internet, empfangen und in dieses senden. Somit besitzen WWAN-Netzwerke das Potential, den Bereich von Anwendungen oder von Daten auf nahezu die gesamte Erdoberfläche auszudehnen. Dieser erweiterte Bereich vergrößert jedoch auch die Verletzbarkeit von WWAN-Netzwerken.
  • Da WWAN-Kommunikationseinrichtungen selbst komplexe Systeme sind und einem sich rasch entwickelnden Markt ausgesetzt sind, werden diese für gewöhnlich mit Softwareaktualisierungen versehen, wenn sie bereits im Einsatz sind. Diese Aktualisierungen, die auch als Korrektursoftwareroutinen bzw. Patch bezeichnet werden, können sowohl zusätzliche Merkmale als auch Sicherheitskorrekturen zum Schließen von Sicherheitslöchern beinhalten. Auf diese Weise kann eine betrügerische Verwendung von WWAN-Kommunikationseinrichtungen oder die Ausbreitung von Computerwürmern über WWAN-Systeme verhindert werden.
  • Jedoch kann ein Angreifer dennoch derartige der Sicherheit dienende Funktionen entfernen. Ein Angreifer könnte selbst das Laden von Korrektursoftwareroutinen in einem WWAN-Kommunikationsgerät vollständig blockieren. Zum Beispiel könnte der Angreifer die Signale beim normalen Hochlaufen des WWAN-Kommunikationsgerätes aufzeichnen und detektieren, wie die „Korrekturseitige"-Signalgebung verläuft. Dann könnte dieses Signal zu der WWAN-Kommunikationseinrichtung zu Beginn eines späteren Einschaltens gesendet werden, wodurch das Aktualisieren der Korrektursoftware verhindert würde. Ferner könnte eine bösartige Software auch das Einladen von Korrektursoftwareroutinen verhindern.
  • Des weiteren unterliegen viele konventionelle WWAN-Kommunikationseinrichtung dem Problem, dass diese zunehmend unsicher werden, wenn sie auf dem Markt verfügbar sind. Derartige Systeme unterliegen einem erhöhten Risiko einer bösartigen Modifizierung. Ein Virus oder ein Wurm könnte effiziente Angriffe bewirken. Beispielsweise könnte ein Angriff zur Verwehrung von Dienstleistungen gegenüber einem WWAN-Netzwerk ausgeführt werden, wobei lediglich ein infiziertes aktives Gerät pro Funkzelle ausreicht, um das gesamte System zu blockieren. Ein Virus könnte ferner auch eine infizierte WWAN-Kommunikationseinrichtung zerstören.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Daher werden verbesserte WWAN-Kommunikationseinrichtungen und entsprechende Verfahren und integrierte Schaltungschips bereitgestellt, die die Nachteile konventioneller Lö-sungen überwinden. In speziellen Ausführungsformen kann eine erhöhte Datensicherheit in WWAN-Kommunikationsnetzwerken bereitgestellt werden. Andere Ausführungsformen kön nen die Wahrscheinlichkeit einer Schädigung oder Zerstörung von WWAN-Kommunikationseinrichtungen durch einen Virus verringern. In weiteren Ausführungsformen kann die Zuverlässigkeit von WWAN-Kommunikationseinrichtungen verbessert werden.
  • Gemäß einer Ausführungsform wird eine WWAN-Kommunikationseinrichtung mit einem ersten Prozessor, einem zweiten Prozessor und einem Speicher bereitgestellt. Der erste Prozessor ist ausgebildet, Korrektursoftware zu verarbeiten, die in der WWAN-Kommunikationseinrichtung laufende Software aktualisiert. Der zweite Prozessor ist ausgebildet, einen ersten Satz an Korrektursoftwareroutinen zu dem ersten Prozessor zuzuführen. Der Speicher speichert einen zweiten Satz der Korrektursoftwareroutinen, die von dem ersten Prozessor zu verarbeiten sind. Der zweite Prozessor ist ferner ausgebildet, ein Korrektursoftware-Ende-Signal zu dem ersten Prozessor zu senden, wobei das Korrektursoftware-Ende-Signal den ersten Prozessor veranlasst, die Verarbeitung von Korrektursoftwareroutinen zu stoppen, die von dem zweiten Prozessor bereitgestellt werden. Der erste Prozessor ist ferner ausgebildet, die in dem Speicher gespeicherten Korrektursoftwareroutinen unabhängig von dem Korrektursoftware-Ende-Signal zu verarbeiten.
  • Eine weitere Ausführungsform betrifft einen integrierten Schaltungschip zum Ausführen einer WWAN-Kommunikation. Der integrierte Schaltungschip umfasst eine erste Prozessoreinheit, eine zweite Prozessoreinheit und eine Speichereinheit. Die erste Prozessoreinheit ist ausgebildet, Korrektursoftwareroutinen zu verarbeiten, die in dem integrierten Schaltungschip laufende Software aktualisiert. Die zweite Prozessoreinheit ist ausgebildet, einen ersten Satz der Korrektursoftwareroutinen zu der zweiten Prozessoreinheit zu senden. Die Speichereinheit speichert einen zweiten Satz der von der ersten Prozessoreinheit zu verarbeitenden Korrektursoftwareroutinen. Die zweite Prozessoreinheit ist ferner ausgebildet, ein Korrektursoftware-Ende-Signal zu der ersten Prozessoreinheit zu senden, wobei das Korrektursoftware-Ende-Signal die erste Prozessoreinheit veranlasst, das Verarbeiten von Korrektursoftwareroutinen zu stoppen, die von der zweiten Prozessoreinheit gesendet werden. Die erste Prozessoreinheit ist ferner ausgebildet, die in der Speichereinheit gespeicherten Korrektursoftwareroutinen unabhängig von dem Korrektursoftware-Ende-Signal zu verarbeiten.
  • In einer weiteren Ausführungsform umfasst ein Verfahren zum Aktualisieren von Korrektursoftware einer WWAN-Kommunikationseinrichtung das Betreiben eines ersten Prozessors, um Korrektursoftwareroutinen zu verarbeiten, die Software der WWAN-Kommunikationseinrichtung aktualisiert. Das Verfahren umfasst ferner Betreiben eines zweiten Prozessors, um einen ersten Satz der Korrektursoftwareroutinen zu dem ersten Prozessor zuzuführen und Speichern eines zweiten Satzes der Korrektursoftwareroutinen in einen Speicher der WWAN-Kommunikationseinrichtung. Der Schritt des Betreibens des zweiten Prozessors umfasst das Senden eines Korrektursoftware-Ende-Signals zu dem ersten Prozessor, wobei das Korrektursoftware-Ende-Signal den ersten Prozessor veranlasst, das Verarbeiten der von dem zweiten Prozessor bereitgestellten Korrektursoftwareroutinen zu stoppen. Der Schritt des Betreibens des ersten Prozessors umfasst das Verarbeiten der in dem Speicher gespeicherten Korrektursoftwareroutinen unabhängig von dem Korrektursoftware-Ende-Signal.
  • Eine noch weitere Ausführungsform umfasst ein computerlesbares Medium, das computerausführbare Instruktionen enthält, die, wenn sie von einer WWAN-Kommunikationseinrichtung ausgeführt werden, die WWAN-Kommunikationseinrichtung veranlassen, ein Verfahren zum Aktualisieren der Software der WWAN-Kommunikationseinrichtung auszuführen. Das Verfahren umfasst das Betreiben eines ersten Prozessors, um Korrektursoftwareroutinen zu verarbeiten, die die Software der WWAN-Kommunikationseinrichtung aktualisieren. Das Verfahren umfasst ferner das Betreiben eines zweiten Prozessors, um einen ersten Satz der Korrektursoftwareroutinen den ersten Prozessor zuzuführen und Speichern eines zweiten Satzes der Korrektursoftwareroutinen in einem Speicher der WWAN-Kommunikationseinrichtung. Der Schritt des Betreibens des zweiten Prozessors umfasst das Senden eines Korrektursoftware-Ende-Signals zu dem ersten Prozessor, wobei das Korrektursoftware-Ende-Signal den ersten Prozessor veranlasst, das Verarbeiten von dem zweiten Prozessor bereitgestellten Korrektursoftwareroutinen zu stoppen. Der Schritt des Betreibens des ersten Prozessors umfasst das Verarbeiten der in dem Speicher gespeicherten Korrektursoftwareroutinen unabhängig von dem Korrektursoftware-Ende-Signal.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die angefügten Zeichnungen sind hierin mit integriert und bilden einen Teil der Beschreibung, um die Prinzipien der Erfindung zu erläutern. Die Zeichnungen sollen die Erfindung nicht auf die dargestellten und beschriebenen Beispiele, wie die Erfindung praktiziert und angewendet werden kann, einschränken. Weitere Merkmale und Vorteile gehen aus der folgenden detaillieren Beschreibung der Erfindung hervor, wie sie auch in den begleitenden Zeichnungen dargestellt ist, wobei:
  • 1 eine Blockansicht ist, die Komponenten einer WWAN-Kommunikationseinrichtung gemäß einer Ausführungsform zeigt;
  • 2 ein Flussdiagramm ist, das die Schritte des Initialisierungsprozesses der WWAN-Kommunikationseinrichtung gemäß einer Ausführungsform zeigt;
  • 3 ein Flussdiagramm ist, das die Schritte eines Anlaufprozesses in einer WWAN-Kommunikationseinrichtung gemäß einer Ausführungsform zeigt;
  • 4 ein Flussdiagramm ist, das die AP-Systemaufgabe aus 3 detaillierter zeigt; und
  • 5a und 5b Flussdiagramme sind, die die EP-Systemaufgabe aus 3 detaillierter zeigen.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Die anschaulichen Ausführungsformen der vorliegenden Erfindung werden nunmehr mit Bezug zu den Zeichnungen beschrieben, wobei gleiche Elemente und Strukturen durch gleiche Bezugszeichen belegt sind.
  • Es sei nun auf die Figuren verwiesen und insbesondere auf 1, in der eine vereinfachte Blockansicht dargestellt ist, die Komponenten einer WWAN-Kommunikationseinrichtung gemäß einer Ausführungsform zeigt. Gemäß der Ausführungsform enthält die WWAN-Kommunikationseinrichtung 110 einen Anwendungsprozessor (AP) 130 und einen eingebetteten Prozessor (EP) 120.
  • Der Anwendungsprozessor 130 kann ein geläufiges Betriebssystem (OS), etwa Linux oder WinCE, abarbeiten. Auf Grund der OS-Merkmale kann der Anwendungsprozessor 130 als nicht vertrauenswürdig erachtet werden. Angreifer bzw. Hacker können prinzipiell das gesamte AP-System manipulieren.
  • Der eingebettete Prozessor 120 wird im Folgenden alternativ als der Kommunikationsprozessor bezeichnet. Gemäß der Ausführungsform ist dieser eine geschlossene Einrichtung und erfordert das Abarbeiten einer vertrauenswürdigen Software. Ansonsten werden Angriffe, etwa Angriffe zur Verweigerung von Dienstleistungen in das Netzwerk, mit der die WWAN-Kommunikationseinrichtung 110 verbunden ist (z.B. ein Mobilfunknetzwerk), möglich. Ein Virus könnte die WWAN-Kommunikationseinrichtung 110 zerstören („verbrennen" bzw. „burn" des Funkgeräts). Sowohl der Anwendungsprozessor 130 als auch der Kommunikationsprozessor 120 können Software abarbeiten, die speziell für die WWAN-Kommunikationseinrichtung 110 gestaltet ist. Gemäß der Ausführungsform kann die Software in dem Anwendungsprozessor 130 (der Treiber) durch einen Hacker modifiziert werden und ist daher nicht vertrauenswürdig. Jedoch kann die Software in dem Kommunikationsprozessor 120 (Firmware) eine bösartige Verwendung der WWAN-Kommunikationseinrichtung 110 verhindern. Gemäß der Ausführungsform kann ein Angreifer diese Funktion nicht entfernen.
  • Während der Verfügbarkeit auf dem Markt kann die WWAN-Kommunikationseinrichtung 110 mit Firmware-Aktualisierungen (Korrektursoftwareroutinen) versorgt werden, die zusätzliche Leistungsmerkmale sowie Sicherheitskorrekturen enthalten können. Die Korrektursoftwareroutinen können selbst verschlüsselt und signiert sein, so dass es für einen Angreifer unter Umständen nicht möglich ist, eigene Korrektursoftwareroutinen zu schaffen oder bestehende zu ändern. Die vorliegende Ausführungsform verhindert, dass das Anwenden von Sicherheitskorrekturen, die in einer Korrektursoftware enthalten sind, verhindert wird. Somit stellt die vorliegende Ausführungsform ein Mittel bereit, um das Einladen mindestens einer korrekten Korrektursoftwareroutine zu ermöglichen. Ansonsten stellt die WWAN-Kommunikationseinrichtung 110 den Betrieb ein.
  • Wie in 1 gezeigt ist, umfasst die WWAN-Kommunikationseinrichtung 110 einen Speicher 140, der mit dem Kommunikationsprozessor 120 verbunden ist. Tatsächlich kann das System zwei unterschiedliche Speicherarten enthalten: einen nicht flüchtigen RAM, NVRAM, der Korrektursoftwareroutinen enthalten könnte, die unmittelbar nach dem Zurücksetzen eingeladen werden, und einen „normalen" RAM, der einen Stapel, einen Zeigerstapel und den Speicherbereich enthalten kann, der angewendete Korrektursoftwareroutinen (Korrektursoftwarespeicherbereich) enthält.
  • Gemäß der vorliegenden Ausführungsform ist der nicht flüchtige Speicher 140 eine NVRAM- (nicht flüchtiger Speicher mit wahlfreiem Zugriff) Speichereinrichtung. In anderen Ausführungsformen können jedoch andere Arten von nicht flüchtigen Speichern, beispielsweise nicht flüchtige Flash-Speicher verwendet werden.
  • Der NVRAM-Speicher 140 enthält im Wesentlichen Konfigurationsdaten, die während der Herstellung gewonnen werden. Der Speicher kann ferner Korrektursoftwareroutinen für bekannte Probleme und Verbesserungen enthalten. Ein Netzwerkoperator kann die WWAN-Kommunikationseinrichtung 110 für diese Korrektursoftwareroutinen bereitgestellt haben, oder die Korrektursoftwareroutinen können über einen anderen Verteilungskanal bereitgestellt worden sein.
  • Zu beachten ist, dass 1 lediglich eine vereinfachte Ansicht ist, die einen Teil der WWAN-Kommunikationseinrichtungskomponenten zeigt. Selbstverständlich kann die Einrichtung 110 weitere Elemente, etwa eine CPU (zentrale Recheneinheit), interne Peripherieeinrichtungen, etc. aufweisen. Beim Einschalten kann die auf dem eingebetteten Prozessor 120 laufende Firmware eine Zustandsmaschine durchlaufen, die zunächst alle Informationen von dem nicht flüchtigen Speicher 140 einlädt. Gemäß der vorliegenden Ausführungsform kann ein Angreifer dies nicht verhindern. Sodann führt der eingebettete Prozessor 120 einen „Handschlag"-Algorithmus mit dem Anwendungsprozessor 130 aus. Sofern der Anwendungsprozessor 130 nicht eine signierte Aktualisierung mit der korrigierten Signatur bereitstellt, startet die WWAN-Kommunikationseinrichtung 110 nicht. Daher ist es nicht möglich, das Einladen von Korrektursoftwareroutinen zu verhindern.
  • In Bezug zu den 2 bis 5 wird nunmehr die Initialisierung des eingebetteten Prozessors 120 gemäß der vorliegenden Ausführungsform detaillierter beschrieben. Insbesondere kann der EP-Initialisierungsprozess zwei Hauptphasen beinhalten: Initialisieren und Starten bzw. Anlaufen. Gemäß der vorliegenden Ausführungsform besteht die EP-Initialisierungsphase aus einer Assembler- bzw. Maschinensprachcodierung, die auf einem Rücksetzvektor be ruht. Diese Codierung kann die grundsätzliche Initialisierung des CPU-Kerns, der Hardwareperipherieeinrichtungen und des Speichers des EP's ausführen, um eine Umgebung bereitzustellen, auf der die wesentlichen funktionellen Telekommunikationscodierungen operieren können. Die EP-Anlaufphase kann einen Satz an Aktionen beschreiben, die ausgeführt werden, um Korrektursoftwareroutinen aus dem NVRAM-Speicher 140 und dem Anwendungsprozessor 130 anzuwenden, die Sicherheit einzustellen und Telekommunikationsmodule der WWAN-Kommunikationseinrichtung 110 zu initialisieren.
  • In 2 sind die Schritte des EP-Initialisierungsprozesses gemäß einer Ausführungsform gezeigt. Der Initialisierungsprozess kann durch ein Zurücksetzen oder einen Neustart hervorgerufen werden. Folglich kann eine Warteschleife im Schritt 210 ausgeführt werden, bis eine derartige Initialisierungsbedingung erfüllt ist. Zu Hardware-Rücksetzereignissen, die den Initialisierungsprozess in Gang setzen, können z. B. gehören: das Erkennen eines Rücksetzens auf Platinenebene, Ablauf eines „Wachhund"-Zeitgebers oder Setzen einer Rücksetzleitung, die direkt von dem Anwendungsprozessor 130 gesteuert wird. Ferner kann eine Initialisierungsbedingung im Falle eines Softwareneustartereignisses bestehen. Dies kann beinhalten, dass der Anwendungsprozessor 130 oder der NVRAM-Speicher 140 einen Neustart zum Anwenden von Korrektursoftwareroutinen erzwingt, ein „Wachhund"-Zeitgeber einen Neustart bei einem programmierbaren Zeitüberlauf ausführt (bevor eine Hardwarerücksetzung angewendet wird) oder ein Neustart, der beispielsweise durch eine Handhabungseinrichtung für Softwarefehler EJTAG (verbesserte gemeinsame Testaktionsgruppe) hervorgerufen wird. Der Neustartzustand kann in einer Datenstruktur in dem Korrektursoftwarespeicherbereich aufbewahrt sein. Während der Speicherinitialisierung 240 bei der EP-Initialisierung kann auf diesen durch einen Aufruf der Korrektursoftware-API (Anwendungsprogrammierschnittstelle) zugegriffen werden.
  • Die obige anschauliche Aufzählung von Initialisierungsbedingungen soll nicht als einschränkend für die Erfindung betrachtet werden. In einigen Ausführungsform können weitere Ereignisse einen Beginn des Initialisierungsprozesses hervorrufen, während in anderen Ausführungsformen einige der obigen Ereignisse unter Umständen keine EP-Initialisierung hervorrufen.
  • Sobald eine Initialisierungsbedingung erfüllt ist, beginnt der EP-Initialisierungsprozess mit dem Konfigurieren des CPU-Kerns des Kommunikationsprozesses 120 in den korrekten Zustand gemäß Schritt 220. Während der CPU-Initialisierung 220 sind Interrupts deaktiviert. Gemäß der vorliegenden Ausführungsform werden diese während der RTOS- (Echtzeitbetriebssystem) Initialisierung (siehe 3) aktiviert. Nach der Kernkonfiguration werden die internen Peripherieeinrichtungen des eingebetteten Prozessors 120 im Schritt 230 in einem Zustand mit geringer Leistungsaufnahme initialisiert.
  • Anschließend wird im Schritt 240 der RAM-Speicher 140 initialisiert. Dies kann beinhalten, dass im Schritt 250 bestimmt wird, ob die im Schritt 210 erkannte Initialisierungsbedingung ein Neustart war. Falls der Initialisierungsprozess durch ein Neustartereignis hervorgerufen wurde, wird ein gewisser Bereich des RAM-Speichers 140 nicht initialisiert. Dieser Teil des Speichers kann der Korrektursoftwarespeicherbereich sein. Die Neustart-Zustandsinformation sowie der Beginn und das Ende des Korrektursoftwarespeichers können von einem AP-Aufruf in einer Korrektursoftware-API bereitgestellt werden. Neben der Korrektursoftwarespeicherhandhabung wird keine weitere Unterscheidung in dem Initialisierungsprozess der vorliegenden Ausführungsform zwischen einem Rücksetzen oder einem Neustart getroffen. In anderen Ausführungsformen kann der Speicherinitialisierungsschritt 240 einen optionalen Speichertestlauf umfassen.
  • Im Schritt 270 kann das initialisierte Datensegment von dem ROM (Nur-Lesespeicher) in den geeigneten RAM-Bereich kopiert werden. Der nicht initialisierte Datenbereich in dem RAM-Speicher 140 kann im Schritt 280 zurückgesetzt werden, d. h. auf Null gesetzt werden. Adressen für diese Bereiche können aus Konstanten entnommen werden, die während der Verbindungszeit definiert werden. Wie zuvor erwähnt ist, wird, wenn in den Schritten 210 und 250 ein Neustart erkannt wird, der Bereich des RAM-Speichers 140, der für den Korrektursoftwaremechanismus reserviert ist, bei der Verarbeitung in den Schritten 270 und 280 der vorliegenden Ausführungsform ausgeschlossen.
  • Sobald der Initialisierungsprozess abgeschlossen ist, geht die WWAN-Kommunikationseinrichtung 110 zur Anlaufphasenverarbeitung weiter, die nunmehr mit Bezug zu den 3 bis 5 erläutert wird. Gemäß der vorliegenden Ausführungsform bezeichnet der Begriff „Anlauf" die Gesamtheit der Softwareaktivitäten, die notwendig sind, um eine Betriebsumgebung für die (beispielsweise EGPRS: verbesserter allgemeiner Paketfunkservice) Telekommunikationsprotokollstapelsoftware bereitzustellen, die die Hauptfunktion des Kommunikationsprozessors 120 repräsentiert.
  • Wie in 3 gezeigt ist, beginnt die Anlaufphasenverarbeitung im Schritt 310, indem eine RTOS-Kernel-Initialisierungsfunktion aufgerufen wird. Das RTOS kann dann initialisiert werden und es werden alle notwendigen Aufgaben gestartet.
  • Anschließend wird eine Reihe von Prozessen 330 bis 380 parallel ausgeführt. Die Prozesse, die die EP-Anlaufphase gemäß der vorliegenden Ausführungsform ausmachen, werden im Wesentlichen durch GKI- (generische Kernel-Schnittstellen) Signale gesteuert. Diese Signale sind bewusst asynchron und besitzen keine implizite Reihenfolge. Die Reihenfolge von Signalen, die zum Abschluss einer erfolgreichen EP-Anlaufphase erforderlich sind, kann beispielsweise der Verantwortung des Anwendungsprozesses 130 unterliegen, oder kann die Reihenfolge sein, in der diese in den NVRAM-Speicher 140 eingespeist werden.
  • Im Schritt 330 werden EP-Systemaufgaben ausgeführt. Gemäß der vorliegenden Ausführungsform wird die EP-Systemaufgabe 330 implementiert, um die Anlaufphase zu koordinieren. Die EP-Systemaufgabe 330 kann für das Verarbeiten der Korrektursoftwaresignale, die in dem NVRAM-Speicher 140 enthalten sind, sowie die, die von dem Anwendungsprozessor 130 empfangen werden, zu verarbeiten. Alle notwendigen Anlaufphasen-Handschlagprozeduren zusammen mit der benötigten Zustandsmaschine können mittels der EP-Systemaufgabe 330 erreicht werden.
  • Neustartanforderungen, die sich aus den Korrektursoftware, die einen Neustart erfordern, oder aus anderen Ereignissen, beispielsweise einer frühen Warnung eines „Wachhund"-Zeitgebers, etc resultieren, werden hier prozessiert. Die Neustarthandhabung kann die Handschlagroutine mit dem Anwendungsprozessor 130 beinhalten, um die Prozesszustandsänderung des eingebetteten Prozessors 120 anzuzeigen. Nachdem alle erforderlichen Anlaufphasen-Einstellungs-/Handschlag-Prozeduren erfolgreich beendet sind, kann der (EGPRS) Telekommunikationsstapel initialisiert werden. Schließlich zeigt die EP-Systemaufgabe 330 dem Anwendungsprozessor 130 an, dass diese für die Kommunikation bereit ist. Die von den AP- und EP-Systemaufgaben gemäß der vorliegenden Ausführungsform ausgeführten Nachrichten, Handschlagprozeduren, etc. werden nachfolgend mit Bezug zu den 4 und 5 detaillierter beschrieben.
  • Die Anlaufphase der Ebene 1- (L1) Module der WWAN-Kommunikationseinrichtung 110 kann mittels einer L1-Hintergrundaufgabe erreicht werden. Um Konfigurationsdaten von Korrektursoftwaresignalen für die L1-Module anzuwenden, kann die L1-Hintergrundaufgabe ihre Anlaufphase unterbrechen, bis diese ein Initialisierungssignal von der EP-Systemaufgabe 330 erhält. Dazu kann die L1 Hintergrundaufgabe im Schritt 340 warten, bis dieses Initialisierungssignal empfangen wird. Sobald dies der Fall ist, wird die Anlaufphase der L1-Module im Schritt 350 fortgesetzt. Obwohl dies In 3 nicht gezeigt ist, kann ein Teil der Initialisierung des L1-Moduls in einigen Ausführungsformen bereits vor dem Schritt 340 ausgeführt worden sein.
  • Um den Austausch von Signalen zwischen dem eingebetteten Prozessor 120 und dem Anwendungsprozessor 130 zu steuern, kann die WWAN-Kommunikationseinrichtung 110 einen IMOL- (Intramodemverbindungs-) Treiber enthalten. Der IMOL-Treiber erfordert unter Umständen, dass einige der in dem NVRAM-Speicher 140 gehaltenen Werte initialisiert werden, bevor der Treiber richtig funktionieren kann. Die Werte in dem NVRAM-Speicher 140 können als Korrektursoftwaresignale durch die EP-Systemaufgabe 330 wiedergewonnen werden. Um ein Anlaufen des IMOL-Treibers ohne diese Werte zu verhindern, wird die EP-Systemaufgabe 330 der vorliegenden Ausführungsform so definiert, dass diese eine höhere Priorität als EMMI- (verbesserte Mensch-Maschine-Schnittstelle) Aufgabe besitzt, die den IMOL-Treiber startet. Gemäß der Ausführungsform gibt die EP-Systemaufgabe 330 die Steuerung nicht an das Betriebssystem zurück, bis alle Signale aus den NVRAM-Speicher 140 gewonnen sind.
  • Beim Zurückgeben der Ausführungsaktivität an das Betriebssystem wartet die EP-Systemaufgabe auf das EMMI-Bereitindikationssignal. Dies stellt eine geeignete IMOL-Startphase sicher, wobei möglicherweise Korrekturdaten für die IMOL-Startphase enthalten sind, die von einer Korrektursoftware aus dem NVRAM zugeführt werden. Bei Erhalt des EMMI-Fertigindikationssignals können Signale an den AP gesendet werden.
  • Der EMMI-Stapel kann durch zwei Aufgaben bereitgestellt werden, wovon eine mit hoher Priorität zur Handhabung mit Hardwareeinheiten und eine mit geringer Priorität zur Kommunikation mit dem Rest der Software ausgestattet ist. Die EMMI-Aufgaben können von der GKI-Signalhandhabung verwendet werden, wenn entschieden wird, dass ein GKI-Signal aus dem System herausgeleitet werden muss. Gemäß der Ausführungsform werden die EMMI-Aufgaben durch eine oder mehrere serielle Einrichtungen abgearbeitet, wodurch eine Verbindung zur Außenwelt hergestellt wird. Diese seriellen Einrichtungen können mittels einer Schnittstelle, die als SPAL (Abstraktionsschicht für seriellen Anschluss) Schnittstelle bekannt ist, betrieben werden. Sowohl die IMOL als auch die Feld/Fehlererkennungs-UART (universeller asynchroner Empfänger/Sender) können als SPAL-Einrchtungen eingerichtet sein. Ein Schaltmechanismus in der WWAN-Kommunikationseinrichtung 110 kann eine Signalführung von GKI-Nachrichten zu/von der geeigneten Schnittstelle ermöglichen.
  • Sobald die EMMI-Aufgaben im Schritt 370 initialisiert sind, wird der IMOL-Treiber automatisch im Schritt 380 gestartet. Die Konfiguration der IMOL-Hardwareverbindung gemäß der Ausführungsform hängt von den Daten ab, die aus dem NVARM-Speicher 140 wiedergewonnen werden müssen. Da der Anlaufprozess im Schritt 360 wartet, bis die EP-Systemaufgabe 330 aufgerufen kann, kann der IMOL-Treiber im Schritt 380 gestartet werden.
  • In 4 ist die AP-Systemaufgabe der vorliegenden Ausführungsform detaillierter gezeigt. Die AP-Systemaufgabe kann die gleichrangige Aufgabe der EP-Systemaufgabe 330 in dem Anwendungsprozessor 130 sein.
  • Im Schritt 410 schaltet die AP-Systemaufgabe den Kommunikationsprozessor 130 ein. Danach fragt die AP-Systemaufgabe ab, ob der Initialisierungsprozess abgeschlossen ist. Dies kann bewerkstelligt werden, indem eine Abfrage über die Korrektheit des Initialisierungsprozesses an den eingebetteten Prozessor 120 im Schritt 430 gesendet wird, um herauszufinden, ob der eingebettete Prozessor 120 den Initialisierungsprozess abgeschlossen hat. Folglich wartet die AP-Systemaufgabe im Schritt 440, bis ein entsprechendes „Initialisierung beendet"-Signal von dem eingebetteten Prozessor 120 empfangen wird, das anzeigt, dass der Kommunikationsprozessor 120 den Initialisierungsprozess beendet hat. Wenn das „Initialisierung beendet"-Signal nicht empfangen wird, wird im Schritt 430 die Anfrage über die Korrektheit der Initialisierung nochmals gesendet.
  • Sobald die AP-Systemaufgabe das „Initialisierung beendet"-Signal von dem eingebetteten Prozessor 120 empfangen hat, wartet sie im Schritt 450 auf ein „Korrektursoftware bereit"-Signal von dem eingebetteten Prozessor 120, das anzeigt, dass der eingebettete Prozessor 120 die NVRAM-Verarbeitung beendet hat und bereit ist, Korrektursoftwareroutinen von dem Anwendungsprozessor 130 zu verarbeiten.
  • Sobald der eingebettete Prozessor 120 mit dem „Initialisierung beendet"-Signal auf die Anfrage über die Korrektheit des Initialisierungsprozesses geantwortet hat, das „Korrektursoftware bereit"-Signal gesendet hat, kann die AP-Systemaufgabe eine Korrektursoftware zu dem eingebetteten Prozessor 120 im Schritt 460 senden. Im Schritt 470 wird bestimmt, ob alle Korrektursoftwareroutinen zu dem eingebetteten Prozessor 120 gesendet sind. Wenn dies nicht der Fall ist, kehrt die AP-Systemaufgabe zum Schritt 460 zurück, um eine weitere Korrektursoftware zu dem Kommunikationsprozessor 120 zu senden.
  • Gemäß der vorliegenden Ausführungsform werden ebenso im Schritt 460 Funkkalibrationsdaten gesendet, obwohl dies lediglich ein spezielles Korrektursoftwaresignal ist. Die AP-Systemaufgabe kann über die korrekte Reihenfolge dieser Korrektursoftwareroutinen informiert sein, da der eingebettete Prozessor 120 die Korrektursoftwareroutinen in der Reihenfolge erfüllen kann, in der sie gesendet werden. Der Anwendungsprozessor 130 kann ausgebildet sein, den aktuellen Status der Vollständigkeit der Korrektursoftwareverarbeitung im eingebetteten Prozessor 120 abzufragen. Um den Status der Korrektursoftwareverarbeitung des eingebetteten Prozessors 120 herauszufinden, kann der Anwendungsprozessor 130 eine entsprechende Statusabfrage zu dem eingebetteten Prozessor 120 senden (in 4 nicht gezeigt). Insbesondere unterhält das Korrektursoftwaresystem der vorliegenden Ausführungsform eine Liste der installierten Korrektursoftwareroutinen. Diese Liste kann während einer Anlaufphase beibehalten werden. Durch Senden des Anforderungssignals für die Identifizierung (ID) installierter Korrektursoftwareroutinen kann der Anwendungsprozessor 130 diese Liste anfordern. Daraufhin kann ein Statusantwortsignal von dem eingebetteten Prozessor 120 zu dem Anwendungsprozessor 130 gesendet werden, um den Status der Korrektursoftwareverarbeitung des eingebetteten Prozessors 120 als Reaktion auf die Statusabfrage anzuzeigen.
  • Der Anwendungsprozessor 130 kann ferner Information über installierte Korrektursoftwareroutinen erhalten, indem ein Anforderungssignal zur Erkennung installierter Korrektursoftwareroutinen (in 4 nicht gezeigt) zu dem eingebetteten Prozessor 120 gesendet wird. In Reaktion darauf kann der Kommunikationsprozessor 120 Information über angewendete Korrektursoftwareroutinen, beispielsweise die entsprechenden ID, zu dem Anwendungsprozessor 130 weiterleiten.
  • Sobald der Schritt 470 ergibt, dass alle Korrektursoftwareroutinen gesendet sind, kann der Anwendungsprozessor 130 das Ende der Korrekturverarbeitung anzeigen, indem ein Korrektursoftware-Ende-Signal zu dem eingebetteten Prozessor 120 im Schritt 480 gesendet wird.
  • Wenn während einer beliebigen Zeit der Verarbeitung ein Fehler erkannt wird, kann der Anwendungsprozessor 130 der Ausführungsform einen Neustart anfordern. Dazu kann der Anwendungsprozessor 130 den eingebetteten Prozessor 120 zu einem Neustart zwingen, indem ein Anforderungssignal für eine erneute Initialisierung (in 4 nicht gezeigt) zu dem eingebetteten Prozessor 120 gesendet wird. Somit kann der Schritt 210 dann ergeben, dass eine Initialisierungsbedingung erfüllt ist. Der Ablauf kann dann zum Schritt 220 zum Initialisieren der CPU weitergehen, wobei die weitere Abarbeitung berücksichtigt wird, dass die Initialisierungsbedingung ein Neustart war. Wenn die Neuinitialisierung intern in dem eingebetteten Prozessor 120 angefordert wird, beispielsweise durch einen Warninterrupt eines „Wachhund"-Zeitgebers, kann der eingebettete Prozessor einen bevorstehenden Neustart anzeigen, indem dem Anwendungsprozessor 130 ein Neustartindikatorsignal gesendet wird, auf das der Anwendungsprozessor 130 mit einem Neustartbestätigungssignal antworten kann (in 4 nicht gezeigt). Dadurch kann der Anwendungsprozessor 130 dem eingebetteten Prozessor 130 anzeigen, dass er die Neuinitialisierungsanforderung des eingebetteten Prozessors 120 akzeptiert hat.
  • Nachdem die Korrektursoftwareabarbeitung beendet ist, kann der Anwendungsprozessor 130 ein L1-Initialisierungsanforderungssignal an den Prozessor 120 im Schritt 490 senden. Die Schritte 430 bis 490 können ein Teil der EP-AP-Handschlagprozedur 420 sein.
  • In den 5a und 5b ist die EP-Systemaufgabe 330 in detaillierterer Weise gezeigt. Gemäß der Ausführungsform steuert die EP-Systemaufgabe 330 die EP-spezifische Systeminitialisierung. Dies wird bewerkstelligt auf der Grundlage von Signalen, die für gewöhnlich von dem Anwendungsprozessor 130 empfangen werden, wie dies zuvor mit Bezug zu 4 erläutert ist. Beim Starten der Aufgabe wird im Schritt 500 überprüft, ob der aktuelle Prozess ein Neustart ist oder nicht. Wenn ein Neustart vorliegt, wird keine NVRAM- Verarbeitung ausgeführt und die EP-Systemaufgabe 330 geht direkt zu den Schritten 550, 545 und 575 zur Installierung von Korrektursoftwareroutinen von dem Anwendungsprozessor 130.
  • Ansonsten kann die Korrektursoftware- und SPS- (sicheres Korrektursoftwaresystem) Initialisierungsfunktion im Schritt 505 aufgerufen werden. Danach können Korrektursoftwareroutinen von dem NVRAM-Speicher 140 im Schritt 510 eingeladen werden.
  • Insbesondere kann im Schritt 515 der NVRAM-Speicher 140 inspiziert werden. Ein Bereich des NVRAM-Speichers 140 der Ausführungsform ist für Korrektursoftwaresignale der EP-Systemaufgabe reserviert. Wenn im Schritt 520 bestimmt wird, dass in diesem Bereich Korrektursoftwaresignale gespeichert sind, die noch nicht von der EP-Systemaufgabe 330 installiert wurden, können diese Signale aus dem NVRAM-Speicher 140 im Schritt 525 abgerufen werden. Gemäß der Ausführungsform sind die Signale in dem NVRAM-Speicher 140 genau die gleichen GKI-Korrektursoftwaresignale, wie jene, die von dem Anwendungsprozessor 130 im Schritt 460 gesendet würden. Die Signale können nacheinander abgerufen werden und dann im Schritt 520 von der EP-Systemaufgabe 330 abgearbeitet werden, wie dies der Fall wäre, wenn diese von dem Anwendungsprozessor 130 empfangen würden. Dieser Mechanismus ermöglicht es dem eingebetteten Prozessor 120, eine eigene Aktualisierung der Korrektursoftware vorzunehmen, bevor ein Eingriff von dem Anwendungsprozessor 130 stattfindet.
  • Wenn ein Neustart erforderlich ist, um eine gewisse NVRAM-Korrektursoftware anzuwenden, kann dies im Schritt 535 erkannt werden. Die EP-Systemaufgabe 330 kann dann verworfen werden, und es wird ein Neustart im Schritt 540 ausgeführt. Gemäß der vorliegenden Ausführungsform bedeutet das Ausführen eines Neustarts im Allgemeinen, dass im Schritt 120 eine Initialisierungsbedingung erkannt wird, die dazu führt, dass die CPU im Schritt 220 initialisiert wird, wie dies zuvor mit Bezug zu 2 beschrieben ist. Wie im Zusammenhang im Schritt 500 erläutert ist, kann die NVRAM-Signalabrufung nach einem Neustartsignal ausgeführt werden. Dies verhindert eine Schleife, falls ein Neustartsignal in dem NVRAM-Speicher 140 eingebettet sein sollte.
  • Wenn im Schritt 535 bestimmt wird, dass ein Neustart nicht erforderlich ist, kann zum Schritt 520 zurückgekehrt werden, um zu bestimmen, ob weiterhin ein Korrektursoftware signal in dem NVRAM-Speicher 140 noch nicht von der EP-Systemaufgabe 330 abgearbeitet ist. Wenn dies nicht der Fall ist, d. h. wenn der eingebettete Prozessor 120 die NVRAM-Verarbeitung 510 abgeschlossen hat und damit für die Abarbeitung von Korrektursoftwareroutinen von dem Anwendungsprozessor 130 bereit ist, kann die Anlaufphasenverarbeitung im Schritt 550 ausgesetzt werden, bis ein Bereit-Signal von dem EMMI-Stapel empfangen wird, das anzeigt, dass der EMMI-Stapel verfügbar ist. Von diesem Zeitpunkt an können GKI-Signale gemäß der Ausführungsform für die Kommunikation verwendet werden. Das Bereit-Signal kann von der EMMI-Aufgabe mit geringer Priorität empfangen und im Schritt 550 erfasst werden.
  • Sobald der Empfang des Bereit-Signals von dem EMMI-Stapel erkannt ist, wird bestimmt, ob dies ein Neustart ist oder nicht. Wenn dies der Fall ist, geht der Prozess weiter zu den Schritten 545 und 575. Wenn nicht, wird der „Wachhund"-Zeitgeber im Schritt 555 initialisiert. In anderen Ausführungsformen kann die EP-Systemaufgabe 330 ferner eine Handschlagprozedur für den „Wachhund"-Zeitgeber beinhalten (in 5 nicht vollständig gezeigt), die nach dem Schritt 550 ausgeführt werden kann. Dadurch kann bestimmt werden, ob der aktuelle Anlauf durch ein Zurücksetzen des „Wachhund"-Zeitgebers hervorgerufen wurde. In diesem Falle kann die Zustandsmaschine des Anwendungsprozessors 130 zurückgesetzt werden. Dazu kann der Kommunikationsprozessor 120 eine Anforderung für das Zurücksetzen des „Wachhund"-Zeitgebers zu dem Anwendungsprozessor 130 senden und diese Schleife beim Empfang einer Bestätigung des Zurücksetzens des „Wachhund"-Zeitgebers beenden. Schließlich kann der „Wachhund"-Zeitgeber initialisiert werden, wenn das Sicherheitsattribut aktiviert ist (wird über einen Anschluss „Sicherheitsattribut deaktiviert" bestimmt), wie dies im Schritt 555 gezeigt ist.
  • Im Schritt 560 wird die EP-seitige EP-AP-Handschlagprozedur ausgeführt. Zunächst wird im Schritt 565 bestimmt, ob eine Anfrage über die Korrektheit der Initialisierung von dem Anwendungsprozessor 130 empfangen wurde. Dies ist der Fall, wenn die AP-Systemaufgabe die Anfrage über die Korrektheit über die Initialisierung im Schritt 430 gesendet hat. Sodann kann auf die Anfrage über die Korrektheit der Initialisierung im Schritt 570 geantwortet werden, indem ein „Initialisierung beendet"-Signal an den Anwendungsprozessor 130 gesendet wird. Dieses Signal kann ebenso den Zustand des Sicherheitsanschlusses als Parameter enthalten.
  • Des Weiteren kann ein „Korrektursoftware bereit"-Signal zu dem Anwendungsprozessor 130 im Schritt 545 gesendet werden. Dies kann die AP- und EP-Systemaufgaben synchronisieren, da, wie zuvor mit Bezug zu 4 erläutert ist, die AP-Systemaufgabe im Schritt 450 wartet, bis das „Korrektursoftware bereit"-Signal des eingebetteten Prozessors 130 empfangen wird.
  • Daraufhin können Korrektursoftwareroutinen von dem Anwendungsprozessor 130 im Schritt 575 verarbeitet werden. Da die Korrektursoftwareroutinen eine oder mehrere digitale Signaturen enthalten können, kann die Verarbeitung einer Korrektursoftware das Verifizieren der Signaturen beinhalten, und, wenn die Signaturen korrekt sind, das Installieren der Korrektursoftware. Wenn eine Korrektursoftware für eine Funktion oder Daten vorgesehen ist, die bereits verwendet sind, beispielsweise als Teil der Systeminitialisierung oder eingerichteter Kommunikationsprozesse, muss die Software ggf. neu gestartet werden. Die Entscheidung, ob eine spezielle Korrektursoftware einen Neustart erfordert oder nicht, kann getroffen werden zur Zeit der Erstellung der Korrektursoftware. Die EP-Systemaufgabe 330 kann eine Anzeige für das Erfordernis eines Neustarts von der Korrektursoftware API über einen Korrektursoftware API-Aufruf erhalten.
  • Des weiteren erkennt der eingebettete Prozessor 120 die oben erläuterten „Korrektursoftwarestatus"-Abfragen und die Abfragen hinsichtlich der installierten Korrektursoftware-ID von dem Anwendungsprozessor 130 und beantwortet diese, und/oder er kann Fehlersignale oder Neuinitialisierungsanforderungen zu dem Anwendungsprozessor 130 senden, wenn ein Fehler aufgetreten ist, oder wenn eine Neuinitialisierung angefordert wird (diese Schritte sind in 5 nicht gezeigt). Es können weitere Signale zwischen dem EP-Prozessor 130 und dem AP-Prozessor 130 ausgetauscht werden, die sich beispielsweise auf das Umschalten in einen Flugmodus oder das Zurücksetzen des „Wachhund"-Zeitgebers beziehen. Des weiteren können der EP-Prozessor und/oder AP-Prozessor 120, 130 mit anderen Komponenten der WWAN-Kommunikationseinrichtung 110 kommunizieren.
  • Die Korrektursoftwareverarbeitung kann von dem Anwendungsprozessor 130 beendet werden, indem ein Korrektursoftware-Ende-Signal zu dem eingebetteten Prozessor 120 im Schritt 480 gesendet wird. Sobald das Signal erhalten wird, kann dies von dem eingebetteten Prozessor 120 im Schritt 580 erkannt werden. Wenn das Signal nicht empfangen wird, kann eine weitere Korrektursoftware durch den Anwendungsprozessor 130 im Schritt 460 gesendet werden, die dann von dem EP-Prozessor 120 im Schritt 575 installiert wird.
  • Andernfalls kann im Schritt 585 bestimmt werden, ob der Anwendungsprozessor 130 die Initialisierung der L1-Module initiiert hat, indem die Initialisierungsanforderung im Schritt 490 gesendet wird. Wenn dies der Fall ist, kann eine L1-Initialisierungsanforderungsbestätigung im Schritt 590 an den Anwendungsprozessor 130 zurückgesendet werden. Danach kann die EP-Systemaufgabe 330 ein Initialisierungssignal zu der L1-Hintergrundaufgabe im Schritt 595 senden, woraufhin der Start der L1-Module im Schritt 350 fortgesetzt werden kann.
  • Schließlich kann die EP-Systemaufgabe 330 zu der AP-Systemaufgabe ein Kommunikationsstapel-Bereit-Signal senden, um anzuzeigen, dass der eingebettete Prozessor 120 alle Anlauf- bzw. Startaktivitäten beendet hat und nunmehr für die EGPRS-Kommunikation (in 5 nicht gezeigt) bereit ist. Gemäß der Ausführungsform können nun Kommunikationsaktivitäten beginnen.
  • Die EP-Systemaufgabe 330 kann ferner das Senden eines Fehlersignals (in 5 nicht gezeigt) zu der AP-Systemaufgabe zu jeder beliebigen Zeit umfassen, um damit anzuzeigen, dass ein Fehler aufgetreten ist, während ein Signal von der EP-Systemaufgabe 330 verarbeitet wurde. Ferner kann die EP-Systemaufgabe 330 ein Testsignal (im 5 nicht gezeigt) zu de AP-Systemaufgabe 330 in einem beliebigen EP-Zustand senden, das durch eine entsprechende Testantwort beantwortet wird.
  • Zu beachten ist, dass die spezielle Abfolge der in der 2 bis 5 gezeigten Schritte lediglich anschaulich ist und nicht als Einschränkung der Erfindung zu verstehen ist. In anderen Ausführungsformen können Schritte in unterschiedlicher Reihenfolge ausgeführt werden. Beispielsweise kann die AP-Systemaufgabe bestimmen, ob das „Korrektursoftware bereit"-Signal von dem eingebetteten Prozessor 120 gesendet wurde (Schritt 450), bevor eine Abfrage über die Korrektheit der Initialisierung an den eingebetteten Prozessor 120 im Schritt 430 gesendet wird. Ferner kann der Schritt 545 zum Senden des „Korrektursoftware bereit"-Signals zu dem Anwendungsprozessor 130 bis nach dem Schritt 555 zum Initialisieren des „Wachhund"-Zeitgebers aufgeschoben werden, oder kann sogar nach den Schritt 570 zum Senden des „Initialisierung beendet"-Signal an den Anwendungsprozessor 130 erfolgen.
  • Wie aus der obigen Beschreibung der Ausführungsformen hervorgeht, wird eine Technik zum sicheren Installieren von Korrektursoftwareroutinen in einem Software aktualisierbarem System bereitgestellt. Die Anwendung einer Korrektursoftware kann betrieben werden, um Angreifer davon abzuhalten, das Einladen von Korrektursoftwareroutinen abzublocken. Der Gesamtprozess kann mittels einer Initialisierungs- und Anlaufzustandsmaschine bewerkstelligt werden. Diese Zustandsmaschine kann das Initialisieren (Einschalten der CPU) und das Anlaufen bzw. Starten (Softwarestart des Systems) steuern. In diese Zustandsmaschine kann ein Korrektursoftwaresystem integriert sein, das seinen Zustand der Inititialisierungs- und Anlaufaufgaben mitteilen kann. Obwohl die Ausführungsformen im Zusammenhang mit einer WWAN-Kommunikationseinrichtung 110 erläutert sind, kann die zu Grunde liegende Technik beispielsweise im Zusammenhang mit einer beliebigen Software für eingebettete Systeme, Kommunikationsplattformen oder Software für teilweise vertrauenswürdige, teilweise nicht vertrauenswürdige Plattformen verwendet werden.
  • Zu beachten ist, dass in einer Ausführungsform der Begriff Neuinitialisierung sich auf einen „Kaltstart" mit vollständigen Initialisierungszyklen beziehen kann, worin jene mit eingeschlossen sind, die sich auf den Korrektursoftwarespeicher, den NVRAM-Prozess, die Initialisierungshandschlagprozedur, etc. beziehen. Der Begriff Neustart kann dann einen „Warmstart" bezeichnen, um den Neustartzustand zu bewerten, um damit die Korrektursoftwarespeicherinitialisierung, die NVRAM-Verarbeitung, die InitialisierungsHandschlagprozedur, etc. auszuschließen.
  • Ferner ist zu beachten, dass in jeder der zuvor beschriebenen Ausführungsformen Korrektursoftwareroutinen aus dem NVRAM 140 eingeladen werden können, bevor Korrektursoftwareroutinen aus dem Anwendungsprozessor 120 geladen werden.
  • Obwohl die Erfindung im Hinblick auf die physikalischen Ausführungsformen beschrieben ist, die entsprechend aufgebaut sind, erkennt der Fachmann, dass diverse Modifizierungen, Variationen und Verbesserungen der vorliegenden Erfindung im Lichte der obigen Lehre innerhalb des Bereichs der angefügten Patentansprüche durchgeführt werden können, ohne von dem Schutzbereich der Erfindung abzuweichen. Ferner sind jene Bereiche, von denen angenommen wird, dass der Fachmann damit vertraut ist, hierin nicht beschrieben, um nicht unnötig die Erfindung zu verdunkeln. Selbstverständlich ist die Erfindung nicht auf die speziellen anschaulichen Ausführungsformen einschränken, sondern ist nur durch den Bereich der angefügten Patentansprüche definiert.
  • 1
  • 110
    WWAN-Kommunikationseinrichtung
    120
    eingebetteter Prozessor Handschlagprozedur
    130
    Anwendungsprozessor Korrektursoftwareroutinen
  • 2
  • Initialisierung
  • 210
    Initialisierungsbedingung?
    220
    Initialisierung der CPU
    230
    Initialisierung der Peripherieeinheiten
    240
    Initialisierung des Speichers
    250
    Neustart
    260
    Nichtberücksichtigen des Korrektursoftwarespeicherbereichs bei der Initialisierung
    270
    Festlegen der initialisierten Daten
    280
    Zurücksetzen von nicht initialisierten Daten
  • 3
  • Anlaufphase
  • 310
    Initialisierung des RTOS
    330
    Ausführen der EP-Systemaufgabe
    340
    Initialisierung Signal empfangen?
    360
    Alle Signale NVRAM abgerufen?
    350
    Fortsetzen der Anlaufphase der L1-Module
    370
    Initialisierung der EMMI-Aufgaben
    380
    Initialisierung des IMOL-Treibers zurück
  • 4
  • AP-Systemaufgabe
  • 410
    Einschalten der EP
    420
    EP-AP-Handschlagprozedur
    430
    Senden der Abfrage für korrekte Initialisierung an den EP
    440
    „Initialisierung beendet"-Signal von EP empfangen?
    450
    „Korrektursoftware bereit"-Signal von EP empfangen?
    460
    Senden einer Korrektursoftware an EP
    470
    Alle Korrektursoftwareroutinen an den EP gesendet?
    480
    Senden des Korrektursoftware-Ende-Signals an EP
    490
    Senden einer L1-Initialisierungsanforderung an EP zurück
  • 5a
  • EP-Systemaufgabe
  • 500
    Neustart?
    505
    Aufrufen der Korrektursoftware- und SPS-Initialisierungsfunktion
    510
    Korrektursoftwareeinrufung aus NVRAM
    515
    Inspizieren des NVRAM
    520
    Korrektursoftwaresignal NVRAM?
    525
    Abrufen des Korrektursoftwaresignals von NVRAM
    530
    Verarbeiten des Korrektursoftwaresignals
    535
    Neustart erforderlich?
    545
    Ausführen des Neustarts
    550
    „Bereit "Signal von EMMI-Stapel empfangen? Neustartzustand
  • 5b
  • 555
    Initialisierung- und Zeitgebers
    560
    EP-AP-Handschlagprozedur
    565
    Frage über korrekte Initialisierung von AP empfangen?
    570
    Senden des „Initialisierung beendet"-Signals zu AP?
    545
    Senden des „Korrektursoftware bereit"-Signals an AP
    575
    Installieren von Korrektursoftware von AP
    580
    Korrektursoftware-Ende-Signal von AP empfangen?
    585
    L1-Initialisierungsanforderung von AP empfangen?
    590
    Senden einer L1-Initialisienrungsanforderungsbestätigung an AP
    595
    Senden eines Initialisierungssignals an L1-Hintergrundaufgabe zurück

Claims (37)

  1. WWAN- (Wireless Wide Area Network, drahtloses Großraumnetzwerk) Kommunikationsgerät (110) umfassend: einen ersten Prozessor (120), der zum Verarbeiten (530, 575) von Patches (Korrekturen, Programmkorrekturen) eingerichtet ist, welche auf dem WWAN-Kommunikationsgerät laufende Software aktualisieren; einen zweiten Prozessor (130), der zum Bereitstellen (460) eines ersten Satzes der Patches an den ersten Prozessor eingerichtet ist; und einen Speicher (140), der einen zweiten Satz Patches speichert, die durch den ersten Prozessor verarbeitet werden sollen; wobei der zweite Prozessor ferner zum Senden (480) eines Patch-Ende-Signals (patch end signal) an den ersten Prozessor eingerichtet ist, wobei das Patch-Ende-Signal den ersten Prozessor zum Stoppen der Verarbeitung von durch den zweiten Prozessor bereitgestellten Patches veranlasst; und wobei der erste Prozessor ferner zum Verarbeiten (530) der in dem Speicher gespeicherten Patches unabhängig von dem Patch-Ende-Signal eingerichtet ist.
  2. WWAN-Kommunikationsgerät nach Anspruch 1, wobei der erste Prozessor ferner zum Verarbeiten aller in dem Speicher gespeicherten Patches vor dem Verarbeiten der durch den zweiten Prozessor bereitgestellten Patches eingerichtet ist.
  3. WWAN-Kommunikationsgerät nach Anspruch 1 oder 2, wobei der erste Prozessor ferner zum Senden (545) eines Patch-Bereit-Signals (patch ready signal) an den zweiten Prozessor eingerichtet ist, wobei das Patch-Bereit-Signal angibt, dass der erste Prozessor zum Verarbeiten von durch den zweiten Prozessor bereitgestellten Patches bereit ist.
  4. WWAN-Kommunikationsgerät nach Anspruch 3, wobei der erste Prozessor ferner dazu eingerichtet ist, das Patch-Bereit-Signals an den zweiten Prozessor erst zu senden, nachdem er alle in dem Speicher gespeicherten Patches verarbeitet hat.
  5. WWAN-Kommunikationsgerät nach einem der Ansprüche 1 bis 4, wobei der erste Prozessor ferner zum Verifizieren (520), ob in dem Speicher noch Patches gespeichert sind, die noch nicht durch den ersten Prozessor verarbeitet wurden, eingerichtet ist.
  6. WWAN-Kommunikationsgerät nach Anspruch 5, wobei der erste Prozessor ferner zum Lesen (525) der in dem Speicher gespeicherten Patches, die noch nicht durch den ersten Prozessor verarbeitet wurden, eingerichtet ist.
  7. WWAN-Kommunikationsgerät nach Anspruch 6, wobei der erste Prozessor ferner zum Verarbeiten (530) der gelesenen Patches eingerichtet ist.
  8. WWAN-Kommunikationsgerät nach Anspruch 6 oder 7, wobei der erste Prozessor ferner zum Detektieren (535), ob ein aus dem Speicher gelesener Patch einen Neustartvorgang (restart operation) erfordert, eingerichtet ist.
  9. WWAN-Kommunikationsgerät nach einem der Ansprüche 5 bis 8, wobei der erste Prozessor ferner dazu eingerichtet ist, die Verarbeitung der in dem Speicher gespeicherten Patches erst zu stoppen, nachdem er verifiziert hat, dass keine Patches mehr in dem Speicher gespeichert sind, die noch nicht durch den ersten Prozessor verarbeitet wurden oder nachdem er detektiert hat, dass ein aus dem Speicher gelesener Patch einen Neustartvorgang erfordert.
  10. WWAN-Kommunikationsgerät nach einem der Ansprüche 1 bis 9, wobei jeder der durch den zweiten Prozessor bereitgestellten Patches mindestens eine digitale Signatur umfasst und wobei der erste Prozessor ferner dazu eingerichtet ist, die mindestens eine digitale Signatur zu verifizieren und einen durch den zweiten Prozessor bereitgestellten Patch nur dann zu installieren (575), wenn die mindestens eine in dem Patch enthaltene digitale Signatur korrekt ist.
  11. WWAN-Kommunikationsgerät nach Anspruch 10, das zum Kommunizieren mit anderen WWAN-Kommunikationsgeräten erst betriebsfähig (operable) ist, nachdem der erste Prozessor mindestens einen der durch den zweiten Prozessor bereitgestellten Patches installiert hat.
  12. WWAN-Kommunikationsgerät nach einem der Ansprüche 1 bis 11, wobei der erste Prozessor ferner dazu eingerichtet ist anzugeben, wenn alle Patches verarbeitet wurden, und wobei das WWAN-Kommunikationsgerät zum Kommunizieren mit anderen WWAN-Kommunikationsgeräten erst betriebsfähig ist, nachdem der erste Prozessor angegeben hat, dass alle Patches verarbeitet wurden.
  13. Integrierter Schaltkreischip (110) zum Durchführen von WWAN- (Wireless Wide Area Netzwork, drahtloses Großraumnetzwerk) Kommunikation umfassend: eine erste Verarbeitungseinheit (120), die zum Verarbeiten (530, 575) von Patches (Korrekturen, Programmkorrekturen) eingerichtet ist, welche auf dem integrierten Schaltkreischip laufende Software aktualisieren; eine zweite Verarbeitungseinheit (130), die zum Senden (460) eines ersten Satzes der Patches an die erste Verarbeitungseinheit eingerichtet ist; und eine Speichereinheit (140), die einen zweiten Satz der Patches speichert, welche durch die erste Verarbeitungseinheit verarbeitet werden sollen; wobei die zweite Verarbeitungseinheit ferner dazu eingerichtet ist, ein Patch-Ende-Signal (patch end signal) an die erste Verarbeitungseinheit zu senden (480), wobei das Patch-Ende-Signal die erste Verarbeitungseinheit zum Stoppen der Verarbeitung von Patches, die durch die zweite Verarbeitungseinheit gesandt werden, veranlasst; und wobei die erste Verarbeitungseinheit ferner zum Verarbeiten (430) der in der Speichereinheit gespeicherten Patches unabhängig von dem Patch-Ende-Signal eingerichtet ist.
  14. Integrierter Schaltkreischip nach Anspruch 13, wobei die erste Verarbeitungseinheit ferner zum Verarbeiten aller in der Speichereinheit gespeicherten Patches vor der Verarbeitung der durch die zweite Verarbeitungseinheit gesandten Patches eingerichtet ist.
  15. Integrierter Schaltkreischip nach Anspruch 13 oder 14, wobei die erste Verarbeitungseinheit ferner zum Senden (445) eines Patch-Bereit-Signals (patch ready signal) an die zweite Verarbeitungseinheit eingerichtet ist, wobei das Patch-Bereit-Signal angibt, dass die erste Verarbeitungseinheit zum Verarbeiten von durch die zweite Verarbeitungseinheit gesandten Patches bereit ist.
  16. Integrierter Schaltkreischip nach Anspruch 15, wobei die erste Verarbeitungseinheit ferner dazu eingerichtet ist, das Patch-Bereit-Signal erst an die zweite Verarbeitungseinheit zu senden, nachdem sie alle in der Speichereinheit gespeicherten Patches verarbeitet hat.
  17. Integrierter Schaltkreischip nach einem der Ansprüche 13 bis 16, wobei die erste Verarbeitungseinheit ferner zum Verifizieren (520) eingerichtet ist, ob in der Speichereinheit noch Patches gespeichert sind, die noch nicht durch die erste Verarbeitungseinheit verarbeitet wurden.
  18. Integrierter Schaltkreischip nach Anspruch 17, wobei die erste Verarbeitungseinheit ferner zum Lesen (525) der in der Speichereinheit gespeicherten Patches, welche noch nicht durch die erste Verarbeitungseinheit verarbeitet wurden, eingerichtet ist.
  19. Integrierter Schaltkreischip nach Anspruch 18, wobei die erste Verarbeitungseinheit ferner zum Verarbeiten (530) der gelesenen Patches eingerichtet ist.
  20. Integrierter Schaltkreischip nach Anspruch 18 oder 19, wobei die erste Verarbeitungseinheit ferner zum Detektieren (535) eingerichtet ist, ob ein aus der Speichereinheit gelesener Patch einen Neustartvorgang (restart operation) erfordert.
  21. Integrierter Schaltkreischip nach einem der Ansprüche 17 bis 20, wobei die erste Verarbeitungseinheit ferner dazu eingerichetet ist, die Verarbeitung der in der Speichereinheit gespeicherten Patches erst zu stoppen, nachdem sie verifiziert hat, dass in der Speichereinheit keine Patches mehr gespeichert sind, die noch nicht durch die erste Verarbeitungseinheit verarbeitet wurden, oder nachdem sie detektiert hat, dass ein aus der Speichereinheit gelesener Patch einen Neustartvorgang erfordert.
  22. Integrierter Schaltkreischip nach einem der Ansprüche 13 bis 21, wobei jeder der durch die zweite Verarbeitungseinheit gesandten Patches mindestens eine digitale Signatur umfasst und wobei die erste Verarbeitungseinheit ferner dazu eingerichetet ist, die mindestens eine digitale Signatur zu verifizieren und einen durch die zweite Verarbeitungseinheit gesandten Patch nur dann zu installieren (575), wenn die mindestens eine in dem Patch enthaltene digitale Signatur korrekt ist.
  23. Integrierter Schaltkreischip nach Anspruch 22, der zum Durchführen von WWAN-Kommunikation erst betriebsfähig (operable) ist, nachdem die erste Verarbeitungseinheit mindestens einen der durch die zweite Verarbeitungseinheit gesandten Patches installiert hat.
  24. Integrierter Schaltkreischip nach einem der Ansprüche 13 bis 23, wobei die erste Verarbeitungseinheit ferner dazu eingerichtet ist anzugeben, wenn alle Patches verarbeitet wurden, und wobei der integrierte Schaltkreischip zum Durchführen von WWAN-Kommunikation erst betriebsfähig ist, nachdem die erste Verarbeitungseinheit angegeben hat, dass alle Patches verarbeitet wurden.
  25. Verfahren zum Patchen (Korrigieren, Programmkorrigieren) eines WWAN- (Wireless Wide Area Network, drahtloses Großraumnetzwerk) Kommunikationsgeräts (110), umfassend: Betreiben eines ersten Prozessors (120) zum Verarbeiten (530, 575) von Patches (Korrekturen, Programmkorrekturen), welche die Software des WWAN-Kommunikationsgeräts aktualisieren; Betreiben eines zweiten Prozessors (130) zum Bereitstellen (460) eines ersten Satzes der Patches an den ersten Prozessor; und Speichern eines zweiten Satzes der Patches in einem Speicher (140) des WWAN-Kommunikationsgeräts; wobei der Betrieb des zweiten Prozessors ein Senden (480) eines Patch-Ende-Signals (patch end signal) an den ersten Prozessor umfasst, wobei das Patch-Ende-Signal den ersten Prozessor zum Stoppen der Verarbeitung von durch den zweiten Prozessor bereitgestellten Patches veranlasst; und wobei der Betrieb des ersten Prozessors ein Verarbeiten (530) der in dem Speicher gespeicherten Patches unabhängig von dem Patch-Ende-Signal umfasst.
  26. Verfahren nach Anspruch 25, wobei der Betrieb des ersten Prozessors ferner ein Verarbeiten aller in dem Speicher gespeicherten Patches vor der Verarbeitung der durch den zweiten Prozessor bereitgestellten Patches umfasst.
  27. Verfahren nach Anspruch 25 oder 26, wobei der Betrieb des ersten Prozessors ferner ein Senden (545) eines Patch-Bereit-Signals (patch ready signal) an den zweiten Prozessor umfasst, wobei das Patch-Bereit-Signal angibt, dass der erste Prozessor zum Verarbeiten von durch den zweiten Prozessor bereitgestellten Patches bereit ist.
  28. Verfahren nach Anspruch 27, wobei der Betrieb des ersten Prozessors ferner ein Senden des Patch-Bereit-Signals an den zweiten Prozessor, erst nachdem alle in dem Speicher gespeicherten Patches durch den ersten Prozessor verarbeitet wurden, umfasst.
  29. Verfahren nach einem der Ansprüche 25 bis 28, wobei der Betrieb des ersten Prozessors ferner ein Verifizieren (520) umfasst, ob in dem Speicher noch Patches gespeichert sind, die noch nicht durch den ersten Prozessor verarbeitet wurden.
  30. Verfahren nach Anspruch 29, wobei der Betrieb des ersten Prozessors ferner ein Lesen (525) der in dem Speicher gespeicherten Patches, die noch nicht durch den ersten Prozessor verarbeitet wurden, umfasst.
  31. Verfahren nach Anspruch 30, wobei der Betrieb des ersten Prozessors ferner eine Verarbeitung (530) der gelesenen Patches umfasst.
  32. Verfahren nach Anspruch 30 oder 31, wobei der Betrieb des ersten Prozessors ferner ein Detektieren (535) umfasst, ob ein aus dem Speicher gelesener Patch einen Neustartvorgang (restart operation) erfordert.
  33. Verfahren nach einem der Ansprüche 29 bis 32, wobei der Betrieb des ersten Prozessors ferner ein Stoppen der Verarbeitung von in dem Speicher gespeicherten Patches durch den ersten Prozessor, erst nachdem verfiziert wurde, dass in dem Speicher keine Patches mehr gespeichert sind, die noch nicht durch den ersten Prozessor verarbeitet wurden, oder nachdem detektiert wurde, dass ein aus dem Speicher gelesener Patch einen Neustartvorgang erfordert, umfasst.
  34. Verfahren nach einem der Ansprüche 25 bis 33, wobei jeder der durch den Prozessor bereitgestellten Patches, mindestens eine digitale Signatur umfasst und wobei der Betrieb des ersten Prozessors ferner eine Verifikation der mindestens einen digitalen Signatur und ein Installieren (575) eines durch den zweiten Prozessor bereitgestellten Patches nur dann, wenn die in dem Patch enthaltene mindestens eine digitale Signatur korrekt ist, umfasst.
  35. Verfahren nach Anspruch 34, ferner umfassend das Betriebsfähigmachen (rendering operable) des WWAN-Kommunikationsgeräts zum Kommunizieren mit anderen WWAN-Kommunikationsgeräten, erst nachdem der erste Prozessor mindestens einen der durch den zweiten Prozessor bereitgestellten Patches installiert hat.
  36. Verfahren nach einem der Ansprüche 25 bis 35, wobei der Betrieb des ersten Prozessors ferner ein Angeben, wenn alle Patches verarbeitet wurden, und ein Betriebsfähigmachen des WWAN-Kommunikationsgeräts zum Kommunizieren mit anderen WWAN-Kommunikationsgeräten, erst nachdem der erste Prozessor angegeben hat, dass alle Patches verarbeitet wurden, umfasst.
  37. Computerlesbarer Datenträger, der computerausführbare Befehle umfasst, welche, wenn sie durch ein WWAN-Kommunikationsgerät (110) ausgeführt werden, das WWAN-Kommunikationsgerät zum Durchführen des Verfahrens nach einem der Ansprüche 25 bis 36 veranlassen.
DE102005035736.9A 2005-07-29 2005-07-29 Sichere Korrektursoftwareinstallation für WWAN-Systeme Expired - Fee Related DE102005035736B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102005035736.9A DE102005035736B4 (de) 2005-07-29 2005-07-29 Sichere Korrektursoftwareinstallation für WWAN-Systeme
US11/316,499 US7492747B2 (en) 2005-07-29 2005-12-21 Secure patch installation for WWAN systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102005035736.9A DE102005035736B4 (de) 2005-07-29 2005-07-29 Sichere Korrektursoftwareinstallation für WWAN-Systeme

Publications (2)

Publication Number Publication Date
DE102005035736A1 true DE102005035736A1 (de) 2007-02-08
DE102005035736B4 DE102005035736B4 (de) 2014-06-12

Family

ID=37669848

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102005035736.9A Expired - Fee Related DE102005035736B4 (de) 2005-07-29 2005-07-29 Sichere Korrektursoftwareinstallation für WWAN-Systeme

Country Status (2)

Country Link
US (1) US7492747B2 (de)
DE (1) DE102005035736B4 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321941B2 (en) 2006-04-06 2012-11-27 Juniper Networks, Inc. Malware modeling detection system and method for mobile platforms
US8392966B2 (en) * 2009-01-06 2013-03-05 International Business Machines Corporation Limiting the availability of computational resources to a device to stimulate a user of the device to apply necessary updates
US8490176B2 (en) * 2009-04-07 2013-07-16 Juniper Networks, Inc. System and method for controlling a mobile device
US9202049B1 (en) 2010-06-21 2015-12-01 Pulse Secure, Llc Detecting malware on mobile devices
US8726338B2 (en) 2012-02-02 2014-05-13 Juniper Networks, Inc. Dynamic threat protection in mobile networks
US10303878B2 (en) * 2016-01-22 2019-05-28 Yu-Liang Wu Methods and apparatus for automatic detection and elimination of functional hardware trojans in IC designs
EP3742295A1 (de) * 2019-05-23 2020-11-25 NXP USA, Inc. Automatische firmware-rückkehr

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5699275A (en) * 1995-04-12 1997-12-16 Highwaymaster Communications, Inc. System and method for remote patching of operating code located in a mobile unit
US6243581B1 (en) * 1998-12-11 2001-06-05 Nortel Networks Limited Method and system for seamless roaming between wireless communication networks with a mobile terminal
US20020173344A1 (en) * 2001-03-16 2002-11-21 Cupps Bryan T. Novel personal electronics device
US20040098715A1 (en) * 2002-08-30 2004-05-20 Parixit Aghera Over the air mobile device software management

Also Published As

Publication number Publication date
US7492747B2 (en) 2009-02-17
DE102005035736B4 (de) 2014-06-12
US20070028296A1 (en) 2007-02-01

Similar Documents

Publication Publication Date Title
DE102005035736B4 (de) Sichere Korrektursoftwareinstallation für WWAN-Systeme
DE69721438T2 (de) Verfahren und Gerät zur Initialisierung eines Rechners
DE112019005701T5 (de) Sichere boot-unterstützung für vorrichtungen und zugehörige systeme, verfahren und vorrichtungen
DE69736065T2 (de) System zum verhindern von verfälschung eines elektronischen speichers
DE60129402T2 (de) Daten Sicherungs- und Rückgewinnungs- Verfahren von JAVA Anwendungen eines Mobiltelefons.
DE102015206764A1 (de) System und Verfahren zum Verwalten von Softwareaktualisierungen an einem Fahrzeugrechensystem
DE112016000576T5 (de) Sicheres Booten eines Computers von einer für den Benutzer vertrauenswürdigen Einheit aus
DE60205162T2 (de) Verfahren zur Verwaltung eines Netzwerkgerätes, Verwaltungssystem und Netzwerkgerät
DE102008006759A1 (de) Prozessor-Anordnungen, Prozessor, Verfahren zum Betreiben einer Prozessor-Anordnung
DE102015209108A1 (de) Verfahren und Entscheidungsgateway zum Autorisieren einer Funktion eines eingebetteten Steuergerätes
DE112008003862T5 (de) System und Verfahren zum Liefern eines Systemverwaltungsbefehls
DE112011102876T5 (de) Ressourcenverwaltungs- und Sicherheitssystem
EP3864548A1 (de) Verfahren und vorrichtung zur isolation von sensiblem nicht-vertrauenswürdigem programmcode auf mobilen endgeräten
DE102020211413A1 (de) Betriebsverfahren für eine Ladesäule
CN106685974A (zh) 一种安全防护服务建立、提供方法及装置
DE112016002236T5 (de) Kommunikationseinrichtung und kommunikationseinschränkungsprogramm
DE102021127629A1 (de) Virtualisierung der sicheren speicherung eines baseboard management controllers auf einem host- computergerät
DE102022109208A1 (de) Verwaltung der Verwendung von Geheimnissen der Verwaltungssteuerung basierend auf der Besitzgeschichte der Firmware
DE102021107211B4 (de) Speichermodul-Authentifizierungserweiterung
DE102021127242A1 (de) System und Verfahren zum Signieren und Verriegeln einer Boot-Informationsdatei für ein Host-Computersystem
EP3095065B1 (de) Vorrichtung und verfahren zum detektieren einer manipulation an einem programmcode
WO2024056443A1 (de) Verfahren zum überprüfen von daten in einer recheneinheit
EP3417589A1 (de) Reduzieren einer angriffsmöglichkeit auf eine schwachstelle eines gerätes über eine netzwerkzugangsstelle
DE102012110201B4 (de) Wiederverwenden einer Sicherheitseinrichtung in hybriden Informations-Handhabungs-Geräten
EP3072080B1 (de) Verfahren und vorrichtung zum manipulationsschutz einer recheneinrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: GLOBALFOUNDRIES INC., GRAND CAYMAN, KY

8128 New person/name/address of the agent

Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER,

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R020 Patent grant now final

Effective date: 20150313

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