Paginação, Deadlocks e Starvation

Publicado em 30/07/2005

O problema dos filósofos jantando consiste numa mesa com 5 pratos de spaghetti e cinco garfos entre os pratos. Pelo fato do spaguetti ser muito escorregadio (o molho é um bolonhesa bem ralo) cada filósofo precisa de dois garfos para comer. Enquanto um filósofo está comendo os outros dois filósofos vizinhos não podem comer pela falta dos garfos. Então eles aproveitam para pensar um pouco. A dificuldade do problema é a implementação de uma rotina que não entre em deadlock quando um filósofo tentar pegar os garfos dos seus vizinhos.

Exemplos:

Uma implementação não correta:

· #include "prototypes.h"

·

· #define N 5 // são 5 filósofos

·

· void philosoper(int i)

· {

· while (TRUE) {

· think();

· take_fork(i);

· take_fork((i+1) % N);

· eat();

· put_fork(i);

· put_fork((i+1) % N);

· }

}

Uma implementação correta usando semáforos

· #include "prototypes.h"

·

· #define N 5 // numero de filosofos

· #define LEFT (i-1)%N // uma macros para calcula o filosofo da esquerda

· #define RIGHT (i+1)%N // idem da direita

· #define THINKING 0

· #define HUNGRY 1

· #define EATING 2

·

· typedef int semaphore;

· int state[N]; // um estado para cada filosofo

· semaphore mutex = 1; // semaforo da secao critica

· semaphore s[N]; // um semaforo para cada filosofo

·

· void philospher(int i) // a rotina dos filosofos

· {…

É esse o conteúdo que você precisa?
Faça seu login e saiba como ver o trabalho completo

O Zé Moleza facilita sua vida acadêmica ajudando você em suas pesquisas, e a economizar o seu tempo e o seu dinheiro nos seus trabalhos de faculdade. São mais de 26144 pesquisa acadêmicas entre elas, monografia, temas de monografias, TCC, modelos de monografias, trabalhos de universidades, resenha, Paper, Ensaio, Bibliografia, Trabalhos Escolares.

Dicas de como fazer: Capa de Monografia, capa de TCC, Regras da ABNT, como fazer monografia, como fazer Projeto Final, como fazer seminário, como fazer capas, referências bibliográficas, modelo de monografia.

O Zé Moleza NÃO faz a venda de monografia e É TOTALMENTE CONTRA a compra de monografia pronta e trabalhos prontos. O Zé Moleza NÃO auxilia a quem compra monografia, NÃO apóia a quem quer comprar Trabalhos Prontos, e NÃO APROVA a quem quer comprar TCC prontos, dando dicas de formatação, regras da ABNT, dando sugestões de temas para monografia, resumo de livros, projeto de pesquisa, projeto de mestrado, projeto de pós-graduação, trabalhos acadêmicos, incentivando o usuário a desenvolver por conta própria sua monografia.