Arquitectura de procesadores (Introducción)

Anuncio
Arquitectura de procesadores
(Introducción)
Técnicas Digitales III
Ing. Gustavo Nudelman
2013
Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Introducción
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
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Introducción
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
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
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
Un procesador X86 arranca en este modo de compatibilidad básico
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Direccionamiento en modo real
•
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
1. Estructura de un programa
booteable
2. Compilación
3. Depuración con Bochs
Subtitulo o nombre del
capitulo
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Universidad
Tecnológica
Nacional
Modo Protegido / multitarea Requerimientos
•
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
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
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
•
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
20
18
10
8
0
GDT (Global descriptor table)
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Modo Protegido – Descriptor de
segmento
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Modo Protegido – Activación
•
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
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
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
Lab 2
Pasaje a modo protegido
Subtitulo o nombre del
capitulo
Universidad Tecnológica Nacional - Facultad
Regional Buenos Aires
Universidad
Tecnológica
Nacional
Descargar