Sincronizaçao
Curso de Tecnologia em Análise e Desenvolvimento de Sistemas
Lista de exercícios 4 - Sincronização
Luis Amadeu Darui Junior
Lista de Exercícios de Sincronização:
1. Defina o que é uma aplicação concorrente e dê um exemplo de sua utilização.
É uma aplicação que permite a execução concorrente. Tem como base a execução cooperativa de processos ou threads, buscando um resultado comum.
2. Considere uma aplicação que utilize uma matriz na memória principal para a comunicação entre vários processos concorrentes. Que tipo de problema pode ocorrer quando dois ou mais processos acessam uma mesma posição da matriz?
Se não houver gerenciamento dos processos, poderá ocorrer inconsistência de dados. 3. O que é exclusão mútua e como ela é implementada?
É impedir que dois ou mais processos acessem um mesmo recurso simultaneamente. Enquanto um processo estiver acessando um recurso, os demais terão que aguardar a liberação do mesmo pelo processo que estava em execução. 4. Como seria possível resolver os problemas decorrentes do compartilhamento da matriz, apresentado anteriormente, utilizando o conceito da exclusão mútua?
Garantir no sistema que nenhum outro recurso consiga acessar a matriz enquanto um processo estiver utilizando ela. 5. O que é starvation e como podemos solucionar este problema?
Ocorre em consequência ao da política do Escalonamento da CPU, um processo tenta acessar um recurso que fica constantemente bloqueado. 6. Explique o que são semáforos e dê dois exemplos de sua utilização.
É um mecanismo de sincronização sem espera ativa. Um semáforo consiste numa variável e numa fila de espera associada a um recurso. Para evitar a espera ativa, um processo que espera a liberação de um recurso deve ser bloqueado, devendo a razão que o levou a bloquear ficar memorizada. Esta fila contém todos os descritores dos processos bloqueados no semáforo 7. Apresente uma solução para o problema dos