Anda di halaman 1dari 3

Compiladores Cruzados

Kevin Edgar Chura Mamani lordkannon@hotmail.com, Jorge Antonio Linares Vera jlinformatico@gmail.com

Estudiantes del 3er ao A del Curso de Compiladores y Teora de Lenguajes. Escuela Acadmico Profesional de Ingeniera en Informtica y Sistemas Facultad de Ingeniera. Universidad Nacional Jorge Basadre Grohmann Tacna, Per

Resumen En este artculo se define los conceptos de un compilador cruzado, debido a un caso de estudio que naci por necesidad y que se presentaron en varias situaciones. Por ejemplo, una empresa de la posibilidad de apoyar varias versiones diferentes de un sistema operativo o de soporte a varios sistemas operativos diferentes. Mediante el uso de un compilador cruzado, una sola estructura medio ambiente puede ser configurada para compilar para cada uno de estos objetivos. Compilar en una granja de servidores. Al igual que compilar para varias mquinas, una construccin compleja que involucra muchos compilar las operaciones se pueden ejecutar en cualquier mquina que es gratis sin importar su marca o la versin actual de un sistema operativo.

programa fuente y el back end, la segunda fase encarga de generar el cdigo para la mquina objeto. Al puente de unin de ambas fases era un lenguaje intermedio que le dieron de nombre UNCOL (Universal Computer Oriented Language). Entonces para que un compilador fuera utilizable por varias mquinas basta nicamente modificar su back end, los proyectos de intento continuaron pero qued como un ejercicio terico. Hoy en da se puede escribir nuevas versiones de compilador, hay muchas herramientas que facilitan la tarea de escribir compiladores o un intrprete informtico. Estas herramientas nos permiten generar el esqueleto del analizador sintctico a partir de una definicin del lenguaje de partida especificada normalmente el programador del compilador realiza las tareas de programar las acciones semnticas asociadas. Las necesidades que existen obligaron a que aparezcan nuevas herramientas tiles para cuando quiere compilarse cdigo para una plataforma diferente a aquella en la que se ejecuta o para una plataforma a la que no se tiene acceso, o cuando es incmodo compilar en dicha plataforma (sistemas empotrados); ordenadores integrados en dispositivos que tienen recursos extremadamente limitados. Dichas herramientas se denominan compiladores cruzados.
III.FUNDAMENTO

I. INTRODUCCIN La compilacin consiste en coger los ficheros fuente que conforman un programa y, lnea por lnea, traducir cada instruccin de alto nivel por varias instrucciones en cdigo mquina que realicen lo que la instruccin de alto nivel expresa. Si se repite esa traduccin para todas las lneas del cdigo fuente, obtendremos un conjunto de instrucciones mquina, grabando esas instrucciones mquina en un fichero que contiene una estructura interna, el cul un determinado sistema operativo es capaz de entender, obteniendo un fichero binario ejecutable, o simplemente, "un ejecutable". El encargado de realizar esta traduccin es un tipo de programa llamado compilador. En su funcionamiento ms bsico, un compilador acepta uno o ms ficheros fuente y si no contienen errores sintcticos produce un fichero binario ejecutable, que un sistema operativo ser capaz de cargar en memoria principal y pedir a la CPU que lo ejecute. A menudo se compara a un compilador con un traductor de idiomas. Por ejemplo un libro escrito en ingls; que para publicar su versin en espaol, una persona que conoce las reglas de los dos idiomas y dispone de la tcnica para expresarse en ambos va leyendo el libro en ingls frase a frase y va escribiendo su equivalente en espaol. Estas tcnicas de compilacin se fueron desarrollando, pero ya desde 1958, personalidades como Strong y otros proponan una solucin al problema de que un compilador fuera utilizable por varias mquinas objeto, para ello se dividi por primera vez al compilador en dos fases. El front end, la primera fase encargada de analizar el

Compiladores Cruzados Generan cdigo para un sistema distinto del que est funcionando. Que es un Compilador Cruzado? Un compilador cruzado (crosscompiler) es aquel que genera cdigo ejecutable para una plataform diferente a aquella en la que se ejecuta. Esta herramienta es util cuando quiere compilarse cdigo para una plataforma a la que no se tiene acces, o cuando es incomodo o imposible compilar en dicha plataforma (como en el caso de los sistemas empotrados). Por ejemplo, supongamos que queremos desarrollar aplicaciones para un telefono movil, una PDA o una consola de videojuegos. Normalmente ser ms cmodo realizar el desarrollo en un PC y luego volcar el codigo objeto en el dispositivo de destino. En

estas situaciones, el compilador que usaremos en el PC es un caso de compilador cruzado. Un ejemplo de un compilador con estas posibilidades es el NASM, que puede ensamblar, entre otros formatos, ELF(para sistemas UNIX) y COM(para DOS) Como y mencionamos la Gestin de la memoria es una de las IV. CONCLUSIONES Es un mundo de ventajas y desventajas : rendimiento, facilidad de uso, facilidad de implementacin, y la capacidad de enhebrar, slo para nombrar unos pocos. V.REFERENCIAS
[1] Anlisis y Diseo de Compiladores Emiliano Llano Diaz - 1era Edicin Junio 2002 - Col Roma Mxico, D.F. [2] Cuaderno N38 Anlisis Semntico en Pocesadores de Lenguaje. Universidad de Oviedo - Espaa. Editorial Servitec Manual del Curso: Teora de Lenguajes (Unidad III) Tema: Descripcin de Lenguajes de Programacin MSc. Diana Cecilia Muoz Casanova Ingeniera de Sistemas e Informtica Facultad de Ingeniera - E.A.P de Ingeniera de Sistemas e Informtica - Universidad del Santa - Chimbote Cross Compiler. Se encuentra disponible en: http://www.multilingualarchive.com/ma/enwiki/es/Cross_compiler Compiladores Cruzados. Se encuentra disponible en: http://www.slideshare.net/Rolandovonchong/compiladores-8733490

[3]

[4]

[5]

Anda mungkin juga menyukai