semáforos e monitores

335 palavras 2 páginas
9)
O semáforo é uma variável que fica associada a um recurso compartilhado, indicando quando este está sendo acessado por um outro processo. Ela terá seu valor alterado quando o processo entra e quando sai da região crítica de forma que se um outro processo entrar em sua região critica ele possa checar antes este valor para saber se o recurso esta ou não disponível. Quando o processo tiver seu acesso impedido, ele será colocado em uma fila de espera associada ao semáforo aguardando sua vez de utilizar o recurso. Todos os processos da fila terão acesso ao recurso na ordem de chegada. O semáforo pode ser usado também para implementar sincronizações condicionais. Isto consiste em um processo que necessita ser notificado sobre a ocorrência de um evento. Pode-se usar o semáforo para notificar este processo sobre a ocorrência deste evento.
Um exemplo desse tipo de sincronização ocorre quando um processo solicita uma operação de E/S. O pedido faz com que o processo execute uma instrução DOWN no semáforo associado ao evento e fique no estado de espera, até que a operação seja completada. Quando a operação termina, a rotina de tratamento da interrupção executa um UP no semáforo, liberando o processo do estado de espera.
Um meio simples para exclusão mútua é a utilização de um semáforo binário, isto é, que só pode assumir dois valores distintos, 0 e 1. O travamento por semáforo deve ser feito antes de utilizar o recurso, e após o uso o recurso deve ser liberado. Enquanto o recurso estiver em uso, qualquer outro processo que o utilize deve esperar a liberação

10) Possíveis soluções:
• apenas 4 filósofos podem sentar à mesa ao mesmo tempo.
• um filósofo só pega um garfo se o outro estiver disponível.
• filósofo ímpar pega garfo à esquerda e depois àdireita, filósofo par pega garfo à direita e depois àesquerda.
11)

Relacionados

  • Monitores e semaforos
    1358 palavras | 6 páginas
  • Análise comparativa - semáforos e monitores
    928 palavras | 4 páginas
  • I dont know
    3354 palavras | 14 páginas
  • Sistema de informação
    2955 palavras | 12 páginas
  • Testando o teste
    854 palavras | 4 páginas
  • Complexidade de Algoritmos
    3976 palavras | 16 páginas
  • gregr
    2696 palavras | 11 páginas
  • Aula07 Sincronizacao ComunicacaoEntreProcessos_parte02
    2607 palavras | 11 páginas
  • Semaforos AULA
    3537 palavras | 15 páginas
  • PROGRAMAÇÃO PARALELA
    1812 palavras | 8 páginas