Procesos en linux

Solo disponible en BuenasTareas
  • Páginas : 5 (1077 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de septiembre de 2010
Leer documento completo
Vista previa del texto
Control de procesos y herramientas del sistema

El árbol de procesos
Al igual que con los archivos, todos los procesos que corren en un sistema GNU/Linux están organizados en forma de árbol. La raíz de este árbol es init. Cada proceso tiene un número (su PID, Process ID, Identificador de proceso), junto con el número de su proceso padre (PPID, Parent Process ID, Identificador del procesopadre). El PID de init es 1, y también su PPID: init es su propio padre.

Las señales

Cada proceso en Unix puede reaccionar a las señales que se le envían. La señal 15 es la señal que debe enviar a un proceso para finalizarlo normalmente. La señal 9 termina un proceso irrevocablemente, sin darle tiempo de finalizar adecuadamente. Esta es la señal que se deberá enviar a un proceso cuando el mismoestá trabado o exhibe otros problemas. Se encuentra disponible una lista completa de la señales usando el comando
kill -l.
Al enviar este comando sin un argumento se mostrarán solo los procesos iniciados por Ud. en la terminal que está utilizando:
$ ps
PID TTY TIME CMD
5162 ttya1 00:00:00 zsh
7452 ttya1 00:00:00 ps
Al igual que muchos utilitarios Unix , ps tiene una gran cantidad deopciones, y sólo veremos las más comunes:
a: también muestra los procesos iniciados por los otros usuarios;
x: también muestra los procesos sin terminal de control alguna o con una
terminal de control diferente a la que Ud. está utilizando;
u: muestra, para cada proceso, el nombre del usuario que lo inició y la hora a la cual fue iniciado.
Hay muchas otras opciones. Refiérase a la página Man para másinformación.
ps(1).
La salida de este comando está dividida en campos diferentes: el que más le interesará es el campo PID, que contiene el identificador del proceso. El campo CMD contiene el nombre del comando ejecutado.
Una forma muy común de invocar a ps es la siguiente:
$ ps aux | less
Esto le da una lista de todos los procesos que se están ejecutando corrientemente, entonces puedeidentificar uno o más procesos que estén causando problemas y, subsecuentemente, puede “matarlos”.

pstree
El comando pstree muestra los procesos en forma de estructura de árbol. Una ventaja es que Ud. puede ver inmediatamente quien es el proceso padre de otro: cuando quiere eliminar toda una serie de procesos, y si son todos padres e hijos, es suficiente matar al ancestro común. Puede usar laopción -p, que muestra el PID de cada proceso, y la opción -u que muestra el nombre del
usuario que inició el proceso. Como generalmente la estructura de árbol es grande, es más fácil invocar a pstree de la siguiente manera:
$ pstree -up | less
Esto le da una visión general de toda la estructura de árbol de los procesos.

kill, killall
Estos dos comandos se usan para enviar señales a los procesos.El comando kill necesita el número de un proceso como argumento, mientras que el comando killall necesita el nombre de un comando.
Los dos comandos opcionalmente pueden recibir el número de una señal comoargumento. Predeterminada-mente, ambos envían la señal 15 (TERM) a el o los procesos relevantes. Por ejemplo, si quiere matar el proceso con PID 785,

Ud. ingresa el comando:
$ kill 785
Siquiere enviarle la señal 9, entonces ingresa:
$ kill -9 785
Supongamos que quiere matar un proceso del cual Ud. conoce el nombre del comando. En vez de encontrar el número de proceso usando ps, puede matar el proceso directamente:
$ killall -9 netscape
Pase lo que pase, sólo matará a sus propios procesos (a menos que Ud. Sea root), por lo que no debe preocuparse acerca de los procesos “delvecino” que tienen el mismo nombre, ellos no serán afectados.

Usando el control de trabajos

Control de trabajos se refiere a la habilidad de poner procesos (esencialmente, otra palabra para programas) en background (segundo plano) y ponerlos de vuelta en foreground (primer plano). Esto es como decir, que se quiere ser capaz de ejecutar algo mientras se hacen otras cosas, pero que estén ahí...
tracking img