Worst-case execution time analysis for real-time Java

Saved in:
Bibliographic Details
Title: Worst-case execution time analysis for real-time Java
Authors: Huber, Benedikt
Contributors: Grünbacher, Herbert, Schöberl, Martin
Publication Year: 2020
Collection: TU Wien: reposiTUm
Subject Terms: Laufzeitanalyse, Java, JOP, IPET, uppaal, timed automata, WCET
Description: Zsfassung in dt. Sprache ; http://bene.sivity.net/thesis/ ; Die Korrektheit eines Echtzeitsystems ist nicht nur von der Programmlogik, sondern auch von zeitlichen Faktoren abhänging. So muss beispielsweise ein periodisch aufgerufener Programmteil rechtzeitig ausgeführt und auf Ereignisse innerhalb einer festgelegten Frist reagiert werden. Um die Einhaltung dieser Anforderungen zu garantieren, ist eine Worst Case Execution-Time (WCET) Analyse notwendig, um festzustellen, wieviel Zeit die Ausführung eines Programmfragments benötigt. Für sicherheitskritische Systeme ist man im Besonderen an der Berechnung einer sicheren oberen Schranke der maximalen Laufzeit interessiert. Diese Diplomarbeit behandelt die Laufzeitanalyse der sequentiellen Programmteile sicherheitskritischer Java Echtzeitanwendungen. In diesem Rahmen wurde eine Applikation zur Laufzeitanalyse für den Java Prozessor JOP entwickelt und zwei unterschiedliche Techniken zur Berechnung der maximalen Laufzeit implementiert. Zum einen die häufig angewandte Technik der impliziten Pfadenumeration (Implicit Path Enumeration Technique (IPET)), welche die Laufzeitberechnung in ein Netzwerkfluss-Problem überführt. Der zweite Ansatz modelliert Programme als ein Netzwerk von timed automata, eine Erweiterung endlicher Automaten um zeitabhängige Systeme zu modellieren. Dabei wird der model checker uppaal verwendet, um im durch die Automaten implizit gegebenen Zustandsraum nach dem Ausführungspfad mit der maximalen Laufzeit zu suchen. Die Berechnung mit Hilfe von uppaal ist zwar teurer, ermöglicht aber im Gegenzug, Abhängigkeiten des Zeitverhaltens vom bisher aufgeführten Pfad zu modellieren, und damit eine genauere Approximation der maximalen Laufzeit zu erhalten. In beiden der oben skizzierten Ansätze wurde JOP's Methoden Cache berücksichtigt, um die Schranke zu verbessern. Da beide Techniken in dem Analysewerkzeug integriert wurden, konnten sie direkt miteinander verglichen werden. In den durchgeführten Experimenten stellte sich der timed automata Ansatz als für ...
Document Type: thesis
File Description: III, 78 Bl.
Language: English
Relation: https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-22905; http://hdl.handle.net/20.500.12708/11214; AC05040429; urn:nbn:at:at-ubtuw:1-22905
Availability: https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-22905
https://hdl.handle.net/20.500.12708/11214
Rights: open
Accession Number: edsbas.BE79F4B5
Database: BASE
Description
Abstract:Zsfassung in dt. Sprache ; http://bene.sivity.net/thesis/ ; Die Korrektheit eines Echtzeitsystems ist nicht nur von der Programmlogik, sondern auch von zeitlichen Faktoren abhänging. So muss beispielsweise ein periodisch aufgerufener Programmteil rechtzeitig ausgeführt und auf Ereignisse innerhalb einer festgelegten Frist reagiert werden. Um die Einhaltung dieser Anforderungen zu garantieren, ist eine Worst Case Execution-Time (WCET) Analyse notwendig, um festzustellen, wieviel Zeit die Ausführung eines Programmfragments benötigt. Für sicherheitskritische Systeme ist man im Besonderen an der Berechnung einer sicheren oberen Schranke der maximalen Laufzeit interessiert. Diese Diplomarbeit behandelt die Laufzeitanalyse der sequentiellen Programmteile sicherheitskritischer Java Echtzeitanwendungen. In diesem Rahmen wurde eine Applikation zur Laufzeitanalyse für den Java Prozessor JOP entwickelt und zwei unterschiedliche Techniken zur Berechnung der maximalen Laufzeit implementiert. Zum einen die häufig angewandte Technik der impliziten Pfadenumeration (Implicit Path Enumeration Technique (IPET)), welche die Laufzeitberechnung in ein Netzwerkfluss-Problem überführt. Der zweite Ansatz modelliert Programme als ein Netzwerk von timed automata, eine Erweiterung endlicher Automaten um zeitabhängige Systeme zu modellieren. Dabei wird der model checker uppaal verwendet, um im durch die Automaten implizit gegebenen Zustandsraum nach dem Ausführungspfad mit der maximalen Laufzeit zu suchen. Die Berechnung mit Hilfe von uppaal ist zwar teurer, ermöglicht aber im Gegenzug, Abhängigkeiten des Zeitverhaltens vom bisher aufgeführten Pfad zu modellieren, und damit eine genauere Approximation der maximalen Laufzeit zu erhalten. In beiden der oben skizzierten Ansätze wurde JOP's Methoden Cache berücksichtigt, um die Schranke zu verbessern. Da beide Techniken in dem Analysewerkzeug integriert wurden, konnten sie direkt miteinander verglichen werden. In den durchgeführten Experimenten stellte sich der timed automata Ansatz als für ...