è possibile che /proc/4587esista una cartella simile anche se non esiste un processo con PID 4587?
è possibile che /proc/4587esista una cartella simile anche se non esiste un processo con PID 4587?
Risposte:
Se /procè solo il procmount (e nessuno sta giocando brutti scherzi con overlay), no, una cartella basata su pid esiste solo finché il processo corrispondente esiste in qualche stato (incluso come zombi). In effetti, appena prima di restituire una voce di directory per un id di processo, il kernel riconvalida l'esistenza del processo - quindi nel momento in cui viene restituita una voce di directory, il processo corrispondente è ancora lì. L'accesso a una directory inizia anche cercando il processo corrispondente. (Se i numeri di riga cambiano, cercare proc_pident_instantiatee proc_pident_lookup.)
È possibile /procriscontrare problemi causati dall'elenco e dall'utilizzo dei risultati in un secondo momento (anche alcuni microsecondi dopo): un processo può essere in esecuzione durante l'elenco /proce arrestarsi prima di agire sui risultati.
wait()non erano stati chiamati su di loro?
psmostra il processo, la sua /procdirectory dovrebbe esistere.
psaccede /procper trovare le informazioni che mostra.