Sistema de compilación y ejecución

De Wikipedia, la enciclopedia libre

En programación informática, un sistema de compilación y ejecución, sistema de compilación, carga y ejecución, sistema de ensamblado y ejecución, o sistema de carga y ejecución,[1][2][3]​ es un procesador de lenguaje de programación en el que los pasos de compilación, ensamblado o enlazado no están separados de la ejecución del programa. Las formas intermedias del programa generalmente se guardan en la memoria principal y no se guardan en el sistema de archivos.[4][5][6][7][8][9][1][2]

Ejemplos de sistemas de compilación y ejecución son WATFOR, PL/C y Dartmouth BASIC.[3]

Un ejemplo de un sistema de compilación y ejecución es el cargador OS/360, que realizaba muchas de las funciones del enlazador, pero colocaba el programa vinculado en la memoria en lugar de crear un ejecutable en el disco.[10]​ Los sistemas de compilación y ejecución difieren de los intérpretes, que ejecutan directamente código fuente o ejecutan una representación intermedia.

Análisis[editar]

Las ventajas de los sistemas de compilación y ejecución son:

  • El usuario no necesita preocuparse por los pasos separados de compilación, ensamblaje, enlace, carga y ejecución.
  • La velocidad de ejecución es generalmente muy superior a los sistemas interpretados.
  • Son simples y fáciles de implementar.[3]

Las desventajas de los cargadores de compilación y ejecución son:

  • Hay desperdicio en el espacio de la memoria debido a la presencia del ensamblador.[7][3]
  • El código debe ser reprocesado cada vez que se ejecuta.[11][7][3]
  • Los sistemas con múltiples módulos, posiblemente en diferentes idiomas, no pueden manejarse naturalmente dentro de este entorno de trabajo.[7][3]

Los sistemas compilar y ejecutar eran populares en entornos académicos, donde los programas de los estudiantes eran pequeños, se compilaban muchas veces, generalmente se ejecutaban rápidamente y, una vez depurados, rara vez necesitaban volver a ejecutarse.

Véase también[editar]

Referencias[editar]

  1. a b Weik, 2000a, p. 66.
  2. a b Weik, 2000b, p. 260.
  3. a b c d e f Dhotre y Puntambekar, 2008, pp. 3—2.
  4. Donovan, 1972, pp. 150.
  5. Janson, 1985, pp. 184.
  6. Morris, 1992, pp. 477.
  7. a b c d Isrd, 2006, pp. 226.
  8. Joseph, 2007, pp. 130.
  9. Dhotre y Puntambekar, 2008, pp. 3—2.
  10. IBM Corporation (1972). IBM OS Linkage Editor and Loader. 
  11. Janson, 1985, pp. 189.
  • Dhotre, I.A.; Puntambekar, A.A. (2008). Systems Software. Technical Publications. ISBN 9788184315004. 
  • Donovan, John J. (1972). Systems programming. McGraw-Hill computer science series. McGraw-Hill. (requiere registro). 
  • Isrd (2006). Computer Organization. ACE series. Tata McGraw-Hill Education. ISBN 9780070593619. 
  • Janson, Philippe (1985). Operating systems: structures and mechanisms. Academic Press. ISBN 9780123802309. 
  • Joseph, M. (2007). System Software. Firewall Media. ISBN 9788131800362. 
  • Morris, Christopher G. (1992). «compile-and-go». Academic Press dictionary of science and technology. Gulf Professional Publishing. ISBN 9780122004001. 
  • Weik, Martin H. (2000a). «assemble-and-go». Computer science and communications dictionary 2. Springer. ISBN 9780792384250. 
  • Weik, Martin H. (2000b). «compile-and-go». Computer science and communications dictionary 2. Springer. ISBN 9780792384250. 


Enlaces externos[editar]