Instituto de Computação - UNICAMP

MO806/MC914 Tópicos em Sistemas Operacionais

Islene Calciolari Garcia

Laboratório

Leitores - Escritores

Entrega: 5 de outubro


Objetivo

Considere uma implementação em que as threads fazem acesso de leitura e escrita a um banco de dados. Em uma implementação ideal, as threads leitoras podem fazer acesso simultâneo aos dados, mas as threads escritoras precisam fazer acesso exclusivo.

Como explicado em aula, se dermos prioridade às threads leitoras, as threads escritoras podem nunca conseguir atualizar os dados. Por outro lado, se dermos prioridade às threads escritoras, as threads leitoras poderão ficar eternamente esperando.

Sua tarefa é especificar e implementar um algoritmo que garanta um compromisso entre possibilidade de leituras simultâneas e ausência de deadlock.

Entrega:

Você deverá entregar por e-mail para islene [@] ic [.] unicamp [.] br os seguintes arquivos: Para escrever as implementações você pode se basear nos códigos-exemplos fornecidos nas aulas ou criar outra aplicação de leitores-escritores diferente.