SóProvas


ID
645439
Banca
AOCP
Órgão
BRDE
Ano
2012
Provas
Disciplina
Sistemas Operacionais
Assuntos

Sobre Deadlock, analise as assertivas e assinale a alternativa que aponta a(s) correta(s).

I. O problema de Deadlock existe em qualquer sistema multiprogramável; no entanto, as soluções implementadas devem considerar o tipo de sistema e o impacto em seu desempenho. Por exemplo um Deadlock em um sistema de tempo real, que controla uma usina nuclear, deve ser tratado com mecanismos voltados para esse tipo de aplicação, diferentes dos adotados por um sistema de tempo compartilhado comum.

II. Deadlock consegue melhorar a distribuição do tempo de UCP em relação aos escalonamentos não-preemptivos, porém ainda não consegue implementar um compartilhamento equitativo entre os diferentes tipos de processos.

III. Um processo é dito em Deadlock quando está esperando por um evento que nunca ocorrerá. Essa situação é consequência, na maioria das vezes, do compartilhamento de recursos do sistema entre vários processos, sendo que cada processo deve ter acesso ao recurso de forma exclusiva (exclusão mútua).

IV. O Deadlock também pode ser implementado mediante um clock, que interrompe o processador em determinados intervalos de tempo para que um processo CPU-bound tenha mais chances de ser executado.

Alternativas
Comentários
  • I. O problema de Deadlock existe em qualquer sistema multiprogramável; no entanto, as soluções implementadas devem considerar o tipo de sistema e o impacto em seu desempenho. Por exemplo um Deadlock em um sistema de tempo real, que controla uma usina nuclear, deve ser tratado com mecanismos voltados para esse tipo de aplicação, diferentes dos adotados por um sistema de tempo compartilhado comum. Correto

    II. Deadlock consegue melhorar a distribuição do tempo de UCP em relação aos escalonamentos não-preemptivos, porém ainda não consegue implementar um compartilhamento equitativo entre os diferentes tipos de processos.  Errado. Deadlock não melhora nada, só piora as coisas.

    III. Um processo é dito em Deadlock quando está esperando por um evento que nunca ocorrerá. Essa situação é consequência, na maioria das vezes, do compartilhamento de recursos do sistema entre vários processos, sendo que cada processo deve ter acesso ao recurso de forma exclusiva (exclusão mútua).  Correto e Definição perfeita do que é deadlock

    IV. O Deadlock também pode ser implementado mediante um clock, que interrompe o processador em determinados intervalos de tempo para que um processo CPU-bound tenha mais chances de ser executado. Errado. deadlock não é implementado. Pelo contrário, ele é evitado.
  • A única assertiva correta é a III.

    Sobre a assertiva I, ele fala: "O problema de Deadlock existe em qualquer sistema multiprogramável;" Isso é FALSO.
    Para que um sistema seja sujeito à ocorrência de deadlock, as seguintes características devem existir concomitantemente:
    i) Exclusão mútua
    ii) Posse e Espera
    iii) Não preempção
    iv) Espera circular.
  • Mauricio... pelo que eu entendi, a assertiva I) diz Deadlock existe em qualquer sistema multiprogramável. Mas os tipos de implementacao entre sistemas para solucionar os deadlocks são diferentes. Como por exemplo os sistemas citados (istema de tempo real, que controla uma usina nuclear e sistema de tempo compartilhado comum). Ambos ocorrem o deadklock mas o grau de impacto são diferentes.
    Portanto, na minha humilde opiniao, esta assertiva está correta.
  • Para mim somente a primeira alternativa é correta.
    A frase "Um processo é dito em Deadlock quando está esperando por um evento que nunca ocorrerá" define o termo Starvation e não Deadlock, que são diferentes.
    Um processo em Deadlock é um processo bloqueado que esta concorrendo recursos com outro processo e um processo em Starvation é um processo que nunca será executado.

    Creio que caberia anulação.
  • Concordo com o colega Guto Ruis.

  • Pessoal, eu posso estar errado, mas discordo do fato de o item III ser julgado correto.

    O deadlock é uma situação que só acontecerá se presentes as seguintes circunstâncias:

    i) Exclusão mútua
    ii) Posse e Espera
    iii) Não preempção
    iv) Espera circular

    Creio existe erro quando o item afirma que "essa situação (deadlock) é consequência, na maioria das vezes, [..]". Se o deadlock acontece se e somente se ocorrerem i, ii, iii e iv simultaneamente, não há que se falar em maioria das vezes...

    Além do mais, ainda que houver o compartilhamento de recursos do sistema entre vários processos, e cada processo exigir acesso ao recurso de forma exclusiva (exclusão mútua), se a espera não for circular (a espera por b e b espera por a) ou o sistema for preemptível, o deadlock não ocorrerá.

  • Mauricio, em se tratando de concurso, não podemos ser tão radicais assim; muitas vezes, devemos marcar a menos errada. Porem, nesse caso, vejo q a questão foi mal formulada, mas está correta.

    Ela afirma q "O problema de Deadlock existe em qualquer sistema multiprogramável". E isso eh verdade. Nos sistemas monoprogramáveis eh q não ha deadlock.

    Veja a definição de multiprogramação, segundo[1]:

    "Permite a multiplos programas compartilhar recursos de um sistema de computador pelo uso paralelo de uma CPU. Dois ou mais programas estaõ ativos ao mesmo tempo, mas não usam os mesmos recursos do computador simultaneamente. Eles se alternam no uso do computador".

    A II está absurdamente errada(sem comentarios). A IV também está errada. Primeiro q o termo correto nao eh implementar(pois há necessidade de se evitar ou recuperar-se de um deadlock). Segundo q o metodo citado nada tem a ver com deadlocks. Talvez com um outro conceito, provavelmente com processos morrendo por inanição, q eh o processo q nunca executa devido a baixa prioridade de CPU.

    Abraços.

    Referencias:

    [1] Programação em C ++ - 2.ed.: Algoritmos, estruturas de dados e objetos,  Luis Joyanes Aguilar.

  • Implementar deadlock? kkk

  • para estar em deadlock o processo deve estar dentro de um ciclo dirigido num gravo de uso de recursos. Um processo em starvation não está utilizando nenhum recurso.