El término proceso es uno de los más utilizados en el ecosistema Linux. En un post anterior dimos su definición y compartimos herramientas para analizarlos. En esta oportunidad haremos un resumen de la información sobre procesos y sus datos identificatorios en Linux.
Información sobre procesos en Linux
En primer lugar, puede ser útil considerar a un proceso no solamente como un programa en ejecución. Vale la pena aclarar que si iniciamos 5 veces el mismo proceso obtendremos un PID (Process ID) diferente en cada ocasión. Además, existe un entorno alrededor del mismo formado por otros elementos en conjunto. Por ejemplo, podemos mencionar su proceso padre, el usuario y grupo bajo los cuales está corriendo, su prioridad, los archivos que utiliza, y el directorio de trabajo.
Aparte del PID que lo identifica de otros, también debemos tener en cuenta los siguientes datos sobre un proceso:
- El PPID (Parent Process ID) es el PID del proceso que lo inició. Todos los procesos tienen un padre, salvo el proceso 0. Este último es un pseudo-proceso que representa el inicio del sistema y que inicia al PID 1.
- UID (User ID) y GID (Group ID) nos indican el usuario y grupo que lo iniciaron.
- La duración y la prioridad representan el tiempo de ejecución consumido desde la última invocación, y la medida en que se le asignará tiempo de procesador, respectivamente.
- Durante su ejecución, un proceso puede utilizar ciertos archivos.
- Directorio de trabajo es el lugar dentro del sistema desde el que se inició.
Ejemplo
Tomando como muestra a mysqld (PID 943), podemos ver a continuación los puntos 1 a 3 con
ps -eo pid,ppid,uid,gid,cputime,nice | grep -E '943|PID' | grep -v grep
El 4 con
lsof -p 943
y el 5 con
pwdx 943
tal como podemos observar en la Fig. 1:
Por último, el resultado del último comando coincide con lo que nos muestra
lsof -p 943 | grep cwd
donde cwd son las siglas de current working directory.
Espero que este post les haya resultado útil. ¡Nos leemos en el próximo!
Te invitamos a conocer la propuesta completa de Carrera Linux Argentina para convertirte en un experto y completo sysadmin desde cero. En nuestro sitio web Aprender Linux podrás encontrar más detalles y contactarnos si te surgen preguntas o dudas. ¡Esperamos tu consulta!