SlideShare una empresa de Scribd logo
1 de 8
Algoritmos de Planificación de 
Procesos en Sistemas Operativos. 
Fernando Morales
Tipos de Algoritmos de Planificación a 
mencionar 
• FCFS. 
• Round-Robin. 
• SJF 
• Por prioridad.
Cuando tenemos más de un proceso en condiciones de ejecutar, debemos escoger uno de 
entre ellos. Para escogerlo empleamos un algoritmo de planificación. Estos algoritmos pueden 
usar prioridades. En este caso a cada proceso se le asigna una prioridad y los procesos de mayor 
prioridad tendrán preferencia sobre los de menos. La prioridad de un proceso se puede modificar 
a lo largo de su vida, para evitar que un proceso de baja prioridad nunca llegue a 
ejecutarse debido a que los de alta prioridad monopolizan el procesador. 
Otra característica de un algoritmo de planificación es la expropiación. Podemos definir un 
algoritmo de planificación como expropiativo si podemos retirar un proceso que se está 
ejecutando para introducir otro nuevo. 
Para estudiar la bondad de un algoritmo de planificación se suelen estudiar algunos parámetros: 
• Tiempo de espera: Tiempo que el proceso está parado o en espera desde que se lanza hasta 
que finaliza su ejecución. 
• Tiempo de retorno: Tiempo que transcurre desde que el proceso se lanza hasta que finaliza 
su ejecución. Se puede ver como la suma del tiempo de espera más el tiempo de ejecución. 
• Tiempo de respuesta: Tiempo que pasa desde que se manda ejecutar un proceso hasta que 
se ejecuta por primera vez. 
• Productividad: Número de trabajos realizados por unidad de tiempo. 
• Uso de la CPU: Porcentaje de tiempo que el procesador pasa ejecutando procesos.
FCFS. 
First Come, First Served o lo que es lo mismo el primero que llega es el primero en ser 
atendido. Podemos decir que no es expropiativo y no emplea prioridades. Es un algoritmo muy 
sencillo de implementar, basta con emplear una cola FIFO, pero corre el peligro de que un 
proceso muy largo monopolice la CPU durante mucho tiempo generando tiempos de espera 
mayores de los que serían deseables
Round-Robin. 
También conocido como RR, Carrousel o planificación por rondas. Se reparte el 
tiempo de CPU en quantums o rodajas. El funcionamiento es dar una rodaja a cada proceso 
de forma secuencial. La selección de entre los procesos activos se gestiona según una cola 
FIFO o lo que es lo mismo se elije el que más tiempo lleve esperando. 
Si llega un proceso nuevo y hay otro en ejecución, los ciclos de CPU se distribuyen 
entre ambos pero se ejecuta un ciclo de CPU para el proceso en ejecución e 
inmediatamente se le asigna un ciclo al recién llegado. Como se puede deducir, este 
algoritmo es expropiativo y no emplea prioridades.
SJF. 
Son las siglas de Short Job First, es decir el trabajo más corto primero. En este caso se 
seleccionará el proceso que requiera menor tiempo de ejecución (si dos tienen el mismo tiempo 
se decide por FIFO). El problema puede aparecer con procesos muy largos que están siempre 
bloqueados por procesos más cortos. Este algoritmo puede ser expropiativo o no. En la variante 
expropiativa denominada SRTN (Shortest Remainig Time Next) medimos el tiempo restante que 
le queda a cada proceso. 
SRTN. Es la variedad expropiativa de SJF. Eso significa que el proceso con menor 
tiempo para acabar es el siguiente proceso en ejecutarse expropiando la CPU inmediatamente al 
proceso que este en ejecución en el instante correspondiente. El problema vendría en el caso que 
tengamos un proceso que requiera un tiempo de ejecución para finalizar igual que un proceso 
nuevo que entra. Existen dos soluciones, dar prioridad a los procesos nuevos sobre los procesos 
en ejecución o dar prioridad a los procesos en ejecución sobre los procesos nuevos.
Por prioridad. 
En este tipo de algoritmos el proceso de mayor prioridad es el que se ejecuta. En un 
escenario con prioridades estáticas los procesos con menor prioridad podrían no llegar 
a ejecutarse, por ejemplo porque entren continuamente procesos de mayor prioridad. Para 
solucionar este problema se introduce el concepto de prioridad dinámica que consiste en 
modificar la prioridad inicial de los procesos a medida que transcurre el tiempo y se suele hacer 
atendiendo a a diferentes criterios: 
• Según la categoría del usuario. 
• Según el tipo de proceso. 
• Según la ocupación de CPU de los procesos. 
Hay que tener en cuenta además, como en otro tipo de algoritmos, que la Prioridad 
puede ser Apropiativa o No Apropiativa (apropiativo, expulsivo o expropiativo son para nosotros 
lo mismo) y que en caso de conflicto, es decir encontrarnos con varios procesos con la misma 
prioridad, el problema nos debería indicar como resolverlo (sino dice nada el asunto se 
suele zanjar con FIFO). Veamos un ejemplo, en este caso sencillo y basado 
en prioridades estáticas
Consideraciones Finales 
RR 
• Es adecuado para implementar tiempo compartido. 
• Se comporta como FCFS pero cada proceso dispone de un cuanto de tiempo máximo. 
• Si el cuanto es muy grande (más grande que el mayor tiempo de CPU de los procesos), RR se 
convierte en FCFS ya que los procesos terminan sus ráfagas de CPU antes de que termine el 
cuanto. 
• Si el cuanto es muy pequeño se provocarían constantemente cambios de contexto, 
disminuyendo el rendimiento. 
SJF 
• Se minimiza el tiempo de espera medio. 
• Los procesos de larga duración sufren riesgo de inanición. 
• SJF es un caso especial de planificación por prioridad. 
Prioridades 
• Los procesos de prioridad más baja tienen riesgo de inanición que podría ser solventado 
aumentando de forma progresiva la prioridad de los procesos en espera (prioridades 
dinámicas). 
• La política de prioridades puede ser o no expulsiva. 
FCFS 
• Tiene tiempos de espera bastantes largos.

Más contenido relacionado

La actualidad más candente

Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativosAndy Lopez
 
1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.Olupita zume
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesadorMicael Feliz Arias
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Estados de un proceso
Estados de un procesoEstados de un proceso
Estados de un procesoi92almaa
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Sistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosSistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosChiNo Sosa Erazo
 
5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivosRey JOaquin
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoriacaredimaria
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Juan Anaya
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
Algoritmos de dekker
Algoritmos de dekkerAlgoritmos de dekker
Algoritmos de dekkernerexi
 

La actualidad más candente (20)

Tecnicas de Administracion de Memoria
Tecnicas de Administracion de MemoriaTecnicas de Administracion de Memoria
Tecnicas de Administracion de Memoria
 
UNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓNUNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓN
 
Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativos
 
1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O
 
Implementación de hilos
Implementación de hilos Implementación de hilos
Implementación de hilos
 
Rendimiento del CPU
Rendimiento del CPURendimiento del CPU
Rendimiento del CPU
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Procesos en windows
Procesos en windowsProcesos en windows
Procesos en windows
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Estados de un proceso
Estados de un procesoEstados de un proceso
Estados de un proceso
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Sistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosSistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesos
 
5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoria
 
Gestion de procesos Android
Gestion de procesos AndroidGestion de procesos Android
Gestion de procesos Android
 
Algoritmos por prioridades
Algoritmos por prioridadesAlgoritmos por prioridades
Algoritmos por prioridades
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.
 
Estrategias de busqueda
Estrategias de busquedaEstrategias de busqueda
Estrategias de busqueda
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
Algoritmos de dekker
Algoritmos de dekkerAlgoritmos de dekker
Algoritmos de dekker
 

Similar a Algoritmos de planificación de procesos en sistemas operativos

Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis RiveroNelisRivero
 
Planificación de la cpu
Planificación de la cpuPlanificación de la cpu
Planificación de la cpujoss1991
 
Planificación de Procesos en Sistemas Operativos
Planificación de Procesos en Sistemas OperativosPlanificación de Procesos en Sistemas Operativos
Planificación de Procesos en Sistemas OperativosCarina Hurtado
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajojoel vasquez
 
Técnicas de administración del planificador
Técnicas de administración del planificadorTécnicas de administración del planificador
Técnicas de administración del planificadorCristian Izquierdo
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IKamps Tepes
 
Planificación de Procesos - SOII - 2016
Planificación de Procesos - SOII - 2016Planificación de Procesos - SOII - 2016
Planificación de Procesos - SOII - 2016Pablo Macon
 
Procesos-Planificacion-2017
Procesos-Planificacion-2017Procesos-Planificacion-2017
Procesos-Planificacion-2017Pablo Macon
 
Planificación de Procesos
Planificación de ProcesosPlanificación de Procesos
Planificación de ProcesosPablo Macon
 
Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis RiveroNelisRivero
 
Planificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfPlanificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfSAMMYperez9
 
Planificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfPlanificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfSAMMYperez9
 
ALBEYRO VILLACRESES, MARTHA PILCO
ALBEYRO VILLACRESES, MARTHA PILCOALBEYRO VILLACRESES, MARTHA PILCO
ALBEYRO VILLACRESES, MARTHA PILCOgillyvillacreses
 
Sistemas Operativos[1]
Sistemas Operativos[1]Sistemas Operativos[1]
Sistemas Operativos[1]guest5db8b1
 

Similar a Algoritmos de planificación de procesos en sistemas operativos (20)

Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis Rivero
 
UNIDAD III
UNIDAD IIIUNIDAD III
UNIDAD III
 
Planificación de la cpu
Planificación de la cpuPlanificación de la cpu
Planificación de la cpu
 
Planificación de Procesos en Sistemas Operativos
Planificación de Procesos en Sistemas OperativosPlanificación de Procesos en Sistemas Operativos
Planificación de Procesos en Sistemas Operativos
 
Actividad colaborativa 301402 7
Actividad colaborativa  301402 7Actividad colaborativa  301402 7
Actividad colaborativa 301402 7
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
 
Técnicas de administración del planificador
Técnicas de administración del planificadorTécnicas de administración del planificador
Técnicas de administración del planificador
 
2003 Clase0610
2003 Clase06102003 Clase0610
2003 Clase0610
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos I
 
Actividad colaborativa
Actividad colaborativaActividad colaborativa
Actividad colaborativa
 
Políticas de Planificación
Políticas de PlanificaciónPolíticas de Planificación
Políticas de Planificación
 
Planificación de Procesos - SOII - 2016
Planificación de Procesos - SOII - 2016Planificación de Procesos - SOII - 2016
Planificación de Procesos - SOII - 2016
 
Procesos-Planificacion-2017
Procesos-Planificacion-2017Procesos-Planificacion-2017
Procesos-Planificacion-2017
 
Planificación de Procesos
Planificación de ProcesosPlanificación de Procesos
Planificación de Procesos
 
Planificacion Procesos Gral
Planificacion Procesos GralPlanificacion Procesos Gral
Planificacion Procesos Gral
 
Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis Rivero
 
Planificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfPlanificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdf
 
Planificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdfPlanificacion de sistemas operativos.pdf
Planificacion de sistemas operativos.pdf
 
ALBEYRO VILLACRESES, MARTHA PILCO
ALBEYRO VILLACRESES, MARTHA PILCOALBEYRO VILLACRESES, MARTHA PILCO
ALBEYRO VILLACRESES, MARTHA PILCO
 
Sistemas Operativos[1]
Sistemas Operativos[1]Sistemas Operativos[1]
Sistemas Operativos[1]
 

Algoritmos de planificación de procesos en sistemas operativos

  • 1. Algoritmos de Planificación de Procesos en Sistemas Operativos. Fernando Morales
  • 2. Tipos de Algoritmos de Planificación a mencionar • FCFS. • Round-Robin. • SJF • Por prioridad.
  • 3. Cuando tenemos más de un proceso en condiciones de ejecutar, debemos escoger uno de entre ellos. Para escogerlo empleamos un algoritmo de planificación. Estos algoritmos pueden usar prioridades. En este caso a cada proceso se le asigna una prioridad y los procesos de mayor prioridad tendrán preferencia sobre los de menos. La prioridad de un proceso se puede modificar a lo largo de su vida, para evitar que un proceso de baja prioridad nunca llegue a ejecutarse debido a que los de alta prioridad monopolizan el procesador. Otra característica de un algoritmo de planificación es la expropiación. Podemos definir un algoritmo de planificación como expropiativo si podemos retirar un proceso que se está ejecutando para introducir otro nuevo. Para estudiar la bondad de un algoritmo de planificación se suelen estudiar algunos parámetros: • Tiempo de espera: Tiempo que el proceso está parado o en espera desde que se lanza hasta que finaliza su ejecución. • Tiempo de retorno: Tiempo que transcurre desde que el proceso se lanza hasta que finaliza su ejecución. Se puede ver como la suma del tiempo de espera más el tiempo de ejecución. • Tiempo de respuesta: Tiempo que pasa desde que se manda ejecutar un proceso hasta que se ejecuta por primera vez. • Productividad: Número de trabajos realizados por unidad de tiempo. • Uso de la CPU: Porcentaje de tiempo que el procesador pasa ejecutando procesos.
  • 4. FCFS. First Come, First Served o lo que es lo mismo el primero que llega es el primero en ser atendido. Podemos decir que no es expropiativo y no emplea prioridades. Es un algoritmo muy sencillo de implementar, basta con emplear una cola FIFO, pero corre el peligro de que un proceso muy largo monopolice la CPU durante mucho tiempo generando tiempos de espera mayores de los que serían deseables
  • 5. Round-Robin. También conocido como RR, Carrousel o planificación por rondas. Se reparte el tiempo de CPU en quantums o rodajas. El funcionamiento es dar una rodaja a cada proceso de forma secuencial. La selección de entre los procesos activos se gestiona según una cola FIFO o lo que es lo mismo se elije el que más tiempo lleve esperando. Si llega un proceso nuevo y hay otro en ejecución, los ciclos de CPU se distribuyen entre ambos pero se ejecuta un ciclo de CPU para el proceso en ejecución e inmediatamente se le asigna un ciclo al recién llegado. Como se puede deducir, este algoritmo es expropiativo y no emplea prioridades.
  • 6. SJF. Son las siglas de Short Job First, es decir el trabajo más corto primero. En este caso se seleccionará el proceso que requiera menor tiempo de ejecución (si dos tienen el mismo tiempo se decide por FIFO). El problema puede aparecer con procesos muy largos que están siempre bloqueados por procesos más cortos. Este algoritmo puede ser expropiativo o no. En la variante expropiativa denominada SRTN (Shortest Remainig Time Next) medimos el tiempo restante que le queda a cada proceso. SRTN. Es la variedad expropiativa de SJF. Eso significa que el proceso con menor tiempo para acabar es el siguiente proceso en ejecutarse expropiando la CPU inmediatamente al proceso que este en ejecución en el instante correspondiente. El problema vendría en el caso que tengamos un proceso que requiera un tiempo de ejecución para finalizar igual que un proceso nuevo que entra. Existen dos soluciones, dar prioridad a los procesos nuevos sobre los procesos en ejecución o dar prioridad a los procesos en ejecución sobre los procesos nuevos.
  • 7. Por prioridad. En este tipo de algoritmos el proceso de mayor prioridad es el que se ejecuta. En un escenario con prioridades estáticas los procesos con menor prioridad podrían no llegar a ejecutarse, por ejemplo porque entren continuamente procesos de mayor prioridad. Para solucionar este problema se introduce el concepto de prioridad dinámica que consiste en modificar la prioridad inicial de los procesos a medida que transcurre el tiempo y se suele hacer atendiendo a a diferentes criterios: • Según la categoría del usuario. • Según el tipo de proceso. • Según la ocupación de CPU de los procesos. Hay que tener en cuenta además, como en otro tipo de algoritmos, que la Prioridad puede ser Apropiativa o No Apropiativa (apropiativo, expulsivo o expropiativo son para nosotros lo mismo) y que en caso de conflicto, es decir encontrarnos con varios procesos con la misma prioridad, el problema nos debería indicar como resolverlo (sino dice nada el asunto se suele zanjar con FIFO). Veamos un ejemplo, en este caso sencillo y basado en prioridades estáticas
  • 8. Consideraciones Finales RR • Es adecuado para implementar tiempo compartido. • Se comporta como FCFS pero cada proceso dispone de un cuanto de tiempo máximo. • Si el cuanto es muy grande (más grande que el mayor tiempo de CPU de los procesos), RR se convierte en FCFS ya que los procesos terminan sus ráfagas de CPU antes de que termine el cuanto. • Si el cuanto es muy pequeño se provocarían constantemente cambios de contexto, disminuyendo el rendimiento. SJF • Se minimiza el tiempo de espera medio. • Los procesos de larga duración sufren riesgo de inanición. • SJF es un caso especial de planificación por prioridad. Prioridades • Los procesos de prioridad más baja tienen riesgo de inanición que podría ser solventado aumentando de forma progresiva la prioridad de los procesos en espera (prioridades dinámicas). • La política de prioridades puede ser o no expulsiva. FCFS • Tiene tiempos de espera bastantes largos.