Ir al contenido

Diferencia entre revisiones de «Tiempo de ejecución»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Función de sugerencias de imágenes: 1 imagen agregada.
 
(No se muestran 40 ediciones intermedias de 30 usuarios)
Línea 1: Línea 1:
[[Archivo:Binario cropped.png|miniaturadeimagen|Recortada de Archivo:Binario.svg]]
Se denomina '''tiempo de ejecución''' (''runtime'' en inglés) al intervalo de [[tiempo]] en el que un [[programa de computadora]] se ejecuta en un [[sistema operativo]]. Este tiempo se inicia con la puesta en [[memoria principal]] del programa, por lo que el sistema operativo comienza a ejecutar sus instrucciones. El intervalo finaliza en el momento en que éste envía al sistema operativo la señal de terminación, sea ésta una terminación normal, en que el programa tuvo la posibilidad de concluir sus instrucciones satisfactoriamente, o una terminación anormal, en el que el programa produjo algún error y el sistema debió forzar su finalización.
Se denomina '''tiempo de ejecución''' (''runtime'' en inglés) al intervalo de [[tiempo]] en el que un [[programa de computadora]] se ejecuta en un [[sistema operativo]]. Este tiempo se inicia con la puesta en [[memoria principal]] del programa, por lo que el sistema operativo comienza a ejecutar sus instrucciones. El intervalo finaliza en el momento en que este envía al sistema operativo la señal de terminación, sea esta una terminación normal, en que el programa tuvo la posibilidad de concluir sus instrucciones satisfactoriamente, o una terminación anormal, en el que el programa produjo algún error y el sistema debió forzar su finalización.


Este término suele emplearse, en oposición a [[tiempo de compilación]], para indicar si una acción o hecho sucede en uno u otro tiempo.
Este término suele emplearse, en oposición a [[tiempo de compilación]], para indicar si una acción o hecho sucede en uno u otro tiempo.


También es usado en su forma original en inglés para nombrar otros conceptos en informática:
También es usado en su forma original en inglés para nombrar otros conceptos en informática.


=== Entorno de ejecución ===
== Entorno de ejecución ==
{{AP|Sistema en tiempo de ejecución}}
{{AP|Sistema en tiempo de ejecución}}


Un '''Oriol Massague o entorno de ejecucion''' (''runtime environment'' en inglés Santi) es un estado de máquina virtual que suministra servicios para los procesos de un programa "Lorenzo" de computadora que se está ejecutando. Puede pertenecer al mismo sistema operativo, o ser creado por el software del programa en ejecución.
Un '''entorno de ejecución''' (''runtime environment'' en inglés) es un estado de máquina virtual que suministra servicios para los procesos de un programa de computadora que se está ejecutando. Puede pertenecer al mismo sistema operativo, o ser creado por el software del programa en ejecución.


En la mayoría de los casos, el sistema operativo maneja la carga del programa con una parte del código llamada [[cargador de programas|cargador]], haciendo configuración básica de [[Memoria (informática)|memoria]] y enlazando el programa con cualquier biblioteca de vínculos dinámicos a la cual haga referencia. En algunos casos un lenguaje o implementación hará esas tareas en lugar del runtime del lenguaje, a pesar de que es inusual en los lenguajes principales sobre los sistemas operativos de usuarios normales.
En la mayoría de los casos, el sistema operativo maneja la carga del programa con una parte del código llamada [[cargador de programas|cargador]], haciendo configuración básica de [[Memoria (informática)|memoria]] y enlazando el programa con cualquier biblioteca de vínculos dinámicos a la cual haga referencia. En algunos casos un lenguaje o implementación hará esas tareas en lugar del runtime del lenguaje, a pesar de que es inusual en los lenguajes principales sobre los sistemas operativos de usuarios normales.


Cierta depuración de programas sólo puede realizarse (o ser más eficiente o precisa) cuando se realiza en ejecución. La comprobación de errores lógicos y límites de arrays son algunos ejemplos. Por esta razón, algunos [[Error de software|errores]] de programación no son descubiertos hasta que el programa es probado en un entorno "en vivo" con datos reales, a pesar de comprobación en tiempo de compilación sofisticada y pruebas previas a la publicación. En este caso, el usuario final puede encontrar un mensaje de "error en tiempo de ejecución" (''runtime error'' en inglés).
Cierta depuración de programas solo puede realizarse (o ser más eficiente o precisa) cuando se realiza en ejecución. La comprobación de errores lógicos y límites de arrays son algunos ejemplos. Por esta razón, algunos [[Error de software|errores]] de programación no son descubiertos hasta que el programa es probado en un entorno "en vivo" con datos reales, a pesar de comprobación en tiempo de compilación sofisticada y pruebas previas a la publicación. En este caso, el usuario final puede encontrar un mensaje de "error en tiempo de ejecución" (''runtime error'' en inglés).


=== Biblioteca runtime ===
== Biblioteca runtime ==
Una '''biblioteca runtime''' es una colección de funciones de utilidad las cuales soporta un programa mientras se está ejecutando, trabajando con el [[Sistema Operativo]] para suministrar facilidades tales como funciones matemáticas, entrada y salida. Éstas evitan a los programadores el trabajo de reescribir continuamente las capacidades básicas especificadas en un lenguaje de programación o suministradas por el sistema operativo.
Una '''biblioteca runtime''' es una colección de funciones de utilidad las cuales soporta un programa mientras se está ejecutando, trabajando con el [[Sistema Operativo]] para suministrar facilidades tales como funciones matemáticas, entrada y salida. Estas evitan a los programadores el trabajo de reescribir continuamente las capacidades básicas especificadas en un lenguaje de programación o suministradas por el sistema operativo.


Las primeras bibliotecas runtime fueron las que suministraba [[Fortran]] las cuales daban características como operaciones matemáticas. Otros lenguajes añadieron recolección de basura de memoria sofisticada, a menudo en asociación con soporte para objetos.
Las primeras bibliotecas runtime fueron las que suministraba [[Fortran]] las cuales daban características como operaciones matemáticas. Otros lenguajes añadieron recolección de basura de memoria sofisticada, a menudo en asociación con soporte para objetos.
Línea 24: Línea 25:


== Ejemplo ==
== Ejemplo ==
Un programa escrito en Java, recibiría servicios desde el [[Java Runtime Environment]] emitiendo comandos por los cuales se devuelve el resultado esperado por el software Java. Suministrando estos servicios, el software Java se considera un entorno runtime del programa. Ambos el programa y el software Java combinaron peticiones de servicio desde el sistema operativo. El kernel del sistema operativo suministra servicios para sí mismo y para todos los procesos y software que está ejecutándose bajo su control. El Sistema Operativo puede ser considerado como que suministra un entorno de por sí mismo.
Un programa escrito en lenguaje de programación [[Java (lenguaje de programación)|Java]] podría usar servicios desde el [[Java Runtime Environment]] emitiendo comandos en respuesta a los cuales se devolviera el resultado esperado. Suministrando estos servicios, el software Java se considera un entorno runtime del programa. El programa y el software Java combinan peticiones de servicio desde el sistema operativo. El [[núcleo (informática)|núcleo]] del sistema operativo suministra servicios para sí mismo y para todos los procesos y software que está ejecutándose bajo su control. El sistema operativo puede ser considerado como que suministra un entorno de ejecución por sí mismo.


== Véase también ==
== Véase también ==
Línea 30: Línea 31:
* [[Biblioteca (programa)]]
* [[Biblioteca (programa)]]
* [[Tiempo de compilación]]
* [[Tiempo de compilación]]
* [[Tiempo polinómico]]
* [[Tiempo exponencial]]
* [[Cota superior asintótica]]


{{Control de autoridades}}
[[Categoría:Software]]
[[Categoría:Software]]
[[Categoría:Plataforma (informática)]]





Revisión actual - 18:44 14 nov 2024

Recortada de Archivo:Binario.svg

Se denomina tiempo de ejecución (runtime en inglés) al intervalo de tiempo en el que un programa de computadora se ejecuta en un sistema operativo. Este tiempo se inicia con la puesta en memoria principal del programa, por lo que el sistema operativo comienza a ejecutar sus instrucciones. El intervalo finaliza en el momento en que este envía al sistema operativo la señal de terminación, sea esta una terminación normal, en que el programa tuvo la posibilidad de concluir sus instrucciones satisfactoriamente, o una terminación anormal, en el que el programa produjo algún error y el sistema debió forzar su finalización.

Este término suele emplearse, en oposición a tiempo de compilación, para indicar si una acción o hecho sucede en uno u otro tiempo.

También es usado en su forma original en inglés para nombrar otros conceptos en informática.

Entorno de ejecución

[editar]

Un entorno de ejecución (runtime environment en inglés) es un estado de máquina virtual que suministra servicios para los procesos de un programa de computadora que se está ejecutando. Puede pertenecer al mismo sistema operativo, o ser creado por el software del programa en ejecución.

En la mayoría de los casos, el sistema operativo maneja la carga del programa con una parte del código llamada cargador, haciendo configuración básica de memoria y enlazando el programa con cualquier biblioteca de vínculos dinámicos a la cual haga referencia. En algunos casos un lenguaje o implementación hará esas tareas en lugar del runtime del lenguaje, a pesar de que es inusual en los lenguajes principales sobre los sistemas operativos de usuarios normales.

Cierta depuración de programas solo puede realizarse (o ser más eficiente o precisa) cuando se realiza en ejecución. La comprobación de errores lógicos y límites de arrays son algunos ejemplos. Por esta razón, algunos errores de programación no son descubiertos hasta que el programa es probado en un entorno "en vivo" con datos reales, a pesar de comprobación en tiempo de compilación sofisticada y pruebas previas a la publicación. En este caso, el usuario final puede encontrar un mensaje de "error en tiempo de ejecución" (runtime error en inglés).

Biblioteca runtime

[editar]

Una biblioteca runtime es una colección de funciones de utilidad las cuales soporta un programa mientras se está ejecutando, trabajando con el Sistema Operativo para suministrar facilidades tales como funciones matemáticas, entrada y salida. Estas evitan a los programadores el trabajo de reescribir continuamente las capacidades básicas especificadas en un lenguaje de programación o suministradas por el sistema operativo.

Las primeras bibliotecas runtime fueron las que suministraba Fortran las cuales daban características como operaciones matemáticas. Otros lenguajes añadieron recolección de basura de memoria sofisticada, a menudo en asociación con soporte para objetos.

Los lenguajes más recientes tienden a tener runtimes más grandes con mayor funcionalidad aún. Muchos lenguajes orientados a objetos también incluyen un sistema conocido como un "dispatcher" (despachador) y un "classloader" (cargador de clases). La Java Virtual Machine (JVM) es un ejemplo de tal runtime: Esto también interpreta o compila el bytecode de los programas Java binarios portables en runtime. El framework .NET es otro ejemplo de biblioteca runtime.

El manejo de excepciones es una característica del lenguaje diseñada para manejar los errores en tiempo de ejecución, suministrando una forma estructurada de atrapar (catch) situaciones completamente inesperadas así como también errores predecibles o resultados inusuales sin la complicada comprobación de errores requerida de los lenguajes que no poseen esta característica.

Ejemplo

[editar]

Un programa escrito en lenguaje de programación Java podría usar servicios desde el Java Runtime Environment emitiendo comandos en respuesta a los cuales se devolviera el resultado esperado. Suministrando estos servicios, el software Java se considera un entorno runtime del programa. El programa y el software Java combinan peticiones de servicio desde el sistema operativo. El núcleo del sistema operativo suministra servicios para sí mismo y para todos los procesos y software que está ejecutándose bajo su control. El sistema operativo puede ser considerado como que suministra un entorno de ejecución por sí mismo.

Véase también

[editar]