Pergunta

O Conceitos de Sistema Operacional 6ª edição atual trival algoritmo para implementate ciritical seção.

do{
  while (turn != i);
    critical section
  trun = j;
    remainder section
} while(1);

Nota , Pi é o processo com identificador i, Pj é o processo com identificador j.To simlify a questão, o limite livro do i, j a 0 e 1, os dois processos ambiente constriant.

Question1 é, a dose este algoritmo voilate o Progress exigência que é um dos três requisitos a solução seção ciritical?

Na minha opinião, quando Pi é em sua seção restante, não pode participar na decisão sobre se Pj pode inserir os section.Then críticos está vinculado com a exigência.

Ou a minha compreensão da exigência de progresso é totalmente wrong.So porque se Pi aposentado da secção restante, não poderia entrar na seção cirtical imediato, este alg violar a regra.

Question2 ,

Se turn == 0 e P1 está pronto para entrar seção itscritical, P1 não pode fazer assim, até pensei P0 pode estar em sua seção restante

Qual é o significado dessa afirmação? Tanto quanto eu poderia pensar, eu não conseguia entender por sua vez == 0 e p0 estar em sua seção restante poderia ser existir simultaneamente ...

Então é isso errado declaração?

Foi útil?

Solução

Suponha que turn = 0 inicialmente. P0 faz sua secção e conjuntos crítica turn = 1. Agora, P1 deve executar sua seção crítica antes P0 pode executar seu um novamente. Mas só porque ambos os tópicos tem uma seção crítica não significa que eles vão querer alternar seu uso dele desta maneira - na verdade, P1 pode nunca ter sua vez. (E, no caso geral, você não pode determinar isso em tempo de compilação .)

Então, basicamente, o problema é que os fios são obrigado a alternar suas voltas , mesmo que um deles realmente não quer entrar em sua seção crítica para um tempo indefinidamente longo.

A propósito, a sua resposta à pergunta 1 está correta. O algoritmo não falha o Progress condição, ele falhar o Limitada Espera condição.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top