-
VERWANDTE ANMELDUNGEN
-
Die vorliegende Anmeldung beansprucht die Priorität der am 7. Dezember 2018 eingereichten vorläufigen
US-Patentanmeldung Nr. 62/776,581 , deren gesamter Inhalt hiermit durch Bezugnahme mit eingeschlossen wird.
-
STAND DER TECHNIK
-
Für Softwareentwickler ist es wichtig, zu testen, dass elektronische Vorrichtungen, die über ein Kommunikationsnetzwerk verbunden sind, Ausnahmen, die als Reaktion auf einen Empfang korrupter Daten ausgelöst werden, korrekt behandeln. Eine inkorrekte Behandlung einer Ausnahme kann dazu führen, dass eine elektronische Vorrichtung nicht mehr reagiert, einen nicht autorisierten Zugriff auf die elektronische Vorrichtung gestatten oder andere unerwünschte Konsequenzen haben. Ein Beispiel für elektronische Vorrichtungen, die über ein Kommunikationsnetzwerk verbunden sind, sind mehrere in einem Fahrzeug enthaltene elektronische Vorrichtungen, die beispielsweise durch einen Control-Area-Network(CAN)-Bus verbunden sind. In bestehenden Systemen muss ein Benutzer, der Vorrichtungen, die über ein in einem Fahrzeug enthaltenes Kommunikationsnetzwerk verbunden sind, jede elektronische Vorrichtung separat Testen.
-
KURZDARSTELLUNG
-
Das Verwenden bestehender Systeme zum Testen der über ein Kommunikationsnetzwerk verbundenen elektronischen Vorrichtungen bedeutet eine ineffiziente Nutzung von Zeit und eine ineffiziente Nutzung von Rechenressourcen, da jede Vorrichtung separat getestet wird. Darüber hinaus gleicht ein simultanes Testen mehrerer elektronischer Vorrichtungen einer realen Situation, in der elektronische Vorrichtungen kontinuierlich über ein Kommunikationsnetzwerk (zum Beispiel einen Bus) mit großer Last und Latenz kommunizieren. Durch individuelles Testen elektronischer Vorrichtungen wird es unwahrscheinlicher, dass Probleme, die zumindest teilweise durch eine erhöhte Last oder Latenz in dem Kommunikationsnetzwerk verursacht werden, erkannt werden. Hier beschriebene Ausführungsformen stellen ein System und ein Verfahren zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk verbundene elektronische Vorrichtungen Ausnahmen korrekt behandeln, bereit.
-
Eine Ausführungsform stellt ein System zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk verbundene elektronische Vorrichtungen Ausnahmen korrekt behandeln, bereit. Das System beinhaltet ein Kommunikationsnetzwerk und mehrere elektronische Vorrichtungen und eine Testvorrichtung, die über das Kommunikationsnetzwerk verbunden sind. Die Testvorrichtung beinhaltet einen elektronischen Prozessor. Der elektronische Prozessor ist ausgelegt zum Senden einer ersten Statusabfragenachricht an die mehreren elektronischen Vorrichtungen über das Kommunikationsnetzwerk, Senden von Fuzzed-Daten an eine oder mehrere der mehreren elektronischen Vorrichtungen über das Kommunikationsnetzwerk und Senden einer zweiten Statusabfragenachricht an die mehreren der elektronischen Vorrichtungen über das Kommunikationsnetzwerk. Der elektronische Prozessor ist auch dazu ausgelegt, für jede elektronische Vorrichtung, die mit einer gültigen Antwort auf die erste Statusabfragenachricht antwortet und mit einer ungültigen Antwort auf die zweite Statusabfragenachricht antwortet oder nicht auf die zweite Statusabfragenachricht antwortet, die elektronische Vorrichtung in einem Ausfallprotokoll aufzuzeichnen.
-
Eine andere Ausführungsform stellt ein Verfahren zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk verbundene elektronische Vorrichtungen Ausnahmen korrekt behandeln, bereit. Das Verfahren beinhaltet Senden, mit einem elektronischen Prozessor, einer ersten Statusabfragenachricht an die mehreren elektronischen Vorrichtungen über das Kommunikationsnetzwerk, Senden, mit dem elektronischen Prozessor, von Fuzzed-Daten an eine oder mehrere der mehreren elektronischen Vorrichtungen über das Kommunikationsnetzwerk und Senden, mit dem elektronischen Prozessor, einer zweiten Statusabfragenachricht an die mehreren der elektronischen Vorrichtungen über das Kommunikationsnetzwerk. Das Verfahren beinhaltet außerdem, für jede elektronische Vorrichtung, die auf die erste Statusabfragenachricht mit einer gültigen Antwort antwortet und auf die zweite Statusabfragenachricht mit einer ungültigen Antwort antwortet oder nicht auf die zweite Statusabfragenachricht antwortet, Aufzeichnen der elektronischen Vorrichtung in einem Ausfallprotokoll.
-
Andere Aspekte, Merkmale und Ausführungsformen werden bei Betrachtung der ausführlichen Beschreibung und der begleitenden Zeichnungen ersichtlich.
-
Figurenliste
-
- 1 ist ein Blockdiagramm eines Systems zum simultanen Testen mehrerer über ein Kommunikationsnetzwerk verbundener elektronischer Vorrichtungen gemäß einer Ausführungsform.
- 2A ist ein Blockdiagramm der Testvorrichtung des Systems von 1 gemäß einer Ausführungsform.
- 2B ist ein Blockdiagramm einer ersten elektronischen Vorrichtung des Systems von 1 gemäß einer Ausführungsform.
- 3 ist ein Flussdiagramm eines Verfahrens zum Verwenden des Systems von 1 zum simultanen Testen mehrerer über ein Kommunikationsnetzwerk verbundener elektronischer Vorrichtungen gemäß einer Ausführungsform.
- 4 ist ein veranschaulichendes Beispiel der Schritte 305 und 310 des Verfahrens von 3.
- 5 ist ein veranschaulichendes Beispiel einer durch die Testvorrichtung in den Schritten 320 und 330 des Verfahrens von 3 gesendeten Statusabfragenachricht gemäß einer Ausführungsform.
- 6 ist ein veranschaulichendes Beispiel von durch die Testvorrichtung in den Schritten 320, 325 und 330 des Verfahrens von 3 gesendeten Nachrichten gemäß einer Ausführungsform.
- 7 ist ein veranschaulichendes Beispiel der durch die Testvorrichtung in den Schritten 320, 325 und 330 des Verfahrens von 3 gesendeten Nachrichten und der Antworten, die die Testvorrichtung empfängt, wenn die elektronischen Vorrichtungen eine Ausnahme korrekt behandeln, gemäß einer Ausführungsform.
- 8 ist ein veranschaulichendes Beispiel von durch die Testvorrichtung in den Schritten 320, 325 und 330 des Verfahrens von 3 gesendeten Nachrichten und der Antworten, die die Testvorrichtung empfängt, wenn eine elektronische Vorrichtung eine Ausnahme nicht korrekt behandelt, gemäß einer Ausführungsform.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Bevor irgendwelche Ausführungsformen genauer erläutert werden, versteht sich, dass diese Offenbarung in ihrer Anwendung nicht auf die Einzelheiten der Konstruktion und der Anordnung der Komponenten, die in der folgenden Beschreibung angeführt oder in den folgenden Zeichnungen dargestellt werden, beschränkt sein soll. Ausführungsformen können andere Konfigurationen aufweisen und können verschiedenartig in die Praxis umgesetzt oder ausgeführt werden.
-
Mehrere hardware- und softwarebasierte Vorrichtungen sowie mehrere verschiedene Strukturkomponenten können zur Implementierung verschiedener Ausführungsformen verwendet werden. Darüber hinaus können Ausführungsformen Hardware, Software und elektronische Komponenten oder Module umfassen, die zum Zwecke der Erörterung so dargestellt und beschrieben werden können, als wäre der Großteil der Komponenten lediglich in Hardware implementiert. Für Durchschnittsfachleute und auf Basis der Lektüre dieser detaillierten Beschreibung ist jedoch erkenntlich, dass die auf Elektronik basierenden Aspekte der Erfindung zumindest bei einer Ausführungsform in Software (beispielsweise auf nichtflüchtigen computerlesbaren Medien gespeichert), die durch einen oder mehrere Prozessoren ausführbar ist, implementiert sein können. Beispielsweise können „Steuereinheiten“ und „Steuerungen“, die in der Schrift beschrieben werden, einen oder mehrere elektronische Prozessoren, ein oder mehrere Speichermodule, darunter nichtflüchtige computerlesbare Medien, eine oder mehrere Kommunikationsschnittstellen, eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs) und verschiedene Verbindungen (beispielsweise einen Systembus), die die verschiedenen Komponenten verbinden, umfassen.
-
1 veranschaulicht ein System 100 zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk verbundene elektronische Vorrichtungen Ausnahmen korrekt behandeln. In dem veranschaulichten Beispiel umfasst das System 100 eine Testvorrichtung 105 (bei der es sich um eine elektronische Vorrichtung handelt), eine erste elektronische Vorrichtung 110, eine zweite elektronische Vorrichtung 115 und eine dritte elektronische Vorrichtung 120 (hier zusammen als elektronische Vorrichtungen 110, 115, 120 bezeichnet), die über ein Kommunikationsnetzwerk 125 verbunden sind. Obgleich das Kommunikationsnetzwerk 125 hier als ein Bus (zum Beispiel ein CAN-Bus) veranschaulicht ist, kann das Kommunikationsnetzwerk 125 unter Verwendung anderer Netzwerkprotokolle und anderer Netzwerkmodalitäten implementiert werden, darunter beispielsweise ein Wide Area Network, wie etwa das Internet, ein Local Area Network, wie etwa ein WiFi-Netzwerk, Drahtlosnetzwerke mit kurzer Reichweite, wie etwa ein Bluetooth™-Netzwerk, Nahfeldkommunikationsverbindungen und Kombinationen oder Ableitungen davon. Die in 1 veranschaulichte Ausführungsform stellt lediglich ein Beispiel der Komponenten und Verbindungen des Systems 100 bereit. Bei anderen Ausführungsformen können diese Komponenten und Verbindungen anders als hier veranschaulicht und beschrieben konstruiert sein. Beispielsweise kann das System 100 eine andere Anzahl elektronischer Vorrichtungen als die in 1 veranschaulichten vier elektronischen Vorrichtungen beinhalten.
-
2A ist ein Blockdiagramm eines Beispiels der Testvorrichtung 105 des Systems 100 von 1. Die Testvorrichtung 105 beinhaltet mehrere elektrische und elektronische Komponenten, die den Komponenten und Modulen in der Testvorrichtung 105 Leistung, Betriebssteuerung und Schutz bereitstellen. Die Testvorrichtung 105 beinhaltet unter anderem einen elektronischen Prozessor 200 (wie etwa einen programmierbaren elektronischen Mikroprozessor, Mikrocontroller oder eine ähnliche Vorrichtung), einen Speicher 205 (zum Beispiel einen nichtflüchtigen computer- oder maschinenlesbaren Speicher), eine Kommunikationsschnittstelle 210, eine Anzeigevorrichtung 215 und eine Eingabevorrichtung 220. Bei der Anzeigevorrichtung 215 kann es sich beispielsweise um einen Berührungsbildschirm, eine Flüssigkristallanzeige („LCD“), eine Leuchtdioden(„LED“)-Anzeige, eine Organische-LED(„OLED“)-Anzeige, eine Elektrolumineszenzanzeige („ELD“) und dergleichen handeln. Bei der Eingabevorrichtung 220 kann es sich beispielsweise um ein Tastenfeld, eine Maus, einen Berührungsbildschirm (zum Beispiel als Teil der Anzeigevorrichtung 215), ein Mikrofon, eine Kamera oder dergleichen handeln. Der elektronische Prozessor 200 ist kommunikativ mit dem Speicher 205, der Kommunikationsschnittstelle 210, der Anzeigevorrichtung 215 und der Eingabevorrichtung 220 verbunden. Der elektronische Prozessor 200, in Koordination mit dem Speicher 205 und der Kommunikationsschnittstelle 210, ist unter anderem zum Implementieren der hier beschriebenen Verfahren ausgelegt. Beispielsweise kann der elektronische Prozessor 200 eine in dem Speicher 205 enthaltene Fuzzer-Software 225 ausführen, um Fuzzed-Daten zu erzeugen. Die Testvorrichtung 105 kann Untermodule enthalten, die zusätzliche elektronische Prozessoren, zusätzlichen Speicher oder zusätzliche anwendungsspezifische integrierte Schaltungen (ASICs) zum Abwickeln von Kommunikationsfunktionen, Verarbeiten von Signalen und Anwenden der nachstehend angeführten Verfahren beinhalten. Bei einigen Ausführungsformen beinhaltet die Testvorrichtung 105 zusätzliche, weniger oder andere Komponenten. Bei einigen Ausführungsformen kann die als durch die Testvorrichtung 105 durchgeführt beschriebene Funktionalität unter mehreren Vorrichtungen verteilt sein.
-
2B ist ein Blockdiagramm der ersten elektronischen Vorrichtung 110 des Systems 100 von 1. Die erste elektronische Vorrichtung 110 beinhaltet mehrere elektrische und elektronische Komponenten, die den Komponenten und Modulen in der ersten elektronischen Vorrichtung 110 Leistung, Betriebssteuerung und Schutz bereitstellen. Die erste elektronische Vorrichtung 110 beinhaltet unter anderem einen elektronischen Prozessor 230 (wie etwa einen programmierbaren elektronischen Mikroprozessor, Mikrocontroller oder eine ähnliche Vorrichtung), einen Speicher 235 (zum Beispiel einen nichtflüchtigen computer- oder maschinenlesbaren Speicher) und eine Kommunikationsschnittstelle 240. Der elektronische Prozessor 230 ist kommunikativ mit dem Speicher 235 und der Kommunikationsschnittstelle 240 verbunden. Der elektronische Prozessor 230, in Koordination mit dem Speicher 235 und der Kommunikationsschnittstelle 240, ist unter anderem zum Implementieren der hier beschriebenen Verfahren ausgelegt. Die erste elektronische Vorrichtung 110 kann Untermodule enthalten, die zusätzliche elektronische Prozessoren, zusätzlichen Speicher oder zusätzliche anwendungsspezifische integrierte Schaltungen (ASICs) zum Abwickeln von Kommunikationsfunktionen, Verarbeiten von Signalen und Anwenden der nachstehend angeführten Verfahren beinhalten. Bei einigen Ausführungsformen beinhaltet die erste elektronische Vorrichtung 110 zusätzliche, weniger oder andere Komponenten. Obgleich dies hier nicht veranschaulicht ist, sei angemerkt, dass die zweite elektronische Vorrichtung 115 und die dritte elektronische Vorrichtung 120 Komponenten und Verbindungen ähnlich denen, die gemäß Veranschaulichung in 2B in der ersten elektronischen Vorrichtung 110 enthalten sind, enthalten.
-
3 ist ein Flussdiagramm, das ein Beispielverfahren 300 zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk (zum Beispiel das Kommunikationsnetzwerk 125) verbundene elektronische Vorrichtungen (zum Beispiel die erste elektronische Vorrichtung 110, die zweite elektronische Vorrichtung 115 und die dritte elektronische Vorrichtung 120) Ausnahmen korrekt behandeln, bereitstellt. Bei einigen Ausführungsformen beginnt das Verfahren 300, wenn der elektronische Prozessor 200 in Schritt 305 über das Kommunikationsnetzwerk 125 eine erste Nachricht an mehrere elektronische Vorrichtungen sendet, um zu bestimmen, welche der elektronischen Vorrichtungen reagieren. Beispielsweise sendet der elektronische Prozessor 200 in dem System 100 die erste Nachricht an die erste elektronische Vorrichtung 110, die zweite elektronische Vorrichtung 115 und die dritte elektronische Vorrichtung 120. Wie nachstehend ausführlicher beschrieben wird, beinhaltet der Header der ersten Nachricht eine globale Kennung. Unter der Annahme, dass die elektronischen Vorrichtungen 110, 115, 120 und das Kommunikationsnetzwerk 125 ordnungsgemäß funktionieren, empfängt jede der elektronischen Vorrichtungen 110, 115, 120 die erste Nachricht und sendet eine Antwortnachricht an den elektronischen Prozessor 200, mit der bestätigt wird, dass sie mit dem Kommunikationsnetzwerk 125 verbunden sind. 4 stellt ein grafisches Beispiel von Schritt 305 bereit. In dem in 4 veranschaulichten Ausführungsbeispiel sendet ein Personal Computer die erste Nachricht an mehrere durch einen CAN-Bus verbundene elektronische Steuereinheiten (ECUs).
-
In Schritt 310 erstellt der elektronische Prozessor 200 eine Aufzeichnung oder ein Protokoll jeder elektronischen Vorrichtung, von der er eine Antwort auf die erste Nachricht empfängt. Beispielsweise kann der elektronische Prozessor 200 eine eindeutige Kennung für jede elektronische Vorrichtung, die auf die erste Nachricht antwortet, aufzeichnen. Es sei angemerkt, dass, wenn eine elektronische Vorrichtung hier laut Beschreibung in einem Protokoll oder einer Aufzeichnung enthalten oder aufgezeichnet ist, es eine eindeutige Kennung der elektronischen Vorrichtung ist, die in dem Protokoll aufgezeichnet ist. Das Protokoll von Antworten ist ein Protokoll elektronischer Vorrichtungen, die zum Testen verfügbar sind. Der elektronische Prozessor 200 kann einem Benutzer über die Anzeigevorrichtung 215 das Protokoll elektronischer Vorrichtungen, die zum Testen verfügbar sind, anzeigen, sodass der Benutzer die speziellen elektronischen Vorrichtungen, die der Benutzer testen möchte, auswählen kann. In Schritt 315 empfängt der elektronische Prozessor 200 eine Auswahl einer oder mehrerer elektronischer Vorrichtungen zum Testen oder eine Auswahl, mit der bestätigt wird, dass jede elektronische Vorrichtung der mehreren elektronischen Vorrichtungen, die zum Testen verfügbar sind, getestet werden sollte.
-
In Schritt 320 sendet der elektronische Prozessor 200 eine erste Statusabfragenachricht an jede mit dem Kommunikationsnetzwerk 125 verbundene elektronische Vorrichtung (zum Beispiel die elektronischen Vorrichtungen 110, 115, 120). Mit der ersten Statusabfragenachricht wird abgefragt, ob die elektronischen Vorrichtungen korrekt arbeiten. Wie nachstehend ausführlicher beschrieben wird, beinhaltet der Header der ersten Statusabfragenachricht eine globale Kennung. Obgleich die erste Statusabfragenachricht an jede der mit dem Kommunikationsnetzwerk 125 verbundenen elektronischen Vorrichtungen gesendet wird, zeichnet der elektronische Prozessor 200 in einem Protokoll von Antworten auf die erste Statusabfragenachricht nur gültige Antworten auf, die er von den ausgewählten elektronischen Vorrichtungen empfängt. Beispielsweise kann der elektronische Prozessor 200 eine eindeutige Kennung für jede elektronische Vorrichtung aufzeichnen, die mit einer gültigen Antwort auf die erste Statusabfragenachricht antwortet. In einigen Fällen antworten nicht alle der ausgewählten elektronischen Vorrichtungen. Daher liefert die bzw. das durch den elektronischen Prozessor 200 erstellte Aufzeichnung oder Protokoll von Antworten auf die erste Statusabfragenachricht eine Angabe darüber oder unterstützt beim Bestätigen, welche der ausgewählten elektronischen Vorrichtungen korrekt arbeiten. Bei einigen Ausführungsformen beginnt das Verfahren 300 bei Schritt 320 anstatt Schritt 305, und der elektronische Prozessor 200 zeichnet in dem Protokoll von Antworten auf die erste Statusabfragenachricht jede von elektronischen Vorrichtungen auf, von denen der elektronische Prozessor 200 gültige Antworten auf die erste Statusabfragenachricht empfängt. In Schritt 325 sendet der elektronische Prozessor 200 eine Nachricht mit Fuzzed-Daten an eine oder mehrere der elektronischen Vorrichtungen (zum Beispiel jede der mehreren elektronischen Vorrichtungen oder jede der ausgewählten elektronischen Vorrichtungen). Im Allgemeinen beinhalten Fuzzed-Daten zufällige, absichtlich korrupte oder große Mengen von Daten, die dahingehend gestaltet sind, eine Fehlfunktion einer elektronischen Vorrichtungen zu verursachen. Fuzzed-Daten können beispielsweise Daten eines unzulässigen Typs oder einer unzulässigen Größe beinhalten, die bei Empfang durch eine elektronische Vorrichtung bewirken, dass die elektronische Vorrichtung eine Operation durchführt, die dazu führt, dass die elektronische Vorrichtung (genauer, ein elektronischer Prozessor der elektronischen Vorrichtung) eine Ausnahme auslöst. Beinhalten in einem Speicher der elektronischen Vorrichtung gespeicherte computerausführbare Anweisungen Anweisungen zum Behandeln der Ausnahme, so wird die elektronische Vorrichtung nach Auslösen der Ausnahme weiter normal arbeiten. Anderenfalls wird die elektronische Vorrichtung nach Auslösen der Ausnahme eine Fehlfunktion aufweisen, beispielsweise indem sie nicht mehr reagiert.
-
Bei einigen Ausführungsformen empfängt der elektronische Prozessor 200 eine Datei, beispielsweise eine ARXML(Autosar-XML)-Datei, und parst die ARXML-Datei, um eine Nachricht mit Fuzzed-Daten zu erstellen, unter Verwendung der Fuzzer-Software 225. Durch Parsen der ARXML-Datei bestimmt der elektronische Prozessor 200 gültige Nachrichten, zu deren Empfang die elektronischen Vorrichtungen 110, 115, 120 ausgelegt sind. Um Fuzzed-Daten zu erstellen, kann der elektronische Prozessor 200 das Datenlängenfeld einer gültigen Nachricht, die Arbitrierungs-ID einer gültigen Nachricht, die Länge einer gültigen Nachricht, die Nutzdaten einer gültigen Nachricht und dergleichen abändern. Durch leichte Abänderung gültiger Nachrichten anstatt einer Erstellung einer Nachricht, die zufällige Daten beinhaltet, wird die Wahrscheinlichkeit, dass der elektronische Prozessor 200 eine Nachricht erstellt, die bei Empfang durch eine elektronische Vorrichtung bewirkt, dass die elektronische Vorrichtung eine Ausnahme auslöst, erhöht.
-
In Schritt 330 sendet der elektronische Prozessor 200 eine zweite Statusabfragenachricht an die elektronischen Vorrichtungen. Wie nachfolgend ausführlicher beschrieben wird, beinhaltet der Header der zweiten Statusabfragenachricht eine globale Kennung. Der elektronische Prozessor 200 zeichnet in einem Protokoll von Antworten auf die zweite Abfragenachricht jede elektronische Vorrichtung auf, die mit einer gültigen Antwort auf die zweite Statusabfragenachricht antwortet. Beispielsweise kann der elektronische Prozessor 200 eine eindeutige Kennung für jede elektronische Vorrichtung aufzeichnen, die mit einer gültigen Antwort auf die zweite Statusabfragenachricht antwortet. Es sei angemerkt, dass in einigen Fällen, bei denen eine Auswahl elektronischer Vorrichtungen durch den elektronischen Prozessor 200 empfangen wird, nur die ausgewählten Vorrichtungen, die mit einer gültigen Antwort auf die zweite Statusabfragenachricht antworten, in dem Protokoll von Antworten auf die zweite Abfragenachricht aufgezeichnet werden. Das Protokoll von Antworten auf die zweite Abfragenachricht stellt eine Angabe darüber bereit, welche elektronischen Vorrichtungen nach Empfang der Fuzzed-Daten ordnungsgemäß arbeiten. Es versteht sich, dass eindeutige Kennungen von elektronischen Vorrichtungen, die nicht auf die zweite Statusabfragenachricht antworten oder nicht mit einer gültigen Antwort auf die zweite Statusabfragenachricht antworten, nicht durch den elektronischen Prozessor 200 aufgezeichnet werden. Eine vorbestimmte Zeitdauer nachdem die zweite Statusabfragenachricht an die elektronischen Vorrichtungen gesendet wurde vergleicht der elektronische Prozessor 200 die eindeutigen Kennungen elektronischer Vorrichtungen, die mit einer gültigen Antwort auf die erste Statusabfragenachricht geantwortet haben, mit den eindeutigen Kennungen elektronischer Vorrichtungen, die mit einer gültigen Antwort auf die zweite Statusabfragenachricht geantwortet haben. Mittels dieses Vergleichs bestimmt der elektronische Prozessor 200, ob eine oder mehrere der ausgewählten elektronischen Vorrichtungen eine Ausnahme nicht korrekt behandelt hat. In Schritt 335 zeichnet der elektronische Prozessor 200 die elektronischen Vorrichtungen, die eine Ausnahme nicht korrekt behandelt haben (elektronische Vorrichtungen, die mit einer gültigen Antwort auf die erste Statusabfragenachricht antworten und mit einer ungültigen Antwort auf die zweite Statusabfragenachricht antworten oder nicht auf die zweite Statusabfragenachricht antworten) in einem Ausfallprotokoll auf.
-
Bei einigen Ausführungsformen sendet der elektronische Prozessor 200 nach einer vorbestimmten Zeitdauer eine dritte Statusabfragenachricht an jede in dem Ausfallprotokoll aufgezeichnete elektronische Vorrichtung. Bei einigen Ausführungsformen sendet der elektronische Prozessor 200, wenn eine in dem Ausfallprotokoll aufgezeichnete elektronische Vorrichtung nicht auf die dritte Statusabfragenachricht antwortet oder mit einer ungültigen Antwort antwortet, einen Warnhinweis an eine mobile Vorrichtung oder zeigt über die Anzeigevorrichtung 215 eine Option zum Neustarten der eine Fehlfunktion aufweisenden elektronischen Vorrichtung an. Als Reaktion auf einen Empfang, von der Eingabevorrichtung 220 oder der mobilen Vorrichtung, einer Auswahl der Option zum Neustarten der eine Fehlfunktion aufweisenden elektronischen Vorrichtung sendet der elektronische Prozessor 200 eine Nachricht an die eine Fehlfunktion aufweisende elektronische Vorrichtung zum Neustarten der eine Fehlfunktion aufweisenden elektronischen Vorrichtung. Bei anderen Ausführungsformen sendet der elektronische Prozessor 200, wenn eine in dem Ausfallprotokoll aufgezeichnete elektronische Vorrichtung nicht auf die dritte Statusabfragenachricht antwortet oder mit einer ungültigen Antwort antwortet, eine Nachricht an die eine Fehlfunktion aufweisende elektronische Vorrichtung zum Neustarten der eine Fehlfunktion aufweisenden elektronischen Vorrichtung. Bei einigen Ausführungsformen empfängt der elektronische Prozessor 200 neue oder überarbeitete computerausführbare Anweisungen und sendet die neuen oder überarbeiteten computerausführbaren Anweisungen an eine in dem Ausfallprotokoll aufgezeichnete elektronische Vorrichtung. Die neuen oder überarbeiteten computerausführbaren Anweisungen ersetzen computerausführbare Anweisungen, die zuvor in dem Speicher der elektronischen Vorrichtungen gespeichert waren. Die neuen computerausführbaren Anweisungen sind dahingehend gestaltet, zu verhindern, dass die elektronische Vorrichtung eine Fehlfunktion aufweist, wenn die elektronische Vorrichtung in Zukunft Daten empfängt, die den Fuzzed-Daten, die zu ihrer Aufzeichnung in dem Ausfallprotokoll geführt haben, ähnlich sind.
-
5 veranschaulicht ein Beispiel einer Statusabfragenachricht, die der elektronische Prozessor 200 an die elektronischen Vorrichtungen sendet. Anders als die Statusabfragenachrichten vorheriger Systeme, die in dem Header der Statusabfragenachricht eine Vorrichtungskennung beinhalten, die für eine einzige elektronische Vorrichtung eindeutig ist, beinhaltet der Header einer durch das System 100 gesendeten Statusabfragenachricht eine globale Kennung, die jede mit dem Kommunikationsnetzwerk 125 verbundene elektronische Vorrichtung abfragt. Der Header der ersten Nachricht und der zweiten Abfragenachricht beinhaltet ebenfalls eine globale Kennung.
-
6 ist eine 4 ähnliche grafische Veranschaulichung, die die Schritte 320, 325 und 330 des Verfahrens 300 veranschaulicht.
-
7 ist eine grafische Veranschaulichung, die 6 ähnlich ist. 7 veranschaulicht die Schritte 320, 325 und 330 des Verfahrens 300, wenn jede der ausgewählten elektronischen Vorrichtungen mit einer gültigen Antwort auf die erste Statusabfragenachricht und die zweite Statusabfragenachricht antwortet.
-
8 ist eine grafische Veranschaulichung, die 7 ähnlich ist. 8 veranschaulicht die Schritte 320, 325 und 330 des Verfahrens 300, wenn jede der ausgewählten elektronischen Vorrichtungen mit einer gültigen Antwort auf die erste Statusabfragenachricht antwortet, die elektronische Vorrichtung ECU_n-2 jedoch nicht auf die zweite Statusabfragenachricht antwortet.
-
Somit stellen die hier beschriebenen Ausführungsformen unter anderem ein System und ein Verfahren zum simultanen Testen, ob mehrere über ein Kommunikationsnetzwerk verbundene elektronische Vorrichtungen Ausnahmen korrekt behandeln, bereit. Verschiedene Merkmale und Vorteile der Ausführungsformen sind in den folgenden Ansprüchen dargelegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-