Articulo de referencia

Algoritmo LOOK

LOOK es un algoritmo de planificación de discos duros que se utiliza para determinar el orden en que se procesan las nuevas solicitudes de lectura y escritura del disco. Descrip...

LOOK es un algoritmo de planificación de discos duros que se utiliza para determinar el orden en que se procesan las nuevas solicitudes de lectura y escritura del disco.

Descripción

El algoritmo LOOK, similar al algoritmo SCAN , atiende las solicitudes en ambas direcciones de barrido del cabezal del disco; sin embargo, además, "mira" hacia adelante para ver si hay solicitudes pendientes en la dirección del movimiento del cabezal. Si no hay solicitudes pendientes en la dirección del movimiento del cabezal, el recorrido del cabezal del disco se invertirá a la dirección opuesta y se podrán atender las solicitudes en la otra dirección. En la planificación LOOK, el brazo avanza solo hasta las solicitudes finales en cada dirección y luego invierte la dirección sin llegar hasta el final. Consideremos un ejemplo: dado un disco con 200 cilindros (0-199), supongamos que tenemos 8 solicitudes pendientes: 98, 183, 37, 122, 14, 124, 65, 67 y que el cabezal de lectura/escritura se encuentra actualmente en el cilindro 53. Para completar estas solicitudes, el brazo se moverá primero en orden ascendente y luego en orden descendente después de llegar al final. Entonces, el orden en que se ejecutará es 65, 67, 98, 122, 124, 183, 37, 14. [ 1 ]

LOOK evita el problema de la escasez de recursos en el algoritmo de búsqueda de menor tiempo (SSTF). Esto se debe a que LOOK prioriza las pistas agrupadas en los bordes más externos e internos del disco, en detrimento de las áreas recorridas recientemente. Además, LOOK prioriza los trabajos que llegan más recientemente (en promedio).

Variantes

C-LOOK

Una variante de LOOK es el LOOK circular (C-LOOK). Su objetivo es eliminar el sesgo de LOOK hacia los grupos de pistas en los bordes del plato. C-LOOK básicamente solo escanea en una dirección: desde el interior hacia el exterior o desde el exterior hacia el interior. Al llegar al final, el cabezal simplemente regresa al principio. Esto aprovecha la capacidad de muchas unidades para mover el cabezal de lectura/escritura a altas velocidades si se desplaza por un gran número de pistas (por ejemplo, el tiempo de búsqueda desde la última pista hasta la pista 0 es menor de lo esperado y, por lo general, considerablemente menor que el tiempo que se tardaría en buscar pista por pista). El gran salto entre las solicitudes de los extremos no se considera un movimiento del cabezal, ya que los cilindros se tratan como una lista circular.

MIRADA N y MIRADA F

Los algoritmos N-LOOK y F-LOOK se diseñaron para contrarrestar el sesgo de LOOK hacia las solicitudes más recientes. Ambos dividen la cola de solicitudes en subcolas más pequeñas y las procesan en orden (de la más antigua a la más reciente). N-LOOK se denomina así porque la cola de solicitudes se divide en N subcolas. F-LOOK es una simplificación que utiliza solo dos colas, pero con doble búfer. Mientras F-LOOK procesa una cola, todas las solicitudes nuevas se dirigen a la otra. Para explicar estos algoritmos, utilizaremos el ejemplo de un disco con 200 pistas, donde el cabezal de lectura/escritura comienza en la pista 100. La cola de solicitudes contiene, en orden, solicitudes para las pistas: 55, 58, 18, 90, 160, 38. Suponemos que la cola se divide en dos, con la más antigua conteniendo las solicitudes para las pistas: 55, 58, 18, 90. En este caso, N-LOOK y F-LOOK se comportan de la misma manera. Además, observe que, en esta configuración, no importa en qué dirección se mueva el cabezal, ya que todas las pistas solicitadas son menores de 100, por lo que solo se moverá en la dirección decreciente de pistas. Aunque el número promedio de pistas recorridas es el mismo que en LOOK en el peor de los casos, N-LOOK y F-LOOK son, en cierto sentido, más justos que el LOOK tradicional. El sistema de subcolas limita la latencia máxima que un proceso puede esperar entre una solicitud y su procesamiento (a diferencia de SSTF, que puede dejar a los procesos sin respuesta durante períodos de tiempo arbitrarios).

ASPECTO EN FORMA DE S

El algoritmo S-LOOK (Shortest LOOK) es una extensión del algoritmo LOOK que permite gestionar los casos en los que el cabezal del disco se encuentra entre las solicitudes más alejadas. Este algoritmo está diseñado para decidir qué dirección debe atenderse primero, en lugar de seguir buscando en la misma dirección hasta que lleguen las nuevas solicitudes. Dado que el tiempo de búsqueda es directamente proporcional a la distancia de búsqueda, nuestro objetivo es minimizar dicha distancia y, por lo tanto, reducir el tiempo de búsqueda.

Actuación

LOOK tiene tiempos de búsqueda promedio ligeramente mejores que SCAN. C-LOOK tiene una varianza ligeramente menor en el tiempo de búsqueda que LOOK, ya que el tiempo de búsqueda en el peor de los casos se reduce casi a la mitad.

Véase también

Referencias

  1. "Lección 17 - Planificación de discos" .