Não há relações entre um PID e um ID de trabalho em shells que usei ( bash
, dash
e zsh
).
No entanto, um trabalho de shell é um processo filho do shell, enquanto o PID 1 ( init
) é o ancestral de todos os processos, incluindo o shell. Portanto, um processo com o ID de trabalho 1 sempre sempre tem um PID maior que o ID do trabalho.
A atribuição de um ID de trabalho depende do shell. Em bash
, geralmente, o ID do trabalho atribuído é um maior que o ID do maior trabalho de um trabalho em segundo plano em execução:
$ sleep 1 & sleep 10 & sleep 1 &
[1] 11367
[2] 11370
[3] 11373
$
[1] Done sleep 1
[3]+ Done sleep 1
$ sleep 1 &
[3] 11378