Você não pode presumir que ids de processo (e ids de thread) podem ser reutilizados, portanto, a ordem não é garantida. (Isso não é provável em um sistema de 64 bits recém-inicializado, mas você o verá em máquinas com grandes uptimes).
Você pode obter o id do grupo de threads (que é o ID do processo) do /proc/${id}/status
. Está na linha Tgid: nnnnn
.
Ex:
$ cat /proc/8288/status
Name: vlc
State: S (sleeping)
Tgid: 8281 // main vlc process id
Pid: 8288 // thread id