23
Arquitectura de procesadores (Introducción) Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Técnicas Digitales III Ing. Gustavo Nudelman 2013

Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Arquitectura de procesadores (Introducción)

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Técnicas Digitales III Ing. Gustavo Nudelman 2013

Page 2: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 3: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 4: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Arquitectura Intel - Modos de operación

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 5: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

IA - Modos de operación - Estados

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 6: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 7: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 8: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 9: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 10: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modo Compatibilidad 32 o Modo protegido – Entorno de ejecución

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 11: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Registro EFLAGS

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 12: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modo legacy 32 o “Modo protegido” – Recursos para el sistema

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 13: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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.

Page 14: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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)

Page 15: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modo Protegido – Descriptor de segmento

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 16: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

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

Page 17: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Campo tipo para descriptores de sistema (S=0)

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 18: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Dirección Lógica vs Dirección lineal

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 19: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Registros Hiden

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 20: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modelo de memoria FLAT

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 21: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modelo FLAT con protección de código

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 22: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Modelo multisegmento

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Page 23: Arquitectura de procesadores (Introducción)gnudelman/Arq_Procesadores... · 2013-04-20 · Introducción Universidad Tecnológica Nacional - Facultad Regional Buenos Aires Año 1985:

Universidad Tecnológica Nacional - Facultad Regional Buenos Aires

Lab 2

Subtitulo o nombre del capitulo

Universidad Tecnológica

Nacional

Pasaje a modo protegido