존재하다ps xf
26395 pts/78 Ss 0:00 \_ bash
27016 pts/78 Sl+ 0:04 | \_ unicorn_rails master -c config/unicorn.rb
27042 pts/78 Sl+ 0:00 | \_ unicorn_rails worker[0] -c config/unicorn.rb
그 안에는 htop
다음과 같이 나타납니다:
htop이 ps보다 더 많은 프로세스를 표시하는 이유는 무엇입니까?
답변1
기본적으로 htop
프로세스의 각 스레드는 개별적으로 나열되지만 ps
그렇지 않습니다. 스레드 표시를 끄려면 을 누르 H
거나 설정/표시 옵션 메뉴에서 사용자 공간 스레드 숨기기를 사용하십시오. 그러면 ~/.htoprc
or 에 다음 줄이 입력됩니다 ~/.config/htop/htoprc
(수동으로 입력할 수도 있음).
hide_userland_threads=1
( hide_kernel_threads=1
버튼을 눌러 전환 할 수도 있지만 K
기본값은 1입니다.)
또 다른 유용한 옵션은 동일한 메뉴( highlight_threads=1
in .htoprc
)에 있는 "다른 색상으로 스레드 표시"입니다. 이 옵션을 사용하면 스레드가 다른 색상(기본 테마에서는 녹색)으로 표시됩니다.
디스플레이의 첫 번째 줄에는 htop
"Tasks: 377, 842 thr, 161 kthr;"과 같은 줄이 있습니다. 2 Running". 이는 실행 가능한 상태의 프로세스, 사용자 영역 스레드, 커널 스레드 및 스레드의 총 수를 표시합니다. 표시를 필터링하면 숫자가 변경되지 않지만 각각 사용자/커널 스레드 포함을 끄면 "thr" 및 "kthr" 표시가 사라집니다.
PID 및 CPU 관련 필드(NIce 값, CPU%, TIME+ 등)를 제외하고 모든 특성이 공통된 여러 프로세스를 보면 동일한 프로세스에 있는 스레드일 가능성이 높습니다.
답변2
나의 현재 아치 Linux 시스템에서는 ps xf
내 사용자 ID가 소유한 프로세스만 표시됩니다. htop
모든 프로세스를 표시합니다. ps -ef
모든 프로세스 목록을 가져오거나 하위 ps -ejH
/상위 관계 목록을 가져오십시오.
답변3
htop은 종료된 프로세스도 표시합니다. 이는 임시 프로세스와 해당 프로세스가 소비할 수 있는 리소스를 확인할 수 있는 훌륭한 기능입니다. htop을 종료하고 다시 시작하면 해당 항목이 사라진 것을 볼 수 있습니다. 재부팅하지 않고 htop이 기록 프로세스를 삭제하도록 하는 방법을 생각할 수 없으므로 방법이 있을 수도 있습니다.