492 palabras
2 minutos
Trabajo Práctico Nº 3 - Gestión de Procesos

📘 1. Concepto de Proceso#

Un proceso es una instancia de un programa en ejecución.
El sistema operativo (SO) crea, controla y supervisa los procesos mediante estructuras internas.

Cada proceso:

  • Tiene atributos (estado, prioridad, derechos, etc.).
  • Compite por recursos (CPU, memoria, E/S).
  • Alterna entre ejecución activa y espera.

Desde el punto de vista del usuario, un proceso es una tarea en ejecución;
para el SO, es una entidad dinámica que requiere planificación y gestión de recursos.


⚙️ 2. El Sistema Operativo y los Procesos#

Los sistemas operativos multiprogramados se basan en procesos.
El SO debe cumplir con los siguientes requisitos:

  1. Intercalar la ejecución de procesos para optimizar la CPU.
  2. Asignar recursos sin causar interbloqueos (deadlocks).
  3. Facilitar comunicación y creación de procesos.

👥 3. Tipos de Procesos y Relaciones#

Tipos de procesos#

  • Procesos de usuario: creados a partir de órdenes o programas del usuario.
  • Procesos de sistema: parte del propio SO (gestión, planificación, E/S, etc.).

Relaciones entre procesos#

  • Competitivas: compiten por recursos.
  • Colaborativas: cooperan compartiendo datos o tareas.

Los procesos cooperativos se agrupan en familias, con relaciones padre–hijo.
Los hijos heredan atributos del padre y pueden compartir recursos entre sí.


🔄 4. Estados de un Proceso#

🧩 Modelo de dos estados#

  • Ejecución: el proceso utiliza la CPU.
  • No ejecución: está esperando su turno.

El SO utiliza una cola de procesos para gestionarlos, pero este modelo es limitado.

🧠 Modelo de cinco estados#

EstadoDescripción
NuevoDefinido, pero aún no admitido al sistema.
ListoPreparado para ejecutarse, esperando CPU.
EjecuciónUsando el procesador.
BloqueadoEsperando un recurso o evento.
TerminadoFinalizó o fue detenido por error o decisión del SO.

🔁 Transiciones principales#

  • Nuevo → Listo: el SO admite el proceso.
  • Listo ↔ Ejecución: asignación o retiro de CPU.
  • Ejecución → Bloqueado: espera de recurso o evento.
  • Bloqueado → Listo: recurso disponible.
  • Cualquier estado → Terminado: finalización.

El SO utiliza colas:

  • Cola de listos.
  • Cola(s) de bloqueados (una por evento o recurso).

Puede aplicarse un esquema FIFO o basado en prioridades.


🧮 5. Planificación de Procesos#

La planificación define el orden de ejecución para optimizar el rendimiento del sistema.
El planificador selecciona el próximo proceso según criterios de eficiencia.

🔍 Criterios de rendimiento#

CriterioDefinición
Utilización del procesadorTiempo promedio en que la CPU está ocupada.
ProductividadCantidad de trabajos completados por unidad de tiempo.
Tiempo de retorno (TR)Desde el envío hasta la finalización. TR = TS + TE
Tiempo de espera (TE)Tiempo que el proceso pasa esperando recursos o CPU.
Tiempo de respuestaEn sistemas interactivos: desde la orden hasta la respuesta. En tiempo real: desde un evento hasta su atención.

🧭 6. Tipos de Planificadores#

🕒 a) Planificador a Largo Plazo (PLP)#

  • Controla la admisión de nuevos procesos.
  • Busca mantener una carga equilibrada.
  • Decide la transición Nuevo → Listo.
  • Se ejecuta con baja frecuencia, por lo que puede usar algoritmos complejos.

⚡ b) Planificador a Corto Plazo (PCP)#

  • Decide qué proceso usa la CPU.
  • Se invoca con alta frecuencia (por interrupciones, E/S, señales, etc.).
  • Controla la transición Listo → Ejecución.
  • Su objetivo es maximizar el rendimiento del sistema.

💾 c) Planificador a Medio Plazo (PMP)#

  • Reintegra procesos suspendidos a la memoria principal.
  • Controla la transición Suspendido → Listo.
  • Mejora la eficiencia de la memoria y del procesador.

✍️ Conclusión#

La gestión de procesos es una de las funciones esenciales del sistema operativo.
Permite controlar la ejecución simultánea, la asignación de recursos y la interacción entre procesos,
buscando siempre maximizar el rendimiento y la estabilidad del sistema.