Download Nomenclatura

Document related concepts

Biblioteca (informática) wikipedia , lookup

Ejecutable wikipedia , lookup

Visual Basic wikipedia , lookup

Portable Executable wikipedia , lookup

Hollywood (lenguaje de programación) wikipedia , lookup

Transcript
Documento: P0001
Documento: P0001
Título: Descripción de los ejecutables de Pauscal4
Historial de actividades:
Fecha
18-Dic-2007
Autor
Paul Guerra
Acción
Creación
Motivo
-
1
Documento: P0001
Nomenclatura
Subrayado y negrita
Término importante
Subrayado
Concepto importante
Introducción
En este documento se expone la idea básica del funcionamiento de los ejecutables de Pauscal4.
La idea de Pauscal4 es que sus ejecutables sean fácilmente portables a otros sistemas operativos que
corran sobre la arquitectura x86 de Intel. La conversión debe ser trivial, y no debe requerir la
recompilación del código fuente. Además debe permitir la generación de un archivo con contenido
ejecutable que pueda ser ejecutado en cualquier sistema operativo soportado.
Otro requisito es que los ejecutables posean código nativo, y no debe requerirse la compilación en
tiempo de ejecución (compilación JIT).
Desarrollo
El ejecutable es esencialmente un cargador del programa de usuario. Este último se encuentra
compilado a código nativo x86, y es puesto en ejecución dentro de un entorno controlado. El cargador
es el que crea el entorno, y pone en ejecución al programa de usuario.
El entorno posee una estructura conocida. Cuenta con un determinado conjunto de funcionalidades,
que es puesto a disposición del programa de usuario.
Las funcionalidades básicas del entorno son:



Solicitar y liberar memoria
Cargar, descargar y permitir el acceso a bibliotecas
Realizar llamadas al sistema operativo
2
Documento: P0001
El hecho de permitir realizar llamadas al sistema abre las puertas para la existencia de bibliotecas a nivel
de usuario. Estas serán dependientes del sistema operativo sobre el cual se realiza la ejecución, y
ofrecerán una abstracción de este último mediante una interfaz conocida que provee funcionalidades de
alto nivel (por ejemplo, creación de ventanas).
Este documento no describe la estructura del entorno, y queda libre para su especificación futura.
3
Related documents