No software de computador, uma interrupção é um sinal para o processador de que ocorreu um evento que requer atenção imediata. Esse evento pode ser um evento de hardware, como o pressionamento de uma tecla ou um clique do mouse, ou pode ser um evento de software, como um erro ou uma solicitação de outro programa.
Quando ocorre uma interrupção, o processador para de executar o programa atual e passa para um trecho de código especial denominado manipulador de interrupção. O manipulador de interrupção lida com o evento que causou a interrupção e, em seguida, retorna o processador ao programa que estava em execução antes da ocorrência da interrupção.
As interrupções são uma parte essencial dos sistemas operacionais multitarefa. Eles permitem que vários programas sejam executados simultaneamente, dando a cada programa a oportunidade de ser executado por um curto período de tempo antes de ser interrompido. As interrupções também permitem que o sistema operacional responda a eventos como pressionamentos de teclas e cliques do mouse.
Existem dois tipos principais de interrupções:interrupções de hardware e interrupções de software. As interrupções de hardware são geradas por dispositivos de hardware, como teclados e mouses. As interrupções de software são geradas por programas de software, geralmente para solicitar um serviço do sistema operacional.
As interrupções de hardware normalmente são tratadas pelo controlador de interrupção do processador. O controlador de interrupção recebe o sinal de interrupção do dispositivo de hardware e depois envia o sinal ao processador. O processador então salta para o manipulador de interrupção apropriado.
As interrupções de software são normalmente geradas pelo conjunto de instruções do processador. Quando um programa executa uma instrução de interrupção, o processador salta para o manipulador de interrupção apropriado.
As interrupções são uma parte essencial do software de computador. Eles permitem que sistemas operacionais multitarefa executem vários programas simultaneamente e permitem que o sistema operacional responda a eventos como pressionamentos de teclas e cliques do mouse.