Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 ·...
Transcript of Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 ·...
Arquitectura de procesadores (Introducción)
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Técnicas Digitales III Ing. Gustavo Nudelman 2013
Introducción
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Año 1978: Se lanza la familia iaPx86
Procesador de 16 bits
Compromiso público de compatibilidad ascendente.
Procesador base de la primer IBM PC
Año 1982: Procesador 80286
Arquitectura de 16 bits
Capacidad de multitasking Entorno de protección
Introducción
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Año 1985: Procesador 80386. (Arquitectura IA-32)
Arquitectura de 32 bits
Capacidad de multitasking Entorno de protección mejorado
Unidad de paginación
Son evoluciones de la misma arquitectura los modelos: 486 – Pentiun,
Pentiun II, Pentium III y los primeros modelos de Pentium Iv
Año 2003: Arquitectura AMD 64
Procesador de 64 bits
Incorporado luego con Intel en modelos posteriores de P4
Cada Implementación de la evolución es compatible con todos los modelos anteriores. Muchas veces los incluyen como un sub-modo de trabajo
Arquitectura Intel - Modos de operación
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
IA - Modos de operación - Estados
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modo Real (16 bits) – Entorno de ejecución
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Un procesador X86 arranca en este modo de compatibilidad básico
Direccionamiento en modo real
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
• El programador especifica una dirección lógica compuesta por
• Un selector de segmento de 16 bits (CS, DS, ES)
• Un desplazamiento (Offset de 16 bits: IP, SP, SI, DI)
• Se obtiene una dirección de 20 (dirección lineal) mediante la siguiente
suma desplazada. Asimismo es la que entrega el pinout del procesador
(dirección física)
• Al energizar un procesador X86, este buscará la primer instrucción a ejecutar en
la dirección lógica 0xFFFF:0x0000 la cual corresponde a la dirección física
0xFFFF0
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Lab 1
Subtitulo o nombre del capitulo
Universidad Tecnológica
Nacional
1. Estructura de un programa booteable
2. Compilación
3. Depuración con Bochs
Modo Protegido / multitarea - Requerimientos
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
• Area de memoria exclusiva para cada tarea almacene su código y
sus datos
• Area de memoria común para permitir la comunicación.
• Sistema de protección entre áreas de memoria
• Sistema de protección para recursos de hardware
• Posibilidad de virtualizar el direccionamiento a memoria
Modo Compatibilidad 32 o Modo protegido – Entorno de ejecución
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Registro EFLAGS
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modo legacy 32 o “Modo protegido” – Recursos para el sistema
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modo Protegido - Segmentación
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
• En modo protegido, se define a los segmentos de memoria por
una estructura de datos llamada “descriptor”
• Los diferentes descriptores que puede tener un sistema están
contenidos en una tabla en memoria RAM.
• La definición de un segmento es mas compleja que en modo real,
por lo que el descriptor contiene datos como Base de segmento,
Tamaño del mismo y atributos.
• Los descriptores tienen un tamaño fijo de 8 bytes y contienen
campos para las distintas características necesarias para describir
un segmento
• Antes de pasar a modo protegido, debemos tener las tablas con
los descriptores establecidas memoria, y los recursos del
procesador que hacen uso de estas tablas deben estar
inicializados.
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
IA32 – Acceso a memoria segmentada
EIP, EDI,ESP,ESI
0
8
10
18
20
GDT (Global descriptor table)
Modo Protegido – Descriptor de segmento
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modo Protegido – Activación
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
• Todos los procesadores inician su funcionamiento en modo real
• La activación del modo protegido se realiza cambiando a 1 el bit
menos significativo del registro de control CR0 (bit PE)
• No obstante es indispensable contar previamente con las
estructuras de datos en memoria, e inicialización de registros que
necesita este modo:
• Dentro de la secuencia para pasar a modo protegido,
cambiar el bit PE es lo último que se hace
Campo tipo para descriptores de sistema (S=0)
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Dirección Lógica vs Dirección lineal
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Registros Hiden
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modelo de memoria FLAT
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modelo FLAT con protección de código
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Modelo multisegmento
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Lab 2
Subtitulo o nombre del capitulo
Universidad Tecnológica
Nacional
Pasaje a modo protegido