Mejoras de tiempos de desplazamiento

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar

La mayor parte del tiempo que se tarda en realizar una búsqueda en un disco magnético corresponde al de desplazamiento, es decir, el tiempo que el cabezal tarda en moverse al cilindro en el que se encuentra su objetivo. Si se debe atender varias peticiones, el orden en el que se atienden puede ser tal que el recorrido total sea más corto (aunque también es importante que haya una varianza pequeña y no se les dé demasiada preferencia a algunos cilindros). Esta sección recoge varios de los criterios posibles.

FCFS (por orden de llegada "FIFO")

Las peticiones se atienden en el mismo orden en que se reciben. Su inconveniente es que se realizan muchos desplazamientos del cabezal, especialmente si se realizan accesos consecutivos a bloques muy alejados entre sí.


SSTF (Shortest Seek Time First)

También conocido como atención por menor tiempo de búsqueda: Ordena todas las solicitudes y selecciona el lote de las n primeras. Si no se llega a las n peticiones tras un tiempo se realiza la búsqueda. Su mayor desventaja es que aplaza las peticiones lejanas indefinidamente cuando n tiende a infinito (n -> ∞).

N-SCAN (criterio del ascensor)

Se escoge un sentido preferente: ascendente o descendente. El cabezal, en ese sentido, atiende todas las peticiones que puede, una detrás de otra, en orden ascendente/descendente hasta llegar a la última de las peticiones del lote. Luego, el cabezal hace lo mismo en el otro sentido, hasta llegar a la última.

     |  
     |   /\   |   /\
     |  /  \  |  /  \
     | /    \ | /    \
  ___|/______\|/______\__
     |

Como se puede observar, el cabezal pasa con más frecuencia por la parte central, y el tiempo máximo que puede tardar en llegar a estas es menor que el de los extremos. Por tanto, hay una descompensación a favor de las partes centrales, que puede ser remediada con el siguiente criterio.

Notas:

  • La gráfica resultante no tiene por qué ser simétrica, dependerá de los sectores a los que accedamos.
  • El número de sectores integrantes de cada lote será el indicado por la N, ejemplo: 3-SCAN, 4-SCAN, etc.

C-SCAN (Circular-Scan)

La primera parte es igual: se escoge un sentido y se van atendiendo las peticiones que se pueden en ese sentido una detrás de otra hasta llegar a la última. Al llegar a la última, en vez de recorrer en el sentido opuesto, el cabezal se mueve a la más lejana en el sentido y vuelve a realizar el recorrido en el sentido preferente. Así se elimina el trato favorable a las partes centrales, con el coste de reducir el tiempo medio de atención del conjunto de peticiones.

     |                                |   
     |   /.   /.    /.                |\   .\   .\   .
     |  / .  / .   / .      ó         | \  . \  . \  .
     | /  . /  .  /  .                |  \ .  \ .  \ .
  ___|/___./___._/___._            ___|___\.__ \.___\._ 
     |                                |

Ejemplos

Orden de acceso: 3, 80, 15, 45, 1, 79, 4

Solución FCFS

    80        x
     |       / \                 x
     |      /   \               / \
    50     /     \             /   \
     |    /       \   x       /     \
     |   /         \ / \     /       \
    20  /           x   \   /         \
     | x                 \ /           x
  ___|/___________________x______________
     |
     | 3      80    15 45 1      79    4


Solución 3-SCAN

    80        x|        |
     |       / |x       |
     |      /  | \      |
    50     /   |  \     |
     |    /    |   x    |
     |   /     |    \   |
    20  x      |     \  | 
     | x       |      \ |x 
  ___|/________|_______x|__
     |
     | 3 15  80|79 45  1|4

11.4 Mejoras en la demora de rotación