ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Algoritmos de planificación

alixndInforme15 de Septiembre de 2025

1.093 Palabras (5 Páginas)36 Visitas

Página 1 de 5

¿Qué son los Algoritmos de Planificación?

Los algoritmos de planificación son técnicas usadas por el sistema operativo para llevar a cabo la ejecución de procesos, la función de estos algoritmos es decidir el proceso mediante el cual se ejecutará en cada momento, teniendo en cuenta los criterios correspondientes.

Son herramientas valiosas para gestionar y analizar los recursos y el tiempo que requiere un proceso, conjunto o incluso otro algoritmo para llevar a cabo una tarea específica. En algunos casos, la CPU puede verse en la necesidad de determinar qué proceso debe priorizar sobre otro.

¿Para Qué Sirven los Algoritmos de Planificación?

El objetivo es optimizar el rendimiento del sistema, reduciendo al mismo tiempo los tiempos de espera y respuesta de los procesos.

El sistema operativo debe considerar factores como la prioridad, el tiempo de ejecución y el

tiempo de espera al decidir qué proceso ejecutar; Un algoritmo de planificación eficiente mejora el rendimiento, mientras que uno ineficiente puede causar demoras y sobrecargar el sistema.

Tipos de Algoritmos de Planificación

En el laboratorio nos enfocaremos en estos tres algoritmos de planificación:

  • FIFO (First In, First Out): Es el algoritmo mas simple, el primer proceso que llega, será el primero en ser ejecutado.
  • SJF (Shortest Job First): Selecciona el proceso con un tiempo de ejecución mas corto para ejecutarlo primero.
  • Round Robin (RR): asigna un tiempo de ejecución fijo a cada proceso y cuando el proceso se ejecute, si no termina dentro de ese tiempo, se mueve al final.

SJF (Shortest Job First):

Función calcular_tiempos_espera_respuesta Inicialización:

  • Se crean dos listas, tiempo_espera y tiempo_respuesta, llenas de ceros, que se utilizarán para almacenar el tiempo de espera y el tiempo de respuesta de cada proceso.

  • tiempos_restantes se inicializa con los tiempos de ejecución de los procesos, es decir, el tiempo que falta para que cada proceso termine.

  • terminado es una variable que cuenta cuántos procesos han finalizado hasta el momento.
  • tiempo_actual es el tiempo global de ejecución, que aumenta conforme los procesos van avanzando.
  • tiempo_minimo se utiliza para encontrar el proceso que tiene el menor tiempo de ejecución restante y que está listo para ejecutarse.

Bucle principal:

El bucle while sigue corriendo hasta que todos los procesos hayan sido completados. Dentro de este bucle:

  • Se busca el proceso con el menor tiempo restante de ejecución que esté listo para ejecutarse. Para ello, se recorre la lista de procesos y se selecciona el que tenga el menor tiempo de ejecución restante, siempre que ya haya llegado (es decir, que su

tiempo de llegada sea anterior o igual al tiempo actual) y que no esté marcado como completado.

  • Si no hay procesos listos para ejecutarse (es decir, todos los procesos aún no han llegado o no están listos), simplemente se incrementa el tiempo_actual y el bucle continúa sin ejecutar ningún proceso.

  • Si hay un proceso listo, se reduce su tiempo de ejecución restante en 1.
  • Cuando un proceso termina (es decir, cuando su tiempo restante llega a 0), se marca como completado, y se calculan los siguientes tiempos:
  • Tiempo de espera: Es el tiempo que un proceso estuvo esperando antes de su

ejecución. Se calcula como la diferencia entre el momento de finalización y el tiempo de llegada del proceso, restando también el tiempo de ejecución.

  • Si el tiempo de espera resulta negativo (lo cual indicaría que el proceso se completó antes de lo que se esperaba), se ajusta a 0.

  • Tiempo de respuesta: Es el tiempo total que un proceso tardó desde que llegó hasta que terminó su ejecución. Se calcula como la suma del tiempo de espera y el tiempo de ejecución.

Reinicio de variables:

Después de cada iteración del bucle, las variables tiempo_minimoy**prproceso_seleccionado se restablecen para poder usarse correctamente en la siguiente ronda de ejecución.

...

Descargar como (para miembros actualizados) txt (7 Kb) pdf (484 Kb) docx (353 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com