Uzyskaj czas dla procesora użytkownika i procesora systemu w OSX za pomocą wiersza poleceń?

2

Znam pidstatpolecenie, które daje osobny procesor użytkownika i system na proces w systemie Linux:

$ sudo pidstat -p 3162
Linux 4.18.0-13-generic (ubi)   26.12.2018  _x86_64_    (1 CPU)

11:26:13      UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
11:26:13     1000      3162    0.24    0.04    0.00    0.12    0.28     0  emacs

Jak mogę to zrobić w systemie Mac OSX?

topw OSX podaje te wartości, ale tylko na poziomie komputera, a nie na proces. W przypadku procesów wydaje się, że daje tylko całkowity wykorzystany procesor

Load Avg: 3.26, 3.02, 3.01  CPU usage: 3.13% user, 5.69% sys, 91.16% idle  SharedLibs: 169M resident, 44M data, 11M

PID    COMMAND      %CPU TIME     #TH   #WQ  #PORT MEM    PURG   CMPRS  PGRP  PPID  STATE    BOOSTS
97229  powerlogd    0.0  00:00.45 2     1    51    1160K  16K    1744K  97229 1     sleeping *1[1]

Na proces pokazuje tylko całkowity procent procesora, a nie podział użytkownika i systemu. Jak uzyskać czas użytkownika i systemowy?

Neo
źródło
masz już odpowiedź,% podzielonego procesora jest w kulombach 15 i 16. Więc masz
sumę

Odpowiedzi:

1

Nie jesteś pewien, czy informacje, których szukasz, są tak łatwo dostępne. Możesz spróbowaćps

$ ps -p 407 -o pid,time,utime,etime,comm
  PID      TIME     UTIME     ELAPSED COMM
  407   2:08.23   1:46.36 11-17:10:27 /Applications/Aquamacs.app/Contents/MacOS/Aquamacs

i obliczyć czas systemowy (CZAS - CZAS) i wartości procentowe. Jest to tylko suma od początku procesu, a nie ciągłe pobieranie próbek.

nohillside
źródło
-1

Byłeś blisko z komendą Top,

Spróbuj teraz Top -A

i pokaże to dla poszczególnych procesów (PID)

wprowadź opis zdjęcia tutaj

lub spróbuj tego top -F -R -o cpu

Wszystkie możliwe opcje polecenia Top

wprowadź opis zdjęcia tutaj

Podczas Topdziałania naciśnij o(i / lub Capital O), a następnie użyj dowolnej z wymienionych opcji, aby zmodyfikować to, co i jak jest wyświetlane w czasie rzeczywistym.

Ruskes
źródło
-Adaje mi niepoprawną składnię w HighSierra. topnadal wyświetla całkowitą moc obliczeniową na proces, a nie użytkownika i systemu oddzielnie, chyba że coś tu przeoczyłem.
Neo,
Właśnie próbowałem top -ana High Sierran i to działa
Ruskes,
Pokazuje użycie procesora przez użytkownika
Ruskes
Może nie byłem bardzo jasny, toppokazuje całkowity czas procesora, a nie podział. Potrzebuję zarówno czasu użytkownika, jak i systemu. Zaktualizowałem też pytanie
Neo,
OK, całkowity procesor jest w 3d kulomb, podział wynosi% CPU_me i% CPU_others w kulomb 15 i 16
Ruskes