ps aux status column significado?

2

En una Mac de 64 bits, osx 10.8.5, dos de mis líneas de salida auxiliar ps, más el encabezado, son;

$ ps aux | cabeza
PID DE USUARIO% CPU% MEM VSZ RSS TT STAT INICIO TIEMPO COMANDO
myuid 16402 0.0 0.0 2432768 600 s005 R + 9:57 PM 0: 00.00 grep mongo
myuid 16071 0.0 0.1 3045380 20036 s001 S + 10:13 PM 0: 00.51 mongo --nodb

No puedo encontrar ninguna documentación sobre STAT, estado, columna. ¿Qué significan los elementos y / o cómo puedo investigar esto más a fondo?

Cosas que no ayudaron; Wikipedia https://en.wikipedia.org/wiki/Ps_%28Unix%29 Otro póster sobre una pregunta similar aquí no recibió respuestas; https://superuser.com/questions/723080/linuxfedora-what-does-these-stats-column-mean-for-ps-aux-command

AnneTheAgile
fuente
Su pregunta me inspiró a usar ps como este para la máxima legibilidad: ps |head n 1 && ps aux |grep my_app¡gracias!
benjaminz

Respuestas:

4

de un sistema Linux (man ps):

           D    uninterruptible sleep (usually IO)
           R    running or runnable (on run queue)
           S    interruptible sleep (waiting for an event to complete)
           T    stopped by job control signal
           t    stopped by debugger during the tracing
           W    paging (not valid since the 2.6.xx kernel)
           X    dead (should never be seen)
           Z    defunct ("zombie") process, terminated but not reaped by its parent

Adicionalmente:

           <    high-priority (not nice to other users)
           N    low-priority (nice to other users)
           L    has pages locked into memory (for real-time and custom IO)
           s    is a session leader
           l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
           +    is in the foreground process group
Sirex
fuente
Mac OS X no usa Linux y tiene una página de manual separada, que he vinculado a continuación.
hd1
2

Desde la página del manual de OSX :

ps (1)

Tabla de contenido Nombre

ps - estado del proceso

Sinopsis

ps [-aCcefhjlMmrSTuvwx] [-O fmt] [-o fmt] [-p pid] [-t tty] [-U nombre de usuario] ps [-L]

Descripción

ps muestra una línea de encabezado seguida de líneas que contienen información sobre sus procesos que tienen terminales de control. Esta información se ordena por terminal de control, luego por ID de proceso.

La información que se muestra se selecciona en función de un conjunto de palabras clave (consulte las opciones -L -O y -o). El formato de salida predeterminado incluye, para cada proceso, la ID del proceso, el terminal de control, la hora de la CPU (incluida la hora del usuario y del sistema), el estado y el comando asociado.

El sistema de archivos de proceso (ver procfs (5)) debe montarse cuando se ejecuta ps, de lo contrario no toda la información estará disponible.

Las opciones son las siguientes:

-a Muestra información sobre los procesos de otros usuarios y los suyos.

-c Cambia la salida de la columna `` comando '' para que solo contenga el nombre del ejecutable, en lugar de la línea de comando completa.

-C Cambie la forma en que se calcula el porcentaje de CPU utilizando un tiempo de raw'' cpu calculation that ignoresresidente (esto normalmente no tiene efecto).

-e Mostrar el entorno también.

-f Mostrar información de línea de comandos y entorno sobre procesos intercambiados. Esta opción se cumple solo si el uid del usuario es 0.

-h Repita el encabezado de información tantas veces como sea necesario para garantizar un encabezado por página de información.

-j Imprime información asociada con las siguientes palabras clave: usuario, pid, ppid, pgid, sess, jobc, estado, tt, hora y comando.

-L Lista el conjunto de palabras clave disponibles.

-l Muestra información asociada con las siguientes palabras clave: uid, pid, ppid, cpu, pri, nice, vsz, rss, wchan, state, tt, time y command.

-M Imprime los hilos correspondientes a cada tarea.

-m Ordenar por uso de memoria, en lugar de por ID de proceso.

-O Agregue la información asociada con el espacio o la lista separada por comas de palabras clave especificadas, después de la ID del proceso, en la pantalla de información predeterminada. Las palabras clave pueden agregarse con un signo igual (`` = '') y una cadena. Esto hace que el encabezado impreso use la cadena especificada en lugar del encabezado estándar.

-o Muestra información asociada con el espacio o la lista separada por comas de palabras clave especificadas. Las palabras clave pueden agregarse con un signo igual (`` = '') y una cadena. Esto hace que el encabezado impreso use la cadena especificada en lugar del encabezado estándar.

-p Muestra información asociada con el ID de proceso especificado.

-r Ordenar por uso de CPU actual, en lugar de por ID de proceso.

-S Cambie la forma en que se calcula el tiempo de proceso sumando todos los elementos secundarios salidos a su proceso principal.

-T Muestra información sobre los procesos conectados al dispositivo asociado con la entrada estándar.

-t Muestra información sobre los procesos conectados al dispositivo terminal especificado.

-U Muestra los procesos que pertenecen al nombre de usuario especificado.

-u Muestra información asociada con las siguientes palabras clave: usuario, pid,% cpu,% mem, vsz, rss, tt, estado, inicio, hora y comando. La opción -u implica la opción -r.

-v Muestra información asociada con las siguientes palabras clave: pid, state, time, sl, re, pagein, vsz, rss, lim, tsiz,% cpu,% mem y command. La opción -v implica la opción -m.

-w Use 132 columnas para mostrar información, en lugar del valor predeterminado, que es el tamaño de su ventana. Si la opción -w se especifica más de una vez, ps usará tantas columnas como sea necesario sin tener en cuenta el tamaño de su ventana.

-x Muestra información sobre procesos sin controlar terminales. Una lista completa de las palabras clave disponibles se enumeran a continuación. Algunas de estas palabras clave se especifican de la siguiente manera:

% cpu La utilización de la CPU del proceso; Este es un promedio en descomposición de hasta un minuto de tiempo (real) anterior. Dado que la base de tiempo sobre la que se calcula esto varía (dado que los procesos pueden ser muy jóvenes) es posible que la suma de todos los campos de% CPU exceda el 100%.

% mem El porcentaje de memoria real utilizada por este proceso. flags Los flags asociados con el proceso como en el archivo de inclusión:

P_ADVLOCK 0x00001 El proceso puede contener un bloqueo de aviso POSIX

P_CONTROLT 0x00002 Tiene un terminal de control

P_INMEM 0x00004 Cargado en memoria

P_NOCLDSTOP 0x00008 No SIGCHLD cuando los niños se detienen

P_PPWAIT 0x00010 El padre está esperando que el hijo ejecute / salga

P_PROFIL 0x00020 Ha comenzado a perfilar

P_SELECT 0x00040 Seleccionando; peligro de despertar / esperar

P_SINTR 0x00080 La suspensión es interrumpible

P_SUGID 0x00100 Había establecido privilegios de identificación desde el último ejecutivo

P_SYSTEM 0x00200 Proceso del sistema: sin señales, estadísticas o intercambios

P_TIMEOUT 0x00400 Tiempo de espera durante el sueño

P_TRACED 0x00800 Proceso depurado siendo rastreado

P_WAITED 0x01000 El proceso de depuración ha esperado al hijo

P_WEXIT 0x02000 Trabajando al salir

P_EXEC 0x04000 Proceso llamado exec

P_NOSWAP 0x08000 Otro indicador para evitar el intercambio

P_PHYSIO 0x10000 Haciendo E / S físicas

P_OWEUPC 0x20000 Owe procesa una llamada addupc () en el siguiente ast

P_SWAPPING 0x40000 El proceso se está intercambiando

lim El límite flexible de la memoria utilizada, especificado mediante una llamada a setrlimit (2). lstart La hora exacta en que se inició el comando, utilizando el formato ``% c '' descrito en strftime (3).

nice El incremento de programación del proceso (ver setpriority (2)). rss el tamaño de la memoria real (conjunto residente) del proceso (en unidades de 1024 bytes). inicio Hora a la que se inició el comando. Si el comando se inició hace menos de 24 horas, la hora de inicio se muestra con el %l:ps.1p'' format described in strftime(3) . If the command started less than 7 days ago, the start time is displayed using theformato% a6.15p ''. De lo contrario, la hora de inicio se muestra con el formato ``% e% b% y ''.

estado El estado viene dado por una secuencia de letras, por ejemplo, RWNA''. The first letter indicates the run state of the process: D Marks a process in disk (or other short term, uninterruptible) wait. I Marks a process that is idle (sleeping for longer than about 20 seconds). R Marks a runnable process. S Marks a process that is sleeping for less than about 20 seconds. T Marks a stopped process. Z Marks a dead process (azombie ''). Los caracteres adicionales después de estos, si los hay, indican información de estado adicional:

  • El proceso está en el grupo de procesos en primer plano de su terminal de control. <El proceso ha elevado la prioridad de programación de la CPU.

    El proceso ha especificado un límite flexible en los requisitos de memoria y actualmente está excediendo ese límite; dicho proceso no es (necesariamente) intercambiado. A, el proceso ha solicitado un reemplazo de página aleatorio (VA_ANOM, de vadvise (2), por ejemplo, lisp (1) en una recolección de basura).

E El proceso está intentando salir.

L El proceso tiene páginas bloqueadas en el núcleo (por ejemplo, para E / S sin formato).

N El proceso ha reducido la prioridad de programación de la CPU (ver setpriority (2)).

S El proceso solicitó el reemplazo de la página FIFO (VA_SEQL, de vadvise (2), por ejemplo, un gran programa de procesamiento de imágenes que usa memoria virtual para direccionar secuencialmente datos voluminosos).

s El proceso es un líder de sesión.

V El proceso se suspende durante un vfork.

W El proceso se intercambia.

X El proceso se está rastreando o depurando.

t Una abreviatura para el nombre de ruta del terminal de control, si lo hay. La abreviatura consiste en las tres letras que siguen / dev / tty, o, para la consola, con''. This is followed by a- '' si el proceso ya no puede llegar a ese terminal de control (es decir, se ha revocado).

wchan El evento (una dirección en el sistema) en el que espera un proceso. Cuando se imprime numéricamente, la parte inicial de la dirección se recorta y el resultado se imprime en hexadecimal, por ejemplo, 0x80324000 se imprime como 324000. Al imprimir con la palabra clave de comando, un proceso que ha salido y tiene un padre que aún no ha esperado para el proceso (en otras palabras, un zombie) aparece como <defunct>'', and a process which is blocked while trying to exit is listed as''. Ps hace una suposición educada sobre el nombre del archivo y los argumentos dados cuando el proceso fue creado al examinar la memoria o el área de intercambio. El método es inherentemente poco confiable y, en cualquier caso, un proceso tiene derecho a destruir esta información, por lo que no se puede depender demasiado de los nombres. Sin embargo, se puede depender de la palabra clave ucomm (contabilidad).

Palabras clave

La siguiente es una lista completa de las palabras clave disponibles y sus significados. Varios de ellos tienen alias (palabras clave que son sinónimos).

% de uso de CPU en porcentaje de CPU (alias pcpu)

% de uso de memoria en porcentaje de memoria (alias pmem)

comando de bandera de contabilidad acflag (alias acflg) comando y argumentos factor de uso de CPU a corto plazo de la CPU (para la programación)

marca las banderas de proceso, en hexadecimal (alias f)

gid el gid efectivo

Bloques totales inblk leídos (alias inblock)

trabajo recuento de control de trabajo

banderas de rastreo de ktrace

ktracep trazando vnode

límite de uso de memoria lim

logname nombre de usuario del usuario que inició el proceso

hora de inicio comenzó

majflt total

minflt reclamaciones totales de la página

msgrcv total de mensajes recibidos

Hay más en el enlace, me volví perezoso al formatear todo.

hd1
fuente