b'\n_START_ARTICLE_\nInterrup\xc3\xa7\xc3\xa3o\n_START_SECTION_\nN\xc3\xadvel Desencadeado (Level-Triggered)\n_START_PARAGRAPH_\nEssa interrup\xc3\xa7\xc3\xa3o \xc3\xa9 um classe de interrup\xc3\xa7\xc3\xb5es em que a presen\xc3\xa7a de uma interrup\xc3\xa7\xc3\xa3o sem servi\xc3\xa7o \xc3\xa9 indicada por um n\xc3\xadvel alto (1), ou n\xc3\xadvel baixo (0), da linha de solu\xc3\xa7\xc3\xa3o da interrup\xc3\xa7\xc3\xa3o. Um dispositivo deseja um sinal em uma linha de drives de interrup\xc3\xa7\xc3\xa3o e em seguida segue neste n\xc3\xadvel at\xc3\xa9 a manuten\xc3\xa7\xc3\xa3o. Ele cessa afirmando a linha quando a CPU ordena que seja lida ou n\xc3\xa3o a condi\xc3\xa7\xc3\xa3o que fez o sinal de interrup\xc3\xa7\xc3\xa3o._NEWLINE_Normalmente, as amostras de processador de entrada de interrup\xc3\xa7\xc3\xa3o em hor\xc3\xa1rios pr\xc3\xa9-definidos durante cada ciclo de barramento como o estado T2 para o microprocessador Z80. Se a interrup\xc3\xa7\xc3\xa3o n\xc3\xa3o est\xc3\xa1 ativa quando a amostra do processador est\xc3\xa1, a CPU n\xc3\xa3o a v\xc3\xaa. Uma possibilidade para este tipo de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 eliminar sinais falsos a partir de uma ruidosa linha de interrup\xc3\xa7\xc3\xa3o: um pulso falso, muitas vezes ser\xc3\xa1 t\xc3\xa3o curto que n\xc3\xa3o ser\xc3\xa1 notado._NEWLINE_V\xc3\xa1rios dispositivos podem compartilhar uma n\xc3\xadvel desencadeado de interrup\xc3\xa7\xc3\xa3o, se  eles forem projetados para isso. A linha de interrup\xc3\xa7\xc3\xa3o deve ter resistores pull down e pull up, para que quando n\xc3\xa3o ativamente conduzido, pouse em seu estado inativo. Dispositivos ativamente afirmados da linha para indicar uma interrup\xc3\xa7\xc3\xa3o pendente/excelente, mas deixar a linha flutuar quando n\xc3\xa3o sinalizar uma interrup\xc3\xa7\xc3\xa3o. A linha \xc3\xa9 seguida em seu estado afirmado quando qualquer (um ou mais de um) dos dispositivos de partilha \xc3\xa9 uma sinaliza\xc3\xa7\xc3\xa3o de interrup\xc3\xa7\xc3\xa3o pendente/excelente._NEWLINE_Essa classe de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 favorecida por causa de um comportamento conveniente quando a linha \xc3\xa9 compartilhada. Ao detectar a afirma\xc3\xa7\xc3\xa3o da linha interrompida, a CPU deve buscar atrav\xc3\xa9s de dispositivo de compartilhamento at\xc3\xa9 um que necessite de servi\xc3\xa7o \xc3\xa9 detectado. Depois da assist\xc3\xaancia, os dispositivos da CPU podem reavaliar o estado da linha de interrup\xc3\xa7\xc3\xa3o para determinar se algum outro dispositivo tamb\xc3\xa9m precisa de assist\xc3\xaancia. Se agora a linha \xc3\xa9 de-asserted, a CPU evita a verfica\xc3\xa7\xc3\xa3o dos dispositivos restantes na linha. Uma vez que alguns dispotivos de interrup\xc3\xa7\xc3\xa3o s\xc3\xa3o mais frequentes que outros, e outros dispositivos de interrup\xc3\xa7\xc3\xa3o s\xc3\xa3o particularmente custosos, um pedido de cuidado \xc3\xa9 empregado para aumentar a efici\xc3\xaancia._NEWLINE_Existem tamb\xc3\xa9m problemas s\xc3\xa9rios com o compartilhamento de n\xc3\xadvel desencadeado (level triggered). Enquanto qualquer dispositivo na linha tem uma solicita\xc3\xa7\xc3\xa3o pendente para o servi\xc3\xa7o, a linha mat\xc3\xa9m-se continua, asim n\xc3\xa3o \xc3\xa9 poss\xc3\xadvel detectar mudan\xc3\xa7a no estado de qualquer outro dispositivo. Adiando um dispositivo de baixa prioridade a manuten\xc3\xa7\xc3\xa3o n\xc3\xa3o \xc3\xa9 uma op\xc3\xa7\xc3\xa3o, porque isso impediria a detec\xc3\xa7\xc3\xa3o de solicita\xc3\xa7\xc3\xb5es de servi\xc3\xa7o de dispositivos de alta prioridade. Se existe um dispositivo na linha que a CPU n\xc3\xa3o sabe como atender, ent\xc3\xa3o qualquer interrup\xc3\xa7\xc3\xa3o a partir desse dispositivo permanentemente bloqueia todas as interrup\xc3\xa7\xc3\xb5es de outros dispositivos._NEWLINE_A raz\xc3\xa3o para isso foi o ganho de efici\xc3\xaancia acima discutidos. (Vers\xc3\xb5es mais recentes do PCI permitem, e PCI Express requer o uso de interrup\xc3\xa7\xc3\xb5es de mensagens sinalizadas).\n_START_SECTION_\nBorda-desencadeada (Edge-Triggered)\n_START_PARAGRAPH_\n\xc3\x89 uma classe de interrup\xc3\xa7\xc3\xa3o que \xc3\xa9 sinalizada pelo n\xc3\xadvel de transmis\xc3\xa3o sobre a linha de interrup\xc3\xa7\xc3\xa3o, quer seja uma borda de descida (1 a 0) ou uma borda de subida (0 a 1). Um dispositivo deseja um sinal a pulsos de drives de interrup\xc3\xa7\xc3\xa3o na linha e em seguida a libera para o seu estado de repouso. Se o pulso \xc3\xa9 muito curto para ser detectado pelo polled I/O em seguida, pode ser necess\xc3\xa1rios hardwares especiais para detectar a borda (edge)._NEWLINE_V\xc3\xa1rios dispositivos podem compartilhar uma linha de interrup\xc3\xa7\xc3\xa3o de borda-desencadeada (Edge-Triggered) se forem designados para isso. A linha de interrup\xc3\xa7\xc3\xa3o deve ter resistores pull down e pull up, para que quando n\xc3\xa3o ativamente conduzido, pouse em um estado particular. Dispositivos de interrup\xc3\xa7\xc3\xa3o de sinaliza\xc3\xa7\xc3\xa3o de breve condu\xc3\xa7\xc3\xa3o da linha para o seu estado de non-default, e deixar a linha flutuar (o n\xc3\xa3o ativamento da condu\xc3\xa7\xc3\xa3o) quando n\xc3\xa3o sinalizar uma interrup\xc3\xa7\xc3\xa3o. Esse tipo de conex\xc3\xa3o \xc3\xa9 tamb\xc3\xa9m referida como coletor aberto. A linha, em seguida, carrega todos os pulsos gerados por todos os dispositivos. (Isto \xc3\xa9 an\xc3\xa1logo ao cabo de tra\xc3\xa7\xc3\xa3o em alguns \xc3\xb4nibus e carros que qualquer passageiro pode puxar para sinalizar ao motorista que eles est\xc3\xa3o pedindo uma parada.) Entretanto, interrup\xc3\xa7\xc3\xa3o de pulsos a partir de diferentes dispositivos podem mesclar se ocorrerem pr\xc3\xb3ximos no tempo. Para evitar perder interrup\xc3\xa7\xc3\xb5es a CPU pode acionar a trailing edge do pulso (Por exemplo, a borda de subida, se a linha \xc3\xa9 puxada para cima e conduzido de baixo). Depois de detectar uma interrup\xc3\xa7\xc3\xa3o a CPU pode verificar todos os dispositivos por necessidade de servi\xc3\xa7o._NEWLINE_Interrup\xc3\xa7\xc3\xb5es da Edge-triggered n\xc3\xa3o sofrem os problemas que as interrup\xc3\xa7\xc3\xb5es do level-triggered tem com o compartilhamento. Servi\xc3\xa7os de dispositivos de baixa-prioridade podem ser arbitrariamente adiados, e interrup\xc3\xa7\xc3\xb5es ser\xc3\xa3o continuas para serem recebidas a partir de dispositivos de alta-prioridade que est\xc3\xa3o sendo atendidos. Se existir um dispositivo que a CPU n\xc3\xa3o sabe como atender, ele pode causar uma interrup\xc3\xa7\xc3\xa3o falsa ou falsas interrup\xc3\xa7\xc3\xb5es peri\xc3\xb3dicas, mas ela n\xc3\xa3o interfere na sinaliza\xc3\xa7\xc3\xa3o de interrup\xc3\xa7\xc3\xa3o de outros dispositivos. Entretanto, isto \xc3\xa9 razoavelmente f\xc3\xa1cil para uma interrup\xc3\xa7\xc3\xa3o edge-triggered ser perdida \xe2\x80\x93 por exemplo, se as interrup\xc3\xa7\xc3\xb5es tem que ser mascaradas por um per\xc3\xadodo \xe2\x80\x93 e a menos que exista algum tipo de hardware latch (trava) que grave o evento, \xc3\xa9 imposs\xc3\xadvel recuperar. Tais problemas causados em muitos \xe2\x80\x9ctravamentos\xe2\x80\x9d no hardware dos primeiros computadores porque o processador n\xc3\xa3o sabia o que era preciso fazer. Hardwares modernos tem muitas vezes um ou mais registros de estado de interrup\xc3\xa7\xc3\xa3o que travam os pedidos de interrup\xc3\xa7\xc3\xa3o: os softwares de interrup\xc3\xa7\xc3\xa3o bem escritos edge-driven muitas vezes verificam esses registros para garantir que os eventos n\xc3\xa3o sejam perdidos._NEWLINE_A antiga Industry Standard Architecture (ISA) usa interrup\xc3\xa7\xc3\xb5es edge-triggered mas n\xc3\xa3o delega que os dispositivos sejam \xc3\xa1beis para o compartilhamento entre eles. A porta paralela tamb\xc3\xa9m usa interrup\xc3\xa7\xc3\xb5es de edge-triggered. Muitos dispositvos antigos assumem que tem uso exclusivo de suas linhas de interrup\xc3\xa7\xc3\xa3o, fazendo isto eletricamente inseguro para o compartilhamento. No entanto, placas-m\xc3\xa3e ISA incluem resistores pull-up nas linhas IRQ, dispositivos t\xc3\xa3o bem comportados compartilhados com interrup\xc3\xa7\xc3\xb5es ISA.\n_START_SECTION_\nH\xc3\xadbrido\n_START_PARAGRAPH_\nAlguns sistemas usam sinaliza\xc3\xa7\xc3\xa3o hibrida de edge-triggered e level-triggered. O hardware n\xc3\xa3o s\xc3\xb3 procura por uma borda mas tamb\xc3\xa9m verifica que se o sinal de interrup\xc3\xa7\xc3\xa3o est\xc3\xa1 ativo por um certo per\xc3\xadodo de tempo._NEWLINE_O uso comum da interrup\xc3\xa7\xc3\xa3o hibrida \xc3\xa9 para o NMI (non-maskable interrupt). Pois geralmente os sinais importantes NMIs \xe2\x80\x93 ou at\xc3\xa9 mesmo catastr\xc3\xb3ficos - eventos, uma boa implementa\xc3\xa7\xc3\xa3o deste sinal tenta assegurar que a interrup\xc3\xa7\xc3\xa3o \xc3\xa9 v\xc3\xa1lida, verificando se ele permanece ativo por um per\xc3\xadodo de tempo. Esta abordagem de dois passos ajuda a eliminar interrup\xc3\xa7\xc3\xb5es falsas a partir do sistema afetado.\n_START_SECTION_\nMensagem sinalizada\n_START_PARAGRAPH_\nUma mensagem sinalizada de interrup\xc3\xa7\xc3\xa3o, n\xc3\xa3o usa uma linha de interrup\xc3\xa7\xc3\xa3o f\xc3\xadsica. Em vez disso, um sinal do dispositivo \xc3\xa9 pedido por servi\xc3\xa7o enviando uma curta mensagem sobre algum meio de comunica\xc3\xa7\xc3\xa3o, normalmente barramento do computador. A mensagem pode ser um tipo reservado para interrup\xc3\xa7\xc3\xb5es, ou pode ser de algum tipo pr\xc3\xa9-existente, como mem\xc3\xb3ria escrita._NEWLINE_Mensagens sinalizadas de interrup\xc3\xa7\xc3\xa3o agem muito bem como interrup\xc3\xa7\xc3\xb5es edge-triggered, em que a interrup\xc3\xa7\xc3\xa3o \xc3\xa9 moment\xc3\xa2nea ao inv\xc3\xa9s de um estado permanente. Software de tratamento de interrup\xc3\xa7\xc3\xa3o trata de dois em muitos da mesma maneira. Normalmente, m\xc3\xbaltiplas mensagens sinalizadas interrompem com a mesma mensagem (a mesma linha de interrup\xc3\xa7\xc3\xa3o virtual) s\xc3\xa3o permitidas para mesclar, s\xc3\xb3 as interrup\xc3\xa7\xc3\xb5es edge-triggered estreitamente espa\xc3\xa7adas podem mesclar._NEWLINE_Mensagens sinalizadas de interrup\xc3\xa7\xc3\xb5es vetoriais podem ser compartilhadas, a medida que o meio de comunica\xc3\xa7\xc3\xa3o pode ser compartilhado. Nenhum esfor\xc3\xa7o adicional \xc3\xa9 requerido._NEWLINE_A identidade da sinaliza\xc3\xa7\xc3\xa3o \xc3\xa9 indicada por um padr\xc3\xa3o de bits de dados, n\xc3\xa3o exigindo um condutor f\xc3\xadsico separado, muitas mais interrup\xc3\xa7\xc3\xb5es distintas podem ser eficazmente tratadas.Isso reduz a necessidade de compartilhamento. Mensagens de interrup\xc3\xa7\xc3\xa3o podem tamb\xc3\xa9m ser passadas atrav\xc3\xa9s de um barramento serial, n\xc3\xa3o necessitando de quaisquer linha adicional._NEWLINE_PCI Express, barramento computacional serial, usa exclusivamente mensagens de interrup\xc3\xa7\xc3\xa3o sinalizadas.\n_START_SECTION_\nCampainha\n_START_PARAGRAPH_\nEm uma analogia com o bot\xc3\xa3o de press\xc3\xa3o aplicado a sistemas de computador, o termo campainha ou campainha de interrup\xc3\xa7\xc3\xa3o, \xc3\xa9 muitas vezes para descrever um mecanismo pelo qual um sistema de software pode sinalizar ou verificar um dispositivo de hardware que tenha algum trabalho para ser feito. Normalmente, o sistema de software ir\xc3\xa1 colocar os dados em algum lugar conhecido mutuamente concordando acerca do(s) local(ais) da mem\xc3\xb3ria,  e \xe2\x80\x9ctocar a campainha\xe2\x80\x9d por escrever para um local de mem\xc3\xb3ria diferente. Esse local de mem\xc3\xb3ria diferente \xc3\xa9 muitas vezes \xc3\xa9 chamado de regi\xc3\xa3o da campainha, e pode at\xc3\xa9 haver v\xc3\xa1rias campainhas com diferentes finalidades nesta regi\xc3\xa3o. Este ato de escrever para a regi\xc3\xa3o da mem\xc3\xb3ria da campainha da qual \xe2\x80\x9ctocar o sino\xe2\x80\x9d e notificar o dispositivo de hardware que os dados est\xc3\xa3o prontos e esperando. Os dispositivos de hardware que agora s\xc3\xa3o conhecidos, os dados s\xc3\xa3o v\xc3\xa1lidos e sem postos em pr\xc3\xa1tica. Os dados s\xc3\xa3o normalmente gravados em um disco r\xc3\xadgido, enviados atrav\xc3\xa9s de uma rede, criptografados, etc._NEWLINE_O termo campainha de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 geralmente um equivoco. Ele \xc3\xa9 similar a interrup\xc3\xa7\xc3\xa3o porque ele causa algum trabalho para ser feito pelos dispositivos, entretanto a regi\xc3\xa3o da campainha \xc3\xa9, \xc3\xa0s vezes implementado como uma regi\xc3\xa3o polled, \xc3\xa0s vezes a regi\xc3\xa3o da campainha escreve atrav\xc3\xa9s de registros de dispositivos f\xc3\xadsicos, e \xc3\xa0s vezes a regi\xc3\xa3o da campainha est\xc3\xa1 diretamente conectada aos registros de dispositivos f\xc3\xadsicos. Quando escritos ou diretamente aos registros de dispositivos f\xc3\xadsicos, o que pode, mas n\xc3\xa3o necessariamente causar uma real interrup\xc3\xa7\xc3\xa3o para ocorrer na CPU. Se houver uma._NEWLINE_A campainha de interrup\xc3\xa7\xc3\xa3o pode ser comparada a mensagens sinalizadas de interrup\xc3\xa7\xc3\xa3o, elas t\xc3\xaam algumas similaridades.\n_START_SECTION_\nDificuldades de compartilhamento com linhas de interrup\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\nV\xc3\xa1rios dispositivos de compartilhamento em linha de interrup\xc3\xa7\xc3\xa3o (de qualquer estilo de origem) agem como fonte falsa de interrup\xc3\xa7\xc3\xa3o em rela\xc3\xa7\xc3\xa3o uns aos outros. Com muitos dipositivos em uma linha de cada trabalho (workload), as interrup\xc3\xa7\xc3\xb5es no servi\xc3\xa7o crescem em propor\xc3\xa7\xc3\xa3o ao quadrado do n\xc3\xbamero de dispositivos. N\xc3\xa3o \xc3\xa9, portanto, prefer\xc3\xaancia para espalhar uniformemente dispositivos dispon\xc3\xadveis as linhas de interrup\xc3\xa7\xc3\xa3o. Escassez de linhas de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 um problema nos desenhos mais antigos do sistema onde as linhas de interrup\xc3\xa7\xc3\xa3o s\xc3\xa3o distintos condutores f\xc3\xadsicos. Interrup\xc3\xa7\xc3\xb5es de mensagens sinalizadas, onde a linha de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 virtual, s\xc3\xa3o favorecidas em um novo sistema de arquitetura (como a PCI Express) e alivia este problema de forma consider\xc3\xa1vel._NEWLINE_Alguns dispositivos com uma interface de programa\xc3\xa7\xc3\xa3o mal desenhada n\xc3\xa3o fornecem nenhuma maneira de determinar se eles t\xc3\xaam os servi\xc3\xa7os solicitados. Eles podem trancar ou n\xc3\xa3o o mal comportamento quando eles querem. Tais dispositvos n\xc3\xa3o podem tolerar interrup\xc3\xa7\xc3\xb5es falsas, e tamb\xc3\xa9m n\xc3\xa3o podem tolerar o compartilhamento em linha de interrup\xc3\xa7\xc3\xa3o. Placas ISA, muitas vezes devido ao projeto de constru\xc3\xa7\xc3\xa3o barato, s\xc3\xa3o verificados estes problemas. Tais dispositivos s\xc3\xa3o cada vez mais raros, como a l\xc3\xb3gica de hardware se torna mais barato e novos sistemas de arquiteturas delegam interrup\xc3\xa7\xc3\xb5es partilh\xc3\xa1veis.\n_START_SECTION_\nProblemas de desempenho\n_START_PARAGRAPH_\nInterrup\xc3\xa7\xc3\xb5es fornecem baixa sobrecarga e boa lat\xc3\xaancia a baixa carga oferecida, mas desagradar significativamente a alta taxa de interrup\xc3\xa7\xc3\xa3o salvo cuidado que \xc3\xa9 tomado para evitar v\xc3\xa1rias patologias. Trata-se de v\xc3\xa1rias formas de livelocks, quando o sistema gasta todo o seu tempo processando interrup\xc3\xa7\xc3\xb5es, com a exclus\xc3\xa3o de outras tarefas necess\xc3\xa1rias. Em condi\xc3\xa7\xc3\xb5es extremas, um grande n\xc3\xbamero de interrup\xc3\xa7\xc3\xb5es (como o tr\xc3\xa1fego de rede muito alta) podem parar completamente o sistema. Para evitar tais problemas, o sistema operacional deve programar a manipula\xc3\xa7\xc3\xa3o de interrup\xc3\xa7\xc3\xa3o de rede com o mesmo cuidado como cronogramas de execu\xc3\xa7\xc3\xa3o de processos.\n_START_SECTION_\nUsos t\xc3\xadpicos\n_START_PARAGRAPH_\nUsos t\xc3\xadpicos de interrup\xc3\xa7\xc3\xb5es incluem os seguintes: system timer (temporizador do sistema), disks I/O (discos E/S), Power-off signal (liga-desliga o sinal), e traps (armadilhas). Outras interrup\xc3\xa7\xc3\xb5es para transferir dados usando UARTs ou Ethernet; sentido de teclas pressionadas; controle de motores; ou qualquer outra coisa que o equipamento deve fazer._NEWLINE_Um timer de sistema cl\xc3\xa1ssico gera interrup\xc3\xa7\xc3\xb5es peri\xc3\xb3dicas de um contador ou o power-line. O manipulador de interrup\xc3\xa7\xc3\xa3o conta as interrup\xc3\xa7\xc3\xb5es para manter o tempo. A interrup\xc3\xa7\xc3\xa3o do timer tamb\xc3\xa9m pode ser usado por um agendador de tarefas do sistema operacional para reagendar as prioridades de processos em execu\xc3\xa7\xc3\xa3o. Contadores s\xc3\xa3o populares, mas alguns computadores mais antigos utilizadam a freq\xc3\xbc\xc3\xaancia da linha de energia, j\xc3\xa1 que as empresas de energia na maioria dos pa\xc3\xadses ocidentais controlam a freq\xc3\xbc\xc3\xaancia da corrente el\xc3\xa9trica com um rel\xc3\xb3gio at\xc3\xb4mico muito preciso._NEWLINE_Um disco de sinais de interrup\xc3\xa7\xc3\xa3o \xc3\xa9 realizado a partir de uma transfer\xc3\xaancia de dados ou para o disco perif\xc3\xa9rico. Um processo de espera para ler ou escrever um arquivo \xc3\xa9 iniciado novamente._NEWLINE_Uma interrup\xc3\xa7\xc3\xa3o power-off prev\xc3\xaa ou requer uma perda de poder. Ele permite que o equipamento do computador execute uma ordem de parar de funcionar._NEWLINE_Interrup\xc3\xa7\xc3\xb5es tamb\xc3\xa9m s\xc3\xa3o usadas em typeahead  Features para o buffer de eventos como as teclas digitadas.'