SóProvas


ID
1986907
Banca
CESPE / CEBRASPE
Órgão
POLÍCIA CIENTÍFICA - PE
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Nos sistemas operacionais multiprogramáveis e(ou) multitarefas, os mecanismos básicos que tornam possível a execução de tarefas concorrentes são

Alternativas
Comentários
  • O gabarito é a letra B. Se as tarefas são concorrentes, significa que não podem ser executadas ao mesmo tempo, ou seja, preciso interromper uma delas para executar a outra. No entanto, há tarefas críticas que não podem ser interrompidas (daí a necessidade de adicionar exceções). 

  • @Cristiane

    "há tarefas críticas que não podem ser interrompidas (daí a necessidade de adicionar exceções)"

    Não é isso. Isso não faz sentido.


     Trap ou Exceções 
            * Traps também podem ser geradas explicitamente por instruções do programa
            * Traps também são usadas em situações onde o programa não tem como prosseguir pois aconteceu uma exceção como overflow aritmético, tentativa de acesso a endereço inválido ou estouro da pilha.


     

  • Gabarito B

    Interrupção X Exceção

    Interrupção gerada por evento síncrono e Exceção gerada por evento assíncrono.

    Evento síncrono – Resultado direto da execução do programa corrente e são previsíveis.

    Evento assíncrono – Ocorre independentemente da execução do programa corrente e são imprevisíveis.

    Interrupções

    Tornou possível a implementação da concorrência nos sistemas multiprogramáveis.

    Eventos que causam intervenção no Sistema Operacional durante a execução de programas.

    Gerados pelo próprio Sistema Operacional ou por Hardware.

    O sistema é desviado para uma rotina especial de tratamento.

    Vetor de Interrupção – Relação de todas as rotinas de tratamento das interrupções.

    Mecanismo de Interrupção – Procedimento para detectar a interrupção, salvar o contexto do programa e desviar para a rotina de tratamento. Na maioria das vezes implementados pelos projetistas e realizados pelo harware.

    Mascaráveis (podem ser desabilitadas) X Não-Mascaráveis (tratamento obrigatório).

    As interrupções possuem prioridades de execução.

    Controlador de pedidos de interrupção – avalia as interrupções geradas e suas prioridades de atendimento.

    Exceção

    Resultado direto da execução de uma instrução do próprio programa (ex: divisão por zero, overflow).

    Muitas vezes pode ser escrita pelo próprio programador, sendo possível evitar que um programa seja encerrado no caso de alguma exceção ocorrer.

     

    "Retroceder Nunca Render-se Jamais !"
    Força e Fé !
    Fortuna Audaces Sequitur !

  • b-

    Modern architectures are interrupt driven. This means that if the CPU requests data from a disk, for example, it does not need to busy-wait until the read is over; it can issue the request (to the I/O device) and continue with some other task. When the read is over, the CPU can be interrupted (by a hardware in this case, which sends interrupt request to PIC) and presented with the read. For interrupts, a program called an interrupt handler is installed, and it is the interrupt handler that handles the interrupt from the disk.

    When an interrupt occurs, the hardware automatically switches a part of the context (at least enough to allow the handler to return to the interrupted code). The handler may save additional context, depending on details of the particular hardware and software designs. Often only a minimal part of the context is changed in order to minimize the amount of time spent handling the interrupt.

    https://en.wikipedia.org/wiki/Context_switch