Exercícios de comunicação interprocessos

Páginas: 11 (2529 palavras) Publicado: 8 de agosto de 2012
Lista de Exercícios - Comunicação Interprocessos

1. A questão fala que uma das formas de garantir exclusão mútua em uma seção crítica é desabilitando interrupções e adiciona que, fazendo isso, o relógio do sistema pode ser afetado. Quais os motivos pelos quais isso ocorre e o que pode ser feito para minimizar o problema?

Isso ocorre, pois o relógio do sistema é atualizado porinterrupções. Portanto, se estas forem desabilitadas, o relógio ficará atrasado. Uma possível solução para minimizar o problema é desabilitar e habilitar as interrupções rapidamente. O uso de semáforos prevê exclusão mútua sem desabilitar interrupções, então também pode ser aplicado para minimizar este problema.

2. As sequências de execução podem ser:
D E A B C //executa o processo Q inteiro e depois oprocesso P
D A B C E
D A B E C
D A E B C

A B C D E //executa o processo P inteiro e depois o processo Q
A D E B C
A B D E C
A D B C E
A D C B E
A B D C E

3. Considerando o programa apresentado:
a) O limite inferior e o superior para o valor final da variável compartilhada soma exibido por esse programa é 50 e 100.
Isso acontece, pois a variável soma representa uma posiçãode memória, e a maioria dos processadores somente é capaz de incrementar um valor que está em registrador, como apresentado na questão. Sendo assim, o valor mínimo de soma é 50, já que é possível que o um processo concorrente sempre sobrescreva o outro. Por exemplo:

(Valor da variável soma) | (Acumulador do processo 1) | (Acumulador do processo 2) |
X: 0 | ACC de P1: ? | ACC de P2: ? |
P1executa MOVE X, ACC: |
X: 0 | ACC de P1: 0 | ACC de P2: ? |
P1 executa INC ACC: |
X: 0 | ACC de P1: 1 | ACC de P2: ? |
P2 executa MOVE X, ACC: |
X: 0 | ACC de P1: 1 | ACC de P2: 0 |
P2 executa INC ACC: |
X: 0 | ACC de P1: 1 | ACC de P2: 1 |
P2 executa MOVE ACC, X: |
X: 1 | ACC de P1: 1 | ACC de P2: 1 |
P1 executa MOVE ACC, X: |
X: 1 | ACC de P1: 1 | ACC de P2: 1 |
Ou seja, ovalor que P2 havia passado do acumulador (1) para a variável soma, foi sobrescrito quando P1 executou o mesmo comando, passando o valor do seu acumulador (também 1) para a variável compartilhada.
Isso pode acontecer sucessivamente, até que o processo total( ) seja concluído e o valor final de soma seja 50.
b) Para cada novo processo arbitrário executado, um incremento de 50 será adicionado aovalor superior da variável soma. Por exemplo, se três processos executarem concorrentemente, o valor de soma poderá variar entre 50 e 150. Se forem quatro processos, o valor de soma pode variar entre 50 e 200, e assim por diante. O limite inferior sempre será 50, independente do número de processos executando.

4. A questão questiona se a espera ocupada é sempre menos eficiente (em termos deutilização do processador) do que a espera bloqueante.

Sim, a espera ocupada é menos eficiente, pois desperdiça ciclos de CPU que outros processos poderiam usar de forma produtiva. Na espera bloqueante o processo avisa quando inicia e quando termina o uso da CPU para que o próximo processo seja liberado, tornando-a, assim, mais eficiente.

5. Existem dois erros de implementação doprodutor-consumidor nesta questão:
No produtor, as linhas:
down(&exclusao_mutua)
down(&espera_vaga)
Devem ser invertidas para:
down(&espera_vaga)
down(&exclusao_mutua)
Um possível comportamento indesejável para este programa é o produtor não decrementar o valor de espera_vaga (número de posições vazias no buffer) antes de entrar na região crítica. Se espera_vaga é igual a 1,significa que existe um espaço vago no buffer e um novo item pode ser adicionado. Se, um novo processo produtor B mais rápido ler a variável espera_vaga enquanto o processo A mais lento estiver entrando na sua região crítica, pode acontecer uma sobrescrita de valores. Os dois processos vão pensar que existe um espaço vago no buffer e, como o processo B é mais rápido, ele vai adicionar um item no...
Ler documento completo

Por favor, assinar para o acesso.

Estes textos também podem ser interessantes

  • Lista 4- sincronização e comunicação interprocessos
  • Exercícios de comunicação e redação
  • Exercícios
  • Comunicação: o exercício diário da humanidade
  • Exercicios Comunicação nas empresas
  • Exercicios comunicação e linguagem claretiano
  • Exercicios comunicação expressão
  • O exercício da comunicação oral e o educador

Seja um membro do Trabalhos Feitos

CADASTRE-SE AGORA!