Obtenha as melhores soluções para suas perguntas no Sistersinspirit.ca, a plataforma de Q&A de confiança. Obtenha respostas rápidas para suas perguntas de uma rede de profissionais experientes em nossa plataforma de perguntas e respostas. Experimente a conveniência de encontrar respostas precisas para suas perguntas de uma comunidade dedicada de especialistas.

Considere o programa abaixo escrito em linguagem C. No instante da execução da linha 5, ter-se-á uma hierarquia composta de quantos processos e threads, respectivamente? 1 main(){ 2 int i; 3 for(i=0;i<3;i++) 4 fork(); 5 while(1); 6 } 7 e 7 1 e 0 4 e 1 3 e 0 8 e 8

Sagot :

Resposta:

8 processos e 8 threads

Explicação:

A função fork() cria um novo processo filho concomitante ao processo pai. Tanto o processo pai como o processo filho irão executar a próxima instrução.

Observe que dentro do laço de repetição, teremos três chamadas seguidas que irá resultar na primeira chamada em 2, e na segunda os dois processos irão criar mais 2, e na terceira os 4 processos irão criar mais 4 processos, em progressão geométrica. No total, serão 8 processos com uma thread cada.

View image usuario858