procesos en Linux

Extracto

@pedroruizhidalg― Linux tiene una forma más completa de ejecutar los procesos si lo comparamos con otros sistemas operativos. Nuestros procesos pueden ser parados, enviados al background, traidos de nuevo al foreground, abortados, y todo ello obteniendo una lista de los procesos que tenemos en ejecución. Veamos cómo.

Abreviaturas usadas

PID, abreviatura de Process ID. Identificación del proceso.
CPU, Unidad Central de Procesos del inglés “Central Process Unit”.

Descripción

Algunas ocasiones solicitamos un proceso en el terminal de Linux y tarda más de lo que habíamos previsto. En otras ocasiones, sabemos que lo que vamos a ejecutar va a tardar un buen rato y decidimos ejecutarlo en segundo plano (a esto lo llamaremos background). Otras veces simplemente queremos detener un proceso. Llamaremos al primer plano (foreground) a lo que se está ejecutando en el terminal. Veamos cómo.

Enviar un proceso directamente al segundo plano
$ [comando de linux] &

Como podéis observar al terminar el comando en andpersand (&) le indicamos a Linux que esa orden ha de ser ejecutada directamente en segundo plano. Independientemente de la duración de ese comando, nuestro terminal debe quedar libre para seguir trabajando. Automáticamente nos saldrá un número entre corchetes y otro junto a él. Este número entre corchetes es el número de tarea que como usuarios tenemos pendientes en segundo plano. El número que hay a continuación es el número de tarea que ese comando ocupa en el sistema.

Conocer los procesos que tenemos activos como usuario.
$ jobs
Traer un proceso de background a foreground
$ fg %numero-de-proceso-usuario

Siendo el número de proceso el número que aparece con el comando “jobs” entre corchetes. Por ejemplo para pasar de background a foreground el proceso 3:

$ fg %3

Se detiene inmediatamente un proceso mediante control-c. No obstante también podemos ordenarlo conociendo su número de proceso. Lo veremos más adelante.

Un proceso tan solo puede ser parado en foreground , la forma de detener un proceso es pulsando control-Z mientras está activo en primer plano. Veamos un ejemplo. Vamos a crear un proceso largo y lo paramos así:

$ ls / -laR > qqq

Esto empezará a incluir el contenido de todos los archivos del disco duro desde la raíz en un archivo que hemos llamado qqq. La forma de detener el proceso es pulsar control-Z. Debe aparecer el siguiente mensaje:

[1]+  Detenido                ls --color=auto / -laR > qqq

En ese momento este proceso no está ni en foreground ni en background. Está detenido.

Activar en background un proceso detenido.
$ bg %numero-proceso-usuario

En el caso del comando que tenemos ahora detenido sería así:

$ bg %1

Ejecución

La orden top nos lista en tiempo real todos los procesos que están activos en el sistema, aportándonos además más información. Para más información “man top”.

$ top

Una forma de obtener una “foto fija” de los procesos activos es así:

$ ps -aux

Como verás aporta, básicamente, la misma información que top pero no en tiempo real.

Parar un proceso conociendo su numero de tarea de usuario

Si deseamos eliminar un proceso conociendo su número de tarea de usuario lo hacemos de la siguiente forma. Supongamos que deseamos eliminar la tarea 5.

$ kill %5

O bien eliminarlo inmediatamente conociendo su PID que nos aporta los comandos top o ps -aux. Supongamos que queremos eliminar el proceso 5443

$ kill -9 5443

 Epílogo

Esto puede daros bastante juego a la hora de trabajar con procesos en Linux. Deberíamos desconfiar sistemáticamente de los procesos largos, de los que ocupen mucha memoria, y de los que ocupen mucha CPU. Esta información puede ser obtenida tanto con top como con “ps -aux”. Normal mente podemos echar un vistazo a los procesos copiándolos a un archivo de la siguiente forma.

$ ps -aux > procesos
$ gedit procesos &

Espero que este artículo os haya ayudado en vuestras dudas acerca de los procesos. Estaré encantado de atender vuestros comentarios.

Si te ha parecido que este artículo es de utilidad, puedes compartirlo, dar me gusta, incluirlo en tus redes sociales, rellenar la encuesta o todo junto.

#aboutpedroruizhidalgo

♻ miotroblogsite ahorra papel
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: