linux

Solo disponible en BuenasTareas
  • Páginas : 5 (1080 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de noviembre de 2014
Leer documento completo
Vista previa del texto
Los procesos en Linux ( Nivel usuario )
Después de estar un tiempo sin escribir por falta de tiempo debido a exámenes vuelvo con un tema de bastante relevancia, los procesos en Linux. Para hablar sobre los procesos voy a escribir dos artículos, en este voy a tratar los procesos de una forma mas superficial y a nivel de usuario, hablando sobre que es un proceso, los tipos de procesos que hay ylos comandos necesarios para realizar la típica administración que puede necesitar un usuario normal. En el segundo voy a tratar de profundizar mas, hablando sobre como funcionan por dentro, como se crean, sus fases y estados, ademas de las llamadas al sistema que interaccionan con estos. Dicho esto, empezamos.
¿ Que es un proceso ?
Un proceso simplemente es un programa en ejecución. Los procesosademas de la información propia del programa contienen la información necesaria para que el programa interaccione con el sistema.
Tipos de procesos
Child (hijos)
Un proceso hijo es un proceso creado por otro proceso, estos se crean mediante la llamada al sistema fork() y en realidad, todos los procesos en algún momento son hijos, todos menos el proceso init. En el caso de que un proceso seacreado mediante la shell ( ejecutado desde esta ), la shell sera el padre.
Orphan (huérfanos)
Normalmente un proceso hijo termina antes que un proceso padre, pero se puede dar la situación de que se mate a un proceso padre ( killed ) y el hijo se quede sin padre ( que crueldad ). Entonces el proceso init lo adoptara como hijo, pero como su padre original no existe, es considerado huérfano.
Daemon(demonios)
Es un tipo especial de proceso que se ejecuta en segundo plano y no esta asociado a ninguna shell. Esto se consigue matando la shell que crea el proceso, de esta forma el padre de este proceso pasa a ser el proceso init ( queda huérfano ). Estos corren con permisos de root y su cometido es proveer servicios a otros procesos.
Zombie
Cuando un proceso hijo termina, el sistema guardael PID ( Identificador )  y su estado ( un parámetro ) para dárselo a su padre. Hasta entonces el proceso finalizado entra en estado zombie. Cuando un proceso finaliza toda la memoria y recursos asociados con dicho proceso son liberados, pero la entrada del mismo en la tabla de procesos aún existe, para cuando su padre llame a la función wait() devolverle su PID y estado.
Administración deprocesos
Como ya e indicado, esta administración es la necesaria para un usuario normal, sin entrar en temas muy complejos y profundos. La administración de los procesos podemos hacerla mediante la interfaz gráfica o mediante la shell .
 Mediante Interfaz Gráfica
En el caso de la interfaz gráfica varia dependiendo la distribución, por ejemplo en Manjaro xfce ( xfce en general ) seria :
Menú ->Sistema -> Gestor de tareas
El gestor de tareas de xfce tiene el siguiente aspecto:

El gestor nos informa del PID ( Identificador del proceso ), espacio que ocupa y porcentaje del procesador que esta usando, ademas con el botón derecho sobre un proceso, podemos matarlo, terminarlo, detenerlo o cambiar su nivel de prioridad.
Para visualizar los procesos en Ubuntu accedemos al gestor mediante Sistema> Administración > Monitor del sistema. Normalmente todos los gestores ofrecen la misma información y funcionan de una manera muy similar.
Mediante la shell
Para la administración de procesos en la linea de comandos tenemos unas pocas instrucciones que nos van a ayudar con el cometido. Los comandos están dividido cuatro cometidos, visualización, terminación de procesos, cambio de prioridad yejecución en segundo plano.
Visualización de procesos
Para visualizar el estado del proceso seleccionado o de todos los procesos tenemos ps:
Comando ps
Otra alternativa para la visualización de los procesos es pstree, pstree nos muestra todos los procesos en forma de árbol.
Pero si lo que queremos es monitorizar los procesos en tiempo real disponemos del comando top, este muestra una lista...
tracking img