커널에서 생성된 커널 스레드만 나열하는 방법이 있습니까?

커널에서 생성된 커널 스레드만 나열하는 방법이 있습니까?

이 명령은 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와 그 하위 포함)

관련 정보