02 Ago Algoritmos de Planificacion FCFS, SJF, SRTF, ROUND ROBIND
Algoritmos de Planificacion FCFS, SJF, SRTF, ROUND ROBIND
Programación de Servicios y Procesos
Introducción
Aquí vamos a centrarnos en analizar los distintos tipos de algoritmos de planificación. Estos algoritmos surgen debido a la necesidad de poder organizar los procesos de una manera eficiente para el procesador.
Cómo mostrar ventana emergente de forma automática usando modal bootstrap |
Guía Completa: Como crear una Tienda en Instagram 2023 |
Diseño Web |
Los algoritmos de planificación se encargan de asegurar que un proceso no monopoliza el procesador. Un proceso es un programa que está en ejecución. Este proceso puede estar en 3 estados distintos “Listo” “Bloqueado” y “En Ejecución”. Los procesos son almacenados en una lista junto con la información que indica en qué estado está el proceso, el tiempo que ha usado el CPU, etc.
Ahora vamos a ver los diferentes algoritmos de Planificación que estamos estudiando:
FCFS “FIRTS-COME, FIRST-SERVED”
Algoritmos de Planificación FCFS, SJF, SRTF, ROUND ROBIND
En esta política de planificación, el procesador ejecuta cada proceso hasta que termina, por tanto, los procesos que en cola de procesos preparados permanecerán encolados en el orden en que lleguen hasta que les toque su ejecución. Este método se conoce también como fifo (fist input, first output, primero en llegar primero en salir).
Se trata de una política muy simple y sencilla de llevar a la práctica, pero muy pobre en cuanto a su comportamiento.
La cantidad de tiempo de espera de cada proceso depende del número de procesos que se encuentren en la cola en el momento de su petición de ejecución y del tiempo que cada uno de ellos tenga en uso al procesador, y es independiente de las necesidades del propio proceso.
Sus características son:
– no apropiativa.
– es justa, aunque los procesos largos hacen esperar mucho a los cortos.
– predecible.
– el tiempo medio de servicio es muy variable en función del número de procesos y su duración.
Ejemplo :
proceso a → tiempo ejecución → tiempo llegada → tiempo finaliza → tiempo retorno → tiempo espera .
En el caso de que los procesos de mayor tiempo de duración llegasen los primeros, el tiempo medio de espera sería mucho mayor. Podemos llegar a la conclusión de que este no es un algoritmo eficiente.
Conclusión:
Este algoritmo esta bien lo único que que los procesos largos hacen esperar mucho a los cortos.
Predecible.
-El tiempo medio de servicio es muy variable en función del número de procesos y su duración.
Bibliografía:
http://pachel.tripod.com/materias/material3sis.htm
SJF “SHORTEST JOB FIRST”
En este algoritmo , da bastante prioridad a los procesos más cortos a la hora de ejecución y los coloca en la cola.
Ejemplo:
Una cola de personas en Mercadona delante de la caja , la persona que menos compra lleva esa pasa primero.
Conclusión
En resumen, este algoritmo selecciona al proceso con el próximo tiempo ejecución más corto. en proceso corto saltará a la cabeza de la cola. Ejecución de un proceso consiste en ciclos de ejecución de CP y ciclos de espera por E/S. El algoritmo selecciona aquel proceso cuyo próximo ciclo de ejecución de CP sea menor. El problema está en conocer dichos valores, pero podemos predecirlos usando la información de los ciclos anteriores ejecutados
Bibliografía
http://es.scribd.com/doc/44358964/FSO-Algoritmos-de-Planificacion-Algoritmo-SJF-Shortest-Job-First
Srtf “short remaining time first”
Es similar al sjf, con la diferencia de que si un nuevo proceso pasa a listo se activa el dispatcher para ver si es más corto que lo que queda por ejecutar del proceso en ejecución. Si es así, el proceso en ejecución pasa a listo y su tiempo de estimación se decremento con el tiempo que ha estado ejecutándose.
Los procesos llegan a la cola y solicitan un intervalo de CPU
– Si dicho intervalo es inferior al que le falta al proceso en ejecución para abandonar la CPU, el nuevo proceso pasa a la CPU y el que se ejecutaba a la cola de preparados.
Conclusión:
El intervalo de CPU es difícil de predecir
– Posibilidad de inanición: los trabajos largos no se ejecutarán mientras hayan trabajos cortos.
Bibliografía:
http://algoritmosplanificacion.blogspot.com.es/2012/08/srtf-short-remaining-time-first.html
ROUND ROBIN
Es un método para seleccionar todos los elementos en un grupo de manera equitativa y en un orden racional, normalmente comenzando por el primer elemento de la lista hasta llegar al último y empezando de nuevo desde el primer elemento.
Round Robin es uno de los algoritmos de planificación de procesos más complejos y difíciles, dentro de un sistema operativo asigna a cada proceso una porción de tiempo equitativa y ordenada, tratando a todos los procesos con la misma prioridad.
Se define un intervalo de tiempo denominado cuanto, cuya duración varía según el sistema. La cola de procesos se estructura como una cola circular. El planificado la recorre asignando un cuanto de tiempo a cada proceso. La organización de la cola es FIFO.
Conclusión:
Cada proceso tiene asignado un intervalo de tiempo de ejecución, llamado cuantum o cuanto. Si el proceso agota su cuantum de tiempo, se elige a otro proceso para ocupar la CPU. Si el proceso se bloquea o termina antes de agotar su cuantum también se alterna el uso de la CPU. El round robín es muy fácil de implementar. Todo lo que necesita el planificado es mantener una lista de los procesos listos.
Bibliografía:
http://es.wikipedia.org/wiki/Planificaci%C3%B3n_Round-robin
Conclusión personal
En mi opinión el algoritmo de Round Robbin es el mas fiable ya que cada proceso se le asigna un tiempo de ejecución si se agota elige otro proceso .
También el algotrismo SJF esta bien ya que prioriza según las necesidades de la CPU.
Los algoritmos de planificación son una parte crucial del sistema operativo de un ordenador. Estos algoritmos determinan cómo se asigna el tiempo de procesamiento a diferentes procesos que se ejecutan en el sistema operativo. Hay varios tipos de algoritmos de planificación, cada uno con sus propias ventajas y desventajas.
En este texto, nos centraremos en cuatro de los algoritmos de planificación más comunes: FCFS, SJF, SRTF y Round Robin. Analizaremos cada uno de ellos en detalle, examinando cómo funcionan, sus ventajas y desventajas, y en qué situaciones son más efectivos.
Algoritmo de planificación FCFS
El algoritmo de planificación FCFS (First-Come, First-Served) es uno de los más simples y fáciles de entender. Como su nombre indica, este algoritmo asigna el tiempo de procesamiento a los procesos en el orden en que llegan al sistema operativo. Es decir, el primer proceso que llega es el primero en ser atendido, seguido por el segundo proceso, el tercero, y así sucesivamente.
La principal ventaja del algoritmo FCFS es su simplicidad. Es fácil de implementar y comprender, y no requiere ningún tipo de estimación de tiempo para los procesos. Sin embargo, esta simplicidad también es su mayor desventaja. Debido a que el algoritmo FCFS no tiene en cuenta la duración del proceso, puede llevar a una baja utilización del procesador y a un retraso en los procesos más largos. Además, si un proceso muy largo llega al sistema operativo, puede bloquear todos los demás procesos que esperan para ser atendidos.
Algoritmo de planificación SJF
El algoritmo de planificación SJF (Shortest Job First) es uno de los más populares y efectivos. En este algoritmo, el procesador asigna el tiempo de procesamiento al proceso que tenga la duración más corta. Es decir, se da prioridad a los procesos más cortos.
La principal ventaja del algoritmo SJF es su eficiencia. Este algoritmo asegura que el procesador siempre esté procesando el proceso más corto disponible, lo que lleva a una alta utilización del procesador y una respuesta rápida del sistema. Sin embargo, el algoritmo SJF también tiene una desventaja: es difícil de implementar en un sistema real, ya que requiere información precisa sobre la duración de los procesos. Además, este algoritmo puede llevar a un fenómeno conocido como «inanición», en el que los procesos más largos nunca se ejecutan si hay suficientes procesos más cortos para mantener al procesador ocupado.
Algoritmo de planificación SRTF
El algoritmo de planificación SRTF (Shortest Remaining Time First) es una variante del algoritmo SJF. En este caso, el procesador asigna el tiempo de procesamiento al proceso que tenga la duración más corta, pero se actualiza constantemente para adaptarse a los cambios en la duración del proceso. Es decir, si un proceso más corto llega mientras se está ejecutando un proceso largo, el procesador cambiará inmediatamente al proceso más corto.
La principal ventaja del algoritmo SRTF es que resuelve el problema de la inanición que puede ocurrir en el algoritmo SJF. Al dar prior
idad a los procesos más cortos y actualizar constantemente la duración restante del proceso, el algoritmo SRTF asegura que los procesos más largos no se queden esperando indefinidamente. Además, este algoritmo también lleva a una alta utilización del procesador y una respuesta rápida del sistema.
Sin embargo, al igual que el algoritmo SJF, el algoritmo SRTF requiere información precisa sobre la duración de los procesos, lo que puede ser difícil de obtener en un sistema real. Además, este algoritmo también puede llevar a un problema conocido como «inestabilidad», en el que los procesos más cortos se ejecutan continuamente, lo que puede impedir que los procesos más largos se completen.
Algoritmo de planificación Round Robin
El algoritmo de planificación Round Robin es un enfoque diferente al de los algoritmos FCFS, SJF y SRTF. En este algoritmo, cada proceso recibe un tiempo de procesamiento limitado, conocido como «quantum». Cuando se agota el tiempo de procesamiento de un proceso, se suspende y se da paso al siguiente proceso. Si un proceso no se completa antes de que se agote su tiempo de procesamiento, se mueve al final de la cola y se le da otra oportunidad para ejecutarse en su próximo turno.
La principal ventaja del algoritmo Round Robin es que asegura una distribución equitativa del tiempo de procesamiento entre todos los procesos. Además, como cada proceso recibe un tiempo de procesamiento limitado, ningún proceso puede bloquear el procesador indefinidamente. Sin embargo, el algoritmo Round Robin también tiene una desventaja: puede llevar a una latencia adicional debido al tiempo de cambio de contexto. Es decir, el tiempo que se tarda en cambiar de un proceso a otro puede ralentizar el sistema.
En resumen, cada algoritmo de planificación tiene sus propias ventajas y desventajas, y es importante elegir el algoritmo adecuado para la tarea en cuestión. El algoritmo FCFS es simple pero puede llevar a una baja utilización del procesador, mientras que el algoritmo SJF es eficiente pero requiere información precisa sobre la duración de los procesos. El algoritmo SRTF resuelve el problema de la inanición del SJF, pero puede ser inestable, y el algoritmo Round Robin asegura una distribución equitativa del tiempo de procesamiento, pero puede llevar a una latencia adicional debido al tiempo de cambio de contexto.
En la práctica, los sistemas operativos modernos suelen utilizar una combinación de estos algoritmos para optimizar la utilización del procesador y garantizar una respuesta rápida del sistema. Por ejemplo, el sistema operativo puede utilizar el algoritmo Round Robin como planificador principal, pero cambiar a SJF o SRTF cuando se detectan procesos más cortos que pueden ser atendidos de manera más eficiente. En última instancia, la elección del algoritmo de planificación adecuado dependerá de las necesidades específicas del sistema y de las tareas que se están ejecutando.
- ¿Cuál es la principal diferencia entre los algoritmos FCFS y SJF? La principal diferencia entre los algoritmos FCFS y SJF es que el algoritmo SJF planifica los procesos según su duración estimada, mientras que el algoritmo FCFS planifica los procesos según el orden en el que llegan al sistema.
- ¿Cómo funciona el algoritmo de planificación SRTF? El algoritmo de planificación SRTF funciona planificando los procesos según su duración restante. En otras palabras, el proceso con la duración restante más corta se ejecuta primero.
- ¿Cuál es la principal desventaja del algoritmo SRTF? La principal desventaja del algoritmo SRTF es que puede ser inestable. Esto significa que los procesos más cortos pueden ejecutarse continuamente, lo que puede impedir que los procesos más largos se completen.
- ¿Cómo funciona el algoritmo de planificación Round Robin? El algoritmo de planificación Round Robin funciona asignando un tiempo de procesamiento limitado a cada proceso, conocido como «quantum». Cuando se agota el tiempo de procesamiento de un proceso, se suspende y se le da paso al siguiente proceso.
- ¿Cuál es la principal ventaja del algoritmo Round Robin? La principal ventaja del algoritmo Round Robin es que asegura una distribución equitativa del tiempo de procesamiento entre todos los procesos.
- ¿Por qué el algoritmo SJF puede llevar a problemas de inanición? El algoritmo SJF puede llevar a problemas de inanición porque los procesos más cortos tienen prioridad sobre los procesos más largos. Esto significa que un proceso largo puede quedar en espera indefinidamente si siempre hay procesos más cortos que llegan al sistema.
- ¿Qué es la latencia adicional en el contexto del algoritmo Round Robin? La latencia adicional en el contexto del algoritmo Round Robin se refiere al tiempo que se tarda en cambiar de un proceso a otro. Esto puede ralentizar el sistema y disminuir su rendimiento.
Te dejo varios post que también pueden servirte de ayuda.
8 razones porque necesitas una tienda en online
Posicionamiento SEO herramientas gratuitas
Guía instalación de wordpress
Diseño web en 1 dia
Herramientas necesarias Posicionamiento SEO
Como hacer paginas web gratis
Posicionamiento SEO herramientas gratuitas |