Почему все процессы oracle читают / proc / / cmdline нескольких системных процессов?

Я изучаю процессы оракула и их вывод lsof. Мне интересно, что такое / proc / / cmdline . 145 одинаковых открытых файлов командной строки, отображаемых для каждого процесса оракула.

Так что именно?

Например:

#lsof -u oracle | grep cmdline
oracle   2664 oracle   17r   REG                0,3         0   9492 /proc/1/cmdline
oracle   2664 oracle   18r   REG                0,3         0   9495 /proc/2/cmdline
.
.
.
oracle  12586 oracle  160r   REG                0,3         0  20528 /proc/2614/cmdline
oracle  12586 oracle  161r   REG                0,3         0  20529 /proc/2662/cmdline



# lsof -u oracle | grep cmdline | awk '{print $2}' | sort | uniq -c
145 12297
145 2664
145 2666
145 2670
145 2672
145 2674
145 2676
145 2678
145 2680
145 2682
145 2684
145 2686
145 2688
145 2690
145 2692
145 2694
145 2696
145 2698
145 2700
145 2702
145 2775
145 2777
145 2795
145 2799
145 2900
145 6323
0
17.03.2017, 13:53
1 ответ

Из руководств для proc (5) :

/ proc / [pid] / cmdline

Это чтение - only file содержит полную командную строку для процесса , если только этот процесс не является зомби. В последнем случае в этом файле ничего нет: то есть чтение этого файла вернет 0 символов. Аргументы командной строки появляются в этом файле как набор строк, разделенных нулевыми байтами ('\ 0'), с дополнительным нулевым байтом после последней строки.

1
28.01.2020, 02:46

Теги

Похожие вопросы