PID - rostouci cisla procesu

Jakub Jelinek jj na sunsite.ms.mff.cuni.cz
Pondělí Prosinec 1 12:28:44 CET 1997


> je mozne (ci je to vlastnost Linuxu), ze PID neustale roste. Predpokladal
> jsem, ze po zaniknuti procesu se jeho puvodni PID cislo muze pouzit pro jiny
> proces a tak nemuze dochazet k neustalemu narustu PID.
> Zkoumal jsem svuj predpoklad na nasem serveru (Linux 2.0.30) a zjistil jsem
> s prekvapenim, ze cislo neustale narusta. Pri pokusech s Linuxem 2.0.0
> dokonce doslo pri prekroceni PID 16000 (zhruba) k zaseknuti systemu s
> hlaskou Can't fork next process ...
> Ale pri zkoumani napr. IRIXu se mi nezda, ze by se toto takto chovalo. Co se
> vsak stane, kdyz cislo poroste nad vsechna ocekavani ? V Linuxu 2.0.30 uz mi
> sice zadne tuhnuti nenastava (i pri prekroceni 16000), ale stejne mam z toho
> trochu strach.
> 
> Zajima mne tedy, jestli je chyba na me strane ci zda se jedna o vlastnost
> Linuxu ? A pokud ano, je nutne obcas server resetovat, aby se cislo snizilo
> nebo existuje i jina metoda ?
> 
pid nikdy neporoste nad vsechna ocekavani, v soucasne verzi Linuxu je
PID_MAX 32768 a pid kazdeho procesu je vzdy mensi, nez PID_MAX.
V momente, kdy citac last_pid (posledne prideleny pid) dosahne hodnoty
PID_MAX, je prenastaven na 300 a jsou postupne scanovana jednotliva pid,
zda-li je mozno je pouzit znovu (viz rutina get_pid kernel/fork.c).
Na podrobnosti odkazuji prave tam.
Na strojich, ktere spravuji, pid vetsinou mnohokrat protocim, takze musim
potvrdit, ze to funguje.

Cheers,
    Jakub
___________________________________________________________________
Jakub Jelinek | jj na sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
Ultralinux - first 64bit OS to take full power of the UltraSparc
Linux version 2.1.68 on a sparc64 machine (333.41 BogoMips).
___________________________________________________________________


Další informace o konferenci Linux