SóProvas


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?