TU Darmstadt / ULB / TUbiblio

Encoding the Java Virtual Machine's Instruction Set

Eichberg, Michael ; Sewe, Andreas (2011)
Encoding the Java Virtual Machine's Instruction Set.
Fifth Workshop on Bytecode Semantics, Verification, Analysis and Transformation (Bytecode 2010). Paphos, Cyprus (27 Mar 2010)
doi: 10.1016/j.entcs.2011.02.004
Konferenzveröffentlichung, Bibliographie

Kurzbeschreibung (Abstract)

New toolkits that parse, analyze, and transform Java Bytecode are frequently developed from scratch to obtain a representation suitable for a particular purpose. But, while the functionality implemented by these toolkits to read in class files and do basic control- and data-flow analyses is comparable, it is implemented over and over again. Differences manifest themselves mainly in minor technical issues. To avoid the repetitive development of similar functionality, we have developed an XML-based language for specifying bytecode-based instruction sets. Using this language, we have encoded the instruction set of the Java Virtual Machine such that it can directly be used, e.g., to generate the skeleton of bytecode-based tools. The XML format hereby specifies both the format of the instructions and their effect on the stack and the local registers upon execution. This enables developers of static analyses to generate generic control- and data-flow analyses, e.g., an analysis that transforms Java Bytecode into static single assignment form. To assess the usefulness of our approach, we have used the encoding of the Java Virtual Machine's instruction set to develop a framework for the analysis and transformation of Java class files. The evaluation shows that using the specification significantly reduces the development effort when compared to manual development.

Typ des Eintrags: Konferenzveröffentlichung
Erschienen: 2011
Autor(en): Eichberg, Michael ; Sewe, Andreas
Art des Eintrags: Bibliographie
Titel: Encoding the Java Virtual Machine's Instruction Set
Sprache: Englisch
Publikationsjahr: 18 Februar 2011
Titel der Zeitschrift, Zeitung oder Schriftenreihe: Electronic Notes in Theoretical Computer Science
(Heft-)Nummer: 4
Buchtitel: Proceedings of the Fifth Workshop on Bytecode Semantics, Verification, Analysis and Transformation
Reihe: Electronic Notes in Theoretical Computer Science
Band einer Reihe: 264
Veranstaltungstitel: Fifth Workshop on Bytecode Semantics, Verification, Analysis and Transformation (Bytecode 2010)
Veranstaltungsort: Paphos, Cyprus
Veranstaltungsdatum: 27 Mar 2010
DOI: 10.1016/j.entcs.2011.02.004
Kurzbeschreibung (Abstract):

New toolkits that parse, analyze, and transform Java Bytecode are frequently developed from scratch to obtain a representation suitable for a particular purpose. But, while the functionality implemented by these toolkits to read in class files and do basic control- and data-flow analyses is comparable, it is implemented over and over again. Differences manifest themselves mainly in minor technical issues. To avoid the repetitive development of similar functionality, we have developed an XML-based language for specifying bytecode-based instruction sets. Using this language, we have encoded the instruction set of the Java Virtual Machine such that it can directly be used, e.g., to generate the skeleton of bytecode-based tools. The XML format hereby specifies both the format of the instructions and their effect on the stack and the local registers upon execution. This enables developers of static analyses to generate generic control- and data-flow analyses, e.g., an analysis that transforms Java Bytecode into static single assignment form. To assess the usefulness of our approach, we have used the encoding of the Java Virtual Machine's instruction set to develop a framework for the analysis and transformation of Java class files. The evaluation shows that using the specification significantly reduces the development effort when compared to manual development.

Freie Schlagworte: Java Bytecode; Java Virtual Machine Specification; XML
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Softwaretechnik
LOEWE > LOEWE-Zentren > CASED – Center for Advanced Security Research Darmstadt
Zentrale Einrichtungen
LOEWE
LOEWE > LOEWE-Zentren
Hinterlegungsdatum: 01 Mär 2011 14:09
Letzte Änderung: 05 Mär 2013 09:46
PPN:
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen