Procesos

De Guía Ubuntu
Saltar a: navegación, buscar

Un proceso es un programa o servicio normalmente en estado de ejecución o que esta siendo utilizado por Ubuntu. Por ejemplo, si estas navegando con Firefox, tendrás un proceso en ejecución en el mismo momento en tu sistema.

Mostrando los procesos

Para ver los procesos y sus estados existen diversas aplicaciones.

  • Con interface gráfica: gnome-system-monitor

Es una utilidad de gnome que muestra los procesos y permite monitorizar el estado del sistema. Para ejecutar la aplicación hay que ir a Sistema -> Administración -> Monitor del sistema o basta con introducir en el terminal:

$ sudo gnome-system-monitor 
  • En consola o Terminal: top

Es el equivalente al Monitor del sistema en la línea de comandos. Muestra una lista de procesos que se pueden ordenar de diferentes formas.

$ sudo top

Permite realizar diferentes acciones sobre cada uno de ellos como matarlo o cambiar su prioridad. Para más información leer la página del manual de top.

  • En consola o Terminal: ps

El comando ps es el mejor modo de mostrar los procesos que se encuentran activos. Para ver todos los procesos activos con todos los detalles basta con abrir un terminal y teclear:

$ sudo ps -AF

Esto mostrará un listado con la siguiente información:

UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD

Finalizar un proceso

Nota advertencia.png Finalizar un proceso activo puede llevar a pérdidas de información y/o a la inestabilidad del sistema si no se conoce el proceso que se finaliza.

Utilizando el monitor del sistema.

Para abrir el monitor del sistema puedes acceder directamente desde los menús (Sistema -> Preferencias -> Monitor del sistema) o escribir en el terminal:

$ gnome-system-monitor

Basta con seleccionar el proceso a finalizar y presionar el botón: finalizar proceso

En consola o Terminal utilizando el comando kill y killall.

Para finalizar un proceso mediante la consola, es preciso conocer el número de identificación del proceso (PID). Para conocer el número basta con:

1. Listar los procesos:

$ sudo ps -AL

2. Buscar el proceso a finalizar y memorizar el número de la columna PID.

Una vez conocido el PID basta con ejecutar en un terminal:

$ sudo kill [PID]

Es conveniente comprobar que el proceso ha finalizado y ya no se encuentra en ejecución.

Puede suceder en ocasiones que algun proceso no finalice luego de haber ejecutado kill. En estos casos se puede intentar finalizarlos con el comando kill y una señal "mas fuerte" que fuerza a los procesos a terminar mas allá de su voluntad:

$ sudo kill -9 [PID]

Suele ocurrir que al listar los procesos activos el que se desea finalizar tiene distintas instancias abiertas, es decir, dispone de varias PID y para finalizarlo se necesitaría utilizar varias veces el comando kill. El comando killall se utiliza para finalizar todos los procesos que abre un comando. Como se puede suponer, al disponer de distintas PID no es ésta la que se le debe indicar al comando killall sino el nombre del proceso. Este nombre viene dado en el listado de procesos como CMD; entonces:

$ sudo killall [CMD]

Mediante el comando xkill.

El comando xkill es una utilidad para forzar el Servidor X a cerrar conexiones. Este comando se puede utilizar como el comando kill:

$ sudo xkill -id  [PID]

La ventaja de este comando es que se puede utilizar sin necesidad de PID, ya que si se introduce en el terminal:

$ xkill

El cursor se cambiará a una calavera y la aplicación matará (finalizará) el proceso que controle la ventana donde se haga click con la calavera.

El concepto "carga del sistema" (Load Average)

La carga del sistema es la media de trabajos en cola durante un tiempo determinado. En Linux estos tiempos son 1, 5 y 15 minutos. En otras palabras, la carga del sistema para un minuto N es el número de procesos compitiendo por el uso de la CPU en un momento dado, promediada sobre los N minutos.

La carga mínima de un sistema es de 0 y la máxima es ilimitada, aunque raramente excede de 20, e incluso más de 10 es poco usual. Sin embargo he administrado sistemas en los que algún proceso se ha ido demasiado, ¡¡¡llegando a una carga de 80!! Una carga de 1 ó 2 es lo típico. Menos de 1 es lo ideal.

Para ver la carga de nuestro sistema podemos usar el comando top:

$ top

Que muestra algo similar a esto (al final de la primera línea se ven los tres números de la carga):

top - 11:11:42 up  2:22,  5 users,  load average: 0.08, 0.36, 0.61
Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu(s): 15.2% us,  0.7% sy,  0.0% ni, 83.8% id,  0.0% wa,  0.3% hi,  0.0% si
Mem:    515744k total,   463016k used,    52728k free,    13012k buffers
Swap:   979956k total,    13292k used,   966664k free,   119344k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11434 perico    15   0 32248  13m 8800 S 13.9  2.7   0:12.16 gnome-terminal
 7122 root      15   0 62564  48m 9516 S  1.3  9.6  11:13.49 Xorg
15542 perico    16   0  2132 1116  844 R  0.7  0.2   0:00.04 top
    1 root      16   0  1564  532  460 S  0.0  0.1   0:01.50 init
    2 root      34  19     0    0    0 S  0.0  0.0   0:00.01 ksoftirqd/0
    3 root      10  -5     0    0    0 S  0.0  0.0   0:00.20 events/0
    4 root      10  -5     0    0    0 S  0.0  0.0   0:00.02 khelper


Ver también

Enlaces externos