OpenSolaris - Sistema Operacional Open Source
Este artigo aborda os princípios do sistema operacional OpenSolaris e tem como objetivo proporcionar uma compreensão dos conceitos básicos e das principais questões relativas a estrutura, forma de armazenamento, compartilhamento e gerenciamento do sistema operacional open source baseado no sistema Solaris da Sun MicroSystems.
Parte 3: Interrupções
Uma interrupção é um sinal de um dispositivo que tipicamente resulta em uma troca de contexto, isto é, o processador para de fazer o que está fazendo para atender o dispositivo que pediu a interrupção. Computadores digitais, geralmente oferecem uma maneira de iniciar rotinas de software resposta a eventos eletrônicos.
Esses eventos são sinalizados para o processador através de pedidos de interrupção (IRQ). O processamento da interrupção consiste de uma troca de contexto para uma rotina de software especificamente escrita para tratar a interrupção. Essa rotina é chamada rotina de serviço de interrupção, ou tratador de interrupção (interrupt handler).
As Interrupções foram concebidas para evitar o desperdício de tempo computacional em loops de software (chamados polling loops) esperando eventos que serão disparados por dispositivos. Ao invés de ficarem parados esperando o evento acontecer, os processadores tornaram-se capazes de realizar outras tarefas enquanto os eventos estão pendentes. A interrupção avisa ao processador quando o evento ocorreu, permitindo dessa forma uma acomodação eficiente do uso da CPU para dispositivos mais lentos.
As Interrupções permitem aos processadores modernos responder a eventos gerados por dispositivos diversos, enquanto outro trabalho está sendo realizado.
Esses eventos são sinalizados para o processador através de pedidos de interrupção (IRQ). O processamento da interrupção consiste de uma troca de contexto para uma rotina de software especificamente escrita para tratar a interrupção. Essa rotina é chamada rotina de serviço de interrupção, ou tratador de interrupção (interrupt handler).
As Interrupções foram concebidas para evitar o desperdício de tempo computacional em loops de software (chamados polling loops) esperando eventos que serão disparados por dispositivos. Ao invés de ficarem parados esperando o evento acontecer, os processadores tornaram-se capazes de realizar outras tarefas enquanto os eventos estão pendentes. A interrupção avisa ao processador quando o evento ocorreu, permitindo dessa forma uma acomodação eficiente do uso da CPU para dispositivos mais lentos.
As Interrupções permitem aos processadores modernos responder a eventos gerados por dispositivos diversos, enquanto outro trabalho está sendo realizado.