¿Obtiene el tiempo de CPU del sistema y del usuario por proceso en OSX a través de la línea de comandos?


2

estoy familiarizado con pidstat comando que proporciona una CPU de sistema y usuario separada por proceso en 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

¿Cómo puedo lograr lo mismo en Mac OSX?

top en OSX proporciona estos valores pero solo en el nivel de la máquina y no por proceso. Para los procesos, parece dar solo la CPU total utilizada.

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]

Por proceso, muestra solo el porcentaje total de CPU y no el usuario y la división del sistema. ¿Cómo obtengo la hora del usuario y del sistema?


ya tienes la respuesta que el% de CPU está en coulomb 15 & amp; 16. Así que tienes el total y la división
Buscar웃

Respuestas:


1

No estoy seguro de que la información que está buscando sea accesible tan fácilmente. Tu podrías intentar 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

y calcule la hora del sistema (HORA - UTIMA) y los porcentajes. Este es solo el total desde que comenzó el proceso, no un muestreo continuo.


-1

Estabas cerca con el comando superior,

ahora intenta Top -A

y te mostrará esto por Proceso (PID)

enter image description here

o prueba esto top -F -R -o cpu

Todas las opciones de comando Top posibles

enter image description here

Mientras Top esta corriendo presionando o (y / o Capital O) luego use cualquiera de las opciones enumeradas para modificar qué y cómo se muestra en tiempo real.


-A Me da una sintaxis inválida en HighSierra. top todavía muestra el total de CPU por proceso y no el usuario y el sistema por separado a menos que perdiera algo aquí.
Neo

Acabo de probar el top -a en High Sierran y funciona
Buscar웃

Muestra el uso de CPU por usuario.
Buscar웃

Que no haya sido muy claro, top muestra el proceso total de tiempo de CPU y no la división. Necesito tiempo de usuario y sistema. Actualizado la pregunta también
Neo

OK, la CPU total está en coulomb 3d, la división es% CPU_me y% CPU_others en coulomb 15 & amp; 16
Buscar웃
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.