Planificación de discos
Una de las obligaciones del sistema operativo
es usar el hardware de forma eficiente. En el caso de las unidades de disco,
esto implica tener un tiempo de acceso breve y gran ancho de banda de disco. El
tiempo de acceso tiene dos componentes principales.
El tiempo de búsqueda (seek
time) es el tiempo que tarda el brazo del disco en mover las cabezas al
cilindro que contiene el sector deseado. La latencia rotacional es
el tiempo adicional que el disco tarda en girar hasta que el sector deseado
queda bajo la cabeza del disco.
El ancho de banda del
disco es el número total de bytes transferidos, dividido entre el tiempo total
transcurrido entre la primera solicitud de servicio y la finalización de la
última transferencia.
Cada vez que un proceso necesita E/S de o al
disco, emite una llamada al sistema operativo. La solicitud especifica varios
elementos de información:
- Si esta operación es de entrada o de salida
- La dirección en disco para la transferencia
- La dirección en memoria para la transferencia
- El número de bytes por transferir
Si la unidad de disco y controlador deseados
están disponibles, la solicitud puede atenderse de inmediato, si no, todas las
solicitudes de servicios nuevas tendrán que colocarse en la cola de solicitudes
pendientes para esa unidad. En un sistema multiprogramación con muchos
procesos, puede ser común que la cola de disco tenga varias solicitudes
pendientes. Así, cuando se termina de atender una solicitud, el sistema
operativo tiene oportunidad de escoger cuál solicitud pendiente atenderá a
continuación.
Una forma simple de atender a las solicitudes
en el disco es la primero en llegar-primero en ser atendido.
Existen además otros criterios para evaluar las políticas de planificación:
- Capacidad de ejecución
- Media del tiempo de respuesta
- Varianza de los tiempos de respuesta
Es claro que una política de planificación
debe intentar maximizar la capacidad de ejecución, el número de peticiones
servidas por unidad de tiempo. Debido a la planificación se reduce el tiempo
desperdiciado en las esperas de las búsquedas, con lo que se puede mejorar la
media de los tiempos de respuesta. Si una política de planeación no intenta más
que maximizar la capacidad de ejecución sin minimizar al mismo tiempo la
varianza, podría procesar peticiones. (Cuanto menor es la varianza, más
predecible es el sistema).
El objetivo es reducir los tiempos de acceso
en la lectura o escritura de los datos. Además del tiempo de acceso y del
tiempo de transferencia, existen algunos retrasos en las colas que normalmente
tienen asociada una operación de E/S a disco. Cuando un proceso emite una
solicitud de E/S, primero debe esperar en una cola a que el dispositivo esté
disponible. En ese momento, el dispositivo queda asignado al proceso. Si el
dispositivo comparte un único canal de E/S o un conjunto de canales con otras
unidades del disco, puede producirse una espera adicional hasta que el canal
esté disponible. En ese punto se realizará la búsqueda con que comienza el
acceso al disco
Comentarios
Publicar un comentario