miércoles, 19 de noviembre de 2008

Entorno básico de ejecución

Los procesadores de Arquitectura Intel (a partir de ahora IA de Intel Architecture) tienen tres modos de operaciones: Modo Protegido (en este modo están disponibles todas las instrucciones y las características de la arquitectura, permitiendo aprovechar la máxima capacidad. Es el modo recomendado.), Modo Real-address (permite programar el procesador con extensiones) y Modo de administración del sistema (este modo proporciona un sistema operativo o ejecurable con un mecanismo transparente para implementar funciones de plataformas específicas). El entorno básico de ejecución es el mismo para los tres modos. La memoria de las direcciones del procesador en el bus se llama memoria física, que se organiza en secuencias de ocho bits (o un byte). Este byte es asignado a una dirección única (esta dirección es la dirección fisica, que tiene un rango de espacio de 0 a 2^(36)-1). Los programas utilizan las facilidades de administración de memoria para acceder a ella, lo que se utilice más eficientemente. No acceden directamente a la memoria física, acceden mediante tres modos: flat (el programa "ve" la memoria como una unidad, un espacio contínuo de direcciones llamado espacio lineal de direcciones. El código, los datos y los procedimientos están contenidos en él. Cada dirección (1 dirección=1 byte) se llama dirección lineal), segmentado (el programa "ve" la memoria como un espacio de direcciones independientes llamados segmentos. Este modo incrementa la fiabilidad de los programas y del sistema), y modo de direcciones reales (Es una implementación específica del segundo modo, en el cual el espacio de direcciones lineales para el programa y el sistema operativo consiste en un array de segmentos de 64 KBytes).El modo de operación protegido puede usar cualquier método de acceso descrito anteriormente. El modo de direcciones reales sólo puede utilizar el método de acceso a memoria de direcciones reales. El modo de administración del sistema usa un método parecido al de acceso de direcciones reales (utiliza una memoria RAM, Random Access Memory).
El procesador tiene 16 registros para el sistema y la programación de aplicaciones, que se pueden dividir en registros de propósito general (para operaciones lógicas y aritmétricas, operaciones para calcular direcciones, y para los punteros de memoria), registros de segmentos (identificación de segmentos en memoria) y registros de estado y control (se utiliza para indicar el resultado de instrucciones aritmétricas, controlar instrucciones de cadenas de caracteres, para las interrupciones, etc).
El puntero de instrucción es un registro que apunta al siguiente segmento del código para la próxima instrucción a ejecutar. No se puede acceder mediante software, está controlado implícitamente por instrucciones de control (tales como JMP, CALL o RET), por las interrupciones y las excepciones.

No hay comentarios: