¿Qué es un Proceso?

Un proceso es un programa en ejecución. Incluye el código ejecutable, datos, recursos asignados y estados del proceso. El sistema operativo es responsable de crear, gestionar y eliminar procesos, garantizando que cada uno reciba los recursos necesarios para su ejecución.

Estados de un Proceso

Nuevo
Nuevo

El proceso ha sido creado pero aún no está listo para ejecución.

Listo
Listo

El proceso está preparado para ejecutarse cuando se le asigne tiempo de CPU.

En ejecución
En ejecución

El proceso se está ejecutando en la CPU.

Bloqueado
Bloqueado

El proceso espera a que ocurra un evento (I/O, etc).

Terminado
Terminado

El proceso ha completado su ejecución o fue terminado.

Algoritmos de Planificación

FCFS
FCFS

First Come First Served: el primero en llegar es el primero en ejecutarse.

SJF
SJF

Shortest Job First: se ejecuta primero el proceso más corto.

Round Robin
Round Robin

Cada proceso obtiene una cantidad fija de tiempo (quantum) de CPU.

Prioridades
Prioridades

Los procesos con mayor prioridad se ejecutan primero.

Sincronización de Procesos

La sincronización es crucial para evitar que múltiples procesos accedan simultáneamente a recursos compartidos, lo que podría causar inconsistencias o conflictos de datos.

Semáforos
Semáforos

Mecanismo de sincronización basado en contadores.

Mutex
Mutex

Mutual Exclusion: permite acceso exclusivo a un recurso.

Deadlock
Deadlock

Situación donde dos procesos se bloquean mutuamente indefinidamente.

Condición carrera
Condición carrera

Resultado no determinístico cuando procesos acceden datos simultáneamente.


Video explicativo

Si el video no aparece, puedes buscar una opción corta en español: Resultados en YouTube.