CC-BY-SA • PID_00178132
16
Programación en ensamblador (x86-64)
Entorno de ejecución en el modo de 64 bits
1.2.1. Organización de la memoria El procesador accede a la memoria utilizando direcciones físicas de memoria. El tamaño del espacio de direcciones físico accesible para los procesadores de64
pende de la implementación: supera los 4 Gbytes, pero es inferior a los 2 bytes posibles.
En el modo de 64 bits, la arquitectura proporciona soporte a un espacio de direcciones virtual o lineal de 64 bits (direcciones de 0 a 264 – 1), pero como el espacio de direcciones físico es inferior al espacio de direcciones lineal, es necesario un mecanismo de correspondencia entre las direcciones lineales y las direcciones físicas (mecanismo de paginación). Al trabajar en un espacio lineal de direcciones, no se utilizan mecanismos de segmentación de la memoria, de manera que no son necesarios los registros de segmentos, excepto los registros de segmento FS y GS, que se pueden utilizar como registro base en el cálculo de direcciones de los modos de direccionamiento relativo. Paginación Este mecanismo es transparente para los programas de aplicación, y por lo tanto para el programador, y viene gestionado por el hardware del procesador y el sistema operativo. Las direcciones virtuales son traducidas a direcciones físicas de memoria utilizando un sistema jerárquico de tablas de traducción gestionadas por el software del sistema (sistema operativo).