Do meu teste, parece que você tem uma suposição falsa, os números PID não são dados em ordem seqüencial. Isso é muito fácil de provar, faça o seguinte comando na linha de comando. Deve abrir 3 cópias do bloco de notas.
notepad & notepad & notepad
Na minha máquina, aqui estão as PIDs das 3 cópias que abriram ao mesmo tempo.
ComovocêpodeveroPIDpulandomuito,Sevocêosabrirumdecadavez,tambémveráqueopróximoPIDnemsempreémaiorqueoanterior.Porexemplo,euabriumaquartacópiadoblocodenotasepegueiisto
Portanto, parece que o Windows 7 selecionará um PID aleatório não utilizado toda vez que iniciar um processo, portanto, muito bem poderia ter um PID reutilizado durante a execução das janelas sem reinicialização.
Eu escrevi um script simples de powershell (requer v2 ou mais recente, veja isso responde ao histórico de edição para uma versão em C #) para provar com certeza
$h = new-object 'System.Collections.Generic.HashSet[string]'
do {
$proc = Start-Process 'notepad' -PassThru
$id = $proc.Id
Stop-Process $id
} while ($h.Add($id))
$count = $h.Count
Write-Host "Took $count PIDs to hit a duplicate, the duplicate was $id."
Rodando o programa 10 vezes, sempre foi gasto entre 134
e 147
lançamentos do bloco de notas para o mesmo PID ser reutilizado (Por que esse número é tão pequeno? GO-GO Gadget Problema de aniversário !)