Почему некоторые процессы, показанные в pstree, не отображаются в ps -ef?

Как заголовок, я запускаю вышеупомянутые команды в оболочке sh Linux, но я просто не могу найти дочерние процессы pid 7459, выполнив "ps -ef | grep dummy". Может кто-нибудь объяснить, почему может быть такая разница между этими двумя командами? Это активные процессы, а не LWP(поток), верно? Как я могу отобразить темы, кстати?

sh-3.2$ pstree -p  7459
dummy(7459)-+-{dummy}(7508)
            |-{dummy}(7528)
            |-{dummy}(7529)
            |-{dummy}(7530)
            |-{dummy}(7551)
            |-{dummy}(7552)
            |-{dummy}(7553)
            `-{dummy}(7554)
sh-3.2$ ps -ef | grep dummy
root      7459  7167  0 Aug28 ?        00:09:13 /usr/bin/dummy
erv      23720 17254  0 13:22 pts/4    00:00:00 grep dummy
sh-3.2$ 

1 ответ

Решение

Как уже сказал @nos, pstree отображает темы по умолчанию, но ps -ef не.

ps можете показывать темы, вы просто не просили об этом. Попробуйте это (это может зависеть от того, какая у вас версия):

ps -eLf

Это все на странице руководства.

Потоки Linux - это просто процессы, которые используют то же адресное пространство, что и другой процесс. Это как вилка, которая не сломалась чисто. Вы можете прочитать больше в clone документация по системному вызову.

Другие вопросы по тегам