カーネルで生成されたカーネルスレッドのみをリストする方法はありますか?

カーネルで生成されたカーネルスレッドのみをリストする方法はありますか?

このコマンドは、ps aux | grep ]実行中のすべてのカーネルスレッド(カーネルで生成されたスレッドと他のスレッドによって生成されたスレッド)を一覧表示します。

カーネルで生成されたカーネルスレッドのみをリストする方法はありますか?

答え1

カーネルスレッドは常にカーネルによって生成され、常にプロセスグループ0にあるため、それらをフィルタリングできます。

ps -e -o pid,ppid,pgid,args | awk '$3 == 0'

(でプロセスグループIDをフィルタリングする方法はないようですps。理論的にはセッション0をフィルタリングできますが、ps気に入らません。)

kthreadd親がカーネルスレッドデーモンであるプロセスを見つけることもできます。

ps --pid 2 --ppid 2 -o pid,ppid,pgid,args

(pid 2とその子を含む)

関連情報