El compilador Ahead-of-Time (AOT) es un tipo de compilador que utiliza el método de compilación antes de tiempo . Se utiliza tanto para compilar lenguajes de alto nivel (por ejemplo, C , C++ o Pascal ), como para compilar lenguajes "intermedios", como Java bytecode , .NET Common Intermediate Language (CIL) , IBM System/ 38, Sistema IBM i.
Muchas implementaciones de lenguajes de programación utilizan la compilación JIT , que le permite compilar código intermedio directamente en código binario en tiempo de ejecución, lo que puede aumentar significativamente la velocidad de ejecución. JIT requiere una asignación de memoria adicional.
El método AOT no requiere una asignación de memoria adicional y la compilación AOT se lleva a cabo con una carga mínima en el sistema. El proceso de compilación se realiza completamente antes de que se ejecute el programa.