Algoritmos de programación de disco con ejemplos
En términos relativos, la recuperación de datos de los controladores del disco duro siempre es lenta en comparación con el acceso a la CPU y la memoria debido a la naturaleza mecánica del disco magnético. El movimiento del brazo del disco es una operación muy costosa, por lo tanto, los sistemas operativos utilizan algoritmos de programación de disco para reducir el tiempo de búsqueda. A continuación puede encontrar un resumen de algunos de los algoritmos de programación de disco bien conocidos. El algoritmo recibe una cola de posiciones de solicitud (números de seguimiento) y la posición actual del cabezal. La salida del algoritmo es el orden en que se atienden las solicitudes.
Primero llegado, primero en servir (FCFS)
- ¿Qué es el tipo de selección?
- ¿Cómo los algoritmos de programación dinámica son mejores que otros algoritmos?
- ¿Hay alguna relación de recurrencia famosa aparte de Fibonacci?
- ¿Cuáles son los objetivos del aprendizaje de la estructura de datos?
- ¿Cuándo es conveniente resolver un problema usando un algoritmo codicioso?
- Las solicitudes se atienden en el orden en que llegan
- El algoritmo es fácil de implementar.
- Mal algoritmo ya que puede implicar mucha distancia de búsqueda innecesaria
El tiempo de búsqueda más corto primero (SSTF)
- Solicitud de servicio con el menor tiempo de búsqueda desde la posición actual de la cabeza
- Puede matar de hambre algunas solicitudes
- Buen algoritmo para una pequeña lista de solicitudes.
Escaneo o algoritmo de elevador
- El brazo del disco comienza en un extremo del disco y se mueve hacia el otro extremo
- Atiende las solicitudes a medida que se mueve y luego invierte la dirección cuando golpea el otro extremo
- Los algoritmos de escaneo son buenos para cargas pesadas y más justos
C-Scan
- Similar al algoritmo de escaneo, pero la cabeza vuelve al cilindro 0 cuando llega al final del disco
- Trata la lista de cilindros como una lista circular que envuelve el disco
- El tiempo de espera es más uniforme para cilindros cerca del borde del disco.
C-Look
- Similar a C-Scan pero la cabeza solo viaja hasta la última solicitud en cada dirección