Sua premissa é falsa. Um processo sempre pode obter o ID do processo de seu pai chamando getppid
. getppid
é uma das raras chamadas de sistema que não podem falhar. Mesmo se o processo pai original do processo tiver morrido, o filho será adotado pelo init, portanto getppid
retornará 1.
Um processo não pode encontrar os PIDs de seus filhos, ou o PID de seu avô, ou os PIDs de seus irmãos, etc. Para ser preciso, ele pode descobrir, mas apenas chamando ps
ou algum equivalente método como coletar informações de /proc
, ou seja, os mesmos métodos que qualquer processo não relacionado pode usar.