Tabla de contenidos
El compilador Ahead-of-Time, o AOT para abreviar, realiza el trabajo de compilación completa antes de que el código alcance el nivel funcional responsable de la ejecución. Por tanto, el principio funcional del compilador AOT compite directamente con el compilador JIT.
Compilación: una forma de implementación
Cuando la compilación (montaje, cotejar) es un tipo de software de aplicación. Básicamente, se trata de transformar creados textos de origen en órdenes de la máquina.
Si el texto fuente se crea en un lenguaje de programación de alto nivel , el compilador asume la tarea de convertirlo en estructuras de instrucción que puedan ser ejecutadas por el procesador. Las instrucciones formuladas del texto fuente se traducen en secuencias adecuadas de comandos de máquina. Después de la compilación, se genera el programa correspondiente, que se presenta como código ejecutable.
Los programas compilados tienen un comportamiento de flujo optimizado. La mayor velocidad de los procesos es una gran ventaja, especialmente para programas con procesos largos. La introducción de un nuevo procesador u otro sistema operativo va acompañada de una recompilación del código fuente, siempre en función del modo de compatibilidad.
Compilador AOT: adelantado al tiempo de ejecución
Cuando se describe «Avance-of-Time», la distinción con el principio de procedimiento de «Just-in-Time» (JIT) es esencial. Las abreviaturas AOT y JIT se refieren específicamente al momento de la compilación. Ahead-of-Time debe entenderse en el sentido literal de la palabra.
Con la compilación AOT, el código generado por el programador se traduce al lenguaje de máquina del procesador utilizado antes de ejecutar una aplicación. Compiladores AOT para la compilación de lenguajes de alto nivel como C y C ++, así como el código CIL representaciones intermedio y Java – código de bytes diseñados.
Ventaja y compromiso de procedimiento del compilador AOT
La compilación AOZ permite ventajas de velocidad en tiempo de ejecución gracias al tiempo de inicialización más corto. Si bien el compilador JIT comenzaría su ejecución de compilación al comienzo de un proceso de procesamiento, si se utiliza un compilador AOT, la compilación ya está completa en este momento.
El compromiso del proceso cuando se usa el compilador AOT es obvio. En el curso de la compilación a través del compilador AOT, se genera un código que ha perdido su independencia de plataforma.
JAOTC: compilador avanzado para Java 9
La versión de Java 9 tiene un compilador AOT desde otoño de 2016. Esto es importante porque hasta este punto Java solo admitía la compilación JIT. El objetivo de integrar la opción AOT era optimizar las horas de inicio de los programas Java. La herramienta correspondiente dentro del mundo de Java se llama «JAOTC».
Resumen
El término «antes de tiempo» utilizado en el compilador AOT se refiere al momento de la compilación. Ya en el nombre da una indicación del objetivo de este procedimiento: Se trata de mejorar los tiempos de inicio de los programas en el cliente. Por otro lado, esta ventaja hace que el código compilado pierda su independencia de plataforma.