Sistema con una única línea de petición de interrupción

Lucas Carpio

Este es el caso más simple, en el que todos los módulos de E/S se conectan en colector abierto, utilizando un PULL-UP, a una única línea de petición de interrupción que llega al procesador.

La gestión de una interrupción en este sistema es análoga a la gestión de una interrupción con un único módulo de E/S.

Ahora bien, para identificar qué periférico pide atención y gestionar las prioridades si más de un módulo de E/ S ha pedido atención al mismo tiempo, el procesador ejecuta una única RSI que tiene una dirección de inicio fija.

La RSI, mediante código y accediendo a los registros de estado de cada módulo de E/S, determina el módulo de E/S al que debe atender(muy parecida al polling).

Las ventajas principales que ofrece este sistema son que:

  • Como hacemos la encuesta de todos los módulos por programa, es muy flexible determinar las prioridades porque podemos implementar diferentes políticas de prioridades simplemente modificando el código de la RSI. 
  • No hay que hacer cambios en el hardware.

Las desventajas principales son que:

  • La ejecución del código para hacer la encuesta de los módulos y la gestión de prioridades es muy costosa en tiempo, ya que estamos ejecutando un pequeño programa que accede a todos los módulos de E/S conectados a la línea.

  • Como hay una sola línea de petición de interrupción, se tienen que inhibir las interrupciones y, por lo tanto, mientras atendemos una petición no podemos atender otras aunque sean más prioritarias.

Gestión de interrupciones con múltiples módulos de E/S

Raul Ovalle

Cuando el procesador recibe una petición, sabe que algún módulo de E/S pide atención pero no sabe cuántos piden atención, ni cuáles son.

Para identificar al que pide atención y decidir cuál se tiene que atender, las cuestiones principales que hay que resolver son:

  • Identificar cuál es el periférico que pide atención.
  • Determinar qué periférico hemos de atender primero en caso de que dos o más periféricos soliciten atención al mismo tiempo.
  • Gestionar, si el sistema permite la nidificación, las prioridades para determinar si el periférico que solicita atención es más prioritario que otro al que ya atendemos.
  • Obtener la dirección de la RSI correspondiente al periférico al que hemos de atender.

Estas cuestiones afectan principalmente al ciclo de reconocimiento de la interrupción y hacen este proceso bastante más complejo. El objetivo principal de los sistemas que nos permiten gestionar más de un módulo de E/S mediante interrupciones es conseguir que este proceso sea tan eficiente como sea posible, añadiendo mejoras al hardware que da soporte al sistema de atención de interrupciones.

Sistema con una única línea de petición de interrupción

By Lucas Carpio

Sistema con una única línea de petición de interrupción

  • 1,203