|
TEMA 14. INTERRUPCIONES.
1.- Introduccion
Es la detencion de la ejecucion de un programa antes de que concluya. Cuando se procesa la interrupcion, volvemos al programa.
A la rutina que se ejecuta para la interrupcion se le llama rutina de servicio de interrupcion.
Tipos:
- Interrupciones externas: desde un controlador de E/S.
- Interrupciones internas: desde la CPU (procesador). Ocurren cuando hay sucesos excepcionales:
- Division por 0.
- Desbordamiento (cuando el resultado de una operacion se sale del rango de representacion).
- Violacion de la proteccion de memoria: cuando un programa invade la porcion de memoria donde se encuentra otro.
Jerarquia de interrupciones
Identifica que interrupciones son mas importantes.
- Interrupcion no enmascarable: cuando no puede ser ignorada, bien porque provocaria daños o porque tiene una prioridad alta.
- Interrupcion enmascarable: sí se puede ignorar. A traves de instrucciones, podemos inhibir que ocurra.
2.- Reconocimiento de interrupciones (Cómo adivina la CPU qué o quién provocó la interrupcion).
A.- Interrupciones multinivel: Cada dispositivo que puede provocar interrupcion tiene una entrada de interrupcion conectada a la CPU. Es muy sencillo, pero muy caro.
B.- Linea de interrupcion unica. Una unica entrada de interrupcion a la que estan conectados todos los dispositivos. Tiene que "preguntar" a cada dispositivo si ha producido la interrupcion (tecnica Polling).
C.- Interrupciones vectorizadas. El dispositivo que quiere pedir interrupcion pone en el bus de datos un identificador (vector), ademas de la señal de interrupcion. Lo puede poner el periferico directamente, o bien un controlador de interrupciones (que se ocupa de todo)
CPU
Bus de datos
Los dispositivos estan ordenados por orden de importancia, siendo el mas cercano el que tiene prioridad. Si pone su vector, los demas ya no pueden ponerlo. (tecnica Daisy Chaining).
3.- Procesamiento de interrupciones.
- Se recibe una peticion de interrupcion.
- Se termina de ejecutar la instruccion actual.
- La CPU acepta o rechaza la peticion de interrupcion.
- Se almacena el estado actual de ejecucion (contenido del contador de programas y del registro de estado) para poder volver.
- El contador de programas pasa a tomar el valor de la direccion de la 1ª instruccion de la rutina del servicio de interrupcion.
Aún no hay comentarios para este recurso.
Monografias, Exámenes, Universidades, Terciarios, Carreras, Cursos, Donde Estudiar, Que Estudiar y más: Desde 1999 brindamos a los estudiantes y docentes un lugar para publicar contenido educativo y nutrirse del conocimiento.
Contacto »