Publication:
Desarrollo de un compilador de una representación basada en reglas a código de bytes de Java

Loading...
Thumbnail Image
Official URL
Full text at PDC
Publication Date
2009
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citations
Google Scholar
Research Projects
Organizational Units
Journal Issue
Abstract
El objetivo de este proyecto es la realización de un compilador cuyo lenguaje fuente es una representación intermedia basada en reglas, y su lenguaje objeto es un lenguaje próximo al bytecode de Java, sin llegar a serlo, es el lenguaje de entrada de la aplicación Jasmin, que genera como salida un fichero .class. Nuestro proyecto consta de tres pasos. El primero, es la decompilación de programas en bytecode a esa representación intermedia. La motivación de hacer esa traducción es hacer análisis de consumo de recursos y terminación de programas en código de byte de Java (que posiblemente utilizan las librerías de Java. Es de lo que se encarga el sistema COSTA. El segundo paso es, con la esperanza en un futuro de haber hecho optimizaciones de código de esos programas, trabajando con las reglas, volver a compilar ese programa al bytecode de Java, en el que podemos distinguir otros dos pasos. El primero es la generación de un archivo .j, el que acepta la aplicación Jasmin, cuya función es ensamblar ese archivo generando un .class, añadiendo las referencias simbólicas, que es el lo que consiste el tercer paso. [ABSTRACT] The aim of this project is the development of a compiler Whose source language is an intermediate rule-based representation, and its object code is a language close to Java bytecode, homely it is the language of the Jasmin application. Our project consists of three steps. The first step is the decompilation of Java bytecode to that intermediate representation. The motivation to make that translation is to perform resource bound and termination analyses for programs that possibly use Java libraries. This is the function of the COSTA system. The second step is, with the idea of making code Optimizations to those algorithms in the future working with the rules, to translate that program again, from the rules to Java bytecode, distinguishing two other steps: The first one is the J File generation, which is the input of the Jasmin application, whose goal is to assemble that file making a CLASS File, adding the symbolic references, being this the third step.
Description
Trabajo de clase de la asignatura Sistemas Informáticos (Facultad de Informática, Curso 2008-2009)
Unesco subjects
Keywords
Citation