3. Detalles del Proceso

Antes de sumergirnos en las aplicaciones prácticas de la gestión de procesos, es esencial comprender qué son los procesos de Linux y cómo funcionan. Este tema puede parecer complejo a medida que exploramos los detalles, así que siéntete libre de volver a consultar esta lección más tarde si es necesario.

¿Qué es un Proceso de Linux

A un proceso se le llama un programa en ejecución. Más precisamente, es una instancia de un programa en ejecución al que el sistema ha asignado recursos como memoria, tiempo de CPU y E/S. Por ejemplo, si abres tres ventanas de terminal, ejecutas el comando cat en dos de ellas sin argumentos (esperará la entrada estándar, manteniendo el proceso activo) y luego usas la tercera ventana para ejecutar ps aux | grep cat, verás dos procesos cat distintos. Cada uno es una instancia separada del mismo programa, con su propio ID de proceso único y asignación de recursos.

El Papel del Kernel en la Gestión de Procesos

El kernel de Linux es responsable de toda la gestión de procesos. Cuando ejecutas un programa, el kernel carga su código en la memoria, asigna los recursos del sistema necesarios y comienza a rastrearlo como un proceso. El kernel mantiene información detallada para cada proceso, incluyendo:

  • El estado del proceso
  • Los recursos que el proceso está utilizando y recibiendo
  • El propietario del proceso
  • El manejo de señales (más sobre esto más adelante)
  • Y básicamente todo lo demás

Todos los procesos activos compiten por los recursos del sistema. El kernel actúa como un planificador (scheduler), asegurando que cada proceso reciba una parte justa de los recursos según su prioridad y necesidades. Cuando un proceso completa su tarea o es terminado, el kernel recupera los recursos que estaba utilizando, poniéndolos a disposición de otros procesos.

Inicia sesión para guardar tu progreso de aprendizaje

Iniciar sesión

Ejercicios

¡La práctica hace al maestro! Aquí tienes algunos laboratorios prácticos para reforzar tu comprensión de los procesos de Linux y su gestión:

  1. Gestionar y Monitorizar Procesos de Linux - Aprende habilidades esenciales para gestionar y monitorizar procesos en un sistema Linux, incluyendo la interacción con procesos en primer plano/segundo plano, la inspección con ps, la monitorización con top y la terminación con kill.
  2. Comando Linux top: Monitorización del Sistema en Tiempo Real - Aprende a usar el comando top para la monitorización del sistema en tiempo real, incluyendo la clasificación de procesos, el ajuste de los intervalos de actualización y el filtrado por usuario.
  3. Comando Linux free: Monitorización de la Memoria del Sistema - Aprende a usar el comando free para monitorizar y analizar el uso de la memoria del sistema, entendiendo cómo el kernel asigna recursos a los procesos.

Estos laboratorios te ayudarán a aplicar los conceptos en escenarios reales y a ganar confianza con la gestión de procesos en Linux.

Cuestionario

¿Qué gestiona y controla todos los procesos de Linux? Por favor, responde con una sola palabra en inglés, todo en minúsculas.