Interrupção
Uma interrupção é um sinal enviado ao processador que interrompe o processo atual. Ela pode ser gerada por um dispositivo de hardware ou por um programa de software.
Uma interrupção de hardware geralmente é criada por um dispositivo de entrada, como um mouse ou teclado. Por exemplo, se você estiver usando um processador de texto e pressionar uma tecla, o programa precisará processar a entrada imediatamente. Digitar "hello" cria cinco solicitações de interrupção, o que permite que o programa exiba as letras digitadas. Da mesma forma, cada vez que você clica em um botão do mouse ou toca em uma tela sensível ao toque, envia um sinal de interrupção ao dispositivo.
As interrupções de software são usadas para lidar com erros e exceções que ocorrem enquanto um programa está sendo executado. Por exemplo, se um programa espera que uma variável seja um número válido, mas o valor for nulo, uma interrupção poderá ser gerada para impedir que o programa trave. Isso permite que o programa mude de curso e lide com o erro antes de continuar. Da mesma forma, uma interrupção pode ser usada para interromper um loop infinito, que poderia criar um vazamento de memória ou fazer com que um programa parasse de responder.
As interrupções de hardware e de software são processadas por um manipulador de interrupções, também chamado de rotina de serviço de interrupção, ou ISR. Quando um programa recebe uma solicitação de interrupção, a ISR trata o evento e o programa continua. Como as interrupções geralmente são tão breves quanto uma tecla pressionada ou um clique do mouse, elas costumam ser processadas em menos de um milissegundo.
Teste seus conhecimentos