Qué es una interrupción: tipos y sus aplicaciones

Pruebe Nuestro Instrumento Para Eliminar Los Problemas





Las PC utilizan solicitudes de interrupción para manejar varias funciones de hardware. Las interrupciones de hardware fueron introducidas por primera vez por UNIVAC 1103 en 1953. La primera incidencia de enmascaramiento de interrupciones fue incorporada por IBM 650 en 1954. Es esencial asignar diferentes IRQ a diferentes dispositivos de hardware para realizar diversas funciones. Durante la ejecución del programa, dispositivos como teclados, un mouse requieren servicios de la CPU y generan una interrupción para llamar la atención de la CPU y procesar el servicio solicitado. Estos se conocen como interrumpe . Uno de los buses del dispositivo de E / S que se dedica a cumplir este propósito se conoce como Rutina de servicio de interrupción (ISR). Estos se utilizan en varias aplicaciones, como para eventos sensibles al tiempo, transferencia de datos, enfatizando eventos anormales, temporizadores de vigilancia, trampas, etc.

¿Qué es una interrupción?

Definición: Se conoce como entrada señal que tiene la prioridad más alta para eventos de hardware o software que requieren el procesamiento inmediato de un evento. Durante los primeros días de la informática, procesador Tuvo que esperar la señal para procesar cualquier evento. El procesador debe verificar todos los programas de hardware y software para comprender si hay alguna señal para procesar. Este método consumiría varios ciclos de reloj y ocuparía el procesador. Por si acaso, si se generara alguna señal, el procesador volvería a tomar algún tiempo para procesar el evento, lo que provocaría un rendimiento deficiente del sistema.




Se introdujo un nuevo mecanismo para superar este complicado proceso. En este mecanismo, el hardware o software enviará la señal a un procesador, en lugar de un procesador que verifique cualquier señal del hardware o software. La señal alerta al procesador con la prioridad más alta y suspende las actividades actuales al guardar su estado y función actuales, y procesa la interrupción inmediatamente, esto se conoce como ISR. Como no dura mucho, el procesador reinicia las actividades normales tan pronto como se procesa.

Interrumpir

Interrumpir



Tipos de interrupción

Estos se clasifican en dos tipos principales.

Interrupciones de hardware

Una señal electrónica enviada desde un dispositivo o hardware externo para comunicarse con el procesador que indica que requiere atención inmediata. Por ejemplo, los trazos de un teclado o una acción de un mouse invocan interrupciones de hardware que hacen que la CPU las lea y procese. Por tanto, llega de forma asincrónica y en cualquier momento mientras se ejecuta una instrucción.

Las interrupciones de hardware se clasifican en dos tipos


  • Interrupciones enmascarables - Los procesadores tienen que interrumpir el registro de máscara que permite habilitar y deshabilitar las interrupciones de hardware. Cada señal tiene un bit colocado en el registro de máscara. Si este bit está establecido, se habilita y deshabilita una interrupción cuando un bit no está establecido, o viceversa. Las señales que interrumpen los procesadores a través de estas máscaras se denominan interrupciones enmascaradas.
  • Interrupciones no enmascarables (NMI) - Los NMI son las actividades de mayor prioridad que deben procesarse inmediatamente y en cualquier situación, como una señal de tiempo de espera generada por un temporizador de vigilancia.

Interrupciones de software

El propio procesador solicita una interrupción del software después de ejecutar determinadas instrucciones o si se cumplen determinadas condiciones. Éstas pueden ser una instrucción específica que desencadena una interrupción, como llamadas a subrutinas, y pueden desencadenarse inesperadamente debido a errores de ejecución del programa, conocidos como excepciones o trampas.

Métodos de activación

Generalmente, estas señales están diseñadas para dispararse usando un nivel de señal lógica o un borde de señal. Estos métodos son de dos tipos.

Interrupción activada por nivel

En este tipo, el módulo de entrada invoca una interrupción si se afirma el nivel de servicio de este. Si se continúa afirmando una fuente de interrupción cuando el controlador de interrupciones del firmware la maneja, este módulo se regenera y activa el controlador para que vuelva a invocar. Las entradas activadas por nivel no son buenas si se mantienen durante más tiempo.

Interrupción activada por flanco

Un módulo de entrada de interrupción activado por flanco invoca una interrupción tan pronto como identifica un flanco de afirmación: un flanco descendente o ascendente. El borde se nota cuando cambia el nivel de la fuente. Este tipo de activación necesita una acción inmediata, independientemente de la actividad de la fuente.

Disparo por borde de nivel

disparo de borde de nivel

Implementación del sistema

Las interrupciones se aplicarán al hardware como un componente diferente junto con las líneas de control, o integrado en memoria subsistemas. Cuando la implementación se realiza en hardware, necesita un controlador de interrupción programable (PCI) para conectarse entre el pin de entrada de la CPU y el dispositivo de interrupción. PCI multiplexa varias fuentes de interrupción en la línea de CPU simple o doble. Cuando se implementa en relación con el controlador de memoria, la ranura de dirección de memoria del sistema se asigna directamente con las interrupciones.

Solicitudes de interrupción compartidas (IRQ)

Con interrupción activada por el borde, un pull-up o pull-down resistor se utiliza para impulsar la línea de interrupción. Esta línea transmite cada pulso producido por cada dispositivo. Si los pulsos de interrupción generados por diferentes dispositivos ocurren cerca en el tiempo, la CPU debe invocar un borde posterior del pulso para no perder interrupciones, luego de lo cual la CPU se asegura de inspeccionar cada dispositivo en busca de solicitudes de servicio. Una placa base de arquitectura estándar industrial (ISA) de buen comportamiento con resistencias pull-up que comparten líneas IRQ deben funcionar bien. Sin embargo, múltiples dispositivos que comparten la línea IRQ en sistemas más antiguos con una interfaz de programación mal diseñada dificulta el procesamiento de interrupciones. Por otro lado, una nueva arquitectura de sistema, como PCI, ayuda a proporcionar un alivio considerable a este problema.

Híbrido

Un tipo híbrido de implementación de sistema tiene una combinación de señalización activada por flanco y activada por nivel. El hardware debe buscar un borde y también verifica si una señal está activa durante un período determinado. Un tipo híbrido se usa comúnmente para la entrada de interrupción no enmascarable (NMI), lo que garantiza que las falsas interrupciones no afecten al sistema.

Mensaje Señalizado

Una solicitud de servicio de interrupción señalizada por mensaje que utiliza señales de dispositivo mediante la transmisión de un mensaje a través de un comunicación canal, como una computadora autobús . Estos no utilizan una línea de interrupción física. PCI Express actúa como un bus serie y se utiliza exclusivamente como interrupciones señalizadas por mensaje.

Timbre de la puerta

La interrupción del timbre se usa comúnmente como un mecanismo por un sistema de software para indicar al hardware de la computadora que complete el trabajo. Tras un acuerdo mutuo entre el hardware y el software, el software coloca los datos en la ubicación de memoria conocida y hace sonar el timbre para notificar al hardware que los datos están listos y esperando para procesarse. Ahora, el dispositivo de hardware de la computadora comprende que los datos son válidos y los procesa en consecuencia.

IPI multiprocesador

Los sistemas multiprocesador, una solicitud de interrupción de un procesador se envía a un procesador diferente a través de interrupciones entre procesadores (IPI)

Usos / aplicaciones típicos

Estas son entradas poderosas que normalmente se utilizan para

  • Servicio de temporizadores de hardware, manejo de pulsaciones del teclado y acciones del mouse
  • Responda rápidamente a eventos urgentes o en tiempo real
  • Transferencia de datos hacia y desde dispositivos periféricos
  • Responde a tareas de alta prioridad como señales de apagado, trampas y temporizadores de vigilancia
  • Indica eventos anormales de la CPU
  • La interrupción de energía prevé la pérdida de energía, lo que permite el apagado ordenado del sistema
  • Interrupciones periódicas para realizar un seguimiento del tiempo absoluto

Preguntas frecuentes

1). ¿Por qué se utilizan las interrupciones?

Estos se utilizan para llamar la atención de la CPU para realizar los servicios solicitados por el hardware o el software.

2). ¿Qué es NMI?

NMI es una interrupción no enmascarable, que el procesador no puede ignorar ni deshabilitar

3). ¿Cuál es la función de la línea de reconocimiento de interrupciones?

El procesador envía una señal a los dispositivos indicando que está listo para recibir interrupciones.

4). Describe la interrupción de hardware. Dar ejemplos

Es generado por un dispositivo externo o hardware como las teclas del teclado o el movimiento del mouse invoca interrupciones de hardware

5). Describe la interrupción del software.

Se define como una instrucción especial que invoca una interrupción, como las llamadas a subrutinas. Las interrupciones de software se pueden activar inesperadamente debido a errores de ejecución del programa

6). ¿Qué interrupción tiene la mayor prioridad?

  • Borde no enmascarable y nivel activado
  • TRAP tiene la máxima prioridad

7). Dar algunos usos de interrupción

  • Responda rápidamente a eventos urgentes o en tiempo real
  • Transferencia de datos hacia y desde dispositivos periféricos
  • Responde a tareas de alta prioridad como señales de apagado, trampas y temporizadores de vigilancia
  • Indica eventos anormales de la CPU

8). ¿Qué es un tipo híbrido de implementación de sistema?

Un tipo híbrido de implementación de sistema tiene una combinación de señalización activada por flanco y activada por nivel. El hardware debe buscar un borde y también verifica si una señal está activa durante un período determinado.

En este artículo, hemos entendido la importancia de interrumpe y cómo se utilizan para ejecutar los servicios solicitados. También discutimos cuáles son los tipos, la implementación del sistema y sus usos.