Articulo de referencia

software superior

top es un programa de gestión de tareas o monitorización del sistema , presente en muchos sistemas operativos tipo Unix , que muestra información sobre la utilización de la CPU ...

top es un programa de gestión de tareas o monitorización del sistema , presente en muchos sistemas operativos tipo Unix , que muestra información sobre la utilización de la CPU y la memoria.

Descripción general

El programa genera una lista ordenada de procesos en ejecución seleccionados según criterios definidos por el usuario y la actualiza periódicamente. El orden predeterminado es por uso de CPU, y solo se muestran los procesos que más consumen (de ahí su nombre). top muestra la cantidad de potencia de procesamiento y memoria que se están utilizando, así como otra información sobre los procesos en ejecución. Algunas versiones de top permiten una amplia personalización de la visualización, como la elección de columnas o el método de ordenación. top es útil para los administradores de sistemas , ya que muestra qué usuarios y procesos consumen la mayor cantidad de recursos del sistema en un momento dado.

Top en Linux con preferencias modificadas para una mejor visualización.

Implementaciones

Existen varias versiones diferentes de top. La versión tradicional de Unix fue escrita por William LeFebvre y registrada originalmente en 1984. [ 1 ] Está alojada en SourceForge , [ 2 ] y la versión 3.7 se anunció en 2008. [ 3 ]

La versión de top para Linux forma parte del grupo de herramientas procps-ng . Fue escrita originalmente por Roger Binns [ 4 ] y lanzada a principios de 1992, pero poco después fue retomada por otros. [ 5 ]

En Solaris , el programa prácticamente equivalente es prstat. Microsoft Windows cuenta con el comando tasklist y la utilidad gráfica Administrador de tareas . IBM AIX dispone de una lista de procesos en ejecución que se actualiza automáticamente mediante los comandos topas y topas_nmon .

En Linux, la carga promedio se refiere a la suma del número de procesos en espera en la cola de ejecución más el número de procesos que se están ejecutando actualmente. Este valor es absoluto, no relativo, por lo que puede ser ilimitado , a diferencia de la utilización. Las variaciones instantáneas del número de procesos se amortiguan mediante una fórmula de decaimiento exponencial que se calcula utilizando aritmética de punto fijo . [ 6 ]

El programa ps es similar a top, pero en lugar de eso, produce una instantánea de los procesos tomada en el momento de su ejecución. La opción n (número de iteraciones) de top puede producir un resultado similar, haciendo que el programa ejecute el número de iteraciones especificado y luego finalice después de imprimir su salida.

Ejemplo

Las primeras 5 filas ofrecen una visión general de todo el sistema.

top - 14:21:23 arriba 2 días, 21:40 , 44 usuarios , carga promedio : 14.44, 14.13, 14.64 Tareas : 1552 total, 8 en ejecución, 1544 durmiendo, 0 detenidos, 0 zombie %Cpu(s) : 9.6 us , 0.7 sy , 0.0 ni , 89.5 id , 0.0 wa , 0.0 hi , 0.2 si , 0.0 st MiB Mem : 1031911.+total, 368915.2 libre, 172285.0 usado, 490711.5 buff/cache MiB Swap : 2048.0 total, 2048.0 libre, 0.0 usado. 807110.1 disponible Mem 
load average
Promedio móvil exponencial de la longitud de la cola de ejecución durante los últimos 1/5/15 minutos. La cola de ejecución incluye tanto los procesos que se están ejecutando como los que esperan ser ejecutados. Con una utilización completa y sin cambio de tareas, la carga promedio es igual al número de CPU. [ 7 ]
Tasks
cuenta los procesos y sus estados.
%Cpu(s)
Calcula el porcentaje de uso de la CPU, desglosado por categorías.
MiB Mem
Uso de memoria en unidades de mebibyte . Esto buff/cachese refiere a la memoria utilizada por los búferes y la caché .
MiB Swap
Uso del espacio de intercambio en unidades de mebibyte . Si el sistema necesita más recursos de memoria y la RAM está llena, las páginas inactivas en la memoria se mueven al espacio de intercambio. En esta instantánea, hay un total de2048 MiB  de espacio de intercambio, todo libre, lo que indica que no se está produciendo ningún intercambio, lo cual es bueno para el rendimiento.
avail Mem
Cantidad de memoria disponible para nuevas aplicaciones, sin intercambio de memoria. Esto considera no solo la RAM no utilizada, sino también la memoria que se puede recuperar de las cachés de RAM.

El resto del texto proporciona una tabla donde cada fila es un proceso , con las siguientes columnas que se utilizan con frecuencia de entre muchas columnas posibles (la elección y el orden de las columnas son configurables): [ 8 ]

PID USUARIO PR NI VIRT RES SHR S %CPU %MEM TIEMPO+ COMANDO 1 raíz 20 0 2456 1612 1500 S 0.0 0.0 0:00.07 init(Ubuntu) 4 raíz 20 0 2456 4 0 S 0.0 0.0 0:00.00 inicialización 656403 usuario2 20 0 80.0g 3.6g 370000 S 100.0 0.4 1594:38 python3 2024198 longnam+ 20 0 50.5g 4.7g 609200 S 1.6 0.5 204:46.85 long-name-proc 2056804 longnam+ 20 0 237.1g 31.1g 23.1g S 136.8 3.1 69:54.11 python3 
PID
ID de proceso , un número único que identifica cada proceso en ejecución.
USER
El usuario que inició el proceso. Si el nombre de usuario es demasiado largo, se trunca con un +al final.
PR
Prioridad en tiempo real de la tarea, calculada por el planificador del sistema. Los números de prioridad más bajos se consideran más importantes para el planificador y tienen más probabilidades de ser programados, lo que significa que tienden a tener más tiempo de CPU por unidad de tiempo real.
NI
La prioridad de la tarea, definida manualmente por usuarios y administradores, influye en su valor en tiempo real. Un valor menor tiende a favorecer el proceso, mientras que un valor mayor tiende a perjudicarlo. Su rango va de -20 (la más favorecida) a 19 (la menos favorecida).
VIRT
Tamaño de la memoria virtual del proceso. Esto incluye toda la memoria a la que el proceso puede acceder, incluida la memoria que se intercambia, la memoria que se asigna pero no se utiliza y la memoria compartida.
RES
Tamaño del conjunto residente , la porción de la memoria de un proceso que se mantiene en la RAM. En comparación con , esto excluye la memoria que se intercambia, que aún no se usa o que se comparte.VIRT
SHR
Tamaño de la memoria compartida : qué cantidad de la RAM solicitada por el proceso puede ser compartida con otros procesos.
S
Estado del proceso. El estado puede ser:
%CPU
El porcentaje del tiempo de CPU que el proceso está utilizando actualmente.
%MEM
El porcentaje de la RAM física utilizada por el proceso.
TIME+
El tiempo total de CPU que la tarea ha utilizado desde su inicio. Esto se muestra en minutes:seconds. El signo más en TIME+indica que la precisión es de 0,01 segundos. Si muestra , TIMEla precisión es de 1 segundo.
COMMAND
El argumento de la línea de comandos que inició el proceso. A diferencia de USER, si el comando es demasiado largo, se corta sin un +al final.

Véase también

Referencias

  1. "Documentación" . Unix Top . Archivado del original el 13 de abril de 2008. Consultado el 22 de mayo de 2016 .
  2. LeFebvre, William (16 de septiembre de 2014). "Acerca de Top" . Unix Top . Archivado del original el 20 de abril de 2004. Consultado el 22 de mayo de 2016 .
  3. "Inicio / Noticias" . SourceForge . Consultado el 22 de mayo de 2016 .
  4. "top(1): tasks - Linux man page" . Documentación de Linux . Consultado el 22-05-2016 .
  5. Binns, Roger. "Linux Top Origins | Roger's world" . Roger's world . Consultado el 22 de mayo de 2016 .
  6. J. Gunther, Neil (2010). "UNIX Load Average Part 2: Not Your Average Average" (PDF) . teamquest.com. Archivado del original (PDF) el 2 de junio de 2012. Consultado el 10 de junio de 2013 .
  7. Walker, Ray (1 de diciembre de 2006). "Examinando la carga promedio" . Linux Journal . Recuperado el 13 de marzo de 2012 .
  8. top(1) - Página man de Linux
  • top(1) Manual de comandos generales de FreeBSD 
  • top(1) Manual de comandos generales de OpenBSD 
  • top(1) Manual de usuario de Linux – Comandos de usuario de Manned.org 
  • "Decodificado: La principal utilidad (procps)" . www.maizure.org . Consultado el 11 de febrero de 2024 .. Un análisis profundo de la mecánica de top.
  • James, Hayden (18 de septiembre de 2019). "Cómo personalizar el comando top de Linux" . www.redhat.com . Consultado el 11 de febrero de 2024 .