miércoles, 14 de octubre de 2015

Cómo funciona un proceso

Cuando un sistema arranca, el kernel inicia, como procesos, algunas de sus actividades y arranca un programa llamado init. init, a su vez, ejecuta una serie de scripts de shell (localizados en /etc) llamados init scripts, que arrancan todos los servicios del sistema. Muchos de estos servicios son implementados como daemon programs (demonios), programas que simplemente se sitúan en segundo plano y hacen su trabajo sin tener ninguna interfaz de usuario. Así que incluso sin que estemos logueados, el sistema está un poco ocupado haciendo tareas rutinarias.

El hecho de que un programa pueda arrancar otros programas se expresa en el esquema de procesos como procesos padres (parent process) produciendo procesos hijos (child process).

El kernel mantiene información sobre cada proceso para ayudar a tener las cosas organizadas. Por ejemplo, cada proceso tiene asignado un número llamado process ID o PID. Los PIDs son asignados en orden creciente, con init siempre ocupando el PID 1. El kernel también mantiene un registro de la memoria asignada a cada proceso, así como la disponibilidad de los procesos para reanudar la ejecución. Como los archivos, los procesos también tienen propietarios e IDs de usuario, IDs efectivas de usuarios, etc.

No hay comentarios:

Publicar un comentario