Bestimmung der Ausführungszeit von Java-Anwendungen zur Laufzeit
Files
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Das Auslagern von Programmcode stellt eine Möglichkeit dar, die Ausdauer und Leistungsfähigkeit akkubetriebener Mobilgeräte zu verbessern. Um feststellen zu können, ob sich das Auslagern lohnt, ist es unter anderem notwendig, die Ausführungszeit von Programmteilen zu bestimmen. In dieser Arbeit wird hierzu eine Verfahrensweise vorgestellt, die ohne Zugriff auf den Quellcode eines laufenden Java-Programms auskommt. Dabei wird durch statische Analyse von Java- Methoden die Häufigkeit der Ausführung ihrer Abschnitte ermittelt und mit Messergebnissen der einzelnen Anweisungen auf die Ausführungsdauer der gesamten Methode geschlossen. Bei der Messung solcher Anweisungen, mit denen die Java Virtual Machine instruiert wird, treten Probleme auf, zu denen diese Arbeit Lösungsansätze und eine mögliche Implementierungsweise liefert. Es wird weiterhin gezeigt, wie durch dynamische Analyse die so gewonnenen Ergebnisse zur Laufzeit verbessert werden können. Aus dieser Arbeit resultiert eine Entscheidungsgrundlage für die Offloading-Komponente, mit der diese fundiert entscheiden kann, ein Programmteil lokal auszuführen oder zu einem entfernten Server zu übertragen, um die Berechnung dort durchführen zu lassen und so Energie zu sparen.