Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Server hardware requirements.

Introduccion


Top

load average: 0.44, 0.51, 0.52

0 zombie

%Cpu(s): 9.7 us,

KiB Mem : 24504180 total, 441872 free, 5581376 used, 18480932 buff/cache

...

Abrimos una consola y simplemente ejecutamos el comando:

top

Nos va a aparecer una interfaz en modo texto que se va a ir actualizando cada 3 segundos. Muestra un resumen del estado de nuestro sistema y la lista de procesos que se están ejecutando. La salida que obtengo en mi ordenador es la siguiente:

Code Block
top - 12:50:01 up 62 days, 22:56,  5 users,  load average: 4.76, 8.03, 4.34
Tasks: 412 total,   1 running, 411 sleeping,   0 stopped,   15 zombie
Cpu(s):  6.8%us,  3.8%sy,  0.2%ni, 74.4%id, 28.2%wa,  0.1%hi,  0.5%si,  0.0%st
Mem:  20599548k total, 18622368k used,  1977180k free,   375212k buffers
Swap:  6669720k total,  3536428k used,  3133292k free, 10767256k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                     
26306 root      20   0  478m 257m 1900 S  3.9  1.3   0:08.21 nmis.pl                                                                     
15522 root      20   0  626m 373m 2776 S  2.0  1.9  71:45.09 opeventsd.pl                                                                
27285 root      20   0 15280 1444  884 R  2.0  0.0   0:00.01 top                                                                         
    1 root      20   0 19356  308  136 S  0.0  0.0   1:07.65 init                                                                        
    2 root      20   0     0    0    0 S  0.0  0.0   0:02.14 kthreadd                                                                    
    3 root      RT   0     0    0    0 S  0.0  0.0  17359:19 migration/0                                                                 
    4 root      20   0     0    0    0 S  0.0  0.0 252:25.86 ksoftirqd/0                                                                 
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0                                                                   
    6 root      RT   0     0    0    0 S  0.0  0.0   2233:33 watchdog/0                                                                  
    7 root      RT   0     0    0    0 S  0.0  0.0 340:35.60 migration/1                                                                 
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/1                                                                   
    9 root      20   0     0    0    0 S  0.0  0.0   5:23.87 ksoftirqd/1                                                                 
   10 root      RT   0     0    0    0 S  0.0  0.0 214:57.35 watchdog/1    


Es importante entender la salida del comando. El análisis línea por línea y luego en cada columna mostrada.

1. Tiempo de actividad y carga media del sistema

Code Block
top - 12:50:01 up 62 days, 22:56,  5 users,  load average: 4.76, 8.03, 4.34

En la primera línea nos muestra:

  • Hora actual.
  • Tiempo que ha estado el sistema encendido.
  • Número de usuarios (root).
  • Carga media en intervalos de 5, 10 y 15 minutos respectivamente.

2. Tareas

Code Block
Tasks: 412 total,   1 running, 411 sleeping,   0 stopped,   15 zombie

La segunda línea muestra el total de tareas y procesos, los cuales pueden estar en diferentes estados.

  • Running (ejecutar): procesos ejecutándose actualmente o preparados para ejecutarse.
  • Sleeping (hibernar): procesos dormidos esperando que ocurra algo (depende del proceso) para ejecutarse.
  • Stopped (detener): ejecución de proceso detenida.
  • Zombie: el proceso no está siendo ejecutado. Estos procesos se quedan en este estado cuando el proceso que los ha iniciado muere (padre).

3. Estados de la CPU

Code Block
Cpu(s):  6.8%us,  3.8%sy,  0.2%ni, 74.4%id, 28.2%wa,  0.1%hi,  0.5%si,  0.0%st

Esta línea nos muestra los porcentajes de uso del procesador diferenciado por el uso que se le de.

  • us (usuario): tiempo de CPU de usuario.
  • sy (sistema): tiempo de CPU del kernel.
  • id (inactivo): tiempo de CPU en procesos inactivos.
  • wa (en espera): tiempo de CPU en procesos en espera, en este ejemplo se puede visualizar que se tienen un porcentaje muy alto en este valor por lo que nos debemos de preocupar.
  • hi (interrupciones de hardware): interrupciones de hardware.
  • si (interrupciones de software): tiempo de CPU en interrupciones de software.

4. Memoria física

Code Block
Mem:  20599548k total, 18622368k used,  1977180k free,   375212k buffers
  •  Memoria total.
  • Memoria utilizada.
  • Memoria libre.
  • Memoria utilizada por buffer.

5. Memoria virtual

Code Block
Swap:  6669720k total,  3536428k used,  3133292k free, 10767256k cached  
  •  Memoria total.
  • Memoria usada.
  • Memoria libre.
  • Memoria en caché.

6. Columnas

Ahora vamos a ver las diferentes columnas que nos encontramos al ejecutar el comando.

Code Block
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                     
26306 root      20   0  478m 257m 1900 S  3.9  1.3   0:08.21 nmis.pl                                                                     
15522 root      20   0  626m 373m 2776 S  2.0  1.9  71:45.09 opeventsd.pl                                                                
27285 root      20   0 15280 1444  884 R  2.0  0.0   0:00.01 top                                                                         
    1 root      20   0 19356  308  136 S  0.0  0.0   1:07.65 init                                                                        
    2 root      20   0     0    0    0 S  0.0  0.0   0:02.14 kthreadd                                                                    
    3 root      RT   0     0    0    0 S  0.0  0.0  17359:19 migration/0                                                                 
    4 root      20   0     0    0    0 S  0.0  0.0 252:25.86 ksoftirqd/0                                                                 
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0                                                                   
    6 root      RT   0     0    0    0 S  0.0  0.0   2233:33 watchdog/0                                                                  
    7 root      RT   0     0    0    0 S  0.0  0.0 340:35.60 migration/1                                                                 
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/1                                                                   
    9 root      20   0     0    0    0 S  0.0  0.0   5:23.87 ksoftirqd/1                                                                 
   10 root      RT   0     0    0    0 S  0.0  0.0 214:57.35 watchdog/1    


  • PID: es el identificador de proceso. Cada proceso tiene un identificador único.
  • USER (USUARIO): usuario propietario del proceso.
  • PR: prioridad del proceso. Si pone RT es que se está ejecutando en tiempo real.
  • NI: asigna la prioridad. Si tiene un valor bajo (hasta -20) quiere decir que tiene más prioridad que otro con valor alto (hasta 19).
  • VIRT: cantidad de memoria virtual utilizada por el proceso.
  • RES: cantidad de memoria RAM física que utiliza el proceso.
  • SHR: memoria compartida.
  • S (ESTADO): estado del proceso.
  • %CPU: porcentaje de CPU utilizado desde la última actualización.
  • %MEM: porcentaje de memoria física utilizada por el proceso desde la última actualización.
  • TIME+ (HORA+): tiempo total de CPU que ha usado el proceso desde su inicio.
  • COMMAND: comando utilizado para iniciar el proceso.



Server configuration option.

...