지시문에서 다음 문장을 읽었습니다.
프로세스 ID 0일반적으로 스왑퍼라고도 불리는 스케줄러 프로세스입니다. 커널의 일부이며 시스템 프로세스라고 불리는 이 프로세스에 해당하는 프로그램이 디스크에 없습니다.프로세스 번호 1일반적으로 부팅 프로세스가 끝날 때 커널에 의해 호출되는 init 프로세스입니다.
진행 상황을 확인하세요.
$ pstree -p $$
-+= 00001 root /sbin/launchd
\-+= 00264 me /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal -psn_0_53261
\-+= 00365 root login -pfl me /bin/bash -c exec -la bash /usr/local/bin/bash
\-+= 00366 me -bash
|-+= 06305 me pstree -p 366
| \--- 06307 root ps -axwwo user,pid,ppid,pgid,command
프로세스 1을 찾을 수 있지만 프로세스 0은 어디에 있습니까?
답변1
BSD는 ps
PID 0을 표시하지 않습니다.
$ ps -o pid,ppid,comm -p 0,1,$$
PID PPID COMM
1 0 /sbin/launchd
14705 14704 -zsh
pstree
프로세스 정보를 얻는 데 사용되므로 ( ps
출력에서 볼 수 있듯이) 분명히 PID 0을 표시할 수 없습니다.
PID 0을 보려면 OSX에서 top
활동 관리자를 사용하세요.
$ top -l1 -pid 0
Processes: 480 total, 2 running, 478 sleeping, 2777 threads
2018/11/15 12:20:36
Load Avg: 1.99, 2.21, 2.13
CPU usage: 6.59% user, 18.33% sys, 75.7% idle
SharedLibs: 207M resident, 50M data, 40M linkedit.
MemRegions: 135141 total, 7727M resident, 63M private, 2624M shared.
PhysMem: 16G used (6717M wired), 61M unused.
VM: 3304G vsize, 1297M framework vsize, 5481932(0) swapins, 6319905(0) swapouts.
Networks: packets: 2367177/1916M in, 1966560/789M out.
Disks: 2569936/63G read, 1879985/62G written.
PID COMMAND %CPU TIME #TH #WQ #PORTS MEM PURG CMPRS PGRP PPID STATE BOOSTS %CPU_ME %CPU_OTHRS UID FAULTS COW MSGSENT MSGRECV SYSBSD SYSMACH CSW PAGEINS IDLEW POWER INSTRS CYCLES USER #MREGS RPRVT VPRVT VSIZE KPRVT KSHRD
0 kernel_task 0.0 47:24.02 211/8 0 0 71M+ 0B 0B 0 0 running 0[0] 0.00000 0.00000 0 400853+ 0 82636075+ 75828596+ 0 0 295335075+ 0 14150823 0.0 0 0 root N/A N/A N/A N/A N/A N/A