Planificacion de Discos
Planificacion de Discos
Planificacion de Discos
Introduccin
Cuando la unidad de disco est operando, el disco gira a
una velocidad constante. Para leer o escribir, la cabeza debe ponerse en la
pista deseada, al comienzo del sector pertinente. Si el sistema es de cabezas
mviles hay que mover la cabeza para elegir la pista. Si el sistema es de
cabezas fijas, habr que seleccionar electrnicamente una de ellas.
En un sistema de cabezas mviles, el tiempo que se tarda en ubicar la cabeza
en la pista de llama tiempo de bsqueda. En cualquier caso, una vez que se
ha seleccionado la pista, el controlador del disco esperar hasta que el sector
apropiado se alinee con la cabeza en su rotacin. El tiempo que tarda el
comienzo del sector en llegar hasta la cabeza se conoce como retardo de
giro o latencia de giro. La suma del tiempo de bsqueda y el retardo de giro
es el tiempo de acceso, es decir, el tiempo que se tarda en llegar a la posicin
de lectura o escritura. Una vez que la cabeza est ubicada, se puede llevar a
cabo la operacin de lectura o escritura a medida que el sector se mueve bajo
la cabeza; esta es la parte de transferencia real de datos de la operacin.
1.1 Trminos a utilizar
Tiempo de latencia: tiempo que se demora en ir de la posicin actual hasta
una posicin adyacente requerida.
Tiempo de bsqueda: tiempo en mover el brazo desde la posicin actual
hasta el nuevo cilindro.
Tiempo de transmisin: tiempo requerido para leer/escribir un registro en
disco.
Tiempo de posicionamiento: del movimiento del cabezal hacia la pista.
Tiempo de transferencia: espera a que el bloque deseado pase bajo el
cabezal.
Vector de bits o mapa: representa en cada bit el estado de un bloque (0 libre,
1 ocupado), si el vector es de un tamao
Lista encadenada: mantener un apuntador al primer bloque, el bloque
contiene un apuntador al siguiente bloque libre. El recorrido de la lista implica
leer cada uno de los bloques.
Primero en entrar, primero en salir (FIFO):
Las solicitudes se procesan en un orden secuencial.
Es una estrategia justa para todos los procesos.
por esa pista, luego por las dems pistas de ese cilindro y luego por el resto de
los cilindros desde el ms exterior hasta el ms interior.
Los discos modernos se organizan en zonas de cilindros. El nmero de
sectores por pista es constante dentro de una zona, pero a medida que se
avanza hacia las zonas internas a las externas el nmero de sectores por pista
aumenta. Las pistas de la zona ms exterior por lo regular contienen 40% ms
sectores que las de la zona ms interna.
Figura 1 -FATIndexada: a travs de un bloque de ndices que rene a todos los apuntadores,
con el objeto de ayudar el acceso director, anlogo a un esquema
de paginacin.
Capacidad de ejecucin
F-SCAN
3.2 Optimizacin de la Bsqueda en Discos
Las estrategias ms comunes de optimizacin de la bsqueda son las
siguientes:
3.2.1 Planificacin FCFS
La forma ms sencilla de planificacin de disco es, desde luego, el servicio
por orden de llegada (FCFS, first come, first served). No proporciona el
servicio ms rpido.
La planificacin FCFS es justa en el sentido de que una vez que llega una
peticin, se fija su lugar dentro de la cola de espera. Una peticin, se fija su
lugar dentro de la cola de espera. Una peticin no puede ser desplazada por la
llegada de otra con prioridad ms alta.
La FCFS es aceptable cuando la carga en un disco es ligera. Pero a medida
que crece la carga, la FCFS tiende a saturar el dispositivo y los tiempos de
respuesta se incrementan. La FCFS ofrece una varianza pequea, pero tiene
tiempos de espera muy grandes.
3.2.2 Planificacin SSTF
Parece razonable atender todas las solicitudes cercanas a la posicin actual de
la cabeza antes de mover la cabeza a una posicin lejana para atender otras
solicitudes. Este supuesto es la base del algoritmo de tiempo de bsqueda
ms corto primero (SSTF, shortest-seek-time-first), que selecciona la
solicitud que tiene el menor tiempo de bsqueda a partir de la posicin actual
de la cabeza.
En esta poltica la peticin que da por resultado la distancia de bsqueda ms
corta (y, con esto, el tiempo de bsqueda ms corto) es la siguiente en ser
servida, aunque esa peticin no sea la primera en la cola.
Los patrones de bsqueda SSTF tienden a estar muy relocalizados, dando
como resultado que las pistas internas y externas reciban un servicio pobre, en
comparacin con las pistas del centro. La SSTF es til en sistemas de
procesamiento por lotes, en los cuales la capacidad de ejecucin es lo ms
importante. Pero la alta varianza de los tiempos de respuesta (es decir, su falta
de predecibilidad) lo hace inaceptable para los sistemas interactivos.
Los datos estn distribuidos a travs de las unidades fsicas del vector.
Una solicitud de lectura puede utilizar cualquiera de los dos discos que
contienen los datos solicitados y que suponga menor tiempo sumando el de
bsqueda y la latencia de giro.
Cuando una unidad falla, los datos todava estn disponibles desde la
segunda unidad.
Desventaja:
Su COSTE requiere dos veces el espacio de disco del disco lgico que soporta.
Puede conseguir altas tasas de solicitudes de E/S si las mismas son de lectura,
cuyo rendimiento puede ser el doble que en RAID 0, pero si las solicitudes son
de escritura su rendimiento talvez no ser el mismo.
NIVEL 2(Redundancia mediante cdigo hamming): Este utiliza una tcnica
de acceso paralelo. Las bandas de este nivel son muy pequeas,
considerndolo como un nico byte o palabra. Se utiliza un cdigo HAMMING
para corregir errores de un solo bit y la deteccin de errores de dos bit.
Cuando se requiere una solicitud de lectura todos los discos son accedidos
simultneamente, ocurriendo lo mismo con una solicitud de escritura y n este
caso tambin son accedidos todos los discos de paridad.
RAID 2 solo ser eficiente cuando se produzcan muchos errores en el disco.
NIVEL 3(Paridad por intercalacin de bits): Este requiere solo un disco
redundante, emplea acceso paralelo. Cuando ha ocurrido algn error, se
calcula un solo bit de paridad para el conjunto de bits en la misma posicin de
todos los discos de datos.
B: TRATAMIENTO DE ERRORES.
A: MEJORA EL TIEMPO DE ACCESO
T. ACCESO = T. POSICIONAMIENTO + T. LATENCIA + T. TRANFERENCIA
De estos tres tiempos el ms significativo es el de posicionamiento. Cuando el
driver permite ir almacenando peticiones pendientes mientras se trata la actual,
se intenta reducir el tiempo medio de posicionamiento aplicando un algoritmo
que decida que peticin de las pendientes atender primero.
B: TRATAMIENTO DE ERRORES
Los discos estn sometidos a una gran variedad de errores. Cuando se
producen el controlador deber avisar al driver para que tome la decisin
pertinente. Los errores ms comunes son:
Errores de programacin: El driver le indica al controlador que una pista,
cilindro, sector que no existe o una direccin de memoria invalida. El
controlador al detectar el error lo trasmite al driver. Este avisa al SW E/S
independiente.
Errores de posicionamiento: Este error se produce por errores mecnicos del
brazo de lectura / escritura. El controlador de disco mantiene internamente cual
es la posicin del brazo de lectura / escritura en cada momento.
Para mover el brazo a otro cilindro manda un pulso a un motor por cada cilindro
que quiera atravesar. Cuando llega al cilindro destino, lee el valor del cilindro
actual (se grabo al principio de la pista al formatear el disco). Si la posicin
actual no coincide con la que se esperaba se produce un error de
posicionamiento, este error suele corregirse recalibrando el brazo (lo manda al
cilindro 0).
Esta accin puede realizarla el controlador o, si este no puede, el driver de
disco (comando RECALIBRABLE)
Errores en el controlador de disco: puede darse la situacin que el
controlador se niegue a aceptar comandos del driver, en este caso el driver
debe recetar el controlador.
5. Manejo de E/S en Windows y Unix
5.1 Manejo de E/S en Unix
El sistema de entrada/salida se divide en dos sistemas complementarios: el
estructurado por bloques y el estructurado por caracteres. El primero se usa
para manejar cintas y discos magnticos, y emplea bloques de tamao fijo (512
o 1024 bytes) para leer o escribir. El segundo se utiliza para atender a las
terminales, lneas de comunicacin e impresoras, y funciona byte por byte.
En general, el sistema Unix emplea programas especiales (escritos en C)
conocidos como manejadores (drivers) para atender a cada familia de
dispositivos de E/S. Los procesos se comunican con los dispositivos mediante
llamadas a su manejador. Adems, desde el punto de vista de los procesos, los
manejadores aparecen como si fueran archivos en los que se lee o escribe; con
esto se logra gran homogeneidad y elegancia en el diseo.
Cada dispositivo se estructura internamente mediante descriptores llamados
nmero mayor, nmero menor y clase (de bloque o de caracteres). Para cada
clase hay un conjunto de entradas, en una tabla, que aporta a los manejadores
de los dispositivos. El nmero mayor se usa para asignar manejador,
correspondiente a una familia de dispositivos; el menor pasa al manejador
como un argumento, y ste lo emplea para tener acceso a uno de varios
dispositivos fsicos semejantes.
Las rutinas que el sistema emplea para ejecutar operaciones de E/S estn
diseadas para eliminar las diferencias entre los dispositivos y los tipos de
acceso. No existe distincin entre acceso aleatorio y secuencial, ni hay un
tamao de registro lgico impuesto por el sistema. El tamao de un archivo
ordinario est determinado por el nmero de bytes escritos en l; no es
necesario predeterminar el tamao de un archivo.
El sistema mantiene una lista de reas de almacenamiento temporal (buffers),
asignadas a los dispositivos de bloques. El Kernel usa estos buffers con el
objeto de reducir el trfico de E/S. Cuando un programa solicita una
transferencia, se busca primero en los buffers internos para ver si el bloque que
se requiere ya se encuentra en la memoria principal (como resultado de una
operacin de lectura anterior). Si es as, entonces no ser necesario realizar la
operacin fsica de entrada o salida.
Existe todo un mecanismo de manipulacin interna de buffers (y otro de manejo
de listas de bytes), necesario para controlar el flujo de datos entre los
dispositivos de bloques (y de caracteres) y los programas que los requieren.
Por ltimo, y debido a que los manejadores de los dispositivos son programas
escritos en lenguaje C, es relativamente fcil reconfigurar el sistema para
Las ventajas de tratar a los dispositivos de E/S en forma similar a los archivos
normales son mltiples: un archivo y un dispositivo de E/S se tornan muy
parecidos; los nombres de los archivos y de los dispositivos tienen la misma
sintaxis y significado, as que a un programa que espera un nombre de archivo
como parmetro puede drsele un nombre de dispositivo (con esto se
logra interaccin rpida y fcil entre procesos de alto nivel).
El sistema Unix ofrece varios niveles de proteccin para el sistema de archivos,
que consisten en asignar a cada archivo el nmero nico de identificacin de
su dueo, junto con nueve bits de proteccin, que especifican permisos de
lectura, escritura y ejecucin para el propietario, para otros miembros de
su grupo (definido por el administrador del sistema) y para el resto de los
usuarios. Antes de cualquier acceso se verifica su validez consultando estos
bits, que residen en el nodo-i de todo archivo. Adems, existen otros tres bits
que se emplean para manejos especiales, relacionados con la clave del super
usuario.
Otra caracterstica de Unix es que no requiere que el conjunto de sistemas de
archivos resida en un mismo dispositivo.
Es posible definir uno o varios sistemas "desmontables", que residen
fsicamente en diversas unidades de disco. Existe una orden (mkfs) que
permite crear un sistema de archivos adicional, y una llamada al sistema
(mount) con la que se aade (y otra con la que se desmonta) uno de ellos al
sistema de archivos global.
El control de las impresoras de una computadora que funciona con el sistema
operativo Unix consiste en un subsistema (SPOOL) que se encarga de
coordinar los pedidos de impresin de mltiples usuarios. Existe un proceso de
Kernel que en forma peridica revise las colas de servicio de las impresoras
para detectar la existencia de pedidos e iniciar entonces las tareas de
impresin. Este tipo de procesos, que son activados en forma peridica por el
ncleo del sistema operativo, reciben en Unix el nombre de daemons
(duendes), tal vez porque se despiertan y aparecen sin previo aviso. Otros se
encargan de activar procesos en tiempos previamente determinados por el
usuario, o de escribir peridicamente los contenidos de los buffers de memoria
en el disco magntico.
5.2 Manejador de entrada y salida de Windows:
Optimizacin de la bsqueda.
Capacidad de ejecucin.
a una velocidad constante. Para leer o escribir, la cabeza debe ponerse en la ...
exa.unne.edu.ar/depar/areas/informatica/
SistemasOperativos/MonogSO/GESTES02.htm
SO - Entrada / Salida
La planificacin de disco puede mejorar el rendimiento y eliminar el
embotellamiento,
que se produce cuando se concentran grandes cargas de peticiones sobre ...
exa.unne.edu.ar/depar/areas/ informatica/SistemasOperativos/SO5.htm