He oído hablar de cosas como "C Runtime", "Visual C ++ 2008 Runtime", ".NET Common Language Runtime", etc.
- ¿Qué es exactamente el " tiempo de ejecución "?
- ¿De qué está hecho?
- ¿Cómo interactúa con mi código? O tal vez más precisamente, ¿cómo controla mi código?
Al codificar el lenguaje ensamblador en Linux, podría usar la instrucción INT para realizar la llamada al sistema. Entonces, ¿el tiempo de ejecución no es más que un montón de funciones prefabricadas que envuelven la función de bajo nivel en funciones más abstractas y de alto nivel? Pero, ¿no se parece más a la definición de la biblioteca, no al tiempo de ejecución?
¿Son "tiempo de ejecución" y " biblioteca de tiempo de ejecución " dos cosas diferentes?
AGREGAR 1
En estos días, creo que quizás Runtime tiene algo en común con la llamada máquina virtual , como JVM. Aquí está la cita que lleva a tal pensamiento:
Este proceso de compilación es lo suficientemente complejo como para dividirse en varias capas de abstracción, y estas generalmente involucran tres traductores: un compilador, una implementación de máquina virtual y un ensamblador. --- Los elementos de los sistemas informáticos (Introducción, El camino hacia la tierra del hardware)
AGREGAR 2
El libro Expert C Programming: Deep C Secrets . El Capítulo 6 Estructuras de datos en tiempo de ejecución es una referencia útil para esta pregunta.
runtime library
más un código de control y un cierto estado (suministrado por el sistema operativo).