Esquemas de Interrupcion

Post on 02-Feb-2016

16 views 0 download

description

----------

Transcript of Esquemas de Interrupcion

Esquemas de Interrupción

Objetivo: Ahorrarle al procesador la espera activa.

¿Como?: El dispositivo avisa al procesador cuando se requiere su intervención

Procesador

Int

Controlador

Intrq

rutina

¿Qué ocurre cuando más de un dispositivo requiere en el mismo instante la atención del procesador?

¡Fácil!. Se le ponen más entradas de interrupción al procesador

PROCESADOR

INT1

INT2

INT3

1

2

3

I2

I1

I3

De nuevo el espacio físico es limitado.

Más de un dispositivo debe compartir la línea de interrupción.

AckPROCE SADOR

INT1

2

3

I2

I3

I1

¿Quién fue?

Esquema por consulta

Procesador BUS

INT

Int ack

1 2 31

2

3

int

??

?

El procesador busca dispositivo a dispositivo al autor de la petición

Ciclo de reconocimiento de interrupciones

+ prioridades -

Esquema vectorial:

Procesador BUS

Ack

INT

1 2 3

Los dispositivos se las arreglan para enviarle al procesador un identificador

Ciclo de reconocimiento de interrupciones

Daisy Chain

+ prioridades -

Esquema de interrupciones del 8086

BusPROCESADOR

INT

1

2

3

Controlador de interrupciones

Vectorizado. Uso de un controlador de interrupciones

Gestiona

vectorizaciónGestiona

Prioridades

Interrupciones- excepciones• Interrupciones: externas

– Enmascarables (IF)– No enmascarables

• Excepciones: fallos internos, INT nº– Faults: antes de la ejecución inst. actual

• Ej. fallo de página– Traps: después de la ejecución inst. actual

• Ej. Div/0– Abort: fallo no relacionado con inst.

• Tabla de vectores• Punteros a la rutina de atención

– Modo Real: 4 bytes• Segmento de Código• Desplazamiento

– Modo Protegido• Interrupt Descriptor Table (IDTR)

– 256 entrada• No enmascarable: 2• INT nº• Enmascarable: ciclo de reconocimiento de interrupció

Vec 1 (4 bytes)

Vec 2 (4 bytes)

Vec 3 (4 bytes)

Vec 4 (4 bytes)

Vec 5 (4 bytes)

...

Vec 6 (4 bytes)

BusPROCESADOR

INT

1

2

3

Controlador de interrupciones

Vector de interrupciones: 256 entradas

Dirección de la rutina de atención a la interrupción

Tabla de interrupciones IA-32

Controlador de interrupciones

• 8259