SóProvas



Questões de Deadlock


ID
51295
Banca
CESGRANRIO
Órgão
TJ-RO
Ano
2008
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um sistema operacional sendo executado em um determinado computador, o processo A obteve acesso exclusivo ao recurso X e o processo B obteve acesso exclusivo ao recurso Y. Momentos depois, A está aguardando a liberação de Y antes de ele próprio liberar X, enquanto B está aguardando a liberação de X antes de ele próprio liberar Y. Esta situação recebe o nome de

Alternativas
Comentários
  • CONCEITO CLÁSSICO DE DEADLOCK! UM PROCESSO ESPERA O OUTRO PARA TERMINAR E O OUTRO ESPERA RECEBER O PROCESSO DE OUTRO.E OS DOIS NUNCA RECEBEM POR ESPERAM PROCESSOS SECUNDARIOS. NA PRATICA ALGUNS SISTEMAS IMPLEMENTAM A O DESCARTE DE ALGUM DOS PROCESSOS.
  • Condições para DeadlockNão-preempção: Recursos alocados a processos não podem ser tomados a força, precisam ser liberados explicitamente pelo processoEspera circular: Existe uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia Exclusão mútua: Cada recurso só pode ser alocado a exatamente um processoPosse-e-espera: Um processo pode solicitar um recurso, obter esse recurso para si e ficar bloqueado esperando por um outro recursoGeralmente é lembrado apenas "Posse-e-espera", mas se o recurso for preemptivel ou nao for exclusivo, não há condições de deadlock
  • Nem para ter um "starvation" nas opções para dificultar um pouquinho!
  • Tanenbaum - "Um conjunto de processos esta em deadlock se todo processo pertencente a ele esperar por um evento que outro processo pode fazer acontecer."

     

    Condicoes para deadlock- exclusao mutua, posse e espera, nao preempcao e espera circular.


ID
153070
Banca
CESPE / CEBRASPE
Órgão
TJ-DFT
Ano
2008
Provas
Disciplina
Sistemas Operacionais
Assuntos

Ainda com relação a características, funções, algoritmos e
componentes de sistemas operacionais, julgue os itens a seguir.

A condição de exclusão mútua, em que um recurso ou está associado a um único processo ou está disponível, é suficiente para a ocorrência de bloqueios fatais (deadlocks).

Alternativas
Comentários
  • É apenas necessária, não suficiente. Isto é, um deadlock pode ocorrer dada a exclusão mútua, mas não é toda vez que ocorre a exclusão mútua que um deadlock acontece.
    São condições necessárias para ocorrência de deadlock:
    Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;Condição de exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.
    Fonte:http://pt.wikipedia.org/wiki/Deadlock
  • Gabarito Errado

    Seria apenas necessária, não suficiente, CESPE CESPANDO.

     

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


ID
154084
Banca
FCC
Órgão
MPE-RN
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

O controle do tempo que uma transação pode ficar bloqueada (deadlock), esperando para acessar um dado, pode ser modificado com o comando:

Alternativas
Comentários
  • Timestamp: refere-se ao armazenamento de data/hora.
    Commit: salva uma transação efetivada com sucesso.
    rollback: retorna uma transação ao estado inicial.
    retrieve: Mostra os dados buscado no BD.

ID
222274
Banca
FGV
Órgão
BADESC
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

Analise o seguinte conceito.
"Situação que dois ou mais usuários (ou processos) se autobloqueiam devido a não liberação de recursos concorrentes, onde, cada um, separadamente, espera indefinidamente que o outro finalize o processamento, criando um impasse. Portanto, é uma situação em que duas ou mais transações se encontram em estado de espera simultânea, cada uma esperando que uma outra finalize o processamento para poder prosseguir".
A denominação desse conceito e o termo técnico que o provoca são, respectivamente:

Alternativas
Comentários
  • o bloqueio causa o deadlock
  • Em sistema multiprogramado, deadlock é um bloqueio perpétuo ou impasse. Dizemos que um processo está em deadlock quando espera por um evento particular que jamais irá acontecer. Igualmente dizemos que um sistema está em deadlock quando um ou mais processos estão nesta situação.
    Segundo Tanenbaum: "Um conjunto de processos está em deadlock quando cada processo do conjunto está esperando por um evento que apenas outro processo do conjunto pode causar".
  • Entendo que ordem é inversa. Bloqueio seguido de Deadlock.

  • Pra mim é letra B

  • O correto seria a letra B. Um deadLock é um bloqueio.

  • Deadlock é uma situação onde 2 ou + processos estao entram em estado de espera cíclica por recursos que nao estao disponiveis por dependerem de eventos que so vao ocorrer se os recursos forem liberados. 

    Condicoes:

    Condição de exclusividade mútua: cada recurso está ou alocado a um processo ou disponível

     

    Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado, esperando outro recurso. Retém-se o recurso (posse) e requisita outro (espera)

     

    Condição de não-preempção: recursos já alocados a processos precisam ser liberados por ele


    Condição de espera circular: cadeia de 2 ou mais processos, cada um dos quais esperando por um recurso que está com o próximo 


ID
321337
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

Com referência a fenômenos e técnicas associados à programação distribuída, assinale a opção correta.

Alternativas
Comentários
  • Se há deadlock então o processo não consegue acesso a um determinado recurso, e, consequentemente, entra em estado de starvation, pois esse recurso nunca será recebido. Algum comentário sobe o item A? Por que a A está errada?

  • Letra e.

     

    a) O deadlock é um fenômeno que sempre produz estarvação (starvation). Errado. Não é "estarvação", mas "inanição".

     

    b) O livelock é um fenômeno que consome poucos recursos computacionais e produz resultados úteis. Errado. Livelock é uma situação na qual dois ou mais processos mudam continuamente seus estados em resposta a alterações no(s) outro(s) processo(s) sem fazer qualquer trabalho útil. É um pouco semelhante ao impasse, mas a diferença é que os processos estão sendo educados e permitem que outros possam executar. Isso pode acontecer quando um processo tenta evitar um impasse.

     

    c) A fairness permite a distribuição adequada de tempo entre processadores para a execução de um mesmo processo. Errado. O "fairness", que se refere ao processo de justiça, permite a distribuição adequada de tempo de CPU para a execução de vários processo.

     

    d) Dos modelos de passagem de mensagem e de memória compartilhada, usados para comunicação interprocessos distribuídos, é comum o de memória compartilhada. Errado. A comunicação de  interprocessos distribuídos usa o modelo de passagem de mensagens.

  • A = PRIORIDADES DE PROCESSOS, ESCALONAMENTO POR PRIORIDADES

    B = LIVELOCK CONSOME MUITOS RECURSOS. ELE É UM LOOP

    C = VÁRIOS PROCESSOS

    D = COMUM A TRANSMISSÃO DE MENSAGENS

    2.2 - Transmissão de Mensagens

    - Comunicação ocorre por meio de mensagens trocadas entre os sistemas cooperativos, RESPONSABILIDADE DO SO.

    - Útil para a troca de pequenas quantidades de dados porque não é necessário evitar conflitos, também é mais fácil de implementar em um sistema distribuído do que a memória compartilhada. (Embora existam sistemas que fornecem memória compartilhada distribuída, não os consideramos aqui).

    - Em sistemas com vários núcleos de processamento indicam que, em tais sistemas, a transmissão de mensagens fornece melhor desempenho do que a memória compartilhada. A memória compartilhada apresenta problemas de coerência de cache que surgem porque os dados compartilhados migram entre os diversos caches. Conforme o número de núcleos de processamento nos sistemas cresce, é possível que vejamos a transmissão de mensagens como o mecanismo preferido para IPC.

    GABARITO E


ID
370663
Banca
FCC
Órgão
TCE-GO
Ano
2009
Provas
Disciplina
Sistemas Operacionais
Assuntos

Um deadlock acontece quando duas ou mais tarefas bloqueiam uma a outra permanentemente, sendo que cada uma tem o bloqueio de um recurso que a outra tarefa está tentando bloquear. Nesse sentido, é correto afirmar que o deadlock

Alternativas
Comentários
  • Uma das condições para que ocorra deadlock é a chamada espera circular. Como pode ocorrer espera circular com apenas 1 processo em execução no sistema operacional?

  • Não faz sentido! Como disse o colega, uma das condições é a espera circular, sem ela não há deadlock e como vai haver deadlock com um processo? Ele vai esperar um recurso que está sendo utilizado por quem?

  • Concordo com os senhores.

     

    Gabarito correto deveria ser C, pois dependendo da quantidade de processos, não há deadlock.

  • O boçal do examinador que fez PRONATEC confundiu deadlock com starvation

  • Fonte: WIKIPEDIA

    A definição textual de deadlock por ser muito abstrata, é mais difícil de se compreender do que a representação por grafos, que será resumida mais adiante. No entanto, algumas observações são pertinentes:

    deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize múltiplos threads e que tais threads requisitem os recursos alocados a outros threads no mesmo processo;

  • Para mim é C, mas essa definição da Wikipédia em... Que questão maluca, bola para frente.

  • Na minha opinião a C está correta. Se não deixa explícito que existem mais de uma thread no processo é mais correto que existe apenas uma linha de execução. 

  • DeadLock não está relacionado com processos, mas sim com tarefas.

  • Como resolver a ditadura das bancas?? Embora a informação esteja no Wikipedia ('...que pode ocorrer com apenas um processo...'), alguém consegue trazer fonte de algum autor renomado?

     

    Para a FCC, resposta letra B... pode ocorrer apenas com um processo.

     

    Para a banca Quadrix, há necessidade de, no mínimo, dois processos, conforme questão abaixo.

     

    Ano: 2016

    Banca: Quadrix

    Órgão: CRQ 18° Região - PI

    Prova: Auxiliar Técnico de Informática

    Quantos processos, no mínimo, podem estar envolvidos em um deadlock de um sistema operacional? 

    a) 1

    b) 2

    c) 3

    d) 4

    e) 5

  • Se o próprio Tanenbaun diz que é o mínimo 2, ai me coloca 1 na questão

  • definicao de deadlock do wikipedia, que é a referencia da fcc:

    A definição textual de deadlock por ser muito abstrata, é mais difícil de se compreender do que a representação por grafos, que será resumida mais adiante. No entanto, algumas observações são pertinentes:

       O deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize múltiplos threads e que tais threads requisitem os recursos alocados a outros threads no mesmo processo;

       O deadlock independe da quantidade de recursos disponíveis no sistema;

       Normalmente o deadlock ocorre com recursos, tais como dispositivos, arquivos, memória etc. Apesar de a CPU também ser um recurso para o SO, em geral é um recurso facilmente preemptível, pois existem os escalonadores para compartilhar o processador entre os diversos processos, quando trata-se de um ambiente multitarefa.

    https://pt.wikipedia.org/wiki/Deadlock


ID
370906
Banca
FCC
Órgão
TCE-GO
Ano
2009
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere as condições:
I. Exclusão mútua.
II. Posse e espera.
III. Não preempção.
IV. Espera circular.
Ocorrerá deadlock se estiverem presentes

Alternativas
Comentários
  • O deadlock ocorre naturalmente em alguns sistemas. No entanto, é necessário ressaltar que tais sistemas precisam obedecer a algumas condições para que uma situação de deadlock se manifeste.

    Essas condições estão listadas abaixo, onde as três primeiras caracterizam um modelo de sistema, e a última é o deadlock propriamente dito: processos que estejam de posse de recursos obtidos anteriormente podem solicitar novos recursos. Caso estes recursos já estejam alocados a outros processos, o processo solicitante deve aguardar pela liberação do mesmo;
     

    • Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;
    • Condição de exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;
    • Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;
    • Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.
  • Exclusão mutua, ou mutex= Tecnica para evitar que dois processos, tenham acessos simultâneos a um recurso.
    Posse e espera: Cada processo pode silicitar recurso e ficar bloqueando o recurso enquanto o outro está usando.
    Não preepmção- Escalonador não retira processos em execução.
    Espera circular-deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.
  • Letra E

     

    Deve SEMPRE haver as 4 condições abaixo para a ocorrência de deadlock. Na ausência de pelo menos uma dessas condições, descarta-se a possibilidade de sua ocorrência.

     

    I - Exclusão mútua: Pelo menos um recurso deve ser alocado em modo não compartilhável, isto é, apenas um processo de cada vez pode usar o recurso. Se outro processo solicitar este recurso, o processo solicitante deve ser atrasado até o recurso ter sido liberado.


    II - Posse e espera: Pelo menos um recurso deve estar alocado a um processo e este processo estar aguardando para adquirir recursos adicionais que, no momento, estejam sendo mantidos por outros processos.


    III - Inexistência de preempção (Não-preemptivo): Recursos não podem ser interceptados, isto é, um recurso só pode ser liberado voluntariamente pelo processo que o estiver mantendo após esse processo ter concluído sua tarefa.


    IV - Espera Circular: Deve existir um conjunto de processos (P1, P2, ...Pn) em espera, de tal modo que P1 esteja esperando por um recurso que está alocado a P2, P2 esteja esperando por um recurso que está alocado a Pn-1, Pn-1 esteja esperando por um recurso que está alocado a Pn e Pn esteja esperando por um recurso que está alocado a P1.

  • Gabarito E

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


ID
392200
Banca
Aeronáutica
Órgão
CIAAR
Ano
2009
Provas
Disciplina
Sistemas Operacionais
Assuntos

Informe se é verdadeiro (V) ou falso (F) o que se afirma abaixo e depois assinale a alternativa que apresenta a sequência correta.


( ) Um semáforo é uma variável inteira, não-negativa, que só pode ser manipulada por duas instruções: UP e DOWN.



( ) Os mutexes só podem assumir os valores 0 e 1 e os semáforos contadores podem assumir qualquer valor inteiro positivo, além do zero.



( ) A exclusão mútua pode ser implementada através de um mutex associado ao recurso compartilhado.



( ) O deadlock é a situação em que um processo aguarda por um recurso que nunca estará disponível ou um evento que não ocorrerá.

Alternativas
Comentários
  • CUIDADO, o GABARITO ESTÁ ERRADO!

    Gabarito apontado: A

    Gabarito correto: B

    (FALSO) Os mutexes só podem assumir os valores 0 e 1 e os semáforos contadores podem assumir qualquer valor inteiro positivo, além do zero.

    De acordo com Tanenbaum,

    • Um mutex é uma variável compartilhada que pode estar em um de dois estados: destravado ou travado. Em consequência, apenas 1 bit é necessário para representá-lo, mas na prática muitas vezes um inteiro é usado, com 0 significando destravado e todos os outros valores significando travado.
    • Um semáforo podia ter o valor 0, indicando que nenhum sinal de despertar fora salvo, ou algum valor positivo se um ou mais sinais de acordar estivessem pendentes.

    FONTE: TANENBAUM


ID
464116
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Os Sistemas Operacionais estão sujeitos a um fenômeno denominado deadlock. Para que uma situação de deadlock seja criada, as seguintes condições devem acontecer simultaneamente

Alternativas
Comentários
  • Essas condições estão listadas abaixo, onde as três primeiras caracterizam um modelo de sistema, e a última é o deadlock propriamente dito: processos que estejam de posse de recursos obtidos anteriormente podem solicitar novos recursos. Caso estes recursos já estejam alocados a outros processos, o processo solicitante deve aguardar pela liberação do mesmo;

    • Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;
    • Condição de exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;
    • Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;
    • Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.

    [editar]

  • Condições para que ocorra um deadlock

    1) Exclusão mútua;
    2) Posse e espera;
    3) Não preempção; e;
    4) Espera circular.

     

  • Gabarito A

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


ID
617521
Banca
CESGRANRIO
Órgão
FINEP
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em sistemas multiprogramáveis, os processos podem concorrer pelos recursos do sistema. Essa concorrência pode provocar uma situação conhecida como deadlock, que só ocorre quando todas as seguintes condições estão presentes, ao mesmo tempo, em um sistema:

Alternativas
Comentários
  • Condições necessárias para ocorrência do DeadLock:
    1. Exclusão Mútua: Apenas um processo por vez pode alocar e manipular um recurso;
    2. Posse e Espera: Um processo, de posse de um recurso, pode solicitar novos recursos;
    3. Não-Preempção: Um recurso não pode ser removido explicitamente do processo;
    4. Espera Circular: Ocorre CICLO no GRAFO de alocação;

    As 4 condições necessitam ocorrer em conjunto
    Se ao menos uma não ocorrer, não há DeadLock
  • Essa questão é de Sistemas Operacionais e o assunto é Gerência do Processador.
  •  exclusão mútua; posse e espera; não preempção; espera circular
  • Em um deadlock, os processos nunca terminam de executar, e os recursos do sistemas ficam retidos, impedindo que outras tarefas sejam iniciadas.
    Condições necessárias para ocorrer:
    1. Exclusão mútua: pelo menos um recurso precisa estar retido rm modo não compartilhado.
    2. Manter e esperar: um processo precisa estar de posse de pelo menos um recurso e esperando para obter a posso de recursos adicionais que estão em posse de outros processos.
    3. Não preempção: Os recursos não podem ser preemptados, ou seja, um recurso só pode ser liberado voluntariamente pelo processo que retém.
    4. Espera circular: Conjunto de processos aguardando de forma circular.
  • Gabarito D

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


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. 


ID
647566
Banca
FCC
Órgão
TCE-AP
Ano
2012
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em relação às condições para que ocorra um deadlock, àquela em que recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo e sim, explicitamente liberados por ele, denomina-se condição de

Alternativas
Comentários
  • Gab. D = Não preempção.

    Por falta de atenção marquei o item E que na verdade é o deadlock. Porém a questão pede a condição para que ocorra um deadlock.

    O item A é só para confundir. Os itens B, C e D são condições que antecedem o deadlock conforme a ordem citada abaixo.


    Fonte: http://pt.wikipedia.org/wiki/Deadlock

    Condições necessárias para a ocorrência de deadlock

    No texto acima, foi dito que o deadlock ocorre naturalmente em alguns sistemas. No entanto, é necessário ressaltar que tais sistemas precisam obedecer a algumas condições para que uma situação de deadlock se manifeste.

    Essas condições estão listadas abaixo, onde as três primeiras caracterizam um modelo de sistema, e a última é o deadlock propriamente dito: processos que estejam de posse de recursos obtidos anteriormente podem solicitar novos recursos. Caso estes recursos já estejam alocados a outros processos, o processo solicitante deve aguardar pela liberação do mesmo;

    • Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;
    • Condição de exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;
    • Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;
    • Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.
  • Condições para que ocorra um deadlock

    1) Exclusão mútua;
    2) Posse e espera;
    3) Não preempção; e
    4) Espera cirsular.

    Analisando as assertivas:

    a) preempção -> NÃO é uma condição para que ocorra o deadlock.
    b) exclusão mútua -> Cada recurso só pode estar alocado a um único processo em um determinado instante.
    c) posse e espera -> Um processo pode esperar por um recurso alocado a outro e vice e versa.
    d) não preempção -> Um recurso NÃO pode ser liberado de um processo apenas porque outros processos o desejam.
    e) espera circular -> Um processo pode estar esperando por outros recursos além daqueles já alocados.
  • Analisando as alternativas.

    Exclusão Mútua;
    -  Apenas um processo por vez pode alocar e manipular um recurso
    -  Recurso de uso exclusivo
    -  Impressora, CD/DVD para gravação

    Posse e Espera;
    -  Um processo, de posse de um recurso, pode solicitar novos recursos

    Não-Preempção;
    - Um recurso não pode ser removido explicitamente do processo
    Ex.: Impressora, 1. CD (Gravação
    )

    Espera Circular.
    - Ocorre CICLO no GRAFO de alocação
  • Deadlock- falha para continuar algo porque 2 programas necessitam resposta um do outro antes de completar uma operação.


    No Preemption: O.S. não deve realocar recursos que já o foram; eles devem ser liberados pelo processo, de modo voluntário.
  • marcos sampaio, exceto a alternativa "a", todas as outras, em conjunto, geram deadlock. A alternativa "e" não eh o deadlock, como vc citou, mas também uma das condiçoes para ocorrencia deste.
    Segundo Tanenbaum:

    não-preempção: recursos precisam ser liberados explicitamente pelo processo que detém a sua posse;
    exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;
    posse-e-espera: o processo tem um recurso, mas fica bloqueado esperando por outro recurso;
    espera circular:  dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo.
  • http://www.itnerante.com.br/profiles/blogs/sistemas-operacionas-deadlocks

  • Gabarito D

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


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

Sobre correção de um Deadlock, analise as assertivas e assinale a alternativa que aponta a(s) correta(s).

I. Após a detecção do deadlock, o sistema deverá corrigir o problema. Uma solução bastante utilizada pela maioria dos sistemas operacionais é, simplesmente, eliminar um ou mais processos envolvidos no deadlock e desalocar os recursos já garantidos por eles, quebrando assim a espera circular.

II. Um deadlock não tem correção, uma vez que o processo em execução aguarda um evento que nunca mais ocorrerá. O sistema operacional deve ser apto a identificar e eliminar um processo em deadlock.

III. Uma solução menos drástica envolve a liberação de apenas alguns recursos alocados aos processo para outros processos, até que o ciclo de espera termine.

IV. A eliminação dos processo envolvidos no deadlock e, consequentemente, a liberação de seus recursos podem não ser simples, dependendo do tipo do recurso envolvido.

Alternativas
Comentários
  • II. Um deadlock não tem correção, uma vez que o processo em execução aguarda um evento que nunca mais ocorrerá. O sistema operacional deve ser apto a identificar e eliminar um processo em deadlock. 

    Deadlock (interbloqueio, -blocagem, impasse), no contexto do sistemas operacionais (SO), caracteriza uma situação em que ocorre um impasse e dois ou mais processos ficam impedidos de continuar suas execuções, ou seja, ficam bloqueados. Trata-se de um problema bastante estudado no contexto dos Sistemas Operacionais, assim como em outras disciplinas, como banco de dados, pois é inerente à própria natureza desses sistemas.

    deadlock ocorre com um conjunto de processos e recursos não-preemptíveis, onde um ou mais processos desse conjunto está aguardando a liberação de um recurso por um outro processo que, por sua vez, aguarda a liberação de outro recurso alocado ou dependente do primeiro processo.

    A definição textual de deadlock normalmente, por ser muito abstrata, é mais difícil de se compreender do que a representação por grafos, que será resumida mais adiante. No entanto, algumas observações são pertinentes:

    • deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize múltiplos threads e que tais threads requisitem os recursos alocados a outrosthreads no mesmo processo;
    • deadlock independe da quantidade de recursos disponíveis no sistema;
    • Normalmente o deadlock ocorre com recursos como dispositivos, arquivos, memória, etc. Apesar da CPU também ser um recurso para o SO, em geral é um recurso facilmente preemptível, pois existem os escalonadores para compartilhar o processador entre os diversos processos, quando trata-se de um ambiente multitarefa.
  • lembrando, também, que deve atender a todas essas condições para a ocorrencia de um deadlock:

    • Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;
    • Condição de exclusão mútua: cada recurso ou está alocado a exatamente um processo ou está disponível;
    • Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;
    • Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.
  • Completando o comentário do Mario Filho:

    A afirmativa II diz que "o Sistema Operacional deve ser apto a identificar e a eliminar um processo em deadlock."

    Considerei essa afirmação também como errada, pois um SO não tem tal obrigação. De acordo com Tanenbaum, "a maioria dos sistemas operacionais, incluindo Unix e Windows, simplesmente ignora o problema, supondo que a maior parte dos usuários preferiria um deadlock ocasional a uma regra que restrinja cada usuário a somente um processo". Além disso, há outra opção para lidar com deadlocks, que é a sua prevenção (ao invés de deixar que o deadlock ocorra, detectá-lo/identificá-lo e então resolver a situação).


  • Para ficar mais fácil a compreensao da ocorrencia de deadlocks, imagine um processo P1 detendo a execução do processador no tempo T1. E o processo P2 detendo uma unidade de DVD-R no mesmo tempo T1.

    Haverá deadlock se houver todas as 4 condições abaixo com ambos os processos, P1 e P2.
    Condição de não-preempção: o processo P2 não poderá obter o processador de P1 até q este, explicitamente o libere.
    Condição de exclusão mútua: Ou a CPU está aloca a P1 ou a P2.
    Condição de posse-e-espera: P1 solicita a CPU, obtem-na, e fica bloqueado, esperando E/S(porém, de posse da CPU).
    Condição de espera circular: P1 tem a CPU e está esperando um dado do DVD para ler; P2 tem o DVD e está esperando a CPU para processar.
    PS: considere q no ultimo caso, não há recurso de DMA, presente na maioria das controladoras de DVD atuais.

  • O comentário de Breno R. está em parte incorreto. Segundo Tanenbaum(Sistemas Operacionais Modernos, 3Ed.) o S.O deve sim ser capaz de detectar uma situação de deadlock. Oque não é aconselhável é que o S.O implemente um algoritmo para prevenção de deadlock uma vez que seria muito custoso. Tanto o Windows como o Linux implementam o algoritmo do avestruz, eles só tratam a situação de deadlock na sua ocorrência, que na verdade é considerada rara.

    O ítem II está errado quando afirma que o deadlock não tem correção.

ID
754477
Banca
Marinha
Órgão
Quadro Complementar
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

O deadlock pode ser definido formalmente como se segue: "Um conjunto de processos está em uma situação de deadlock, se cada processo do conjunto estiver esperando por um evento que somente outro processo pertencente ao conjunto poderá fazer acontecer."
O artigo de Coffman et al. (1971) , citado por TANNENBAUM (1996), mostra que quatro condições devem ocorrer para que se configure uma situação de deadlock. Assinale a opção que NÄO é uma condição para ocorrência de um deadlock.

Alternativas
Comentários
  • Gabarito: C.

     

    Condições para Deadlock

     

    Não-preempção

    Exclusão mútua

    Posse-e-espera

    Espera circular

  • EMPENÃOPEC

    @papirobizurado


ID
754540
Banca
Marinha
Órgão
Quadro Complementar
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

As situações em que dois ou mais processos estão acessando dados compartilhados e o resultado final do processamento depende de quem executa primeiro, são denominados Condições de Corrida. A parte do programa, cujo processamento pode levar às condições de corrida é denominada região crítica ou seção critica. Em relação aos conceitos de processos, Condições de Corrida e seção crítica é correto afirmar que

Alternativas
Comentários
  • O gabarito é a letra D.

     

    Deadlock refere-se a uma situação em que ocorre um impasse, e dois ou mais processos ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros. Na prática, ocorre com um conjunto de processos e recursos não-preemptíveis, onde um ou mais processos desse conjunto está aguardando a liberação de um recurso por um outro processo, o qual, por sua vez, aguarda a liberação de outro recurso alocado ou dependente do primeiro processo.


ID
757984
Banca
FUMARC
Órgão
TJ-MG
Ano
2012
Provas
Disciplina
Sistemas Operacionais
Assuntos

Quanto às técnicas de controle de concorrência, avalie as seguintes alternativas.

I. O esquema de Esperar-morrer e Ferir-esperar são técnicas de prevenção de deadlocks (impasses).

II. Uma solução para a inanição é ter um esquema onde as transações sempre são atendidas, como, por exemplo, primeira que chega é a primeira a ser servida.

III. Podem ocorrer deadlocks quando o controle de concorrência é baseado em ordenação de rótulo (timestamp).

Assinale a alternativa CORRETA:

Alternativas
Comentários

ID
784213
Banca
CESPE / CEBRASPE
Órgão
MEC
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Julgue o  próximo  item , relativo  à gerência de bloqueio.

Os dois principais métodos para tratar deadlocks são: usar um protocolo de prevenção de deadlocks para a garantia de que o sistema nunca entre nesse estado; e(ou) finalizar o aplicativo que estiver sendo executado.

Alternativas
Comentários
  • As duas formas são: se tiver a possibilidade de ocorrer dead lock:

     

    1 - Não bloquear ninguém.

    2 - Se ocorrer dead lock, matar uma transação para liberar dead lock.

  • Métodos para manipulação de deadlocks (Silberchatz), Três Maneiras:
        Podemos usar um protocolo para impedir ou evitar a ocorrência de deadlocks, assegurando que o sistema nunca entratá em estado de deadlock.
        Podemos permitir que o sistema entre em estado de deadlock, detecte-o e se recupere dele.
        Podemos ignorar o problema e fingir que deadlocks nunca ocorrem no sistema.
            usada pela maioria dos SO
                UNIX e Windows
            Responsabilidade transferida ao desenvolvedor de aplicações

  • A questão fala de  "tratar deadlocks" . Então "usar um protocolo de prevenção" não dá jeito mais quando ocorre.

  • em TI nada é garantido


ID
784216
Banca
CESPE / CEBRASPE
Órgão
MEC
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Julgue o  próximo  item , relativo  à gerência de bloqueio.

Em uma situação de deadlock em que o sistema precise retirar de processamento uma ou mais transações, pode acontecer que a transação escolhida seja sempre a mesma. Essa situação, em que a transação não consegue ser executada, é chamada de starvation (inanição).

Alternativas
Comentários
  • Gabarito: C.

     

    Starvation/Inanição - processos não são escolhidos pelo escalonamento do SO.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que impede os mesmos de executar/concluir suas tarefas.


ID
784219
Banca
CESPE / CEBRASPE
Órgão
MEC
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Julgue o  próximo  item , relativo  à gerência de bloqueio.

O protocolo de bloqueio de duas fases, que assegura a seriabilidade, mas não a ausência de deadlock, permite que uma transação bloqueie um novo item de dado apenas se já tiver sido desbloqueado qualquer item.

Alternativas
Comentários
  • No bloqueio de duas fases(2 phase locks), os itens só podem ser bloqueados se ja estivem sido desbloqueados por outras transacoes que precederam a atual.

     

    Gabarito, CERTO

     

    FFF

  • " permite que uma transação bloqueie um novo item de dado apenas se já tiver sido desbloqueado qualquer item."

    QUALQUER item nem garante que seja o mesmo item.

  • Essa questão não tem coerência alguma.

    "[...] permite que uma transação bloqueie um novo item de dado apenas se já tiver sido desbloqueado qualquer item."

    Três considerações. 

    1 - No protocolo de bloqueio em 2 fases, há as fases de Expansão e de Encolhimento, onde são executados os locks e os unlocks, respectivamente.

    2 - No momento que qualquer unlock é feito, não é mais possível realizar locks, pois entende-se que já está na fase de Encolhimento.

    3 - Um item de dado só pode ser bloqueado se fora inicialmente desbloqueado por outra transação, ou, caso o bloqueio seja Compartilhado e já esteja em um bloqueio Compartilhado (uma vez que podem existir vários bloqueios Compartilhados -ReadOnly- sobre o mesmo dado).

    Por fim, meu caro fazedor de questões, leia novamente a questão e veja se há coerência textual. Abraçosss

  • coerência zero mesmo

    mas a galera tem que justificar o injustificável e passar pano pra banca


ID
800722
Banca
Exército
Órgão
EsFCEx
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Uma situação de livelock envolvendo dois processos difere de uma situação de deadlock porque:

Alternativas
Comentários
  • livelock (situação na qual uma unidade concorrente não consegue terminar a execução ou entrar em uma seção crítica por excesso de trabalho ou falta de velocidade; difere de deadlock por estar ativa e não bloqueada ou aguardando algo).

  • Uma thread geralmente age em resposta à ação de uma segunda thread.
    Se a ação da segunda thread também é uma resposta à ação da primeira thread, pode-se dar origem a um LIVELOCK.
    Tal como acontece com o deadlock, as threads vivas são incapazes de avançar.
    No entanto, elas não são bloqueadas - elas estão simplesmente muito ocupadas respondendo umas as outras para retomar o trabalho.

  • GABARITO A

    Segundo Tanenbaum,

    Livelock

    "Em algumas situações, um processo tenta ser educado abrindo mão dos bloqueios que ele já adquiriu sempre que nota que não pode obter o bloqueio seguinte de que precisa. Então ele espera um milissegundo, digamos, e tenta de novo. Em princípio, isso é bom e deve ajudar a detectar e a evitar impasses. No entanto, se o outro processo faz a mesma coisa exatamente no mesmo momento, eles estarão na situação de duas pessoas tentando passar uma pela outra quando ambas educadamente dão um passo para o lado e, no entanto, nenhum progresso é possível, pois elas seguem dando um passo ao lado na mesma direção ao mesmo tempo.

    [...] É claro, nenhum processo é bloqueado e poderíamos até dizer que as coisas estão acontecendo, então isso não é um impasse. Ainda assim, nenhum progresso é possível, então temos algo equivalente: um livelock."

    FONTE: Tanenbaum


ID
815221
Banca
FUNDEP (Gestão de Concursos)
Órgão
Prefeitura de Belo Horizonte - MG
Ano
2012
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em sistemas operacionais, indique a situação abaixo que está representando Deadlock.

Alternativas
Comentários
  • Gabarito: D.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas. Ocorre quando um processo espera por um evento que nunca ocorrerá.


ID
885049
Banca
CESPE / CEBRASPE
Órgão
ANP
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Acerca de sistemas operacionais, julgue os itens a seguir.

Deadlock é o bloqueio que ocorre quando um processo precisa escrever dados em um arquivo que já está sendo usado por outro processo para gravação de dados e o sistema operacional nega o acesso ao arquivo.

Alternativas
Comentários
  • Questão anulada.
    Justificativa: A redação do item causou ambiguidade prejudicando seu julgamento objetivo. Dessa forma, opta-se por sua anulação
  • O gabarito preliminar era CERTA. Porém, esse entendimento está errado. O conceito de deadlock envolve 4 condições necessárias:
    1. Exclusão mútua
    2.Espera carregada (não libera recursos na espera)
    3.Não preempção (não pode retirar o recurso)
    4.Espera circular
    Na situação em apreço, o processo requisitante decerto será bloqueado. Isso, porém, não causa o deadlock, uma vez que o outro processo continua a sua execução. Como a redação do item não explicitou o bloqueia do segundo processo, o item foi anulado.

ID
898057
Banca
CESGRANRIO
Órgão
BNDES
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

O Deadlock caracteriza uma situação na qual um processo aguarda por um recurso que nunca estará disponível ou um evento que não ocorrerá.

Uma das condições necessárias para que ocorra a situação de deadlock é a

Alternativas
Comentários
  • É uma questão capsciosa, pois o Deadlock é uma situação, também, conhecida como impasse e
    ocorre quando um processo aguarda por um recurso que nunca
    estará disponível ou por evento que nunca ocorrerá.
    Para que ocorra um impasse, é preciso que ocorram quatro
    condições simultâneas:

     1a) Exclusão mútua: o recurso só pode ser alocado a um único
    processo de cada vez.
     2a) Posse e espera por recurso: o processo retém um recurso e
    espera por outro.
     3a) Não-preempção: o processo retém um recurso e só ele
    pode liberá-lo. Exemplo: impressora. Antiexemplos: HD e RAM.
     4a) Espera circular: o processo A retém o recurso 1 e só vai
    liberá-lo ao obter o recurso 2, que está alocado ao processo B.
    O processo B retém o recurso 2 e só vai liberá-lo ao obter o
    recurso 1, que está alocado ao processo A. Cria-se, assim, uma
    situação que pode ser representada por um grafo cíclico.

    Neste caso, a alternativa que mais se aproxima é a letra C.

  • Não vi nada capcioso: pediu uma das condições do deadlock e na lista de alternativas está tal condição.

  • Gabarito C

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


ID
900820
Banca
CESGRANRIO
Órgão
BNDES
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Existe uma situação denominada deadlock que, eventualmente, ocorre durante a execução de processos em sistemas operacionais.

O deadlock é caracterizado por haver, por exemplo,

Alternativas
Comentários
  • Segundo Andrew S. Tanenbaum, "Um deadlock ocorre quando vários pacotes em trânsito requisitam ao mesmo tempo um conjunto de recursos de tal maneira que nenhum deles obtém todos os recursos de que necessita para prosseguir e, portanto, todos os pacotes vão ficar bloqueados para sempre."

  • Qual o erro da letra B? A B e a C estão corretas.

  • Tem que existir o fechamento do ciclo 

  • Gabarito C

    Deadlock (interbloqueio, blocagem, impasse), no contexto de sistemas operacionais (SO), refere-se a uma situação em que ocorre um impasse, e dois ou mais processos ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros. Trata-se de um problema bastante estudado em sistemas operacionais e banco de dados, pois é inerente à própria natureza desses sistemas.

    deadlock ocorre com um conjunto de processos e recursos não-preemptíveis, onde um ou mais processos desse conjunto está aguardando a liberação de um recurso por um outro processo, o qual, por sua vez, aguarda a liberação de outro recurso alocado ou dependente do primeiro processo.

    A definição textual de deadlock por ser muito abstrata, é mais difícil de se compreender do que a representação por grafos, que será resumida mais adiante. No entanto, algumas observações são pertinentes:

    deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize múltiplos threads e que tais threads requisitem os recursos alocados a outros threads no mesmo processo;

    deadlock independe da quantidade de recursos disponíveis no sistema;

    Normalmente o deadlock ocorre com recursos, tais como dispositivos, arquivos, memória etc. Apesar de a CPU também ser um recurso para o SO, em geral é um recurso facilmente preemptível, pois existem os escalonadores para compartilhar o processador entre os diversos processos, quando trata-se de um ambiente multitarefa.

    Erros de deadlock podem ocorrer em bancos de dados. Suponha que uma empresa tenha vários vendedores e vários pontos de venda ou caixas. O vendedor A vendeu 1 martelo e 1 furadeira. O sistema, então, solicita o travamento do registro da tabela "ESTOQUE", que contém o total de martelos em estoque e, em seguida, solicita o travamento do registro que contém o total de furadeiras em estoque. De posse da exclusividade de acesso aos dois registros, ele lê a quantidade de martelos, subtrai 1 e escreve de novo no registro; o mesmo ocorre com relação ao registro de furadeiras. Observe, no entanto, que existem diversos caixas operando simultaneamente, de forma que, se algum outro caixa, naquele exato instante, estiver vendendo uma furadeira, ele ficará aguardando a liberação do registro das furadeiras para depois alterá-lo. Note que ele só altera os registros depois que for dada exclusividade para ele de TODOS os recursos que ele precisa, ou seja, de todos os registros. Suponha agora que, em outro caixa, foram vendidos 1 furadeira e 1 martelo e que o outro caixa solicitou o travamento do registro com a quantidade de furadeiras e agora quer o acesso ao de martelos; no entanto o registro de martelos está travado para o primeiro caixa. Nenhum deles devolve o recurso (registro) sobre o qual tem exclusividade e também não consegue acesso ao outro registro que falta para terminar a operação. Isto é um deadlock.

     

     

     

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


ID
961042
Banca
Marinha
Órgão
Quadro Técnico
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Assinale a opção que apresenta uma condição necessária para que ocorra um deadlock.

Alternativas
Comentários
    • Condição de não-preempção: recursos já alocados a processos não podem ser tomados a força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;

    • Condição de exclusividade mútua: cada recurso ou está alocado a exatamente um processo, ou está disponível;

    • Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado esperando por um outro recurso;

    • Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo membro da cadeia.

  • O gabarito é a letra D.

     

    Exclusão mútua é uma técnica usada em programação concorrente para evitar que dois processos ou threads tenham acesso simultaneamente a um recurso compartilhado, acesso esse denominado por seção crítica.

     

    Um meio simples para exclusão mútua é a utilização de um semáforo binário, isto é, que só pode assumir dois valores distintos, 0 e 1. O travamento por semáforo deve ser feito antes de utilizar o recurso, e após o uso o recurso deve ser liberado. Enquanto o recurso estiver em uso, qualquer outro processo que o utilize deve esperar a liberação.

     

    Porém, essa técnica pode causar vários efeitos colaterais, como deadlocks, em que dois processos obtêm o mesmo semáforo e ficam esperando indefinidamente um outro processo liberar o semáforo; e inanição, que é quando o processo nunca dispõe de recursos suficientes para executar plenamente.

  • Condições para haver deadlock:

    EMPENAOPEC

    Exclusão Mútua

    Posse e Espera

    NAO Preenpção

    Espera Circular

    GAbarito letra D

  • Peço licença ao colega Diego Vieira Sarmento para complementar sua EXCELENTE resposta ao exercício.

    § 1 Para a prova de fatos que só elas conheçam, pode o juiz admitir o depoimento das pessoas a que se refere este artigo. (Redação dada pela Lei nº 13.146, de 2015)(Vigência) 

    § 2 A pessoa com deficiência poderá testemunhar em igualdade de condições com as demais pessoas, sendo-lhe assegurados todos os recursos de tecnologia assistiva. (Redação dada pela Lei nº 13.146, de 2015)(Vigência) 


ID
961420
Banca
Marinha
Órgão
Quadro Técnico
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere um sistema em deadlock, que tem quatro processos, de "A a D", e quatro recursos, de "O a R". Os recursos estão sendo usados e requisitados, conforme o quadro abaixo:

1. O processo "A" possui o recurso "O" e requisita o recurso "P".
2. O processo "B" nada possui, mas requisita o recurso "O".
3. O processo "C" possui o recurso "Q" e requisita o recurso "P".
4. O processo "D" possui o recurso "R" e requisita os recursos "Q" e "P".

Nessas condições, assinale a opção que apresenta os processos envolvidos no DEADLOCK.


Alternativas
Comentários
  • Ocorre ESPERA CIRCULAR entre os 2 processos.

  • O deadlock só ocorrerá se o processo D alocar o recurso P.
  • O gabarito é a letra B.

     

    O deadlock ocorre com um conjunto de processos e recursos não-preemptíveis, onde um ou mais processos desse conjunto (D) está aguardando a liberação de um recurso por um outro processo (C), o qual, por sua vez, aguarda a liberação de outro recurso alocado ou dependente do primeiro processo (A).

  • Deadlock é a situação em que um processo aguarda por um recurso que nunca estará disponível ou um evento que não ocorrerá

  • Se ninguem esta com o recurso P pq ta ocorrendo espera circular?


ID
1044283
Banca
CETRO
Órgão
ANVISA
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Assinale a alternativa que apresenta apenas problemas de concorrência em bancos de dados que podem ser reduzidos a um deadlock como uma etapa da solução.

Alternativas
Comentários
  • Análise inconsistente - Exemplo: um editor lê o mesmo documento duas vezes, mas entre cada leitura o escritor reescreve o documento. Quando o editor lê o documento pela segunda vez, este já foi alterado. A leitura original não era repetível. Esse problema poderia ser evitado se o escritor não pudesse alterar o documento até que o editor tivesse terminado de lê-lo pela última vez.

    fonte: https://technet.microsoft.com/pt-br/library/ms190805(v=sql.105).aspx

     

     

     

     

  • Leitura Não-Repetida (ou análise inconsistente)
    1. Transações T1 e T2 são iniciadas.
    2. A transação T1 lê a linha L1.
    3. A transação T2 modifica a linha L1, atualizando seus dados ou apagando a linha.
    4. A transação T2 é concluída com sucesso e as suas operações são confirmadas.
    5. A transação T1 lê (ou tenta ler) a linha L1.
     Assim: T1 nunca modificou os dados da linha L1, mas não obteve a mesma leitura duas vezes dentro da mesma transação.

    (Esse problema poderia ser evitado se uma transação não pudesse acessar L1 até que a outra transação tivesse sido terminada e confirmada.)

    Perda de Atualização (problema da atualização)
    1. Transações T1 e T2 são iniciadas.
    2. A transação T1 lê o dado D1 e armazena seu valor na variável X.
    3. A transação T2 lê o dado D1 e armazena seu valor na variável Y.
    4. A transação T1 atualiza D1 com o valor 10.
    5. A transação T2 atualiza D1 com o valor 11.
    6. A transação T1 termina com sucesso.
    7. A transação T2 termina com sucesso.
    Assim: Para a transação T1 o valor de D1 deveria ser 10 (mas é 11). 

    (Esse problema poderia ser evitado se T2 não pudesse alterar o documento até que T1 tivesse terminado de lê-lo pela última vez.)

    Leitura Suja (ou Dependência sem commit)
    1. Transações T1 e T2 são iniciadas.
    2. A transação T1 modifica a linha L1.
    3. A transação T2 lê a linha L1 antes que T1 termine.
    4. T1 termina com fracasso e suas operações são desfeitas.
     Assim: T2 terá lido uma informação que nunca foi confirmada.

  • Deadlock como etapa de solução é brincadeira hein? Talvez ele quis dizer exclusão mútua, mas deadlock é um problema, e não uma solução. Acho que a questão deveria ter sido anulada.

  • Por que a letra D está errada?

  • Por que a letra D e A estão erradas?


ID
1045150
Banca
CESPE / CEBRASPE
Órgão
UNIPAMPA
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

A respeito dos sistemas operacionais, julgue os próximos itens.

A situação denominada deadlock é caracterizada por um processo cuja execução termina de maneira forçada.

Alternativas
Comentários
  • Um deadlock acontece quando duas ou mais tarefas bloqueiam uma à outra permanentemente, sendo que cada uma tem o bloqueio de um recurso, que a outra tarefa está tentando bloquear.

    https://technet.microsoft.com/pt-br/library/ms177433(v=sql.105).aspx

  • Gabarito: E.

     

    Acredito que o referido conceito seja o de preempção.


ID
1055743
Banca
CESPE / CEBRASPE
Órgão
STF
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

No que se refere aos sistemas operacionais, julgue os itens subsecutivos.

Um deadlock pode surgir quando soluções que apresentam busy waiting são empregadas em sistemas que utilizam prioridade para escalonar os processos.

Alternativas
Comentários
  • Deadlock ocorre quando dois processos ficam bloqueados por alguma pendência não realizada. Geralmente os um processo bloqueado nesse caso, aguarda o resultado de um outro processo também bloqueado.

  • Como informação adicional, as quatro condições necessárias para se entrar no estado de Deadlock são:

    1. Exclusão Mútua: todo recurso está ou associado a um único processo ou disponível;

    2. Posse e Espera: processos que retêm recursos podem solicitar novos recursos;

    3. Não Preempção: recursos concedidos previamente não podem ser forçosamente tomados; e

    4. Espera Circular: deve haver uma cadeia circular de dois ou mais processos, na qual cada um está à espera de recursos retido pelo membro seguinte dessa cadeia.

  • Não entendi, se tem prioridade para escalonamento, então porque existe o deadlock!? 

  • Quando recursos são alocados segundo um esquema de prioridades, é possível que um determinado processo espere indefinidamente por um
    recurso conforme processos com prioridades mais altas venham chegando.

  • Certo.
    Vamos pensar em um sistema que utiliza o algoritmo de "Prioridade" no escalonamento de processos. Nesse cenário certamente ocorre a preempção, condição que descarta a ocorrência de deadlock.
    Porém, a partir do momento que emprego a solução de "busy waiting", isso agora passa a ser uma particularidade tratada pela Exclusão Mútua, em que processos não podem adquirir um recurso qdo ele está sendo utilizado por outro processo. Logo, isso passa a ser uma das condições para o Deadlock.

     


ID
1078411
Banca
IDECAN
Órgão
CREFITO-8ª Região(PR)
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Para que se ocorra um impasse (deadlock), quatro condições são conhecidas, sendo que, se faltar uma dessas condições, o impasse do recurso não ocorrerá. Acerca dessas condições, assinale a alternativa INCORRETA.

Alternativas
Comentários
  • A ocorrência da inanição se dá quando os programas rodam indefinidamente (razão pela qual também se dá o nome de preterição indefinida a esta situação) e não fazem nenhum progresso em seu processamento, ao contrário do deadlock, que ocorre quando os processos permanecem bloqueados, dependendo da liberação dos recursos por eles alocados.


    Fonte:http://pt.m.wikipedia.org/wiki/Inani%C3%A7%C3%A3o_(computa%C3%A7%C3%A3o)
  • Deadlock = Interbloqueio, blocagem, impasse.

    Quando se executa um conjunto de processos do SO, pode-se causar uma situação de Deadlock se, todo processo pertencente a este conjunto estiver esperando por um evento que somente outro processo desse mesmo conjunto pode fazer.

    É facil de entender quando se imagina um sinaleiro de cruzamento congestionado, e o fluxo de um lado depende da liberação do fluxo do outro lado, que também está congestionado.

    Inanição não faz parte deste grupo. Resposta certa A.

  • Gabarito A

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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


ID
1131646
Banca
CS-UFG
Órgão
UEAP
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

O deadlock (impasse) ocorre quando cada transação T em um conjunto de duas ou mais transações estiver esperando por algum item de dado que esteja bloqueado por alguma outra transação no conjunto. No protocolo esperar- morrer (wait-die), que busca a prevenção de deadlocks, se a transação T1 precisa bloquear um item de dado que já está bloqueado pela transação T2, então

Alternativas
Comentários
  • Encontrei uma explicação bem resumida, espero que ajude !

    Quando uma transação solicita um bloqueio de um registro que já está bloqueado por outra transação, então um dos dois procedimentos é seguido:


    Wait-die - se a transação que solicitou o bloqueio é a mais antiga, pode aguardar. Se for a mais nova, sofre rollback e recomeça mais tarde com mesmo timestamping.

    Wound-wait - se for a transação mais nova, pode aguardar. Se for a mais antiga, interrompe a mais nova, a qual sofre rollback. Recomeça mais tarde com mesmo timestamping.

  • De acordo com Navathe(2011,p.530), "Em esperar-morrer, uma transação mais antiga tem permissão para esperar por uma transação mais nova, enquanto uma transação mais nova que solicita um item mantido por uma transação mais antiga é abortada e reiniciada."


ID
1141387
Banca
FUNRIO
Órgão
INSS
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Analise as três afirmações seguintes sobre as condições para a ocorrência de deadlocks.

I. Exclusão mútua: em um determinado instante, cada recurso está em uma de duas situações: disponível ou associado a um único processo.
II. Posse e espera: processos que, em um determinado instante, retêm recursos concedidos anteriormente, podem requisitar novos recursos.
III. Não preempção: recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo – eles devem ser explicitamente liberados pelo processo que os retém.

Quais dessas afirmações estão corretas?

Alternativas
Comentários
  • Complementando, mais uma condição para a ocorrência de deadlock é a espera circular em que deve existir um encadeamento circular de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

  • Condições para ocorrência de Deadlock

     

    Não Preempção: recursos precisam ser liberados explicitamente pelo processo que detém sua posse.

     

    Exclusão mútua: Cada recurso ou está alocado a extamente um recurso ou está disponível.

     

    Posse e espera: O processo tem um recurso mais fica bloqueado esperando por outro recurso.

     

    Espera Circular: Dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo.


ID
1351135
Banca
FUNCAB
Órgão
MDA
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Uma técnica para detecção de deadlock é implementada de acordo com um conceito matemático que possui a denominação de:

Alternativas
Comentários
  • Representação de deadlock em grafo

    O deadlock também pode ser representado na forma de grafos dirigidos, onde o processo é representado por um quadrado e o recurso por um círculo. Quando um processo solicita um recurso, uma seta é dirigida do quadrado ao círculo. Quando um recurso é alocado a um processo, uma seta é dirigida do círculo ao quadrado.

    Fonte:https://pt.wikipedia.org/wiki/Deadlock


ID
1351138
Banca
FUNCAB
Órgão
MDA
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlock e inanição (starvation) são dois conceitos semelhantes. No entanto, inanição possui a seguinte característica que a diferencia de deadlock:

Alternativas
Comentários
  • inanição (starvation) > Em programação concorrente ocorre inanição quando um processo nunca é executado ("morre de fome"), pois processos de prioridade maior sempre o impedem de ser executado.

    deadlock > acontece quando duas ou mais tarefas bloqueiam uma à outra permanentemente, sendo que cada uma tem o bloqueio de um recurso, 


  • Só para incrementar: Uma solução para a inanição (Starvation) é ter um esquema onde as transações sempre são atendidas, como por exemplo, primeira que chega é a primeira a ser servida.


ID
1419373
Banca
FCC
Órgão
TCE-GO
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Não ocorre deadlock em um sistema de multiprogramação em que

Alternativas
Comentários
  • Bom, vou esperar a explicação de alguém, mas eu fui na letra A sem medo.

    Meu raciocínio foi: Se há uma exclusão mútua, não há como ter deadlock, no máximo starvation

    Mas concordo que a letra E está certa também, se não há compartilhamento, não tem como ter deadlock

  • Raphael, 

    No livro do Silbershatz "Sistemas Operacionais, Conceitos e Aplicações" no capitulo 8.2.1, diz que os deadlocks somente ocorrerão se quatro condições acontecerem simultaneamente.

    Condições:

    • Exclusão Mútua: (alternativa A)
    • Posse e Espera: (alternativa B)
    • Não-preempção: (alternativa C)
    • Espera Circular: (alternativa D)

    Minha conclusão: A questão é meio estranha, sendo necessário optar pela alternativa menos errada, pois a existência de qualquer das condições de deadlock não significa que ocorrerá deadlock.

  • Da wiki "O deadlock ocorre com um conjunto de processos e recursos não preemptives, onde um ou mais processos deste conjunto esta aguardando a liberação de um recurso por um outro processo...". Dado que a letra E afirma que não há recurso compartilhado logo não existe disputa por recurso, logo não é possível ocorrer deadlock.

  • Gabarito E

    Em muitas aplicações, observamos a necessidade de se garantir a um processo, acesso exclusivo a certos recursos. Imaginem, por exemplo, a confusão causada se dois processos usassem a impressora simultaneamente! O resultado certamente não seria o esperado.

    Situações como esta são pertinentes num sistema de computação e exemplos típicos de recursos que só podem ser usados por um processo de cada vez incluem impressoras, unidades de fita e registros em um sistema de banco de dados.

    Em sistemas multiprogramados essa questão torna-se mais difícil de se gerenciar, ao contrário dos sistemas monoprogramados onde o único processo pode simplesmente adquirir acesso a todos os recursos de que precisa e fazer seu trabalho. Numa situação em que dois processos estão bloqueados e assim permanecerão indefinidamente, cada um esperando por um evento que somente o outro poderá fazer acontecer, teremos a ocorrência de um deadlock.

    Suponha por exemplo, que existam dois processos, A e B, cada um dos quais querendo scannear um arquivo armazenado em fita. O processo A solicita e consegue permissão para usar a fita. O processo B requer e também consegue permissão para usar o scanner. A seguir, o processo A pede permissão para usar o scanner, mas a solicitação não vai poder ser atendida até que o processo B o libere. Infelizmente, em vez de liberar o scanner, B solicita permissão para usar a fita. Neste ponto, ambos os processos estão bloqueados, e assim permanecerão para sempre. Temos, portanto, uma situação de deadlock.

     

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

  • A condição de exclusão mútua deve estar presente. Isto é, pelo menos um recurso deve ser não compartilhável. Recursos
    compartilháveis, por outro lado, não requerem acesso mutuamente exclusivo e, portanto, não podem estar envolvidos em
    um deadlock. Arquivos somente de leitura são um bom exemplo de recurso compartilhável. Se vários processos tentam
    abrir um arquivo somente de leitura ao mesmo tempo, podem conseguir acesso simultâneo ao arquivo. Um processo
    nunca precisa esperar por um recurso compartilhável.Silbershatz "Sistemas Operacionais, Conceitos e Aplicações" cap 7 item 7.4

  • e-

    Deadlock é um probelma que pode surgir ate em uma comunidade que coopera ou cpmpete por RECURSOS. Ele é uma falha, e nao um erro porque ocorre quando mais de 1 processo requer 1 recurso ao mesmo tempo. O deadlock é uma situação onde os processos nunca concluirao sem recuperacao. O deadlock ocorre com recursos como dispositivos, arquivos, memoria, entre outros. 

    Condicoes;

     

    1- mutex (exlcusao mutua) - o recurso ou esta livre ou ocupado

    2- posse e espera - processos retêm recursos precisados antes podem necessitar nvos recursos. 

    3- nao preempcao - processo tem que liberar recurso por seus meios. Lembrando escalonamentos nao preemptivos sao FIFO (first on first served), SJF (shortest job first) e cooperacao (processo libera CPU por seus proprios criterios. Problema é risco de looping)

    4- espera circular - uma cadeia de processos, cada 1 necessitando o recurso usado pelo seguinte.

     

    Tratamento de deadlocks:

    1- deteccao e recuperacao - estrutura de dados que pega informacao dos processos e status para detectar e impedir deadlock; essa atualizacao é custosa porque causa overhead. 

    2- evitar edadlock- SO decide se liberar recurso é seguro ou nao.

    3- prevencao - eliminar pelo menos 1 das 4 condicoes.


ID
1428856
Banca
CESGRANRIO
Órgão
LIQUIGÁS
Ano
2012
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um sistema com multiprogramação, vários processos podem competir por um conjunto finito de recursos presentes no sistema, como, por exemplo, o acesso a regiões da memória ou dispositivos de entrada e saída (E/S). Quando um processo X requisita um acesso a um determinado recurso e esse se encontra ocupado ou sendo utilizado por um processo Y de forma exclusiva, o sistema operacional coloca o requisitante em estado de espera.
Se o processo Y, por sua vez, também requisitar um recurso que esteja de posse do processo X de forma exclusiva, ambos entrarão em um estado conhecido pelo nome de

Alternativas
Comentários
  • Gabarito: E.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas. Ocorre quando um processo espera por um evento que nunca ocorrerá.

     

    Como complemento, segue abaixo um outro conceito que normalmente é cobrado junto com Deadlock e que, pela semelhança, pode causar alguma confusão.

     

    Starvation/Inanição - processos não são escolhidos pelo escalonamento do SO.

  • Gabarito E

    Condições para Deadlock ocorrer:

     

    Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

     

     

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

  • Resposta E, Dead Lock, se tivesse uma alternativa com "posse e espera" seria mais correto


ID
1578460
Banca
FCC
Órgão
TCE-CE
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um cenário no qual os processos trabalham concorrendo e compartilhando recursos, ocorrerá deadlock quando

Alternativas
Comentários
  • Deadlock (interbloqueio, blocagem, impasse), no contexto de sistemas operacionais(SO), refere-se a uma situação em que ocorre um impasse, e dois ou mais processos ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros. Trata-se de um problema bastante estudado em sistemas operacionais e bancos de dados, pois é inerente à própria natureza desses sistemas.


    https://pt.wikipedia.org/wiki/Deadlock

  • Condições para Deadlock

     

    Não preempção

    Exclusão mútua

    Espera circular

    Posse e espera

  • A. Preempção oposto de 'Não Preempção' - uma das condições para deadlock
    B. Espera Circular uma das condições para deadlock
    C. Recurso compartilhado oposto de 'Exclusão Mútua' - uma das condições para deadlock
    D. Preempção oposto de 'Não Preempção' - uma das condições para deadlock
    E. Não é uma característica que gera deadlock


ID
1699042
Banca
Aeronáutica
Órgão
EEAR
Ano
2009
Provas
Disciplina
Sistemas Operacionais
Assuntos

“Um conjunto de processos estará em situação de deadlock se todo processo pertencente ao conjunto estiver esperando por um evento que somente um outro processo desse mesmo conjunto poderá fazer acontecer."
Tendo como base a definição de deadlock, segundo Andrew S. Tanenbaum, qual das alternativas abaixo não é uma condição para ocorrência de deadlock?

Alternativas

ID
1728979
Banca
FGV
Órgão
DPE-RO
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere dois processos em execução A e B. Ambos possuem a mesma prioridade de execução e acessam uma seção crítica que utiliza os recursos R e S controlados por semáforos binários de mesmos nomes. O processo A tenta entrar na sua seção crítica obtendo controle dos recursos R e S nesta ordem. O processo B tenta entrar em sua seção crítica obtendo controle dos recursos na ordem inversa, S e R. Essa configuração pode ocasionar o problema de:

Alternativas
Comentários
  • DEADLOCK:
    É uma situação na qual duas ou mais transações estão em estado de espera simultânea, cada uma esperando que uma das outras libere um bloqueio antes de poder prosseguir. Se ocorrer um deadlock, é desejável que o sistema detecte e o interrompa. Detectar um deadlock envolve detectar um ciclo no Grafo de Espera. Interromper o deadlock envolve escolher uma das transações participantes – ou seja, uma das transações do ciclo no grafo – como vítima e fazer o ROLLBACK, liberando assim seus bloqueios, e portanto, permitindo o prosseguimento de alguma outra transação.
    Um exemplo de Deadlock:
    Em um sistema com multiprogramação, vários processos podem competir por um conjunto finito de recursos presentes no sistema, como, por exemplo, o acesso a regiões da memória ou dispositivos de entrada e saída (E/S). Quando um processo X requisita um acesso a um determinado recurso e esse se encontra ocupado ou sendo utilizado por um processo Y de forma exclusiva, o sistema operacional coloca o requisitante em estado de espera.
    Se o processo Y, por sua vez, também requisitar um recurso que esteja de posse do processo X de forma exclusiva, ambos entrarão em um estado de Deadlock.

  • Gabarito B

    Condições para Deadlock:
    Não-preempção - recursos precisam ser liberados explicitamente pelo processo que detém a sua posse

    Exclusão mútua - cada recurso ou está alocado a exatamente um processo ou está disponível

    Posse-e-espera (monopolização de recursos) - o processo tem um recurso, mas fica bloqueado esperando por outro recurso

    Espera circular - dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo

     

     

     

     

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


ID
1738111
Banca
CESPE / CEBRASPE
Órgão
ANP
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Acerca de sistemas operacionais, julgue o item a seguir. 

Deadlock é o bloqueio que ocorre quando um processo precisa escrever dados em um arquivo que já está sendo usado por outro processo para gravação de dados e o sistema operacional nega o acesso ao arquivo. 


Alternativas

ID
1825771
Banca
FCC
Órgão
MPE-SE
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Uma situação de deadlock pode surgir se as 4 condições a seguir ocorrerem simultaneamente em um sistema:

I. Pelo menos um recurso deve ser alocado em modo não compartilhável, isto é, apenas um processo de cada vez pode usar o recurso. Se outro processo solicitar este recurso, o processo solicitante deve ser atrasado até o recurso ter sido liberado.

II. Pelo menos um recurso deve estar alocado a um processo e este processo estar aguardando para adquirir recursos adicionais que, no momento, estejam sendo mantidos por outros processos.

III. Recursos não podem ser interceptados, isto é, um recurso só pode ser liberado voluntariamente pelo processo que o estiver mantendo após esse processo ter concluído sua tarefa.

IV. Deve existir um conjunto de processos (P1, P2, ...Pn) em espera, de tal modo que P1 esteja esperando por um recurso que está alocado a P2, P2 esteja esperando por um recurso que está alocado a Pn-1, Pn-1 esteja esperando por um recurso que está alocado a Pn e Pn esteja esperando por um recurso que está alocado a P1.

As descrições das condições I, II, III e IV correspondem, correta e respectivamente, às denominações:

Alternativas
Comentários
  • Exclusão mútua: cada recurso só pode estar alocado a um único processo em um determinado instante;

    Posse e Espera: um processo, além dos recursos já alocado, pode estar esperando por outros recursos;

    Não-Preempção: un recurso nao pode ser liberado de um processo só porque outros processos desejam o mesmo rrecurso;

    Espera circular: um processo pode ter de esperar por um recurso alocado a outro processo e vice-versa.

     

     

    At.te

    Foco na missão


ID
1907392
Banca
FUMARC
Órgão
TJM-MG
Ano
2013
Provas
Disciplina
Sistemas Operacionais
Assuntos

Analise as seguintes afirmativas sobre as técnicas de controle de concorrência em banco de dados.

I. Um impasse (deadlock) ocorre quando cada transação de um conjunto de duas ou mais transações está esperando por algum item que está bloqueado por outra transação deste conjunto.

II. Existem técnicas de prevenção e de detecção de deadlocks.

III. O controle de concorrência baseado em bloqueios não está sujeito ao problema da inanição (starvation).

Estão CORRETAS as afirmativas:

Alternativas
Comentários
  • Gabarito A

    Starvation – A situação de starvation está presente quando o sistema operacional provê prioridades a processos, que não atualizados fazem com que os processos de menor prioridade nunca sejam executados causando assim, deficiência em servidores de impressão e etc.

     

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

  • Na assertiva I, precisa existir, também, a ESPERA CIRCULAR. A afirmativa do item I está correta em partes.

    At.te

    Foco na missão


ID
1949704
Banca
FUNCAB
Órgão
PC-AC
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em sistemas operacionais, uma das condições necessárias para a ocorrência de deadlocks seria:

Alternativas
Comentários
  • Uma das 4 situações em que ocorrem Deadlock, analogia com uma escada.

     

    Espera Circular: Deve existir um encadeamento circular de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia (monopoliza o recurso – ocupa um degrau e se recusa a retroceder). 

  • Gabarito D

    Deadlock (interbloqueio, blocagem, impasse), no contexto de sistemas operacionais (SO), refere-se a uma situação em que ocorre um impasse, e dois ou mais processos ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros.Trata-se de um problema bastante estudado em sistemas operacionais e banco de dados, pois é inerente à própria natureza desses sistemas.

    deadlock ocorre com um conjunto de processos e recursos não-preemptíveis, onde um ou mais processos desse conjunto está aguardando a liberação de um recurso por um outro processo, o qual, por sua vez, aguarda a liberação de outro recurso alocado ou dependente do primeiro processo.

    A definição textual de deadlock por ser muito abstrata, é mais difícil de se compreender do que a representação por grafos, que será resumida mais adiante. No entanto, algumas observações são pertinentes:

    deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize múltiplos threads e que tais threads requisitem os recursos alocados a outros threads no mesmo processo;

    deadlock independe da quantidade de recursos disponíveis no sistema;

    Normalmente o deadlock ocorre com recursos, tais como dispositivos, arquivos, memória etc. Apesar de a CPU também ser um recurso para o SO, em geral é um recurso facilmente preemptível, pois existem os escalonadores para compartilhar o processador entre os diversos processos, quando trata-se de um ambiente multitarefa.

    Erros de deadlock podem ocorrer em bancos de dados. Suponha que uma empresa tenha vários vendedores e vários pontos de venda ou caixas. O vendedor A vendeu 1 martelo e 1 furadeira. O sistema, então, solicita o travamento do registro da tabela "ESTOQUE", que contém o total de martelos em estoque e, em seguida, solicita o travamento do registro que contém o total de furadeiras em estoque. De posse da exclusividade de acesso aos dois registros, ele lê a quantidade de martelos, subtrai 1 e escreve de novo no registro; o mesmo ocorre com relação ao registro de furadeiras. Observe, no entanto, que existem diversos caixas operando simultaneamente, de forma que, se algum outro caixa, naquele exato instante, estiver vendendo uma furadeira, ele ficará aguardando a liberação do registro das furadeiras para depois alterá-lo. Note que ele só altera os registros depois que for dada exclusividade para ele de TODOS os recursos que ele precisa, ou seja, de todos os registros. Suponha agora que, em outro caixa, foram vendidos 1 furadeira e 1 martelo e que o outro caixa solicitou o travamento do registro com a quantidade de furadeiras e agora quer o acesso ao de martelos; no entanto o registro de martelos está travado para o primeiro caixa. Nenhum deles devolve o recurso (registro) sobre o qual tem exclusividade e também não consegue acesso ao outro registro que falta para terminar a operação. Isto é um deadlock.

     

     

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


ID
1952278
Banca
IADES
Órgão
PC-DF
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Um sistema de banco de dados está em deadlock se há um conjunto de transações, e toda a transação desse conjunto está esperando outra transação também nele contida. Com relação ao deadlock e às respectivas características, assinale a alternativa correta.

Alternativas
Comentários
  • Qual o erro na letra E?

  • A alternativa E afirma que utilizar o tempo é um método altamente assertivo para detecção de deadlocks, porém isso não deve ser o fator determinante.

    Visto que uma série de fatos pode alterar o tempo de uma consulta; por exemplo, problemas de conexão, consultas de natureza demorada, problemas de hardwart, etc, sendo que em nenhum desses casos ocorreu o deadlock de fato. E ainda, utilizar o tempo de expiração/esgotado não garante que os deadlocks sejam tratados em tempo adequado, pois deve se esperar o tempo estourar para então tratar a falha.  

  • Eliminei a B por dois motivos:

     

    "deve manter"

    "se, e somente se"

     

    Qual é a base conceitual para este gabarito?

  • De fato a letra B está parcialmente correta. Porém, GRÁFICO NÃO É GRAFO!

     

    Isso é um absurdo. Colocam gente que não é de TI pra redigir uma prova de TI dá nisso. PQP

  • Nem sempre há deadlock quando se tem um ciclo no gráfico de espera. Questão incompleta, porém a menos errada.

    .

    .

    At.te

    Foco na missão ❢


ID
2045449
Banca
IDECAN
Órgão
DETRAN-RO
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Quatro condições são necessárias para que ocorra um deadlock (ou impasse). Assinale a alternativa que apresenta duas dessas condições.

Alternativas
Comentários
  • Gabarito: B.

     

    Condições para Deadlock

     

    Não-preempção

    Exclusividade mútua

    Posse-e-espera

    Espera circular

  • Gab. B

     

    posse e espera -> Um processo pode esperar por um recurso alocado a outro e vice e versa.

    não preempção -> Um recurso NÃO pode ser liberado de um processo apenas porque outros processos o desejam.

     

    As outras duas condições que são necessárias para que ocorra um deadlock (ou impasse):


    exclusão mútua -> Cada recurso só pode estar alocado a um único processo em um determinado instante.

    espera circular -> Um processo pode estar esperando por outros recursos além daqueles já alocados.

     

     

    FONTE: Sistemas Operacionas - Prof. Gustavo Vilar

  • Gabarito B

    Condições para Deadlock:


    Não-preempção - recursos precisam ser liberados explicitamente pelo processo que detém a sua posse

    Exclusão mútua - cada recurso ou está alocado a exatamente um processo ou está disponível

    Posse-e-espera (monopolização de recursos) - o processo tem um recurso, mas fica bloqueado esperando por outro recurso

    Espera circular - dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo

     

     

     

     

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


ID
2045452
Banca
IDECAN
Órgão
DETRAN-RO
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Da mesma forma que existem quatro condições para que ocorra um deadlock, também existem quatro soluções possíveis para o deadlock. Esta tem sido uma das áreas mais produtivas da pesquisa científica da ciência da computação e de sistemas operacionais. Acerca das soluções para o deadlock, assinale a alternativa INCORRETA.

Alternativas
Comentários
  • Escolher uma alternativa entres estas me pareceu estranho, alguém pode explicar?

  • Gabarito: B.

     

    Eu errei essa questão, pois só sabia das condições de ocorrência, e não das soluções.

     

    A ocorrência de deadlock necessita de 4 condições.

     

    Não-preempção

    Exclusão mútua

    Posse-e-espera (monopolização de recursos)

    Espera circular

     

    Da mesma forma, há 4 soluções para o deadlock.

     

    Prevenção

    Detecção

    Recuperação

    Impedimento/Evitação

     

    Também há o algoritmo de Avestruz, que utiliza a estratégia de ignorar para lidar com deadlocks. Ainda não sei, didaticamente, onde se encaixa esse algoritmo.

  • b-

    Deadlock - conjunto de processos competem por recursos do CPU,resultando em 2 ou + processos esperando por eventos que dependem de outro(s) processos na mesma situacao. Ha 4 condicoes:

    a- mutex (exclusao mutual ) - o recurso esta ou disponivel ou ocupado. 1 opcao exlcui a outra

     

    b- posse & espera - processo com recursos concedidos antes podem querer novos recursos.

     

    *c- nao preempcao - recurso tem ser liberado pelo processo

     

    d- espera circular - em uma cadeia fechada, o processo necessita do recurso do seguinte.

     

    A condicao de deadlock pode ou ser tratada pelo SO. Ha 3 meios de remediar deadlock:

    1- detecção e recuperacao - estrutura de dados armazena informacao acerca dos processos/recursos. Essa atualizacao causa overhead, o que limita essa solucao

     

    2- evitamento de deadlock - SO deve saber se liberar recurso é seguro

     

    3- prevenção - eliminacao de 1 das 4 condicoes.

     

    * escalonamento nao-preemptivo - processo ocupa CPU e so sai quando terminar ou o libera por seus proprios meios, sem intervencao externa. Sao eles: first in first served (fifo); escalonamento por cooperação e SJF (shortest job first, o qual prioriza processos menores). 

  • Letra b... é uma solução inexistente acerca de Deadlock.

     

    Para ajudar a reforçar, baseado nos comentários...

    Sistemas operacionais compartilham recursos, havendo a possibilidade de deadlocks. A literatura especializada indica quatro condições necessárias para que um deadlock ocorra. O algoritmo de Avestruz utiliza uma estratégia para lidar com deadlocks conhecida como

    a) detectar.

    b) detectar e recuperar.

    c) evitar.

    d) ignorar.

    e) prevenir.

  • Outra Dica:

    CertIficAdo Digital

    CIA - Confidencialidade, Integridade e Autenticidade


ID
2045455
Banca
IDECAN
Órgão
DETRAN-RO
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Um outro problema relacionado a deadlocks é a situação em que os processos esperam indefinidamente dentro do semáforo. Esse problema pode ocorrer se forem acrescentados ou removidos processos da lista associada a um semáforo na ordem LIFO (último a entrar, primeiro a sair). Assinale a alternativa que apresenta esse outro problema relacionado a deadlock.

Alternativas
Comentários
  • Gabarito: C.

     

    Starvation/Inanição - processos não são escolhidos pelo escalonamento do SO.

  • c-

    starvation - morrer de fome, quando o processo nao entra no estado de ativo.

  • Starvation (inanição): O processo nunca é executado. Pode ser evitado com o algoritmo FIFO.

    At.te

    Foco na missão!!

  • Starvation não tem nada a ver com deadlock. Starvation o processo nunca é acessado, isso não significa que está em estado de deadlock.


ID
2070661
Banca
FUNRIO
Órgão
IF-PA
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Sistemas operacionais compartilham recursos, havendo a possibilidade de deadlocks. A literatura especializada indica quatro condições necessárias para que um deadlock ocorra. O algoritmo de Avestruz utiliza uma estratégia para lidar com deadlocks conhecida como

Alternativas
Comentários
  • O algoritmo de Avestruz é o famoso "afunda a cabeça na terra e finge que nada aconteceu".

    Por isso letra D. Esse cara simplesmente ignora o erro.

    Relembrando que o algoritmo mais sofisticado e mais caro tbém se chama "Algoritmo do Banqueiro".

  • Há três técnicas para o tratamento do Deadlock:

     

    Algoritmo do Avestruz: Ignora o problema;

    Algoritmo de Detecção e recuperação;

    Algoritmo do Banqueiro: faz alocação cuidadosa dos recursos.

     

    At.te,

    Foco na missão

  • d-

    In computer science, the ostrich algorithm is a strategy of ignoring potential problems on the basis that they may be exceedingly rare. It is named for the ostrich effect which is defined as "to stick one's head in the sand and pretend there is no problem". It is used when it is more cost-effective to allow the problem to occur than to attempt its prevention.

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


ID
2085673
Banca
Aeronáutica
Órgão
CIAAR
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em Sistemas Operacionais, quando um processo P1 aguarda por um recurso R2, que está alocado ao processo P2, o qual aguarda o recurso R1, alocado em P1, e P1 não libera o recurso para P2, e vice-versa, essa situação é chamada de deadlocks, ou impasse, ou ainda adiamento infinito. Um evento que não irá ocorrer, ou a espera de um recurso que nunca vai estar disponível, caracteriza deadlock. Quatro condições são necessárias para que se ocorra um deadlock, e cada uma pode ter uma abordagem diferente para evitar que se ocorra o deadlock. Exclusão mútua é uma situação de ocorrência de deadlock. Assinale a alternativa correta, que apresenta a abordagem da condição Exclusão mútua.

Alternativas
Comentários
  • a) Usar spool em tudo -> Exclusão Mútua;

    b) Retomar os recursos alocados -> Não preempção;

    c) Ordenar numericamente -> Espera Cricular;

    d) Requisitar incialmente todos os recursos alocados -> Posse e espera

     

     

  • A- Usar spool em tudo.

  • Abordagens para evitar o DEADLOCK

    Exclusão mútua: usar spool em tudo.

    Posse e espera: requisitar inicialmente todos os recursos necessários.

    Não preempção: retomar recursos alocados.

    Espera circular: forçar o processo a ter apenas um recurso por vez.

    Alternativa: A


ID
2087278
Banca
IESES
Órgão
TRE-MA
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere as afirmativas abaixo:

I. Um recurso somente pode estar ou disponível ou associado a um único processo.

II. Um recurso concedido a um processo pode ser retirado a qualquer momento.

III. O algoritmo de escalonamento deve ser do tipo FIFO (First In First Out).

IV. Processos que possuem recursos podem requisitar novos recursos.

São condições necessárias para a ocorrência de impasse (deadlock) de recursos as afirmativas:

Alternativas
Comentários
  • Coffman, Elphick e Shoshani (1971) afirmam que existem quatro condiçoes para a ocorrencia de um deadlock:
    1. Os processos exigem controle exclusivo dos recursos que solicitam (condiçao de exclusao mutua).
    2. Os processos mantem alocados recursos enquanto solicitam novos recursos (condiçao de espera por recurso)
    3. Os recursos nao podem ser retirados dos processos que os mantem alocados enquanto estes processos nao finalizam seu uso (condiçao de ausencia de preemptividade).
    4. Forma-se uma cadeia circular de processos, onde cada processo solicita um recurso alocado pelo proximo processo na cadeia (condiçao de espera circular).

     

    Fonte: Notas sobre Sistemas Operacionais,Peter Jandl Jr., 2004

  • Só pode acontecer deadlock quando existe compartilhamento de recursos.  Se a afirmativa I está certa, nunca teríamos deadlock. Alguém pode me explicar?

  • Fala anderson! Como a colega denise comentou, necessitamos 4 condições para ocorrer um deadlok, são elas:

    Condição de exclusão mútua, condição de posse e espera, condição de não preempção e condição de espera circular.

    A questão em tela inovou pois pediu os conceitos de cada condição, em vez de nos dar o nome direto das condições. A afirmativa I é o conceito de  condição de exclusão mútua, ou seja, é necessária para ocorrer um deadlock.

     Desabafo: Eu entendi tua dúvida, porém muitas vezes temos que decorar o conteúdo, pois se aprofundarmos em determinado nível, como tu fez na questão, "criamos pêlo em ovo" e fugimos do escopo de uma prova de concurso que é acertar a questão e entramos no escopo de engenharia de sistemas, engenharia eletrônica e por ai vai.... minha dica é: pegar um bom livro sobre o tema 'sistemas operacionais' entender alguns assuntos e, como eu disse, decorar outros.

  • I. Um recurso somente pode estar ou disponível ou associado a um único processo. (Exclusão Mútua);

    II. Um recurso concedido a um processo NÃO pode ser retirado a qualquer momento. (Não preempção);

    IV. Processos que possuem recursos podem requisitar novos recursos. (Posse e Espera)

    e ...

    Espera Circular.

    .: Obs: A assertiva três não tem nada a ver com as quatros condições para ocorrer impasse.

    At.te

    Foco na missão!


ID
2091808
Banca
CETRO
Órgão
AMAZUL
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Assinale a alternativa que não apresenta uma condição necessária e suficiente para levar à ocorrência de deaklock.  

Alternativas
Comentários
  • Gabarito: D.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que impede os mesmos de executar/concluir suas tarefas.

     

    Condições para Deadlock

     

    Não-preempção

    Exclusividade mútua

    Posse-e-espera

    Espera circular

     

    Starvation/Inanição - processos não são escolhidos pelo escalonamento do SO.

     

     

  • GABARITO D. Para que aconteça deadlock deve OBRIGATORIAMENTE ocorrer os fenômenos Exclusão Mútua, Posse e Espera, Não Preempção e Espera Circular.

    a) Não preempção = ocorre quando recursos só podem ser liberados pela ação explícita do processo, não havendo interferência do SO.

    b) Posse e espera = ocorre quando determinado processo que já retêm recursos solicitra novos recursos mantidos por outros processos, antes da liberação.

    c) Exclusão mútua = ocorre quando um recurso está associado a um processo ou está disponível, não podendo ser usado por mais de um processo por vez.

    d) Starvation = ocorre quando há processos prontos para entrar em execução, mas que não são escolhidos pela baixa priorização frente a outros processos.

    e) Espera circular = ocorre quando dois ou mais processos formam uma cadeia circular onde cada processo aguarda por um recurso que o próximo processo na cadeia detém.

     

     

    Bons estudos!

  • Acertei, mas a questão está muito mal formulada. Acho que o examinador nem entendeu o que ele perguntou. Precisamos das quatro condições, cada uma delas individualmente não causa deadlock e portanto não são causas SUFICIENTES.

  • Segue uma questão que corrobora com o pensamento do Seu Saraiva

     

    Ano: 2008 Banca: CESPE Órgão: TJ-DFT Prova: Analista Judiciário - Tecnologia da Informação

    A condição de exclusão mútua, em que um recurso ou está associado a um único processo ou está disponível, é suficiente para a ocorrência de bloqueios fatais (deadlocks).

    Resposta: Errada

    Motivo: Exclusão mútua é necessária, mas não é suficiente

  • Gabarito D

    Condições para Deadlock:


    Não-preempção - recursos precisam ser liberados explicitamente pelo processo que detém a sua posse

    Exclusão mútua - cada recurso ou está alocado a exatamente um processo ou está disponível

    Posse-e-espera (monopolização de recursos) - o processo tem um recurso, mas fica bloqueado esperando por outro recurso

    Espera circular - dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo
     

     

     

     

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

  • Sobre o item E: permanecerá o roubo, e não furto, ainda que a arma seja inócua, em virtude da ameaça.


ID
2103685
Banca
FUNDEP (Gestão de Concursos)
Órgão
IFN-MG
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Como é chamada a situação em que dois processos não conseguem mais ser executados, pois existe uma dependência entre eles?

Alternativas
Comentários
  • Gabarito: D.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas.

  • Para muitas aplicações, um processo necessita de acesso exclusivo não só a um recurso, mas também a vários. Suponha, por exemplo, que dois processos queiram cada um gravar em CD um documento escaneado. O processo A solicita permissão para usar o scanner e é autorizado. O processo B, que é programado diferentemente, solicita primeiro permissão para usar o gravador de CD e também é autorizado. Então, o processo A pede para usar o gravador de CD, mas a solicitação lhe é negada até que o processo B o libere. Infelizmente, em vez de liberar o gravador de CD, o processo B pede para usar o scanner. Nesse ponto, ambos os processos ficam bloqueados e assim permanecerão para sempre. Essa situação é denominada impasse (deadlock).

     

    Sistemas operacionais modernos / Andrew S. Tanenbaum

  • "uma" dependência...sério só uma mesmo? sei não einh

  • Souza Silva,

     

    Nesse caso, o termo "uma" não funciona como numeral, para referenciar - supostamente - uma única dependência, mas sim, como artigo indefinido, referenciando a dependência existente quando há deadlock.

  • traído pelo português...vlw Sávio.


ID
2113912
Banca
Colégio Pedro II
Órgão
Colégio Pedro II
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere P1 e P2, dois processos que estão em execução. P1 tem acesso exclusivo do R1, assim como P2 tem acesso exclusivo do R2. Durante o processamento, P1 necessita do R2 para prosseguir e fica aguardando até que o recurso R2 seja liberado. Em seguida P2 necessita do R1 e ficará aguardando a liberação do R1.
A situação descrita anteriormente denomina-se

Alternativas
Comentários
  • Gabarito: C.

     

    Deadlock/Impasse - ocorre quando um processo espera por um evento que nunca ocorrerá. Processos formam um ciclo fechado, numa espera circular que impede os mesmos de executar/concluir suas tarefas.

     

    Como complemento:

     

    Starvation/Inanição - ocorre quando os programas são executados indefinidamente e não realizam nenhum progresso em seu processamento. Processos não são escolhidos pelo escalonamento do SO.

     

    Os conceitos de Deadlock e Starvation são bem semelhantes, já errei várias questões por fazer confusão entre eles. Então, assim como todas as outras disciplinas, só fazendo muitas questões para sedimentar.

  • Para muitas aplicações, um processo necessita de acesso exclusivo não só a um recurso, mas também a vários. Suponha, por exemplo, que dois processos queiram cada um gravar em CD um documento escaneado. O processo A solicita permissão para usar o scanner e é autorizado. O processo B, que é programado diferentemente, solicita primeiro permissão para usar o gravador de CD e também é autorizado. Então, o processo A pede para usar o gravador de CD, mas a solicitação lhe é negada até que o processo B o libere. Infelizmente, em vez de liberar o gravador de CD, o processo B pede para usar o scanner. Nesse ponto, ambos os processos ficam bloqueados e assim permanecerão para sempre. Essa situação é denominada impasse (deadlock).

     

    Sistemas operacionais modernos / Andrew S. Tanenbaum

  • Starvation (inanição) - processo nunca consegue executar sua região crítica, ou seja, acessar o recurso compartilhado. Processo com o arquivo extenso nunca consegue alocar o arquivo.

     

    Deadlock (impasse) - no conceito de SO, caracteriza uma situação em que ocorre um impasse e dois ou mais processos foram impedidos de continuar suas execuções, ou seja, ficam bloqueados. Pode ocorrer mesmo que haja apenas um processo no SO, considerando que este processo utilize múltiplos threads.

    Independe da quantidade de recursos disponíveis.


    Condições necessárias para deadlock (simultâneas):

    - Exclusão mútua (apenas um processo de cada vez pode usar o recurso. Caso outro processo solicite um recurso, este deve ser atrasado até que o mesmo tenha sido liberado). Usar spool em tudo.

    - Retenção e espera (Posse e espera por recurso) Requisitar inicialmente todos os recursos alocados. Processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

    - Inexistência de preempção ou não-preempção (processos que não podem ser parados no meio. Gravação de CD, impressão...) Retomar os recursos alocados. Recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo – eles devem ser explicitamente liberados pelo processo que os retêm. 

    - Espera circular (O processo nunca é acessado) Ordenar numericamente. Deve existir um encadeamento de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.


ID
2123845
Banca
Aeronáutica
Órgão
CIAAR
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Como são necessárias quatro condições para que ocorra um deadlock, também são conhecidas quatro estratégias usadas para lidar com os deadlocks. Todas as alternativas abaixo apresentam essas estratégias, exceto:

Alternativas
Comentários
  • 4 estratégias para lidar com Impasses:

     

    1- Ignorar o problema(avestruz);

    2- Detecção e recuperação;

    3- Anulação dinâmica;

    4- Prevenção(nega 1 cond.)

     

    @papirobizurado


ID
2123863
Banca
Aeronáutica
Órgão
CIAAR
Ano
2014
Provas
Disciplina
Sistemas Operacionais
Assuntos

Segundo Tanenbaum, Impasse (deadlock) pode ser formalmente definido como: “Um conjunto de processos estará em situação de impasse se todo processo pertencente ao conjunto estiver esperando por um evento que somente outro processo desse mesmo conjunto poderá acontecer”. Associe as colunas, relacionando as quatro condições existentes para que ocorra um impasse (deadlock) às respectivas definições.

(1) Exclusão mútua

(2) Posse e espera

(3) Não preempção

(4) Espera circular


( ) processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

( ) deve existir um encadeamento de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

( ) em um determinado instante, cada recurso estará em uma de duas situações ou associado a um único processo ou, ainda disponível.

( ) recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo – eles devem ser explicitamente liberados pelo processo que os retêm. 

A sequência correta dessa associação é 

Alternativas
Comentários
  • Amigos, esse gab está correto? Eu fui de C

  • Colega José, embora tenha passado muito tempo, este gabarito está correto sim. O autor Tanenbaum, no seu livro Sistemas Operacionais Modernos, dedica um capitulo para abordar tal tema, porém se você não o possuir, leia as páginas 11 e 12 do pdf:

    http://hostel.ufabc.edu.br/~marcelo.nascimento/BC1518Q3/aulas/bc1518_SO_Aula07_Deadlock.pdf

    GABARITO ALTERNATIVA D

  • (1) Exclusão mútua

    (2) Posse e espera

    (3) Não preempção

    (4) Espera circular

    (2) processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

    (4) deve existir um encadeamento de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

    (1) em um determinado instante, cada recurso estará em uma de duas situações ou associado a um único processo ou, ainda disponível.

    (3) recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo – eles devem ser explicitamente liberados pelo processo que os retêm.

    A sequência correta dessa associação é

  • Comentando de uma forma mais organizada.

    Condições para ocorrência de impasses

    1. Condição de exclusão mútua. Cada recurso está atualmente associado a exatamente um processo ou está disponível.

    2. Condição de posse e espera. Processos atualmente de posse de recursos que foram concedidos antes podem solicitar novos recursos.

    3. Condição de não preempção. Recursos concedidos antes não podem ser tomados à força de um processo. Eles precisam ser explicitamente liberados pelo processo que os têm.

    4. Condição de espera circular. Deve haver uma lista circular de dois ou mais processos, cada um deles esperando por um processo de posse do membro seguinte da cadeia. 

    Tanenbaum

    GAB D


ID
2147335
Banca
INSTITUTO AOCP
Órgão
EBSERH
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um Sistema Operacional, o Deadlock acontece quando um ou mais processos aguardam por recursos que não estarão disponíveis ou eventos que não ocorrerão. As condições conhecidas para o surgimento de Deadlock são definidas como

Alternativas
Comentários
  • Gabarito: C.

     

    Condições para Deadlock

     

    Não-preempção - recursos precisam ser liberados explicitamente pelo processo que detém a sua posse

    Exclusão mútua - cada recurso ou está alocado a exatamente um processo ou está disponível

    Posse-e-espera (monopolização de recursos) - o processo tem um recurso, mas fica bloqueado esperando por outro recurso

    Espera circular - dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo

  • Fonte:


ID
2244136
Banca
Quadrix
Órgão
CRQ 18° Região - PI
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Quantos processos, no mínimo, podem estar envolvidos em um deadlock de um sistema operacional?

Alternativas
Comentários
  • Gabarito: B.

     

    Deadlock/Impasse - processos formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas.

     

    Para ocorrer esse ciclo, deve haver, no mínimo, dois processos envolvidos.

  • GABARITO: B

    2 PROCESSOS NO MÍNIMO

  • Por exemplo, dois processos querem gravar em CD um documento obtido pelo scanner. O processo A está usando o scanner, enquanto o processo B, que é programado diferentemente, está usando o gravador de CD. Então, o processo A pede para usar o gravador de CD, mas a solicitação é negada até que o processo B o libere. Porém, ao invés de liberar o gravador de CD, o processo B pede para usar o scanner. Nesse momento, ambos os processos ficam bloqueados e assim ficarão para sempre. Essa situação é denominada deadlock.

    .

    Fonte: http://www.devmedia.com.br/introducao-ao-deadlock/24794

  • Alternativa correta: B. 

     

    Um dos requisitos para ocorrer deadlock é a chamada "espera cicular", onde um programa A está de posse de um recurso e necessita de outro recurso, de posse do programa B. O programa B, por sua vez, necessita de um recurso de posse do programa A. Sendo assim, é preciso pelo menos 2 programas para ocorrer deadlock. 

     

    Se houver apenas um programa em execução no computador, ele não precisará competir pelos recursos e não entrará em espera circular. 

  • Dá pra pensar no deadlock como um congestionamento - para que isso aconteça, deve existir no mínimo " dois carros " PROCESSOS.


ID
2566735
Banca
CONSULPLAN
Órgão
TRE-RJ
Ano
2017
Provas
Disciplina
Sistemas Operacionais
Assuntos

Quando um processo aguarda por um recurso que nunca estará disponível ou mesmo um evento que não ocorrerá, acontece uma situação denominada deadlock (ou como alguns autores denominam: impasse ou adiamento indefinido). Para que um deadlock ocorra, quatro condições são necessárias. Uma delas tem a seguinte definição: “cada processo só pode estar alocado a um único processo em um determinado instante”. Assinale a alternativa que apresenta tal condição.

Alternativas
Comentários
  • Gabarito: B.

     

    Condições para Deadlock

     

    Não-preempção - recursos precisam ser liberados explicitamente pelo processo que detém a sua posse

    Exclusão mútua - cada recurso ou está alocado a exatamente um processo ou está disponível

    Posse-e-espera (monopolização de recursos) - o processo tem um recurso, mas fica bloqueado esperando por outro recurso

    Espera circular - dois ou mais processos formam um ciclo, cada um esperando por um recurso que está com o próximo

  • Para que ocorra a situação de deadlock, quatro condições são necessárias simultaneamente:

    1-Exclusão mútua: Cada recurso só pode estar alocado a um único processo, em um determinado instante;

    2-Espera por recurso: Um processo, além dos recursos já alocados, pode estar esperando por outros recursos;

    3-Não-Preempção: Um recurso não pode ser liberado de um processo só por que outros processos desejam o mesmo recurso;

    4-Espera circular: Um processo pode ter de esperar por um recurso alocado ao outro processo e vice-versa.

  • Exclusão mútua - > Cada recurso associado a um processo ou disponível

  • O enunciado quis dizer cada RECURSO


ID
2566738
Banca
CONSULPLAN
Órgão
TRE-RJ
Ano
2017
Provas
Disciplina
Sistemas Operacionais
Assuntos

Assim como existem quatro condições para que ocorra um deadlock, também existem quatro principais áreas de pesquisa de deadlock. Uma dessas áreas faz uso da seguinte técnica: “usada em sistemas em que é possível ocorrer deadlocks; determina se ocorreu deadlock; identifica os processos e recursos envolvidos no deadlock; e, seus algoritmos podem exigir um tempo de execução significativo”. A área de pesquisa sobre deadlocks denomina-se:

Alternativas
Comentários
  • Pode-se tratar o impasse das seguintes formas:

     

    Ignorar o problema (Algoritmo de avestruz)

    Detectar o problema e recuperar (Algoritmo de detecção e recuperação)

    Alocar cuidadosamente os recursos para não ocorrer deadlock (Algoritmo do banqueiro)

    .

    .

    At.te

    Foco na missão ❢

     

     

  • Eu achei que existisse uma técnica para detecção e uma outra para recuperação...

    Jesus, tô errando tudo.

     

    Gabarito: B


ID
2595961
Banca
Exército
Órgão
EsFCEx
Ano
2017
Provas
Disciplina
Sistemas Operacionais
Assuntos

Analise as condições necessárias para a ocorrência de deadlocks em sistemas operacionais, colocando entre parênteses a letra “V”, quando se tratar de afirmativa verdadeira, e a letra “F” quando se tratar de afirmativa falsa. A seguir, assinale a alternativa que apresenta a sequência correta.


( ) Exclusão mútua.

( ) Retenção e espera.

( ) Espera circular.

( ) Existência de preempção.

Alternativas
Comentários
  • ( ) Exclusão mútua.

    ( ) Retenção e espera.

    ( ) Espera circular.

    ( ) Existência de preempção. NÃO PREEMPÇÃO

     

    @papirobizurado

  • Existem quatro condições para a ocorrência de deadlock:

    Condição de exclusão mútua. Em um determinado instante, cada recurso está em uma de duas situações: ou associado a um único processo ou disponível.

    Condição de posso e espera. Processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

    Condição de não preempção. Recursos concedidos previamente a um processo não podem ser tomados a força desse processo, eles devem ser explicitamente liberados pelo processo que os retém.

    Condição de espera circular. Deve existir u encadeamento circular de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

  • Ocorrência de deadlock

     

    Exclusão mútua(Mutex), posse e espera, não preempção, espera circular.

  • GABARITO E

    DEADLOCK

    EM PÉ NÃO PEC

    EM = Exclusão Mútua

    = Posse e Espera

    NÃO P = Não Preempção

    EC = Espera Circular

    Foco na missão, eu vou ser QCO !


ID
2607328
Banca
FCC
Órgão
DPE-AM
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um sistema operacional de computador, três processos estão na seguinte situação:


− o processo P1 tem a posse do recurso R1.

− o processo P2 tem a posse do recurso R2.

− o processo P3 tem a posse do recurso R3.


O processo P1 solicita o recurso R2, o processo P2 solicita o recurso R3, e o processo P3 solicita o recurso R1. Sobre essa situação, é correto afirmar que

Alternativas
Comentários
  • b-

    condicoes para deadlock:

     

    1- mutex (exclusao mutua) - cada recurso esta ou em um processo ou disponivel

     

    2- posse e espera - processos que retêm recursos concedidos antes podem querer novos recursos.

     

    3- nao-preempcao - recursos têm que ser liberados pelo procoeosso que os retém. Em escalonamento preemptivo, um processo de maior prioridade pode obter recurso/ CPU passando à frente de outro.

     

    4- espera circular - cada processo em uma cadeia espera pelo recurso do seguinte, como na situacao da questao.

  • Definição de Deadlock

     

    Deadlock é definido da seguinte forma: Um conjunto de processos do Sistema Operacional está em situação de Deadlock se todo processo pertencente ao conjunto estiver esperando por um evento que somente outro processo desse mesmo conjunto poderá fazer acontecer.

     

    Condições para ocorrência de Deadlock

     

    Assim, nenhum processo consegue executar recurso que precisa, ou liberar recurso que está de posse, ou ser acordado, pois o recurso que precisa está ocupado.

    Vale detalhar que recurso é uma sequência de eventos necessários ao uso de um processo, assim pode ser dispositivos ou qualquer item compartilhado.

     

    As condições para se entrar no estado de Deadlock:

     

    Exclusão Mútua: todo recurso está ou associado a um único processo ou disponível;

    Posse e Espera: processos que retêm recursos podem solicitar novos recursos;

    Não Preempção: recursos concedidos previamente não podem ser forçosamente tomados;

    Espera Circular: deve haver uma cadeia circular de dois ou mais processos, na qual cada um está à espera de recursos retido pelo membro seguinte dessa cadeia.

    Todas essas condições devem ocorrer simultaneamente para que ocorra Deadlock. Se uma dessas condições não ocorrer, não haverá deadlock.

     

    Fonte: https://www.oficinadanet.com.br/post/12786-sistemas-operacionais-o-que-e-deadlock

  • R1   ----------   P3

    |                       |

    P1                 R3

    |                      |

    R2   ----------  P2

     

     

    Tentei montar mais ou menos a situação apresentada no enunciado.

     

    Todos os processos estão parado aguardando recursos que estão sendo utilizados por outros processos, tem-se, então, uma cadeia circular, ocorrendo deadlock;

     

     

    Att,

    Foco na missão!


ID
2620495
Banca
CS-UFG
Órgão
SANEAGO - GO
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Uma engenheira de software precisa verificar a existência e tratar deadlocks no controle de concorrência de um banco de um servidor de arquivos, no seguinte contexto de processos:

o processo A está esperando por C e D
o processo B está esperando por C
o processo C não está em espera
o processo D está em espera por C

Nessas condições, para o servidor funcionar, será necessário

Alternativas
Comentários
  • Aguardar a execução uai. 

    " o processo C não está em espera", então ele deve tá executando. Após ele executar, os outros também irão. 

  • Pegadinha. Pior, caí! :-(

  • Alternativa correta: A. 

     

    Depois que C executar, D, B e A executarão. Sendo assim, não é preciso modificar nada para tudo rodar perfeitamente. 

  • Galera não tem ciclo, não tem processo segurando recurso que outro precisa para seguir...


ID
2684872
Banca
Aeronáutica
Órgão
CIAAR
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

De acordo com Botkin e Harlow no seu livro “A Treasury of Railroad Folklore” (p. 381), a Legislatura do Estado do Kansas dos Estados Unidos da América aprovou um estatuto que decretou que “Quando dois trens se aproximarem um do outro em um cruzamento, ambos deverão parar completamente e nenhum dos dois deverá ser acionado até que o outro tenha partido”. Esse estatuto ilustra uma situação de deadlock ou impasse.

Considere os itens abaixo.

I. Exclusão mútua
II. Posse e espera
III. Não-preempção
IV. Espera circular

São condições necessárias para a ocorrência de uma situação de deadlock o que se afirma em

Alternativas
Comentários
  • Condições necessárias para a ocorrência de deadlock

     

    Condição de não-preempção: recursos já alocados a processos não podem ser tomados à força. Eles precisam ser liberados explicitamente pelo processo que detém a sua posse;

    Condição de exclusividade mútua: cada recurso ou está alocado a um processo ou está disponível;

    Condição de posse-e-espera: cada processo pode solicitar um recurso, ter esse recurso alocado para si e ficar bloqueado, esperando por um outro recurso;

    Condição de espera circular: deve existir uma cadeia circular de dois ou mais processos, cada um dos quais esperando por um recurso que está com o próximo integrante da cadeia.

     

     

    https://pt.wikipedia.org/wiki/Deadlock

  • Boa maneira para guardar as condições do deadlock:  EM PÉ NÃO PEC

    Exclusão Mútua
    Posse e Espera
    Não Preemptivo
    Espera Circular

  • GABARITO D

    Muito bom o comentário do amigo Juan Felipe Sabino, e também a os conceitos observados pelo Rodrigo. É exatamente isso, sem necessidades de acréscimos.

    Foco na missão, eu vou ser QCO !

  • Condições e abordagem contra Impasses (deadlok)

    Exclusão Mútua.= Usar spool em tudo

    Posse e espera = Requisitar todos os recursos necessários.

    Não preempção. = Retomar os recursos alocados

    Espera circular = Ordenar numericamente os recursos.

    Gabarito E


ID
2724649
Banca
FUNDEP (Gestão de Concursos)
Órgão
CODEMIG
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Um dos problemas relacionados ao gerenciamento de um sistema operacional diz respeito ao deadlock, o qual também pode ocorrer em banco de dados. Uma vez que gerenciar o deadlock pode ser uma tarefa que exija muito tempo do processador, a maior parte dos sistemas operacionais não trata desse problema. Em alguns sistemas críticos, entretanto, tratar os deadlocks é uma tarefa importante.

Qual entre as formas de tratamento a seguir se baseia em retirar o recurso do processo?

Alternativas
Comentários
  • Em computação, preemptividade (algumas vezes preempção) é o ato de interromper temporariamente uma tarefa sendo resolvida por um sistema computacional, sem precisar de sua cooperação, e com a intenção de retomar a tarefa depois. Tal mudança é conhecida como uma troca de contexto. É normalmente resolvida por uma tarefa privilegiada ou parte de um sistema conhecido como uma agenda preemptiva, que tem o poder de preeminar, ou interromper, e depois retomar, outras tarefas no sistema.

     

    Em sistemas operacionais, preemptividade ou preempção é a capacidade de tirar de execução um processo em detrimento de outro.

     

    https://pt.wikipedia.org/wiki/Preemptividade

     

    Gabarito: a)

  • GABARITO A

    Um recurso é qualquer coisa que precisa ser adquirida, usada e liberada com o passar do tempo.

    • Recurso preemptivo é aquele que pode ser retirado do processo proprietário sem causar-lhe prejuízo algum.

ID
2752162
Banca
FAURGS
Órgão
BANRISUL
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Suponha que um sistema se encontre em estado de deadlock, e que haja um conjunto de transações esperando, como { T0, T1, T2, T3, T4, T5 }. T0 está esperando por um item mantido por T1; T0 está esperando por um item mantido por T2; T2 está esperando por um item mantido por T3; T3 está esperando por um item mantido por T2; T1 está esperando por um item mantido por T4; e T4 está esperando por um item mantido por T5. Qual transação pode ser escolhida para ser abortada, a fim de que o sistema saia do deadlock?

Alternativas
Comentários
  • Há uma dependência cíclica entre T2 e T3 (uma depende da outra), logo pode-se abortar qualquer uma das duas para resolver o deadlock.

  • faz um desenho com setas que ajuda bastante


ID
2756515
Banca
FAURGS
Órgão
BANRISUL
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Duas transações T1 e T2 estão em estado de deadlock em um escalonamento parcial quando ______ está na fila de espera para ______, que está bloqueado por ______, enquanto ______ está na fila de espera para ______, que está bloqueado por ______. Nesse meio tempo, nem T1, nem T2, nem qualquer outra transação podem acessar os itens _______.


Assinale a alternativa que completa, correta e respectivamente, as lacunas do texto acima.

Alternativas
Comentários
  • Primeiramente, definição de impasse:

    "Um conjunto de processos estará em situação de impasse se todo processo pertencente ao conjunto estiver esperando por um evento que somente outro processo desse mesmo conjunto poderá fazer acontecer"

     

    Processos T1 e T2;

    Recursos X e Y;

    Vamos a questão...

    "quando o processo T1 está na fila de espera para o recurso X, que está bloqueado pelo processo T2, enquanto o processo T2 está na fila de espera para o recurso Y, que está bloqueado pelo processo T1"

     

    MAS O PULO DO GATO VEM AQUI....

    Notem que, sabendo do conceito de impasse, que basicamente nos diz"um processo bloqueando e esperando a liberação de algum recurso", observem que  para isso acontecer, na questão, os RECURSOS DEVERÃO ESTAR ENVOLVIDOS COM AMBOS OS PROCESSOS, ou seja, as últimas lacunas DEVERÃO SER PREENCHIDAS com os recursos que estão envolvidos no deadlock, OU SEJA, RECURSO X e RECURSO Y. Observem, novamente, que essa 'relação' somente ocorre na alternativa A.

     

    "Nesse meio tempo, nem T1, nem T2, nem qualquer outra transação podem acessar os itens (recursos) X  e Y."

     

    Gabarito alternativa A

  • Se tiver atenção acerta a questão fácil, mas o que falta na hora do nervosismo é atenção.


ID
2809972
Banca
CESPE / CEBRASPE
Órgão
MPE-PI
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Julgue o item a seguir, acerca de sistemas operacionais.


Uma das causas de deadlocks em sistemas operacionais é a disputa por recursos do sistema que podem ser usados apenas por um processo de cada vez.

Alternativas
Comentários
  • Deadloack (Impasses)
        Técnicas de prevenção
            Esquema de Esperar-Morrer
            Esquema de Ferir-esperar
         São processos que  formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas. Ocorre quando um processo espera por um evento que nunca ocorrerá.
        Condições
            exclusão mútua
            posse e espera
            não preempção
            espera circular 

  • Não concordo com o gab. Um recurso que pode ser acessado por vários processos não é deadloc. O deadloc é quando um processo espera por recurso do outro, ou seja, um fica esperando pelo outro. O que a questão fala é de semáforos que um processo espera o outro terminar. Isso é impace, mas não entendo como deadloc

  • André, a questão fala "uma das causas de deadlocks...".

  • Os sistemas de computadores têm inúmeros recursos adequados ao uso de somente um processo a cada vez. Sistemas operacionais Modernos 2ed. (Tanembaum) - p.117

  • CERTO

    Deadlock (interbloqueio, blocagem, impasse), no contexto de  (SO), refere-se a uma situação em que ocorre um impasse, e dois ou mais  ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros. Trata-se de um problema bastante estudado em sistemas operacionais e , pois é inerente à própria natureza desses sistemas.

    São processos que formam um ciclo fechado, numa espera circular que os impede de executar/concluir suas tarefas. Ocorre quando um processo espera por um evento que nunca ocorrerá.

    Técnicas de prevenção

    -Esquema de Esperar-Morrer

    -Esquema de Ferir-esperar

    Condições

    -exclusão mútua

    -posse e espera

    -não preempção

    -espera circular 

  • GABARITO: CERTO

    Condições para ocorrência de impasses:

    1. Exclusão mútua. Cada recurso está atualmente associado a exatamente um processo ou está disponível.

    2. Posse e espera. Processos atualmente de posse de recursos que foram concedidos antes podem solicitar novos recursos.

    3. Não preempção. Recursos concedidos antes não podem ser tomados à força de um processo. 

    4. Espera circular. Deve haver uma lista circular de dois ou mais processos, cada um deles esperando por um processo de posse do membro seguinte da cadeia.


ID
2876581
Banca
FCM
Órgão
IFN-MG
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

A literatura mostra que são necessárias estar presentes quatro situações simultâneas para que ocorra um impasse (de recursos).

A respeito dessas situações, na condição de

Alternativas
Comentários
  • LETRA C

    Quatro Condições para Deadlock ( IMPASSE DE RECURSOS )

    1. Condição de exclusão mútua

    • todo recurso está ou associado a um processo ou

    disponível

    2. Condição de posse e espera

    • processos que retêm recursos podem solicitar novos

    recursos

    3. Condição de não preempção

    • recursos concedidos previamente não podem ser

    forçosamente tomados

    4. Condição de espera circular

    • deve ser uma cadeia circular de 2 ou mais processos

    • cada um está à espera de recurso retido pelo

    membro seguinte dessa cadeia

    Mais sobre Recursos:

    • Exemplos de recursos de computador

    – impressoras

    – unidades de fita

    – tabelas

    • Processos precisam de acesso aos recursos numa

    ordem racional

    • Suponha que um processo detenha o recurso A e

    solicite o recurso B

    – ao mesmo tempo um outro processo detém B e solicita A

    – ambos são bloqueados e assim permanecem

    Deadlocks ocorrem quando …

    – garante-se aos processos acesso exclusivo aos

    dispositivos

    – E esses dispositivos são normalmente chamados de

    recursos

    Fonte: http://webcache.googleusercontent.com/search?q=cache:qnQsgMi34HkJ:www.lncc.br/~borges/ist/SO1/cap03.pdf+&cd=4&hl=pt-BR&ct=clnk&gl=br&client=firefox-b-ab

  • Ocorrência de Deadlock:

    - Exclusão Mútua: um recurso está associado a um processo ou disponível;

    - Posse e Espera: processo retem um recursos e podem requisitar novos recursos;

    - Não Preempção: recursos não podem ser tomados forçadamente;

    - Espera Circular: encadeamento circular de dois ou mais processos esperando por recursos retidos por outro processo.

    At.te

    Foco na missão!!!

  • As 4 condições para acontecer impasse foram descritas pela colega Lopes;

    Porém vamos destrinchar a questão:

    a) exclusão mútua, cada recurso deve ser liberado individualmente para que esteja associado a um único processo ou disponível. Incorreta, conforme mencionado pela colega, a exclusão mútua infoma que cada recurso está associado ou disponível, somente essas 2 situações;

    .

    b) não preempção, os recursos concedidos a um processo não devem ser retirados desse processo para que o sistema não trave indefinitivamente. Incorreta, a falta da palavra não invalidou a questão, outrossim a condição de não-preempção é uma das 4 condições de impasses.

    .

    c) posse e espera, os processos que, em determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos. CORRETA, gabarito da questão

    .

    d) corrida, os processos envolvidos no impasse estão lendo ou escrevendo algum dado compartilhado e o resultado depende de quem processa no momento propício. Incorreta, por que condição de corrida não é uma condição para impasse; Porém o conceito de condição de corrida está correto!

    .

    e) espera circular, deve existir a posse do encadeamento circular dos recursos para que os processos saiam do estado de starvation, passando o recurso ao membro seguinte dessa cadeia. Incorreta, espera circular, um processo está esperando um recurso que está sendo usado por outro processo do ciclo;

  • Exclusão Mútua. Cada recurso está em uma de duas situações: ou associado a um único processo ou disponível.

    Condição de posse e espera. Processos que, em um determinado instante, retém recursos concedidos anteriormente podem requisitar novos recursos.

    Condição de não preempção. Recursos concedidos previamente a um processo não podem ser forçosamente tomados desse processo – eles devem ser explicitamente liberados pelo processo que os retém.

    Condição de espera circular. Deve existir um encadeamento circular de dois ou mais processos. Cada um deles encontra-se a espera de um recurso que está sendo usado pelo membro seguinte da cadeia.

    gabarito c

    fonte tanembaun

    Organização de computadores


ID
2884102
Banca
IDECAN
Órgão
CRF-SP
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Assim como nos sistemas operacionais, os sistemas distribuídos também têm deadlock. Um deadlock distribuído “ocorre quando os processos espalhados por diferentes computadores em uma rede aguardam eventos que não ocorrerão”. Existem três tipos de deadlock distribuído. São esses tipos, EXCETO:

Alternativas
Comentários
  • 1Comunicacao entre Processos

    2Alocacao de Recursos

  • B - Deadlock de espera.

  • Gabarito - Letra B

    “Um conjunto de processos está em Deadlock se cada processo no conjunto  está esperando por um evento que apenas outro processo do conjunto pode gerar” (Tanenbaum)

    Um conjunto de processos fica bloqueado, cada um a espera de um recurso que o outro detém.

    Nos sistemas distribuídos podem ocorrer dois tipos de Deadlocks:

    Deadlock de comunicação: Quando um processo A está tentando acessar uma mensagem para o processo B que está tentando uma mensagem para o processo C que está tentando uma mensagem para o processo A.

    Deadlock de Recursos: Ocorre quando os processos estão lutando para uso exclusivo de dispositivos de I/O, arquivos ou outros recursos.

    Registros Fantasmas • O problema de registro fantasma (phanton) ocorre quando um novo registro que esteja sendo inserido pela transação T satisfaz a mesma condição que um conjunto de registros acessados por outra transação T'.


ID
2916037
Banca
COPESE - UFT
Órgão
Câmara de Palmas - TO
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Os sistemas operacionais modernos possuem diversos mecanismos para detecção e tratamento de situações de deadlock. Assinale a alternativa que NÃO apresenta um destes mecanismos.

Alternativas
Comentários
  • Alternativa correta: D.

    Situações que CAUSAM deadlock:

    >exclusão mútua

    >posse e espera de recursos

    >não-perempção

    >espera circular

    Algumas formas de evitar deadlock:

    >processo de pool de recursos

    >negando posse e espera

    >negando condições de não-perempção

    >negando condições de espera circular

    >comunicação e sincronização entre processos para uso de recursos

    >uso de semáforos

    A alternativa D é uma das situações que CAUSAM deadlock (posse e espera), sendo, portanto, nossa resposta. 

  • GABARITO: D, essa inclusive caracteriza o deadlock.


ID
2983981
Banca
Aeronáutica
Órgão
CIAAR
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

De modo geral, pode-se lidar com o problema de deadlock de algumas maneiras.

A respeito dos métodos para tratamento de deadlocks, avalie as afirmações a seguir.


I. Usar um protocolo para prevenir ou evitar deadlock.

II. Garantir que o sistema sempre entrará no estado de deadlock.

III. Ignorar o problema e fingir que os deadlocks nunca ocorrem no sistema.

IV. Permitir que o sistema entre em estado de deadlock, detectá-lo e recuperá-lo.


Está correto apenas o que se afirma em

Alternativas
Comentários
  • Basicamente, há 3 formas de se evitar o deadlock: previnir, recuperar e evitar.

  • Condições e abordagens contra Impasses ou Deadlok

    Exclusão Mútua - usar spool em tudo

    Posse e Espera - requisita todos os recursos necessários

    Não Preempção - retorma os recursos alocados

    Espera Circular - faz ordenação

    Fonte: Tanembaum

    Gabarito D

  • Quatro estratégias para tratar impasses/deadlocks:

    1. Ignorar completamente o problema.

    2. Detecção e recuperação. Deixar os impasses ocorrerem, detectá-los e executar uma ação.

    3. Evitação dinâmica, por meio da alocação cuidadosa de recursos.

    4. Prevenção, pela negação estrutural de uma das quatro condições necessárias para causar um impasse.

    FONTE: Tanenbaum

    GABARITO: D


ID
3064126
Banca
UFMG
Órgão
UFMG
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Quais são as condições necessárias e suficientes para que aconteça um Deadlock?

Alternativas
Comentários
  • Existem quatro condições para a ocorrência de deadlock:

    Condição de exclusão mútua. Em um determinado instante, cada recurso está em uma de duas situações: ou associado a um único processo ou disponível.

    Condição de posso e espera. Processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

    Condição de não preempção. Recursos concedidos previamente a um processo não podem ser tomados a força desse processo, eles devem ser explicitamente liberados pelo processo que os retém.

    Condição de espera circular. Deve existir u encadeamento circular de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

    https://www.devmedia.com.br/introducao-ao-deadlock/24794

  • Mnemônico:

    EmPeNãoPEc

    Exclusão mútua - Posse e espera - Não preempção - Espera circular

  • E ai, tudo bom?

    Gabarito: D

    Bons estudos!

    -Quem ESTUDA tem em suas mãos o poder de TRANSFORMAR não só a própria vida, como também das pessoas que lhe cercam.

  • GABARITO D

    Condições para ocorrência de impasses:

    1. Exclusão mútua. Cada recurso está atualmente associado a exatamente um processo ou está disponível.

    2. Posse e espera. Processos atualmente de posse de recursos que foram concedidos antes podem solicitar novos recursos.

    3. Não preempção. Recursos concedidos antes não podem ser tomados à força de um processo. 

    4. Espera circular. Deve haver uma lista circular de dois ou mais processos, cada um deles esperando por um processo de posse do membro seguinte da cadeia.


ID
3087910
Banca
VUNESP
Órgão
Câmara de Tatuí - SP
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em um sistema operacional, existem diversas situações que poderiam acarretar o deadlock. Algumas estratégias podem ser utilizadas no seu tratamento, a exemplo daquela conhecida como “Algoritmo do Avestruz”, que

Alternativas
Comentários
  • Caraca, já tinha lido algo parecido e matei por lembrar que normalmente o avestruz envia a cabeça em um buraco,assim, na analogia, ignora tudo.

    Bons estudos!

  • As formas de tratamento de Deadlock:

    Ignorar por completo: Utilizar o Algoritmo Avestruz que é uma abordagem mais simples. "Enterre a cabeça na areia e finja que nenhum problema ocorrerá.". 

    Detecção e Recuperação: 

    Preempção: retirar um recurso de algum outro processo. Nesse método, cabe uma análise da natureza do recurso;

    Restauração de Estado: armazenar pontos de verificação de processos periodicamente para que esse estado salvo sirva para restaurar o processo se este é encontrado em estado de deadlock;

    Eliminação de Processos: forma mais grosseira mas mais simples de quebrar um deadlock é eliminar um dos processos no ciclo de processos em deadlock, assim os outros processos conseguirão seus recursos. Para eliminar o processo, escolher um que possa ser reexecutado desde o início;


ID
3132808
Banca
VUNESP
Órgão
Câmara de Piracicaba - SP
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlock é um problema potencial em qualquer sistema operacional. Sejam dois processos PA e PB, e dois recursos RX e RY.

Assinale a alternativa que reflete a ocorrência de um deadlock.

Alternativas
Comentários
  • Alternativa c , pois ocorre o adiantamento infinito.

    Pa aguarda os recursos do PB e o PB aguarda os processos do PA e esses processos ficam bloqueados aguardando um ao outro resultando no deadlok

  • Complementando o que o Erick disse, deadlock é um impasse.

  • Alternativa C , Para ocorrer deadlock precisa ocorrer : exclusão mútua, posse e espera, não preempção e espera circular.


ID
3219976
Banca
VUNESP
Órgão
FUNDUNESP
Ano
2016
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere a seguinte situação ocorrendo no ambiente de um sistema operacional no qual um conjunto de processos está sendo executado: “em determinado momento, cada processo está esperando um evento que somente outro processo poderá fazer acontecer”. Essa descrição refere-se a

Alternativas
Comentários
  • GABARITO (A).

    Deadlock - Espera de processos.

  • a-

    In concurrent computing, a deadlock is a state in which each member of a group waits for another member, including itself, to take action, such as sending a message or more commonly releasing a lock. Deadlocks are a common problem in multiprocessing systems, parallel computing, and distributed systems, where software and hardware locks are used to arbitrate shared resources and implement process synchronization.

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


ID
3225994
Banca
INSTITUTO AOCP
Órgão
PRODEB
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlock em Sistemas Operacionais é uma situação que é tratada com muito cuidado. O Deadlock é a situação na qual acontece um impasse e, dessa forma, dois ou mais processos ficam impedidos de continuar a sua execução, ou seja, ambos ficam bloqueados esperando um pelo outro. Assinale a alternativa que NÃO apresenta uma condição necessária para que ocorra um Deadlock.

Alternativas
Comentários
  • Exclusão Mútua;

    Posse e Espera;

    Não Preempção;

    Espera Circular.

    .

    .

    At.te

    Foco na missão ❢


ID
3234430
Banca
CESGRANRIO
Órgão
UNIRIO
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlock, no contexto de um sistema operacional, é uma

Alternativas
Comentários
  • Condições para ocorrência de Deadlock

    Assim, nenhum processo consegue executar recurso que precisa, ou liberar recurso que está de posse, ou ser acordado, pois o recurso que precisa está ocupado.

    Vale detalhar que recurso é uma sequência de eventos necessários ao uso de um processo, assim pode ser dispositivos ou qualquer item compartilhado.

    As condições para se entrar no estado de Deadlock:

    Exclusão Mútua: todo recurso está ou associado a um único processo ou disponível;

    Posse e Espera: processos que retêm recursos podem solicitar novos recursos;

    Não Preempção: recursos concedidos previamente não podem ser forçosamente tomados;

    Espera Circular: deve haver uma cadeia circular de dois ou mais processos, na qual cada um está à espera de recursos retido pelo membro seguinte dessa cadeia.

    Todas essas condições devem ocorrer simultaneamente para que ocorra Deadlock. Se uma dessas condições não ocorrer, não haverá deadlock.


ID
3260113
Banca
Colégio Pedro II
Órgão
Colégio Pedro II
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere a seguinte afirmação:

Cada processo em um conjunto de processos está aguardando um evento que somente outro processo no grupo pode causar.

Essa afirmação caracteriza uma situação de

Alternativas
Comentários
  • GABARITO (A).

    Cada processo em um conjunto de processos está aguardando um evento que somente outro processo no grupo pode causar.

    Essa afirmação caracteriza uma situação de: Impasse ou Deadlock.

  • Inanição ocorre quando um processo nunca é executado,pois os processos de prioridade maior sempre o impedem de serem executados
  • Impasse ou deadlock: um conjunto de entidades de processamento está em situação de deadlock se cada entidade pertencente ao conjunto está bloqueada esperando por um evento (ou recurso) que somente outra entidade no mesmo conjunto pode gerar (ou liberar).

    Inanição ou starvation: uma entidade de processamento está em inanição quando ocorrem negativas de acesso a um determinado recurso perpetuamente, impedindo que execute o restante das tarefas, sem que a entidade esteja bloqueada. Isso ocorre, por exemplo, quando se utiliza algoritmos de escalonamento de processos baseados em prioridade. Desse modo, processos classificados como de baixa prioridade nunca serão executados (e "morrerão de fome", esperando), pois os processos de prioridade mais alta sempre passarão à frente na "fila".

  • Gabarito A

    IMPASSES (Deadlock): Um conjunto de processos estará em situação de impasse se cada processo no conjunto estiver esperando por um evento que apenas outro processo no conjunto pode causar.


ID
3310822
Banca
FUNDEP (Gestão de Concursos)
Órgão
INB
Ano
2018
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlocks em sistemas operacionais geralmente são impossíveis de serem tratados devido ao alto custo computacional. Porém, em alguns sistemas, esse procedimento passa a ser importante.

Qual é uma boa maneira para se evitar deadlock?

Alternativas
Comentários
  • Trajetória de recursos é um forma para evitar deadlock, juntamente com Análise de estados seguros e inseguros.

  • O examinador pede uma maneira para evitar Deadock, consoante o autor Tanenbaum, citamos 3:

    > Trajetórias de recursos;

    > Estados seguros e Inseguros;

    > Algoritmo do banqueiro;

    Corroborando para o GABARITO DA QUESTÃO: ALTERNATIVA D

    As demais alternativas da questão são maneiras de recuperação de Impasses, também citado pelo mesmo autor.


ID
3967216
Banca
CONSULPLAN
Órgão
Câmara de Nova Friburgo - RJ
Ano
2017
Provas
Disciplina
Sistemas Operacionais
Assuntos

“O _________________ ocorre quando ‘todos os processos de um conjunto de processos estiverem esperando por um evento que somente outro processo desse mesmo conjunto tem a capacidade de fazê-lo acontecer’.” Assinale a alternativa que completa corretamente a afirmativa anterior.

Alternativas
Comentários
  • Existem quatro condições para a ocorrência de deadlock:

    Condição de exclusão mútua. Em um determinado instante, cada recurso está em uma de duas situações: ou associado a um único processo ou disponível.

    Condição de posso e espera. Processos que, em um determinado instante, retêm recursos concedidos anteriormente podem requisitar novos recursos.

    Condição de não preempção. Recursos concedidos previamente a um processo não podem ser tomados a força desse processo, eles devem ser explicitamente liberados pelo processo que os retém.

    Condição de espera circular. Deve existir u encadeamento circular de dois ou mais processos; cada um deles encontra-se à espera de um recurso que está sendo usado pelo membro seguinte dessa cadeia.

  • Deadlock (interbloqueio, blocagem, impasse), no contexto de  (SO), refere-se a uma situação em que ocorre um impasse, e dois ou mais  ficam impedidos de continuar suas execuções - ou seja, ficam bloqueados, esperando uns pelos outros. Trata-se de um problema bastante estudado em sistemas operacionais e , pois é inerente à própria natureza desses sistemas.

    https://pt.wikipedia.org/wiki/Deadlock


ID
4140088
Banca
UFCG
Órgão
UFCG
Ano
2019
Provas
Disciplina
Sistemas Operacionais
Assuntos

Deadlocks (impasses) podem ocorrer em sistemas operacionais, bancos de dados e outros sistemas concorrentes. Leia as assertivas abaixo e marque a alternativa correta.


I- Um conjunto de processos estão em condição de deadlock se cada processo no conjunto estiver aguardando um evento que apenas outro processo no conjunto cause.

II- Um deadlock ocorre se e somente se as quatro condições de Coffman forem satisfeitas.

III- Um deadlock pode ocorrer ao utilizar somente recursos não-preemptivos.

IV- Uma forma de evitar deadlocks é garantir que a condição de posse-e-espera não ocorra.

V- Uma forma de evitar deadlocks é garantir que a condição de preempção não ocorra.

Alternativas
Comentários
  • Acredito que ele tenha falseado a assertiva III por conta do "pode", já que o deadlock só ocorre com recursos não-preemptivos. E não é o recurso que é preemptivo, mas sim o algoritmo de escalonamento.

  • I- Um conjunto de processos estão em condição de deadlock se cada processo no conjunto estiver aguardando um evento que apenas outro processo no conjunto cause. - Correta

    II- Um deadlock ocorre se e somente se as quatro condições de Coffman forem satisfeitas. - Correta

    III- Um deadlock pode ocorrer ao utilizar somente recursos não-preemptivos.

    IV- Uma forma de evitar deadlocks é garantir que a condição de posse-e-espera não ocorra. - Correta

    V- Uma forma de evitar deadlocks é garantir que a condição de preempção não ocorra.


ID
4180966
Banca
CETRO
Órgão
AMAZUL
Ano
2015
Provas
Disciplina
Sistemas Operacionais
Assuntos

Sobre as formas de um sistema operacional se recuperar de uma situação de impasse (deadlock), analise as assertivas.


I. O método de recuperação por preempção retira um recurso do processo atual e o passa para outro processo.
II. O método de recuperação por meio de retrocesso necessita que os processos gerem checkpoints periodicamente.
III. O método de recuperação por meio da eliminação de processos elimina processos tanto presentes no ciclo de execução como processos fora dele.


É correto o que se afirma em

Alternativas
Comentários
  • GABARITO E:

    Recuperação

    Mediante Preempção: tomar temporariamente um recurso do seu proprietário atual e dá-lo a outro processo;

    Mediante Retrocesso: gerar pontos de salvaguarda (checkpoints) periodicamente

    • Gravar estado em que o processo parou;

    Mediante Eliminação de processos: matar um ou mais processos;

    • Como alternativa, um processo que não está no ciclo pode ser escolhido como vítima a fim liberar os seus recursos.

    FONTE: Tanenbaum


ID
5377414
Banca
INSTITUTO AOCP
Órgão
ITEP - RN
Ano
2021
Provas
Disciplina
Sistemas Operacionais
Assuntos

Alguns problemas podem ocorrer durante o funcionamento de um sistema operacional. Quando se trata de processos, o deadlock é um dos problemas mais conhecidos. Qual das alternativas a seguir caracteriza corretamente um deadlock?

Alternativas
Comentários
  • GABARITO E - A meu ver, o conceito de deadlock considerado pela banca não foi tão condizente com o conceito real. Esse conceito parece mais com a definição de Starvation.

    Deadlock: Um conjunto de processos estará em situação de impasse se cada processo no conjunto estiver esperando por um evento que apenas outro processo no conjunto pode causar.

    Inanição (Starvation): Ocorre quando programas continuam a executar indefinidamente, mas não conseguem fazer progresso algum.

    FONTE: TANENBAUM

  • "Ambos os processos ficariam bloqueados para sempre e nenhum trabalho seria mais realizado. Essa situação infeliz é chamada de impasse (deadlock). "

    Sua própria fonte Jeanderson Medeiros, Capítulo 2 Processos e threads página: 95


ID
5526640
Banca
FGV
Órgão
FUNSAÚDE - CE
Ano
2021
Provas
Disciplina
Sistemas Operacionais
Assuntos

Considere um sistema operacional onde o processo P1 precisa dos recursos R1 e R2 para prosseguir com seu processamento. Concomitantemente, há um processo P2, que também precisa dos recursos R1 e R2.
A situação em que, simultaneamente, o processo P1 detém o recurso R1 e espera pelo recurso R2 e o processo P2 detém o recurso R2 e espera pelo recurso R1, é denominada

Alternativas
Comentários
  • GABARITO B

    Deadlock (ou Impasse): Um conjunto de processos estará em situação de impasse se cada processo no conjunto estiver esperando por um evento que apenas outro processo no conjunto pode causar.

    FONTE: Tanenbaum