Estrategias de búsqueda

17
ESTRATEGIAS DE BÚSQUEDA Manejador de dispositivos de E/S

Transcript of Estrategias de búsqueda

ESTRATEGIAS DE BÚSQUEDA

Manejador de dispositivos de E/S

FCFS

SSTF

SCAN

LOOK

La forma más sencilla de planificación de disco es,desde luego, el servicio por orden de llegada (FCFS,first come, first served). No proporciona el serviciomás rápido.

La planificación FCFS es justa en el sentido de queuna vez que llega una petición, se fija su lugardentro de la cola de espera. Una petición, se fija sulugar dentro de la cola de espera. Una petición nopuede ser desplazada por la llegada de otra conprioridad más alta.

Veamos un ejemplo:

Supongamos la siguiente situación: Un disco de cabezal móvil, con 200cilindros, numerados del 0 a 199 en el que:

Posición de la cabeza: 53

Cola: 95, 175, 32, 117 15, 131, 47, 56

Como podemos ver en la imagen determina que el movimiento totalde la cabeza para satisfacer las peticiones de la línea es el valor de 661cilindros.. Este es el resultado de sumar el desplazamiento de la cabezaentre las consultas ejecutadas. Así, Por lo tanto :

De 53 a 95 es un movimiento de 42 cilindros.

De 95 a 175 da lugar a un movimiento de 80 cilindros.

De 175 a 32 da lugar a un movimiento de 143 cilindros.

De 32 a 117 da lugar a un movimiento de 85 cilindros.

117-15 da lugar a un movimiento de 102 cilindros.

De 15 a 131 da lugar a un movimiento de 116 cilindros.

. De 131 a 47 da lugar a un movimiento de 84 cilindros.

De 47 a 56 es un movimiento del cilindro 9.

Con esa suma de los movimientos parciales de la cabeza calculael movimiento total de la cabeza:

Movimiento de la cabeza Total = 42 143 80 102 116 84 85 +9 =661cilindros.

Como podemos ver en la imagen de este algoritmo tiene unrecorrido total de alta (en este ejemplo tenemos los movimientosde la cabeza, tomando el valor total de 661 cilindros) y losmovimientos bruscos, pero tiene una implementación sencilla.

En esta política la petición que da por resultado ladistancia de búsqueda más corta (y, con esto, eltiempo de búsqueda más corto) es la siguiente en serservida, aunque esa petición no sea la primera en lacola.

Los patrones de búsqueda SSTF tienden a estar muyrelocalizados, dando como resultado que las pistasinternas y externas reciban un servicio pobre, encomparación con las pistas del centro. La SSTF es útilen sistemas de procesamiento por lotes, en los cualesla capacidad de ejecución es lo más importante. Perola alta varianza de los tiempos de respuesta (es decir,su falta de predecibilidad) lo hace inaceptable paralos sistemas interactivos.

Este algoritmo mejora sustancialmente eldesempeño.

La planificación SSTF es en esencia una forma deplanificación de trabajo más corto primero (SJF) y, aligual que la planificación SFJ, puede cause inaniciónde algunas solicitudes.

Aunque el algoritmo SSTF representa una mejorasustancial respecto al algoritmo FCFS, no es óptimo.

Veamos un ejemplo:

Supongamos la siguiente situación: Un disco de cabeza móvil con 200 cilindros, numerados de 0 a 199 donde,

Posición Cabezal: 53

Cola: 95, 175, 32, 117, 15, 131, 47, 56

Como podemos ver en la imagen determina que el movimiento total de la cabeza para satisfacer las peticiones de la línea es el valor de 204 cilindros. Este es el resultado de sumar el desplazamiento de la cabeza entre las consultas ejecutadas. Por lo tanto:

De 53 a 56 es un movimiento de 3 cilindros.

De 56 a 47 es un movimiento del cilindro 9.

De 47 a 32 es un movimiento de 15 cilindros.

De 32 a 15 se produce un movimiento de 17 cilindros.

15-95 es un movimiento de 80 cilindros.

De 95 a 117 da lugar a un movimiento de 22 cilindros.

De 117 a 131 da lugar a un movimiento de 14 cilindros.

De 131 a 175 da lugar a un movimiento de 44 cilindros.

Con esa suma de los movimientos parciales de la cabeza calcula el

movimiento total de la cabeza:

Movimiento de la cabeza Total = 3 9 15 17 80 22 14 44 = 204cilindros.

Como podemos ver en la imagen de este algoritmo tiene un recorrido total

hacia abajo (en el ejemplo que tenemos los movimientos de la cabeza,

tomando el valor total de 204 cilindros), pero la cabeza oscila en la zona

central que se puede presentar con el hambre, ya que la entrada de la lista

Aplicaciones cerca que se está ejecutando puede causar un retraso indefinido a las

solicitudes no son más próxima a éste se está ejecutando.

SCAN

C- SCAN

N- SETP SCAN

SCAN: las cabezas se mueven de un extremo a otro del disco, atendiendo las solicitudes que se van encontrando.

Tiempos de servicio acotados, y más variables en los extremos que en el centro.

Veamos un ejemplo:

C-Scan

Con SCAN, al llegar a un extremo y cambiar desentido, se encuentran por lo general pocassolicitudes.La mayor densidad estará en el extremo opuesto, conlas solicitudes que llevan más tiempo esperando.C-SCAN (Circular SCAN): las cabezas se muevendel primer cilindro al último atendiendo solicitudes,y retornan al principio.Tiempos de espera más uniformes.El retorno consume relativamente poco tiempo, porquese hace sin paradas.

Ejemplo con C-Scan

En esta estrategia, el brazo del disco se mueve de un lado a otro como en SCAN, pero sólo da servicio a aquellas peticiones que se encuentran en espera cuando comienza un recorrido particular. Las peticiones que llegan durante un recorrido son agrupadas y ordenadas para un servicio óptimo durante el recorrido de regreso.

La SCAN de n-pasos ofrece un buen rendimiento de la capacidad de ejecución y de la media de los tiempos de respuesta. Su característica más significativa es una menor varianza de los tiempos de respuesta que las planeaciones SSTF y SCAN convencionales. La SCAN de n-pasos evita la posibilidad de postergación indefinida que tiene lugar si un gran número de peticiones que llegan al cilindro que está siendo servido y guarda estas peticiones para ser servidas durante el recorrido de regreso.

LookC-look

En la práctica, ningunos de estos dos algoritmos se implementan así. Por lo regular, el brazo sólo llega hasta la última solicitud en cada dirección y luego cambia de dirección inmediatamente, sin primero ir hasta el extremo del disco. Estas versionas de SCAN y C-SCAN se llaman LOOK y C-LOOK, porque miran si hay una solicitud antes de continuar en una dirección dada.