Sistemas Operativos 6/9 - Gestión del Núcleo y los Procesos de los Sistemas Operativos
¿Cómo se gestiona el núcleo y los procesos en un sistema operativo?
Definición de Proceso
- Un proceso es un programa en ejecución, compuesto por una serie de instrucciones que buscan alcanzar un estado final o realizar una tarea específica.
- Cada proceso tiene su propio contador de programa, registros y variables, lo que permite la ejecución simultánea del mismo programa en múltiples instancias.
Creación de Procesos
- Existen cuatro formas principales para crear un proceso:
- Arranque del sistema.
- Ejecución desde otro proceso mediante una llamada al sistema.
- Petición deliberada para crear un nuevo proceso.
- Inicio de trabajos por lotes.
Ciclo de Vida de un Proceso
- El ciclo de vida incluye creación, ejecución y terminación. Durante este ciclo, los procesos pueden estar en diferentes estados:
- Salida normal.
- Salida por error.
- Error fatal o eliminación por otro proceso.
Estados del Proceso
- Los estados incluyen:
- Ejecutando: El proceso está utilizando el CPU.
- Bloqueado: No puede ejecutarse hasta que ocurra un evento externo.
- Listo: Está disponible para ser ejecutado cuando el CPU esté libre.
- Suspendido: Se reduce la multiprogramación al suspender temporalmente el proceso.
Planificación de Procesos
- La planificación busca repartir el tiempo del procesador entre los procesos ejecutables. Hay tres niveles:
- Corto plazo: Selecciona qué proceso listo pasa a ejecutar.
- Mediano plazo: Decide qué procesos pasan a estado suspendido o son reactivados.
- Largo plazo: Añade nuevos procesos a la lista del sistema.
Tipos de Planificación
- La planificación puede ser:
- Sin expulsión: El proceso mantiene el CPU mientras lo necesite.
- Con expulsión: El sistema interrumpe periódicamente al proceso usando un reloj.
Bloque de Control de Procesos (BCP)
- El BCP es un registro donde se agrupa toda la información necesaria sobre cada proceso. Se crea al iniciar un nuevo proceso y se elimina al finalizarlo, permitiendo reutilizar ese espacio para otros procesos.
Estrategias de Planificación
- Existen tres tipos principales:
- Planificación propia: Permite suspender temporalmente procesos ejecutables.
- Planificación nueva propia: Permite ejecutar completamente un proceso antes de pasar a otro.
- Planificación del procesador: Determina cuándo y a qué procesos se les asigna el CPU.
Niveles de Planificación del Procesador
- Los niveles incluyen:
- Alto nivel (planificación de trabajos): Determina qué trabajos compiten activamente por recursos del sistema (planificación de admisión).
- Intermedio: Responde a fluctuaciones cortas en carga y efectúa suspensiones/activaciones según rendimiento total deseado.