Conviene haber comprendido Fundamentos y gestión de recursos.
Avanza en orden. Cada lección está redactada para Palta es Cool, utiliza ejemplos propios y termina con una actividad cuya respuesta puedes desplegar.
Ubícate antes de avanzar
Al terminar deberías poder relacionar Procesos y estados con Hilos y planificación y resolver un caso nuevo.
Reserva entre 35 y 55 minutos para lectura, ejemplos, tres comprobaciones y cierre.
Puedes leer desde cualquier equipo. Para los laboratorios usa una terminal Linux o WSL en Windows.
Abrir la guía de herramientas →Diagnóstico rápido: ¿cómo se relacionan Procesos y estados y Hilos y planificación? +
No necesitas acertar todavía. Escribe una hipótesis de dos líneas y compárala con tu respuesta al finalizar; si puedes corregirla y justificar el cambio, hubo aprendizaje.
Aprende el tema paso a paso
Seguirás el recorrido de un programa en ejecución y aprenderás por qué compartir CPU y datos exige planificación y sincronización.
- Un proceso es más que el archivo ejecutable
- Los procesos avanzan entre listo, ejecución y bloqueo
- Hilos y semáforos coordinan la concurrencia
Un proceso es más que el archivo ejecutable
El programa es código almacenado; el proceso es una ejecución concreta con memoria, registros, archivos abiertos y un identificador. Dos ejecuciones del mismo programa son procesos distintos.
Código: instrucciones del programa.
Contexto: registros y posición de ejecución.
Recursos: memoria, archivos, dispositivos y permisos.
¿Copiar un ejecutable al disco crea automáticamente un proceso?
Mostrar respuesta +
No. El proceso aparece cuando el sistema carga y comienza a ejecutar el programa.
Los procesos avanzan entre listo, ejecución y bloqueo
El planificador elige un proceso listo para usar la CPU. Una espera de entrada/salida lo bloquea; cuando una interrupción informa que el evento terminó, vuelve a estar listo y el planificador decide cuándo ejecutarlo.
Nuevo: se está creando.
Listo: puede ejecutar cuando reciba CPU.
Bloqueado: espera un evento; terminado: finalizó.
¿Cuál es la diferencia entre un proceso listo y uno bloqueado?
Mostrar respuesta +
El listo solo espera CPU; el bloqueado espera otro evento, como datos del disco o de la red, y no puede avanzar aunque la CPU esté libre.
Hilos y semáforos coordinan la concurrencia
Los hilos de un proceso comparten memoria. Eso reduce costos, pero dos hilos pueden modificar el mismo dato al mismo tiempo. Un mutex o semáforo protege la sección crítica.
Concurrencia: varias tareas progresan durante el mismo período.
Condición de carrera: el resultado depende del orden accidental.
Exclusión mutua: solo una tarea entra a la sección crítica.
¿Por qué no conviene proteger todo el programa con un único bloqueo?
Mostrar respuesta +
Porque impediría trabajo paralelo innecesariamente. Se protege solo el recurso y la sección donde puede aparecer la carrera.
Tu recorrido en tres ideas
- Un proceso es más que el archivo ejecutable
- Los procesos avanzan entre listo, ejecución y bloqueo
- Hilos y semáforos coordinan la concurrencia
Comprueba que puedes usarlo
Antes de continuar, revisa estos tropiezos frecuentes y resuelve un caso sin copiar los ejemplos.
Confundir el archivo del programa con una ejecución concreta.
Creer que un proceso bloqueado solo está esperando que la CPU quede libre.
Ahora hazlo sin guía
Traza los estados de un proceso que calcula, solicita un archivo, espera y luego termina.
Mostrar pauta de corrección +
- Distingue listo, ejecución y bloqueado.
- Relaciona la E/S completa con el regreso a listo.
- Señala qué decide el planificador y qué evento no depende de él.
