Por que um processo não pode alterar o ID do grupo de processos de um de seus filhos depois que o filho chamou uma das funções exec?

1

Do APUE:

A process can set the process group ID of only itself or any of its children. Furthermore, it can’t change the process group ID of one of its children after that child has called one of the exec functions.

Por que não pode "alterar o ID do grupo de processos de um de seus filhos depois que o filho chamou uma das funções exec"? Obrigado.

    
por Tim 27.05.2018 / 15:05

1 resposta

1

Eu não sei a razão "oficial", mas imagino que a idéia é que um processo não deve esperar que seu PGID seja repentinamente alterado.

Portanto, isto é permitido após uma bifurcação para que os pipelines do shell possam ser configurados, mas após o execve() o novo binário encontrar um certo estado, e isso deve ser permanente (até que o novo binário decida alterá-lo). p>     

por 27.05.2018 / 15:20