A seguir: Escalonamento SJF de uma Acima: Exercícios: 1 Lista (postscript) Anterior: Comparação e Troca em
Considere o seguinte programa:
a = 1; b = 1; cobegin T1:: a := a + 100; b := b + 100;T2:: a := a * 2; b := b * 2; coend
Na terminologia introduzida por [Eswaran et al., 1976], uma transação é uma unidade de consistência, isto é, um procedimento que, se executado isoladamente, preserva a consistência de um banco de dados. Supondo que a = b é a condição de consistência no programa acima, T1 e T2 seriam transações. O controle de concorrência de um banco de dados deve cuidar para que o efeito de transações executadas em paralelo seja equivalente à sua execução numa sequência qualquer. Acrescente ao programa acima comandos de sincronização que garantam a serializabilidade de sua execução. Procure maximizar o paralelismo, não utilizando uma única região crítica.