Interrupciones Sistemas Operativos

Páginas: 10 (2277 palabras) Publicado: 27 de junio de 2012
INTERRUPCIONES

Interrupción (también conocida como interrupción de hardware o petición de interrupción) es una señal recibida por el procesador de un ordenador, indicando que debe "interrumpir" el curso de ejecución actual y pasar a ejecutar código específico para tratar esta situación.
Una interrupción es una suspensión temporaria de la ejecución de un programa, para pasar a ejecutar unasubrutina de servicio de interrupción, la cual, por lo general, no forma parte del programa (generalmente perteneciente al Sistema Operativo, o al BIOS –Basic Input Output System-). Luego de finalizada dicha subrutina, se reanuda la ejecución del programa.
Las interrupciones surgen de las necesidades que tienen los dispositivos periféricos de enviar información al procesador principal de un sistemade computación. La primera técnica que se empleó fue que el propio procesador se encargara de sondear (polling) el dispositivo cada cierto tiempo para averiguar si tenía pendiente alguna comunicación para él. Este método presentaba el inconveniente de ser muy ineficiente, ya que el procesador constantemente consumía tiempo en realizar todas las instrucciones de sondeo.
El mecanismo deinterrupciones fue la solución que permitió al procesador desentenderse de esta problemática, y delegar en el dispositivo la responsabilidad de comunicarse con el procesador cuando lo necesitaba. El procesador, en este caso, no sondea a ningún dispositivo, sino que queda a la espera de que estos le avisen (le "interrumpan") cuando tengan algo que comunicarle (ya sea un evento, una transferencia deinformación, una condición de error, etc.).
Funcionamiento del mecanismo de interrupciones
Cada dispositivo que desea comunicarse con el procesador por interrupciones debe tener asignada una línea única capaz de avisar a éste de que le requiere para una operación. Esta línea es la llamada IRQ ("Interrupt ReQuest", petición de interrupción).
Las IRQ son líneas que llegan al controlador de interrupciones,un componente hardware dedicado a la gestión de las interrupciones, y que puede estar integrado en el procesador principal o ser un circuito separado conectado al procesador principal. El controlador de interrupciones debe ser capaz de habilitar o inhibir líneas de interrupción (operación llamada comúnmente enmascarar por la utilización de una máscara), y establecer prioridades entre las distintasinterrupciones habilitadas. Cuando varias líneas de petición de interrupción se activan a la vez, el controlador de interrupciones utilizará estas prioridades para escoger la interrupción sobre la que informará al procesador principal. Sin embargo hay interrupciones que no se pueden enmascarar o deshabilitar, las conocidas como interrupciones no enmascarables o NMI.
Un procesador principal (sincontrolador de interrupciones integrado) suele tener una única línea de interrupción llamada habitualmente INT. Esta línea es activada por el controlador de interrupciones cuando tiene una interrupción que servir. Al activarse esta línea, el procesador consulta los registros del controlador de interrupciones para averiguar qué IRQ es la que ha de atender. A partir del número de IRQ busca en elvector de interrupciones qué rutina debe llamar para atender una petición del dispositivo asociado a dicha IRQ.
Las rutinas de interrupción generalmente toman un pequeño tiempo de ejecución y la mayoría no pueden ser interrumpidas cuando se están atendiendo, porque al entrar en ellas se almacena el estado de los registros en una pila y si se interrumpen muchas veces, la pila se puede desbordar.Pasos para el procesamiento de una IRQ:
1) Terminar la ejecución de la instrucción máquina en curso.
2) Salva el valor de contador de programa, IP, en la pila, de manera que en la CPU, al terminar el proceso, pueda seguir ejecutando el programa a partir de la última instrucción.
3) La CPU salta a la dirección donde está almacenada la rutina de servicio de interrupción (ISR, Interrupt Service...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Interrupción (Sistemas Operativos)
  • Interrupciones de un sistema computacional
  • Administración de interrupciones en sistemas operativos de tiempo real
  • ¿Qué Es Un Sistema Operativo? y Tipos De Sistemas Operativos
  • Sistema Operativo Y Tipos De Sistemas Operativos
  • operaciones basicas del sistema operativo
  • Atomicidad de operaciones
  • Sistemas operativos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS