2011-09-03 8 views

Respuesta

14

La interrupción es un evento asíncrono que normalmente se genera por hardware (Ej. E/S) que no está sincronizado con la ejecución de instrucciones del procesador. Mientras que las excepciones son eventos sincrónicos generados cuando el procesador detecta cualquier condición predefinida mientras se ejecutan las instrucciones.

controlador de interrupción puede ser interrumpido por otro controlador de interrupción y así sucesivamente. Un manejador de interrupciones puede posponer un manejador de excepciones, pero un manejador de excepciones nunca difiere un manejador de interrupciones. La única excepción posible en el modo kernel es el error de página.

Los controladores de interrupción nunca realizan operaciones que podrían causar un error de página y, por lo tanto, una posible programación. En caso de que den lugar a un error de página, significa que es un error.

Necesitas tener cuidado al escribir/modificar manejador de interrupciones

2

Interrupciones y excepciones tanto alterar el flujo del programa. La diferencia entre los dos es que las interrupciones se utilizan para manejar eventos externos (puertos de serie, teclado) y excepciones se utilizan para manejar instrucción fallas, (división por cero, opcode no definido).

Las interrupciones son manejadas por el procesador después de terminar la instrucción actual . Si encuentra una señal en su pin de interrupción, buscará la dirección del controlador de interrupción en la tabla de interrupción y pasará ese control de rutina. Después de regresar de la rutina de controlador de interrupción , se reanudará la ejecución del programa en la instrucción después de la instrucción interrumpida .

Las excepciones por otro lado se dividen en tres tipos. Estos son Fallas, trampas y abortos. Las fallas son detectadas y atendidas por el procesador antes de las instrucciones de falla. Las trampas son atendidas después de las instrucciones que causan la trampa. Las interrupciones definidas por el usuario entran en esta categoría y se puede decir que son trampas; esto incluye la interrupción de software MS- DOS INT 21h , por ejemplo. Los abortos se usan solo en señal de problemas severos del sistema , cuando la operación ya no es posible.

Investigación en: http://www.allinterview.com/showanswers/14289.html

Cuestiones relacionadas