SóProvas


ID
920116
Banca
FCC
Órgão
DPE-SP
Ano
2013
Provas
Disciplina
Arquitetura de Computadores
Assuntos

Analise as afirmativas sobre o mecanismo de interrupção dos sistemas operacionais modernos.

I. As interrupções de I/O significam que uma saída foi concluída, que dados de entrada estão disponíveis ou que uma falha foi detectada.

II. O mecanismo de interrupção também é utilizado para manipular uma ampla gama de eventos, como a divisão por zero, o acesso a um endereço de memória protegido ou inexistente ou a tentativa de executar uma instrução privilegiada em modalidade de usuário.

III. Os eventos que disparam interrupções têm uma propriedade em comum: são ocorrências que induzem a placa-mãe a bloquear o barramento de dados para permitir que o sistema operacional execute uma rotina urgente.

Está correto o que se afirma APENAS em

Alternativas
Comentários
  • III. Os eventos que disparam interrupções têm uma propriedade em comum: são ocorrências que induzem a (placa-mãe) processador a bloquear o barramento de dados para permitir que o sistema operacional execute uma rotina urgente.
  • Prezados, vamos aos comentários das proposições:
    I. As interrupções de I/O significam que uma saída foi concluída, que dados de entrada estão disponíveis ou que uma falha foi detectada. 
    Proposição correta. De acordo com Stallings em seu livro, página 63, as interrupções de E/S são gerada por um controlador de E/S para sinalizar a conclusão de uma operação ou para sinalizar a ocorrência de uma situação de erro.

    II. O mecanismo de interrupção também é utilizado para manipular uma ampla gama de eventos, como a divisão por zero, o acesso a um endereço de memória protegido ou inexistente ou a tentativa de executar uma instrução privilegiada em modalidade de usuário. 

    Proposição correta. De acordo com Stallings em seu livro, página 63 , as interrupções podem ser classificadas em algumas classes, onde constatamos que uma ampla gama de eventos que são manipulados pelas interrupções :
    Interrupções de Software : Gerada por alguma condição que ocorra como resultado da execução de uma instrução, tal como overflow em uma operação aritmética, divisão por zero, tentativa de executar uma instrução de máquina ilegal e referência a um endereço de memória fora do espaço de endereçamento do programa.
    Interrupções de relógio : Gerada pelo relógio interno do processador. Esse tipo de interrupção permite que o sistema operacional execute certas funções a intervalos de tempo regulares.
    Interrupções de E/S : Gerada por um controlador de E/S para sinalizar a conclusão de uma operação ou para sinalizar a ocorrência de uma situação de erro.
    Interrupções de falha de hardware : Gerada na ocorrência de uma falha, tal como queda de energia ou erro de paridade na memória

    III. Os eventos que disparam interrupções têm uma propriedade em comum: são ocorrências que induzem a placa mãe a bloquear o barramento de dados para permitir que o sistema operacional execute uma rotina urgente. 
    Proposição errada. Quem controla o barramento de dados é a CPU e não a placa mãe.
    Portanto, alternativa correta letra C
     
    Fonte :
    - Stallings, Arquitetura e organização de computadores, 5º edição
  • Conceitos corretos:

    I. As interrupções de I/O significam que uma saída foi concluída, que dados de entrada estão disponíveis ou que uma falha foi detectada. 

    II. O mecanismo de interrupção também é utilizado para manipular uma ampla gama de eventos, como a divisão por zero, o acesso a um endereço de memória protegido ou inexistente ou a tentativa de executar uma instrução privilegiada em modalidade de usuário. 


  • A II está errada!!

    Interrupções = eventos assíncronos causados pordispositivos periféricos (disco, relógio, interface de rede, etc.)

    Exceções = eventos síncronos ao processo em execução, causados por eventos relacionados aopróprio processo (divisão por zero, overflow, etc.).


    A divisão por zero é uma EXCEÇÃO, e não uma INTERRUPÇÃO, pois foi invocada de forma síncrona, e não assíncrona!

  • Gente, essa questão está errada....

    pq a 2 é exceção e não interrupção. 

    As interrupções podem ser geradas:

    • Pelo programa do usuário (entrada de dados pelo console ou teclado)
    • Pelo hardware (operações de E/S)
    • Pelo sistema operacional (ao término da fatia de tempo do processador destinada ao respectivo programa)

    As interrupções sempre são tratadas pelo Sistema Operacional.

     A exceção é um evento semelhante à interrupção, pois também de fato interrompe um programa. A principal diferença é que a exceção é o resultado da execução de uma instrução dentro do próprio programa, como a divisão por zero ou a ocorrência de um overflow (estouro de capacidade de um campo) numa operação aritmética.

    http://escreveassim.com.br/2012/10/15/voce-sabe-o-que-e-sistema-operacional-p2/

  • As interrupções podem ser tanto de software como de hardware. A divisão por zero, por exemplo, encontra-se na categoria de interrupção por software.


    Hardware interrupts are used by devices to communicate that they require attention from the operating system.[2] Internally, hardware interrupts are implemented using electronic alerting signals that are sent to the processor from an external device, which is either a part of the computer itself, such as a disk controller, or an external peripheral. For example, pressing a key on the keyboard or moving the mouse triggers hardware interrupts that cause the processor to read the keystroke or mouse position. Unlike the software type (described below), hardware interrupts are asynchronous and can occur in the middle of instruction execution, requiring additional care in programming. The act of initiating a hardware interrupt is referred to as an interrupt request(IRQ).

    software interrupt is caused either by an exceptional condition in the processor itself, or a special instructionin the instruction set which causes an interrupt when it is executed. The former is often called a trap orexception and is used for errors or events occurring during program execution that are exceptional enough that they cannot be handled within the program itself. For example, if the processor's arithmetic logic unit is commanded to divide a number by zero, this impossible demand will cause a divide-by-zero exception, perhaps causing the computer to abandon the calculation or display an error message. Software interrupt instructions function similarly to subroutine calls and are used for a variety of purposes, such as to request services from low-level system software such as device drivers. For example, computers often use software interrupt instructions to communicate with the disk controller to request data be read or written to the disk.


    Fonte: https://en.wikipedia.org/wiki/Interrupt