A respeito dos sistemas de computadores, responda:
O que são rotinas de interrupção?

Passo 1

Beleza, bora lá! O enunciado tá perguntando sobre rotinas de interrupção em sistemas de computadores.
Conteúdo da matéria: arquitetura de computadores e sistemas operacionais (parte de comunicação CPU–dispositivos).
O que vamos precisar: entender o que é uma interrupção, por que ela existe, e como o processador trata isso usando uma rotina de interrupção (também chamada de ISR, do inglês Interrupt Service Routine).

Passo 2

Primeiro, vamos revisar o que é uma interrupção.
Imagine que o processador (CPU) tá executando um programa, linha por linha, sem parar. A interrupção é como se fosse um “pedido de atenção” de algum dispositivo (teclado, mouse, disco, relógio interno etc.) dizendo “ei, para um pouquinho e me atende agora”. Isso acontece de forma assíncrona, ou seja, o dispositivo dispara esse pedido a qualquer momento, não olhando pra que instrução você está executando.

Passo 3

Quando esse “pedido” chega, o processador interrompe o que ele tava fazendo – daí o nome interrupção – e salva o estado atual (conteúdo dos registradores, contador de programa, etc.). Aí ele pula pra uma rotina de interrupção, que é um trechinho de código especialmente escrito pra tratar aquele evento.
Teoria rápida:
  • Cada tipo de interrupção tem um vetor ou número associado.
  • Existe uma tabela de vetores de interrupção, que mapeia o número pra um endereço de memória onde tá o início da rotina de tratamento.

Passo 4

O que acontece dentro da rotina de interrupção (ISR)?
  1. O processador já salvou o estado anterior;
  2. A ISR faz o trabalho necessário: por exemplo, ler um caractere que chegou do teclado ou enviar um pedaço de dado pro disco;
  3. A ISR sinaliza ao controlador do dispositivo que o pedido foi atendido;
  4. A ISR termina com uma instrução especial, tipo iret (no x86) ou reti (em alguns microcontroladores), que restaura o estado salvo e devolve o controle ao ponto exato onde o programa principal tinha parado.

Passo 5

Por que isso é útil?
  • Eficiência: em vez de ficar “checando” o teclado o tempo todo (polling), o processador faz outra coisa até ser chamado pela interrupção.
  • Tempo real: dispositivos críticos (controle de motor, timer do sistema) conseguem resposta rápida sem atrasar demais o sistema.

Resposta

Rotinas de interrupção (ou ISRs) são blocos de código que o processador executa automaticamente quando um dispositivo ou evento externo gera uma interrupção. Elas salvam o estado atual da CPU, tratam o evento (lendo/escrevendo dados ou sinalizando conclusão), e depois usam uma instrução especial para restaurar o estado e retornar ao programa original.

Exercícios relacionados