Sistemas operativos · Curso 5 de 15

Procesos e Hilos

Una guía práctica para comprender cómo el sistema operativo crea, ejecuta y controla los programas en ejecución. Aprende qué es un proceso y qué guarda su bloque de control, recorre sus estados y el cambio de contexto, crea procesos con fork, exec y wait, entiende los zombis y los huérfanos, programa hilos con pthreads y descubre cuándo conviene cada modelo en servidores, navegadores y videojuegos.

43
temas progresivos
C
ejemplos con fork y pthreads
Nivel intermedio
paso 5 de la ruta

Del programa al proceso

Un programa es un archivo; un proceso es un programa vivo

Mientras lees esto, tu computadora ejecuta cientos de procesos a la vez: el navegador, el escritorio, los servicios del sistema, la terminal. Cada uno cree tener la CPU y la memoria para él solo, y es el sistema operativo quien mantiene esa ilusión: los crea, les asigna recursos, los suspende, los reanuda y recoge lo que queda cuando terminan. Dentro de cada proceso, además, pueden avanzar varios hilos que comparten la misma memoria.

El curso empieza por el concepto de proceso, su imagen en memoria y el bloque de control de proceso donde el núcleo guarda todo lo que sabe de él. Sigue con los estados y el cambio de contexto, y pasa a la práctica en C con fork, exec y wait, los procesos zombis y huérfanos y los demonios. Después llegan los hilos con la biblioteca pthreads, y termina comparando ambos modelos donde la elección importa de verdad: servidores, navegadores y videojuegos.

El recorrido

Cuatro ideas que se suman

De ver un proceso en la salida de ps a decidir con criterio entre procesos e hilos en un programa real.

01

Comprender

Qué es un proceso, su imagen en memoria, el PCB, los estados y lo que ocurre en cada cambio de contexto.

02

Crear y controlar

fork, exec y wait: el patrón con el que Unix lanza programas, espera su resultado y evita zombis y huérfanos.

03

Dividir el trabajo

Hilos con pthreads: crearlos, pasarles datos, esperarlos y ver por qué compartir memoria exige cuidado.

04

Elegir

Costos, aislamiento y rendimiento de cada modelo en servidores, navegadores y videojuegos.

Ruta completa

Este curso es el paso 5 de 15

Aquí se aprende a crear y controlar procesos e hilos. En el curso siguiente se estudia cómo decide el sistema cuál de ellos usa la CPU en cada momento.

Nivel intermedio

  1. 05Procesos e Hilos
  2. 06Planificación de la CPU
  3. 07Concurrencia y Sincronización
  4. 08Gestión de Memoria
  5. 09Sistemas de Archivos y Entrada/Salida
  6. 10Comunicación entre Procesos

Nivel avanzado

  1. 11Redes desde el Sistema Operativo
  2. 12Seguridad en Sistemas Operativos
  3. 13Virtualización y Contenedores
  4. 14Rendimiento, Depuración y Observabilidad
  5. 15Construcción de un Sistema Operativo desde Cero