PS (1) strony man mówi, można użyć pola psr
:
psr PSR processor that process is currently assigned to.
$ ps -o pid,psr,comm
PID PSR COMMAND
7871 1 bash
9953 3 ps
Lub możesz użyć pola cpuid
, które robi to samo.
$ ps -o pid,cpuid,comm
PID CPUID COMMAND
7871 1 bash
10746 3 ps
Powodem dwóch nazw jest zgodność z Solaris (psr
) i NetBSD/OpenBSD (cpuid
).
Aby uzyskać również wątki, dodaj opcję -L
(i pole lwp
, jeśli używasz -o
).
Bez wątków:
$ ps -U $USER -o pid,psr,comm | egrep 'chromi|PID' | head -4
PID PSR COMMAND
6457 3 chromium-browse
6459 0 chromium-browse
6461 2 chromium-browse
Z wątków:
$ ps -U $USER -L -o pid,lwp,psr,comm | egrep 'chromi|PID' | head -4
PID LWP PSR COMMAND
6457 6457 3 chromium-browse
6457 6464 1 chromium-browse
6457 6465 2 chromium-browse
Jest też nieudokumentowane -P
opcja, która dodaje psr
do normalnych dziedzinach:
$ ps -U $USER -LP | egrep 'chromi|PID' | head -4
PID LWP PSR TTY TIME CMD
6457 6457 3 ? 00:01:19 chromium-browse
6457 6464 1 ? 00:00:00 chromium-browse
6457 6465 2 ? 00:00:00 chromium-browse
nie, to nie. Nie jest to czas procesora, ale 'liczba ostatnio używanych procesorów' (CPU0, CPU1, CPU2), jak to jest w' top'' f "" j "' J: P = ostatnio używany procesor (SMP) ' – osgx
Ale' top' z tego samego 'procps' może. – osgx
Widzę to i zgadzam się. Ale nie ma takiej opcji w ps, co dokumentuje strona podręcznika. –