Sistemas operativos

5. Gestión de procesos

Un proceso es un programa en ejecución, incluyendo:

  • El código del programa.
  • Sus datos y variables.
  • Los recursos asignados (CPU, memoria, archivos, dispositivos).

👉 Ejemplo: abrir Google Chrome crea un proceso (o varios, uno por pestaña).

El sistema operativo debe controlar qué procesos se ejecutan, cuándo y cómo, para garantizar que el ordenador funcione de forma ordenada y eficiente.


🔹 Funciones de la gestión de procesos

  1. Creación y finalización de procesos

    • Al ejecutar un programa, el SO crea un proceso.
    • Al cerrarlo, libera todos sus recursos.
  2. Planificación (scheduling)

    • Decide qué proceso usa la CPU en cada momento.
    • El objetivo: repartir el tiempo de forma justa y eficiente.
  3. Cambio de contexto (context switch)

    • Cuando el SO interrumpe un proceso para ejecutar otro, guarda el estado del primero y carga el del segundo.
    • Esto da la ilusión de que todos funcionan a la vez (multitarea).
  4. Comunicación entre procesos (IPC, Inter-Process Communication)

    • Los procesos pueden intercambiar datos mediante tuberías (pipes), colas de mensajes o memoria compartida.
  5. Sincronización

    • Coordina procesos que dependen unos de otros, evitando errores (ej. dos procesos escribiendo en el mismo archivo a la vez).

🔹 Estados de un proceso

Un proceso no siempre está ejecutándose, puede estar en distintos estados:

  • Nuevo: acaba de crearse.
  • Listo (ready): esperando a que la CPU lo ejecute.
  • En ejecución (running): usando la CPU en ese momento.
  • Bloqueado (waiting): esperando un recurso (ej. lectura de disco).
  • Terminado: ya ha finalizado.

👉 El sistema operativo mantiene una tabla de procesos (Process Control Block, PCB) con toda la información de cada proceso.


🔹 Tipos de procesos

  • De usuario: aplicaciones normales (navegador, editor de texto, juegos).
  • Del sistema: procesos internos del SO (ej. demonios en Linux o servicios en Windows).

🔹 Ejemplo práctico

Si abres Word y empiezas a imprimir:

  1. Se crea un proceso para Word.
  2. El SO le asigna memoria y CPU.
  3. Cuando envías a imprimir, se bloquea un momento hasta que la impresora responde.
  4. El SO mantiene a otros procesos (Spotify, navegador) activos mientras tanto.

📌 Resumen rápido

  • El proceso es un programa en ejecución.
  • El SO controla su creación, ejecución y finalización.
  • Hay estados (nuevo, listo, ejecución, bloqueado, terminado).
  • Usa planificación para repartir la CPU.
  • Permite comunicación y sincronización entre procesos.
  • Loading...