You are on page 1of 8

Algoritmo de Planificacin Por Turno Rotatorio o Round Robin.

Para qu sirve esta Simulacin? Hasta dnde puedo llegar? Qu nos muestra la Simulacin? Cmo la hago funcionar? El Banco de Pruebas. Comenzar a trabajar?

Para qu sirve esta Simulacin?


La siguiente herramienta presenta una simulacin creada con el objetivo de hacer entender al usuario el algoritmo de planificacin de procesos por Turno Rotatorio o Round Robin.. Pretendemos que el usuario de esta herramienta, comprenda la base de funcionamiento del algoritmo anterior. Aconsejamos el uso de esta herramienta conjuntamente con la explicacin terica del Algoritmo de planificacin de procesos por Turno Rotatorio.

Hasta dnde puedo llegar?


En la simulacin del algoritmo, irn apareciendo una serie de procesos hasta llegar a un nmero de cuatro. Los procesos pueden aparecer en la simulacin siempre y cuando el tiempo este pasando por esta, es decir, cuando un proceso esta consumiendo CPU y cuando el sistema operativo esta detenido (consecuencia de que todos los procesos existentes estn Dormidos). Todos los procesos creados competirn por el procesador segn el algoritmo de Planificacin por Turno Rotatorio. Los Procesos, para concluir su ejecucin, tendrn que consumir un nmero de unidades de tiempo con el que parten desde el momento en el que se crean. Irn pasando desde la cola de procesos listos hasta la figura que representa el ncleo del sistema operativo, y una vez all podrn consumir el tiempo especificado por el parmetro Quantum o bien dormirse como consecuencia de una operacin de entrada/salida o un bloqueo.

Si el proceso consume todo el Quantum de tiempo, abandonar el ncleo del sistema operativo y pasar a ocupar la ultima posicin en la cola de procesos listos. Si el proceso no consume todo el tiempo de su Quantum, este se dormir durante una serie de unidades de tiempo, dato que mostrar mientras dure este estado. Los procesos que se duermen se desplazan a otra zona de la pantalla especifica para ellos. Una vez que pasen por la simulacin las unidades de tiempo por las que se durmieron, se despertarn y pasarn de nuevo a formar parte de la cola de procesos listos. Los procesos irn pasando por los distintos estados de su ciclo de vida reflejando en cada estado unas caractersticas externas que los identificarn. En la ilustracin 1 podemos apreciar una instantnea del aspecto de la simulacin en el que se pueden apreciar procesos en los cuatro estados posibles.

Qu nos muestra la Simulacin?


El aspecto de la herramienta lo podemos observar en la ilustracin 1, en ella se distinguen tres tipos de estructuras en las que se van a ir situando los procesos: 1. Una caja con cuatro apartados, uno por cada proceso, a los que irn pasando los procesos cuando estn dormidos o terminados, de forma que podamos observar su evolucin. Cada uno de los cuatro procesos tienen reservado su sitio en ella. El primer hueco ser para el proceso 0, el segundo para el 1, .... La caja viene etiquetada con el rotulo "PROCESOS DORMIDOS/TERMINADOS" 2. El ncleo del sistema operativo, que esta representado por un rectngulo en el que se ha inscrito otro menor en el que se insertar el proceso que en un determinado momento este en posesin del procesador. 3. La cola de procesos listos, en la que se encontrarn los procesos que estn esperando a que les corresponda el procesador. La apariencia

externa de la "COLA DE PROCESOS LISTOS" es la misma que la de procesos dormidos/terminados, una caja rectangular con cuatro cavidades en las que irn entrando los procesos. La diferencia esta en que aqu, cada proceso no tiene reservado un apartado, sino que irn ocupando el que les corresponda segn vaya el algoritmo.

Los procesos, dependiendo del estado en que se encuentren, se situarn en una de estas tres estructuras. Una casilla de una de las tres estructuras estar ocupada por un proceso cuando no aparezca en su color original. Segn el estado, necesitaremos saber del proceso una determinada informacin. Como se ve en la Ilustracin 1, cada proceso se pone de un color distinto y muestra unos datos representativos del estado actual.

Ilustracin 1 Distintos estados de los procesos

.- El proceso 0 se encuentra en el estado TERMINADO. Los procesos terminados tienen color "arena". Aparece indicando su nmero de proceso y su estado. Ya no nos hace falta tener otra informacin sobre l. .- El proceso 2 se encuentra en el estado DORMIDO. Los procesos dormidos tienen color "cyan". Aparece indicando su nmero de proceso, las unidades de tiempo que le restan para terminar (76 unidades de tiempo), las unidades de tiempo que le restan para volver a la cola de procesos listos (75 unidades de tiempo) y su estado. .- El proceso 3 se encuentra en el estado EN EJECUCION. Los procesos en ejecucin tienen color "azul oscuro". Aparece indicando su nmero de proceso, las unidades de tiempo que le restan para terminar (94 unidades de tiempo) y su estado. .- El proceso 1 se encuentra en el estado LISTO. Los procesos listos tienen color "verde". Aparece indicando su nmero de proceso, las unidades de tiempo que le restan para terminar (75 unidades de tiempo) y su estado.

Cmo la hago funcionar?


La segunda parte de la interfaz grfica, es la destinada a la interaccin con el usuario, la que se encargar de obtener los parmetros segn los cuales se ejecutar la simulacin. Esta zona se sita en la parte inferior de la pantalla mostrada de forma global en la Ilustracin 1 El botn Reiniciar, en el estado inicial de la herramienta se llama Empezar, sirve para arrancar la simulacin con los datos que tengan los dems paramentos. Cuando se pulsa, su leyenda cambia, pasar de Empezar a Reiniciar. Esto permitir que cuando la simulacin comenzada haya terminado (todos los procesos consuman su tiempo), podamos volver a ejecutarla, modificando, si as lo deseamos el resto de parmetros.

El siguiente parmetro que podemos pasar a la simulacin es el de "Prob. I/O:". Indica la probabilidad de que el proceso realice una operacin de entrada salida, lo que provocara que el proceso se durmiese. Esta representado en tanto por cien. Por defecto tiene un 25%. Puede tomar valores desde 1 a 98. Y esto porque va en combinacin del siguiente dato. La probabilidad total de que un proceso se duerma, es la suma de la probabilidad de que realice una operacin de Entrada Salida y la de que surja un Bloqueo, con lo que un valor que haga que las dos sumen mas de 99 har que este se modifique a otro ms prximo. Mediante este, podemos hacer que los procesos sean ms o menos interactivos. El siguiente parmetro es el de "Prob. Bloqueo". Este indica la probabilidad de que el proceso que se esta ejecutando tenga una operacin por la cual se bloque. El rango de valores que soporta es de 1 a 98, dependiendo del valor que tenga la entrada "Prob. I/O". Debido a lo explicado anteriormente. Despus viene el parmetro "Quantum", Este parmetroindica el tamao del quantum en unisdades de tiempo. Puede tomar valores de 1 a 99. La introduccin de un valor incorrecto provocar que este dato tome un valor por defecto. En la segunda fila de controles nos encontramos con "T. CPU". Este dato indica las necesidades mximas que van a tener los procesos de unidades de tiempo. Al crearse los procesos, estos tendrn unas necesidades de CPU que irn de 1 a la cantidad introducida en este apartado. Mediante este, podemos hacer que los procesos sean ms o menos largos. La introduccin de un valor incorrecto provocars que este dato tome un valor por defecto. El parmetro "T. Max. Dormido", indica el mximo nmero unidades de tiempo que un proceso va a permanecer dormido. Cuando un proceso realice una operacin de Entrada o Salida , o se bloque, permanecer dormido un nmero de ciclos que estar entre 1 y la cantidad aqu introducida. Puede tomar valores de 1 a 999. Mediante este, podemos hacer que los procesos permanezcan ms o menos tiempo dormidos. La introduccin de un valor incorrecto provocar que este dato tome un valor por defecto. El ultimo dato que se le puede pasar a la simulacin es el de "P Llegada PCS". Indica la probabilidad de llegada, en tanto por ciento, de nuevos procesos al algoritmo.

El Banco de Pruebas
En esta simulacin, debido a la amplia gama de controles de que dispone, vamos a poder experimentar con bastantes combinaciones. Quizs, el parmetro ms verstil del que dispone esta simulacin, sea el poder controlar el tamao del quantum. Mediante este, y en combinacin con las probabilidades de operaciones de Entrada/Salida y de Bloqueo podemos hacer que los procesos retrasen se ms unos a otros, estn mucho tiempo en la CPU, .. Si ponemos un tamao de Quantum alto, y una probabilidad de que los procesos se duerman (prob. Bloqueo ms Prob I/O) baja, los procesos irn pasando en turno rotatorio por el procesador lentamente y la simulacin tardar poco tiempo en finalizar. Si el tamao de quantum lo establecemos bajo, los procesos tendrn que llegar muchas veces hasta el procesador para poder concluir. Podemos realizar diversas pruebas con el tiempo que los procesos van a permanecer dormidos. Si este lo hacemos muy alto, cuando un proceso se duerma, se estar en la cola de dormidos mucho rato. As, si la probabilidad de que se duerma es baja (esta probabilidad se obtiene como suma de probabilidades de bloqueo y de entrada/salida) el proceso que se duerma asistir a la ejecucin continua de los dems procesos sin llegar el a tomar parte del procesador. El proceso que se duerma, tendr un gran retraso en la consecucin de su objetivo. Si por el contrario, el tiempo que los procesos permanecen dormidos lo hacemos bajo, estos abandonarn rpidamente el estado dormido y no sufrirn muchos retrasos en la consecucin de su objetivo.

Manejando las probabilidades de Entrada/Salida y las de Bloqueo, vamos a controlar la interactividad de los procesos. Si hacemos que la probabilidad total de bloqueo (suma de las dos anteriores) sea alta, los procesos sern muy interactivos, realizarn muchas operaciones que les lleven a un bloqueo, con los que estarn casi cada vez que lleguen al procesador durmindose y no acabarn su quantum.

Si por el contrario, esta probabilidad es baja, los procesos irn consumiendo todo su quantum con lo que no tardarn mucho tiempo en concluir su trabajo. Irn entrando en la cola de procesos listos y estarn dispuestos para poder recibir el procesador rpidamente.

Manejando el tiempo de CPU, vamos a poder hacer que los procesos sean cortos, y por lo tanto, su vida en la simulacin sea tambin corta. O bien, si hacemos que este tiempo sea alto (700 - 900), los procesos permanecern mucho tiempo en la simulacin, entonces, con que se duerman en alguna ocasin, estarn bastante tiempo haciendo recorridos por la simulacin.

Con respecto al parmetro de probabilidad de llegada, vamos a poder controlar la velocidad de aparicin de los procesos en la simulacin. El dar valores muy altos, hace que los cuatro procesos se creen casi a la vez. Si el valor es por el contrario, muy pequeo, los procesos pueden tardar un rato en aparecer, con lo que la simulacin estara funcionando bastante rato solo con uno o dos procesos, ...

You might also like