чи можливо така папка /proc/4587
існує, хоча не існує процесу, який має PID 4587?
чи можливо така папка /proc/4587
існує, хоча не існує процесу, який має PID 4587?
Відповіді:
Якщо /proc
є лише proc
кріплення (і ніхто не грає в хитрощі з накладками), ні, папка на основі підключення існує лише до тих пір, поки відповідний процес існує в якомусь стані (в тому числі як зомбі). Насправді, перед тим, як повернути запис каталогу для ідентифікатора процесу, ядро повторно підтверджує існування процесу - тому в даний момент повернення запису в каталог, відповідний процес все ще існує. Доступ до каталогу також починається з пошуку відповідного процесу. (Якщо номери рядків змінюються, знайдіть proc_pident_instantiate
і proc_pident_lookup
.)
Ви можете зіткнутися з проблемами, спричиненими переліком /proc
та використанням результатів пізніше (навіть на кілька мікросекунд пізніше): процес, який ви можете запустити, ви можете /proc
зупинятися перед тим, як діяти на результати.
wait()
їх не викликали?
ps
показує процес, його /proc
каталог повинен існувати.
ps
доступ /proc
до пошуку інформації, яку вона відображає.