Documente Academic
Documente Profesional
Documente Cultură
Presentado a
Samir castao
Presentado por
Facultad de ingenieras
Universidad de Crdoba
Montera
2016
MANEJO DE GESTIN DE PROCESOS EN GNU/LINUX
Para empezar a hablar sobre la gestin de procesos en Gnu/Linux definiremos los que es la
gestin de un proceso, como primera parte gestin es administrar, dirigir y un proceso dentro de
los sistemas es una instancia de un programa en ejecucin, con estas definiciones podemos dar
una definicin de lo que es la gestin de procesos en los sistemas Gnu/Linux.
PROCESS ID (PID): Cada proceso tiene un nmero asociado que se le asigna cuando es creado. Los
PIDs son nmeros enteros nicos para todos los procesos sistema.
USER ID & GROUP ID: Cada proceso tiene que tener asociado unos privilegios que limiten el
acceso al sistema de ficheros. Estos privilegios quedan determinados por el user ID y group ID del
usuario que creo el proceso.
PARENT PROCESS: Todo proceso es creado por otro proceso, el proceso padre (parent process). El
primer proceso iniciado por el kernel cuando el sistema arranca es el programa init. Este proceso
tiene el PID 1 y es el padre de todos los procesos del sistema.
PARENT PROCESS ID: El PID del proceso que inici el proceso hijo.
ENVIROMENT: Cada proceso mantiene una lista de variables y sus correspondientes valores. El
conjunto de estas variables recibe el nombre de process enviroment. Normalmente el entorno de
un proceso hijo se hereda del proceso padre a menos de que se indique de otra forma.
CURRENT WORKING DIRECTORY: Cada proceso tiene asociado un directorio por defecto, donde el
proceso leer/escribir archivos, a menos que se le especifique explcitamente lo contrario.
A continuacin daremos una definicin de lo que son las archivos y directorios virtuales para dejar
ms claro el tipo de directorio que es el directorio de almacenamiento de procesos que por lo
dicho anteriormente es virtual, cuando se habla de virtual se quiere decir en este caso que existe
de manera aparente pero no es real, esto sucede con los archivos y directorios virtuales existen en
la medida que el SO arranque, este tipo de archivos no estn guardados en disco si no en la
memoria temporal de nuestra computadora que durante su funcionamiento dichos archivos y
directorios son creados para el intercambio de informacin y almacenamiento de la misma toda
esta informacin de los procesos en ejecucin la podemos ver simultnea al trabajo del kernel
como lo dijimos anteriormente teniendo en cuenta que esa informacin existir durante el tiempo
que el proceso se ejecute o que el SO est en funcionamiento ya que este tiempo de
funcionamiento es el mismo tiempo en el cual los archivos y directorios virtuales existen en el
sistema.
Dentro de toda esta temtica cabe resaltar que importante es saber cmo manipular los procesos
que se dan en nuestro ncleo o kernel, ahora pasaremos a mostrar los comandos utilizados en
esta tarea de manipulacin de procesos.
Opciones:
-a Incluye en el rbol de procesos la lnea de comandos que se us para iniciar el
proceso.
-c Deshabilita la unin de procesos hijos con el mismo nombre (replicas de un
mismo proceso).
-G Usa los caracteres de lnea para dibujar el rbol. La representacin del rbol es
ms clara, pero no funciona al redireccionar la salida.
-h Remarca la jerarqua del proceso actual (normalmente el terminal). No funciona
al reedireccionar la salida.
-n Por defecto los procesos con mismo padre se ordenan por el nombre. Esta
opcin fuerza a ordenar los procesos por su PID.
-p Incluye el PID de los procesos en el rbol.
TOP
Sintaxis: top [opciones]
El comando top ofrece una lista de los procesos similar al comando ps, pero la
salida se actualiza continuamente. Es especialmente til cuando es necesario
observar el estado de uno o ms procesos o comprobar los recursos que
consumen.
Opciones:
-i Ignora los procesos inactivos, listando nicamente los que utilizan recursos del
sistema.
-d Especifica el ritmo de actualizacin de la pantalla en segundos. Es posible
especificar decimales.
Ordenes interactivas:
h Muestra una pantalla de ayuda.
q Sale del programa.
k Kill. Permite detener un proceso.
r Renice. Permite alterar la prioridad de un proceso.
2. ORDEN KILL A PROCESOS
KILL
Sintaxis: kill [-s sigspec | sigspec] [PID]
El comando kill permite enviar un mensaje arbitrario a un proceso, o varios, con
un PID igual a pids. El parmetro sigspec es el valor entero de la seal o el nombre
de la seal que enviaremos al proceso.
El valor de sigspec se puede especificar en minsculas o maysculas, pero
normalmente se especifica en maysculas. Para especificar el tipo de seal se
pueden usar s sigspec o simplemente sigspec. Si se omite sigspec en el comando
kill, se toma por defecto el valor SIGTERM (seal 15, salir de manera correcta).
El valor de pids tendremos que averiguarlos utilizando la orden ps.
KILLALL
Sintaxis: killall [-s sigspec | sigspec] nombre_proceso
Esta orden es ligeramente diferente a la orden kill por dos motivos; en primer
lugar utiliza el nombre de proceso en lugar del pid, adems le enva la seal a
todos los procesos que tengan el mismo nombre. Por lo dems, su
comportamiento es idntico, por lo que seran equivalentes:
$ kill -HUP 1 $ killall -HUP init
al haber un nico proceso init, con pid igual a 1.
En la monitorizacin de procesos nos encontramos con dos comandos que son muy importantes a
la hora de entender como estn funcionando nuestros procesos, estos dos monitores son el htop
y el atop.
COMANDO HTOP:
El htop es un monitor de procesos que nos deja ver cuantos procesos tenemos en nuestro
sistema, adems nos da todas las opciones habituales a la hora de trabajar en la gestin de
procesos del sistema. Htop nos muestra todas las caractersticas de todos y cada uno de los
procesos que se encuentran vigentes en nuestro sistema.
Para poder usar este comando tenemos que instalarlo ya que no viene por defecto en ninguno de
los sistemas de la distribucin deban, para esto utilizaremos el siguiente comando.
Al ingresar este comando nos pedir que insertemos nuestra contrasea de sper usuario, la
digitamos y empezara la instalacin del htop, cuando termine la instalacin ya podremos ejecutar
nuestro monitor de procesos htop.
Parte superior:
En la parte izquierda encontramos los nmeros 1, 2, 3 y 4 lo que corresponde a los diferentes
ncleos de nuestra CPU y en frente de cada uno podemos ver el uso que est recibiendo cada uno
de ellos.
Tambin podemos ver el uso de la memoria RAM y el uso de la memoria de intercambio SWAP.
Parte intermedia:
Podemos observar que hay 12 columnas las cuales nos dan informacin acerca de cada uno de los
procesos:
PID: es el identificador del proceso, este nmero es nico para cada proceso no existen dos
procesos con el mismo PID.
S: indica el estado de un proceso (running (R) : Procesos que estn en ejecucin, sleeping (S) :
Procesos que estn esperando su turno para ejecutarse, zombie (Z) : Procesos que han terminado
pero que siguen apareciendo en la tabla de procesos).
Parte inferior:
Es esta seccin nos encontramos con 10 opciones que nos brinda htop para interactuar con los
procesos de nuestro sistema.
F1Help: nos muestra la ayuda que nos ofrece el monitor de procesos htop.
F2Setup: nos muestra las diferentes configuraciones que podemos realizar en nuestro monitor de
proceso, por ejemplo cambiar lo que se quiere mostrar, de qu forma y con qu colores.
F4Filter: sirve para cambiar la opcin de filtrado, es muy til cuando buscamos un grupo de
procesos especficos.
F5Tree: organiza los proceso en forma de rbol ya que aunque cada proceso es independiente
existen proceso que se generan por parte de otro proceso los cuales son llamados procesos hijos y
los que los generan son llamados procesos padres.
F6SortBy: nos sirve para cambiar la columna por la cual se ordenan los procesos.
F7Nice-: nos sirve para disminuir la prioridad de atencin que tiene un proceso.
F8Nice+: nos sirve para aumentar la prioridad de atencin que tiene un proceso.
COMANDO ATOP: atop es un monitor que es capaz de dar informacin acerca de todos los
procesos del sistema aun cuando estos terminen su proceso en el intervalo de tiempo en el que
tomo el registro este intervalo viene por defecto en 10 segundos por lo tanto cada 10 segundos
tendremos una nueva muestra, lo que hace atop es que toma una muestra del consumo de
recursos del sistema y de los procesos que se encuentran en el sistema en un intervalo de tiempo
y lo muestra por pantalla.
Cuando ya est instalado podremos ejecutarlo tan solo con escribir atop en nuestra terminal y
presionar enter.
Al ejecutar este comando se inicia la contabilidad de procesos en el ncleo lo cual permite que el
ncleo enve informacin cada vez que termina un proceso, adems nos aparecer la siguiente
ventana donde atop nos muestra la informacin detallada de cada uno de los procesos.
Estando dentro del atop podemos interactuar con los procesos mediante el teclado.
k: al presionar esta tecla el atop nos pide el PID de proceso que queremos matar.
Tambin es posible visualizar los procesos de atop ordenados de diferentes formas y mostrando
solo algunas de sus caractersticas ejecutando en la terminal alguno de los siguientes comandos.
atop a: nos muestra solo los procesos que se encuentren procesos activos.
atop c: nos mostrara solo el PID del proceso seguido del uso de CPU y el comando con el cuan se
puso en marcha este proceso.
atop -d: nos muestra los procesos ordenados por consumo de disco.
atop -u: nos muestra la cantidad de procesos que est ejecutando cada uno de los usuarios del
sistema.
Estos son solo algunos de los comandos ms importantes a la hora de monitorear procesos con
atop, para mayor informacin podemos ejecutar el comando (man atop) y nos aparecer una
descripcin de atop y las diferentes formas de interactuar con este monitor de procesos
REFERENCIAS
James, H. (13 de 08 de 2014). Hayden James Linux Systems Analyst | DBA. Recuperado el
25 de 04 de 2016, de http://haydenjames.io/use-atop-linux-server-performance-analysis/