Vous êtes sur la page 1sur 5

PROCESOS Definicin: Programa o comando en ejecucin.

Caractersticas:
Un proceso consta de cdigo y datos. Tiene jerarqua de rbol (un proceso padre tiene varios procesos hijos). El sistema le asigna un identificador de proceso nico al iniciarse.

Los procesos se ejecutan:


En primer plano: Proceso iniciado por el usuario. En segundo plano: Proceso no interactivo, no necesita ser iniciado por

el usuario.
Demonio: Proceso en segundo plano siempre disponible. Este proceso

da servicios a varias tareas. Por ejemplo FTP En un sistema Linux ningn proceso es independiente de otro proceso. Slo el proceso inicial (init PID = 1) no depende de otro proceso, por lo dems todos los otros estn sujetos a un proceso padre.

La monitorizacin de procesos se puede realizar con el comando ps -ef (process status) o utilizando el comando top, estos mostrarn la actividad y estado de los procesos en el sistema. Los parmetros mostrados, reflejan el valor indicado en la variable del kernel para los procesos, los ms importantes desde el punto de vista de la monitorizacin son:

Nota: El valor nice se utiliza para calculo de prioridad. El rango para sta variable es de -20 a 20, siendo el valor ms negativo el de mayor prioridad.

Por qu nos interesa administrar los procesos? Conviene conocer aproximadamente cuales son los procesos que habitualmente se ejecutan y las caractersticas que tienen, estos varan entre las diferentes versiones de UNIX/LINUX (por instalacin, por configuracin, por opciones del sistema, etc) Para conocer estos procesos conviene ejecutar con frecuencia la orden ps, esto permite detectar si algn proceso no se ejecuta o se ejecuta incorrectamente. La mayor parte de los problemas estn relacionados con la ejecucin de una orden o aplicacin concreta y frecuentemente se trata de:
Falta de archivos o directorios, porque se han borrado o

deteriorado.
Permisos inadecuados en archivos o directorios.

Las claves para detectar los problemas relacionados con procesos son las siguientes:
Una modificacin notable en el tiempo de respuesta, y por tanto,

una baja en el rendimiento del sistema.

Terminacin prematura de procesos sin causa aparente. Actividad inusual del disco sin causa aparente.

UNIX/LINUX dispone de herramientas para eliminar o matar procesos largos o que no se ejecutan correctamente (comando kill). Si elimina un proceso, conviene recordar que, se eliminan al mismo tiempo todos sus procesos hijos o subordinados activos. Por ejemplo al eliminar un shell, se eliminan todos los procesos lanzados por l. En UNIX/LINUX a veces esto no sucede, deberemos asegurarnos de que los procesos hijos se han eliminado y si no lo tendremos que hacer nosotros. El superusuario puede eliminar cualquier proceso del sistema o de usuario, excepto los procesos 0, 1, 2, 3 y 4. Los usuarios solo pueden matar los procesos propios o los de aquellos usuarios no protegidos. En UNIX/LINUX, es posible que esta proteccin no est activa y por tanto deber ser el superusuario el que tome precauciones, ya que la eliminacin de alguno de estos procesos puede daar el sistema. El comando kill sirve para enviar seales a procesos. Si el proceso no est preparado para recibir la seal, terminar inmediatamente su ejecucin (morir). La seal 9 (SIGKILL) siempre mata al proceso. Normalmente kill se emplea para matar procesos, de ah su nombre. Lo importante es tener claro que usar Kill -9 elimina procesos esto implica que si el proceso eliminado haba generado otros procesos hijos, esos quedarn hurfanos (procesos zombies) y no tendr otra solucin que reiniciar el servidor. Lo correcto es utilizar kill -15, esta instruccin termina el proceso liberando recursos y dando trmino tambin a sus procesos hijos. El formato de kill, es: kill -15 PID PROCESO INIT El procedimiento de arranque del sistema LINUX se complica por la posibilidad de hacer entrar el sistema en diferentes estados. Es decir, el sistema puede adoptar varios modos diferentes de operacin. stos son conocidos como los diferentes estados init, debido a /etc/inittab, que es el programa responsable de mantener el sistema funcionando correctamente. Estos estados son muy diferentes unos de otros, y el sistema slo puede estar en uno de ellos en cualquier instante. Los procedimientos de desconexin y arranque controlan realmente el estado en que se encuentra la mquina- El estado ms comnmente utilizado es el llamado modo multiusuario. Este estado del sistema se utiliza para casi todas las interacciones y es el nico que permite ms de un usuario. Otro estado que fue histricamente importante, pero que ahora apenas se usa, es el llamado modo de usuario nico. Este estado es una versin multitarea del sistema UNIX, de modo que permite mltiples procesos, pero no es multiusuario. Es decir, solamente la consola del

sistema est activa cuando la mquina opera en modo de usuario nico. Generalmente es un error si el sistema entra en el modo de usuario nico Init se ejecutar segn los run levels que estn configurados. Existen 6 posibles tipos, los cuales se identifican segn un nmero. 0 Apagar el sistema 1 Monousuario sin entorno grfico, sin entorno de red 2 Multiusuario sin entorno grfico, sin entorno de red 3 Multiusuario sin entorno grfico pero con entorno de red 4 No se usa por razones histricas 5 Por defecto, Multiusuario, con entorno grfico, con red 6 Reinicio del sistema El proceso init realiza bsicamente dos funciones:
Ejecuta scripts de configuracin global del sistema rc.sysinit (se

encuentra en /etc/rc.d)
En funcin del nmero run level se va al directorio /etc/rc.d/rcn.d, y all

ejecutar todos los scripts que estn dentro de l. Los procesos que se encuentran en este directorio son los denominados demonios. Realice el siguiente ejercicio: cambio de nivel de ejecucin. Edite el archivo /etc/iittab y verifique la siguiente lnea: id:3:initdefault Esto significa que el Sistema Operativo arrancar por defecto en nivel 3, es decir, modo full multiusuario y con servicios de red. Si cambia el nmero 3 por 5, la prxima vez que ingrese en Linux, comenzar en ambiente grfico. id:5:initdefault

Vous aimerez peut-être aussi