Fifo

4
Republica Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Superior Universitaria Instituto Universitario Politécnico “Santiago Mariño” Ampliación Maracaibo Realizado por: Enrique Montoya 20.149.528 “47” Maracaibo, Agosto 2015

Transcript of Fifo

Page 1: Fifo

Republica Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación Superior Universitaria

Instituto Universitario Politécnico “Santiago Mariño”

Ampliación Maracaibo

Realizado por:

Enrique Montoya

20.149.528 “47”

Maracaibo, Agosto 2015

Page 2: Fifo

Colas

Debemos de tener en cuenta que las colas solo se utilizan en sistemas informáticos,

transportes y operaciones de investigación (entre otros), dónde los objetos, personas o

eventos son tomados como datos que se almacenan y se guardan mediante colas

para su posterior procesamiento, este tipo de estructura de datos abstracta se

implementa en lenguajes orientados a objetos mediante clases, en forma de listas

enlazadas, una cola es una estructura de datos, caracterizada por ser una secuencia

de elementos en la que la operación de inserción push se realiza por un extremo y la

operación de extracción pop por el otro, se le llama estructura FIFO (del inglés First

In First Out), debido a que el primer elemento en entrar será también el primero en

salir.

Page 3: Fifo
Page 4: Fifo

Múltiples Colas

Para las diferentes colas tenemos que tener en cuenta que, cada cola puede tener

diferentes algoritmos interactivos, en otra los procesos por lotes, debemos repartir el

tiempo en nuestra CPU entre las diferentes colas según la carga que tenga cada una,

otra idea útil es migrar los procesos de una cola a otra cuando la situación lo requiera.

Cuando halamos de planificación dos niveles, podemos resaltar que hasta ahora

hemos supuesto que todos los procesos están en memoria, pero que pasa cuando hay

muchos procesos, o poca memoria, y no podemos almacenarlos allí todos, en este

caso una de las mejores soluciones más elegantes consiste en una planificación en 2

niveles, en primer lugar disponemos de una planificación a largo plazo donde situamos

los procesos que no están en memoria, y después hay otra planificación a corto plazo

donde ponemos los procesos que están en memoria y después hay otra planificación a

corto plazo donde ponemos los procesos que están en memoria.

Este tema desengloba muchos recursos, cuando hablamos de planificación por

reparto equitativo, podemos decir que se usa en sistemas multiusuario, esto quiere

decir que tenemos muchas personas accediendo a un mismo ordenador, el sistema

operativo se encarga de ir repartiendo sus recursos entre los distintos usuarios, y que

su reparto sea lo más equitativo posible, de forma que se le asigne menos recursos al

usuario, que ha consumido más de lo que correspondía, y más recursos al que ha

consumido menos de lo que le correspondía.

Aquí el ejemplo:

Cierto sistema operativo posee un algoritmo de planificación de CPU basado en colas

multinivel realimentadas (3 colas), la forma en la que los trabajos son alojados en cada

una de las colas es la siguiente:

1) Todos los trabajos, cuando llegan al sistema son colocados en cola 1m la cual se

planifica de acuerdo a un algoritmo Round Robin, con cuanto tiempo igual 2ms, en

esta cola un trabajo permanecerá si después de ejecutar su primera ráfaga de

CPU, le queda por ejecutar ráfagas inferiores a 5ms, en caso contrario pasaría a la

cola 2 o la cola 3.

2) Un trabajo pasara a la cola 2, en caso de que le quede por ejecutar una ráfaga de

CPU superior o igual a 5ms, este trabajo permanecerá en esta cola hasta que

termine su ejecución y se planifica según Round Robin con cuanto igual 3ms.

3) Un trabajo pasara a la cola 3, en caso de que le quede por ejecutar una ráfaga de

CPU superior o igual a 8ms, este trabajo permanecerá en esta cola hasta que

termine su ejecución y se planifica según un SJF con requisa.