Está en la página 1de 24

SISTEMAS DE

ALMACENAMIENTO
Planificación del disco
■ Una de las responsabilidades del sistema operativo es utilizar de manera eficiente el
hardware disponible, esta responsabilidad implica tener un tiempo de acceso rápido y
un gran ancho de banda.
■ Cuando un proceso necesita realizar una operación de E/S hacia o desde el disco,
ejecuta una llamada al sistema operativo con la siguiente información:
– Si la operación es de entrada o salida
– Cuál es la dirección de disco para la transferencia
– Cuál es la dirección de memoria para la transferencia
– Cuál es el número de sectores que hay que transferir
■ En un sistema de multiprogramación con múltiples procesos, la cola del disco puede
tener a menudo varias solicitudes pendientes.
■ Cuando se completa una solicitud, el SO selecciona cuál es la solicitud pendiente a dar
servicio.
Planificación FCFS
■ Considere una cola de disco en la que hubiera una serie de solicitudes de E/S dirigidas a
ciertos bloques en los cilindros.
98, 183, 37, 122, 14, 124, 65, 67,
Planificación SSTF (Shortest seek time first)
■ El algoritmo SSTF selecciona la solicitud
que tenga el tiempo de búsqueda mínimo
con respecto a la posición actual del
cabezal.
■ SSTF selecciona la solicitud pendiente
que esté más próxima a la posición
actual del cabezal.

■ La planificación SSTF es, esencialmente,


un tipo de planificación SJF y puede
provocar la muerte por inanición de
algunas solicitudes.
Planificación SCAN (algoritmo de exploración)
■ El grafo del disco comienza en uno de los
extremos del disco y se mueve hacia el
otro extremo, dando servicio a las
solicitudes a medida que pasa por cada
cilindro, hasta llegar al otro extremo del
disco y se invierte la dirección del
movimiento del cabezal dando servicio a
las solicitudes.
Algoritmo C-SCAN
■ Al igual que SCAN, C-SCAN mueve el
cabezal de un extremo del disco al otro,
la diferencia es que no se da servicio a
ninguna solicitud en el viaje de vuelta.
■ Trata a los cilindros como si fuera una
lista circular, conectando el cilindro final
con el primer cilindro.
Planificación LOOK
■ En la práctica, los algoritmos SCAN y C-
SCAN no se pueden implementar.
■ El brazo va hasta el cilindro
correspondiente a la solicitud final en
cada dirección, luego invierte su
dirección inmediatamente, sin llegar
hasta el extremo del disco.
■ SCAN y C-SCAN se denominan
planificación LOOK y C-LOOK, ya que
miran si hay una solicitud antes de
continuar moviéndose en una
determinada dirección.
■ Los algoritmos de planificación de disco pueden mejorar el ancho de banda
efectivo, el tiempo medio de respuesta y la varianza del tiempo de respuesta.
■ El sistema operativo es responsable de la inicialización del disco, del arranque
desde el disco y de la recuperación de bloques defectuosos.
– Formateo del disco
– Bloque de arranque
– Bloques defectuosos
■ La gestión del espacio de intercambio es una tarea de bajo nivel del sistema
operativo, la memoria virtual utiliza el espacio del disco como una extensión de la
memoria principal.
– Linux permite utilizar múltiples espacios de intercambio.
SISTEMAS DE
ENTRADA Y SALIDA
Hardware de E/S

■ El papel del sistema operativo en la E/S de la computadora consiste en gestionar y


controlar las operaciones y dispositivos de E/S.
■ Las computadoras trabajan con una variedad de tipos de dispositivos: Dispositivos de
almacenamiento, de transmisión, de interfaz humana.
■ La comunicación de los dispositivos en los sistemas informáticos es enviando señales a
través de un cable o el aire.
■ Cada dispositivo se comunica con la máquina a través de un punto de conexión (puerto),
un puerto serie por ejemplo.
■ Si los dispositivos usan un conjunto común de hilos, la conexión se denomina bus.
■ Los buses se utilizan dentro de la arquitectura de los sistemas informáticos.
¿Cómo puede proporcionar comandos y datos el procesador a
una controladora para llevar a cabo una transferencia de E/S?
■ La controladora dispone de uno o más registros para los datos y señales de control.
■ El procesador se comunica con la controladora leyendo y escribiendo patrones de bits
en dichos registros.
■ La comunicación utiliza instrucciones de E/S especiales que especifican la
transferencia de un byte, palabra, o dirección de puerto de E/S.
■ La instrucción de E/S configura las líneas de bus para seleccionar el dispositivo
apropiado y para leer o escribir bits en un registro del dispositivo.
■ La controladora de dispositivo puede soportar una E/S mapeada en memoria.
■ Los registros de control del dispositivo están mapeados en el espacio de direcciones del
procesador.
■ La CPU ejecuta las solicitudes utilizando instrucciones estándar de transferencia de
datos para leer y escribir los registros de control del dispositivo.
■ Un puerto de E/S está compuesto por 4 registros:
– Registro de Estado
– Registro de Control
– Registro de Entrada de Datos
– Registro de Salida de Datos

■ La figura siguiente muestra las direcciones usuales de puertos de E/S en un PC.


■ El host lee el registro de entrada de datos para obtener la entrada.
■ El host escribe en el registro de salida de datos para enviar la salida.
■ El registro de estado contiene bits que el host puede leer.
– Estos bits indican estados como:
■ Si se ha completado la ejecución del comando actual.
■ Si hay disponible un byte para ser leído en el registro de entrada de datos
■ Si se ha producido una condición de error en el dispositivo.
■ El registro de control puede ser escrito por el host para iniciar un comando o para camiar
el modo de un dispositivo.
Sondeo
■ Sondeo hace referencia a una operación de consulta constante, generalmente
hacia un dispositivo de hardware.
■ En muchas arquitecturas, para sondear un dispositivo basta con tres ciclos de
instrucciones de CPU
– Leer un registro del dispositivo
– Efectuar una operación de and lógica para extraer un bit de estado
– Saltar si ese bit es distinto de cero.
■ La operación básica de sondeo resulta eficiente.
■ El sondeo pasa a ser ineficiente cuando se ejecuta de manera repetida para encontrar
raras veces un dispositivo para ser servido mientras otras tareas útiles de
procesamiento se quedan sin hacer.
Interrupciones
■ El mecanismo básico de interrupción permite a la CPU responder a un suceso asíncrono,
como es el caso en que una controladora de dispositivo pasa a estar lista para ser
servida.
■ En SO modernos se requiere funciones más sofisticadas de tratamiento de
interrupciones:
1. Se necesita poder diferir el tratamiento de una interrupción durante las secciones
de procesamiento crítico.
2. Se requiere una forma eficiente de despachar la interrupción a la rutina de
tratamiento de interrupciones apropiada para un cierto dispositivo sin necesidad
de sondear primero todos los dispositivos para ver cuál ha generado la
interrupción.
3. Se requiere interrupciones multinivel, el SO debe distinguir entre interrupciones de
alta y baja prioridad de forma inmediata.
Acceso directo a memoria
■ La mayoría de los datos están antes o después en la memoria RAM, los
intercambios entre esta y el resto de elementos son muy frecuentes, estos
intercambios son conducidos por el procesador.
■ Si se consigue que en determinados casos, la memoria pueda intercambiar
datos con otro periférico sin intervención del procesador, el rendimiento del
sistema se incrementará con el procesador libre para otras tareas.
■ El Acceso Directo a Memoria (DMA) es un método rápido para transferir datos de
forma directa de un dispositivo periférico a la memoria del sistema por medio de
circuitería especializada o un microprocesador exclusivo, sin pasar por el
procesador central.
Acceso directo a memoria
Interfaz de E/S de las aplicaciones
■ Para acceder a cada tipo general se utiliza un conjunto estandarizado de funciones,
una interfaz.
■ Los módulos del kernel denominados controladores del dispositivo están
personalizados internamente para cada dispositivo pero exportan una interfaz
estándar.
■ El propósito de la capa de controladores de dispositivo es ocultar a ojos del
subsistema de E/S del kernel las diferencias existentes entre los controladores de
dispositivo.
■ Hacer el subsistema de E/S independiente del hardware reduce el trabajo del
desarrollador del SO y beneficia a los fabricantes de hardware.
■ El subsistema de E/S del kernel proporciona numerosos servicios: planificación de
E/S, almacenamiento en búfer, almacenamiento en caché, gestión de colas de
impresión, reserva de dispositivos y el tratamiento de errores.
■ Los dispositivos
■ Los elementos hardware básicos implicados en las operaciones de E/S son los buses, las
controladoras de dispositivo y los propios dispositivos.
■ El módulo del Kernel que controla un dispositivo se denomina controlador de dispositivo.
■ La interfaz de llamadas al sistema que se proporciona a las aplicaciones está diseñada
para gestionar varias categorías básicas de hardware.
■ STREAMS es una implementación y una metodología para hacer que los controladores
sean reutilizables y fáciles de emplear, con ello se pueden apilar los controladores,
pasando los datos a través de ellos de forma secuencial y bidireccional para su
procesamiento.
■ Las llamadas de E/S al sistema son costosas en términos de tiempo de procesador, por la
gran cantidad de niveles de software existentes entre un dispositivo físico y la aplicación.

También podría gustarte