Lathi Modern Digital Communications
Exercícios
1. Um mesmo processo pode ser executado em duas CPUs distintas. Especifique as condições para que esta asserção seja verdadeira. Especifique as condições para que seja falsa.
R: Necessidade de comunicação e sincronismo (controle). Não poderá ser executado em duas CPUs distintas quando concorrerem por um recurso, o qual desejam modificá-lo. Apenas um terá acesso para realização da alteração.
2. Em algumas CPUs é possível através de um operador de hardware desabilitar (não sentir) e habilitar (sentir) todas as interrupções, incluindo a de time slice. Explique como e sob quais condições a desabilitação e habilitação de interrupções é útil para a implementação de exclusão mútua em sistemas monoprocessadores. E em sistemas multiprocessadores?
R: Para um sistema monoprocessado é útil para outros processos sejam rodados e não rode exclusimente um processo apenas. Em sistemas multiprocessados são úteis para não permitir a execução da Região Crítica por dois processos concorrentes. Além disso, também para que haja exclusão mutúa e apenas um processo entre em execução.
3. Analise a seguinte colocação: race condition de dois processos em exclusão mútua determina qual dos processos irá usar a CPU. Indique para cada uma das seguintes asserções se esta é verdadeira ou se é falsa.
I. Race condition ocorre quando dois ou mais processos disputam um mesmo recurso comum, disputa essa que ocasiona a alteração do recurso. V
II. Se os dois processos estão em exclusão mútua, isso significa que qualquer dos dois a qualquer momento pode acessar e alterar um recurso comum. F
III. Tanto a exclusão mútua como uma race condition só ocorrem se a CPU estiver sendo usada para executar as instruções de um processo. V
IV. A colocação não faz sentido algum, pois estabelece situações incompatíveis. F
V. A exclusão mútua não permite que ocorra uma race condition. V
VI. É o dispatcher que estabelece qual processo vai usar a CPU, se esta estiver liberada. V