PLANIFICACIÓN DE DISCO

download PLANIFICACIÓN DE DISCO

of 6

Transcript of PLANIFICACIÓN DE DISCO

PLANIFICACIN DE DISCOCuando 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.

POLTICAS DE PLANIFICACIN DE DISCOSEl objetivo es reducir los tiempos de acceso en la lectura o escritura de los datos. Adems del tiempo de acceso y del tiempo de transferencia, existen algunos retrasos en las colas que normalmente tienen asociada una operacin 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 bsqueda con que comienza el acceso al disco. NOMBRE DESCRIPCION COMENTARIOS

Seleccin en funcin del demandante RSS FIFO PRI LIFO Planificacin aleatoria. Primero en entrar, primero en salir. Prioridad del proceso. ltimo en entrar ltimo en salir. Para anlisis y simulacin. El mas justo de todos. El control se lleva fuera de la gestin de la cola del disco. Maximiza uso de recursos y cercanas.

Seleccin en funcin del elemento solicitado SSTF SCAN Primero el mas corto. Recorre el disco de un lado a otro. Gran aprovechamiento pequeas. y colas

Mejor distribucin del servicio.

C-SCAN SCAN pasos F-SCAN de N-

Recorre el disco en un solo sentido. Scan de N registros a la vez.

Menor variabilidad en el servicio. Garanta de servicio.

Scan de N pasos, con N = longitud de la Sensible a la carga. cola al comienzo del ciclo del Scan.

SOFTWARE RAIDCon el uso de mltiples discos, existen varias formas que se pueden organizar los datos. Dificultando el desarrollo de esquemas de bases de datos que se pueden utilizar en mltiples plataformas y S.O. La industria a acordado un sistema estndar para el diseo de base de datos sobre mltiples discos, llamado RAID (Vector Redundante de Discos Independientes), este esquema consta de siete niveles que distinguen distintas arquitecturas de diseo, compartiendo tres caractersticas comunes:RAID es un conjunto de unidades de disco fsicos vistas por el S.O. como una sola unidad lgica.

Los datos estn distribuidos a travs de las unidades fsicas del vector.La capacidad del disco redundante se utiliza para almacenar informacin de paridad, que garantiza la recuperabilidad de datos en caso de fallo del disco.

La estrategia RAID reemplaza unidades de disco de gran capacidad por mltiples discos de menor capacidad y distribuye los datos que luego son accedidos simultneamente a ellos por mltiples discos, esto mejora el rendimiento de las E/S y aumenta su capacidad. Para compensar la disminucin de la fiabilidad, RAID hace uso de la informacin de paridad almacenada, que permite la recuperacin de los datos perdidos como consecuencia de un fallo del disco.

NIVELES RAIDNIVEL 0: Los usuarios y los datos del sistema estn distribuidos a lo largo de todo el vector de discos, este esta dividido en bandas que pueden ser bloques fsicos, sectores o alguna otra unidad. Al conjunto de bandas consecutivas lgicamente, se lo denomina franja. Presenta la ventaja de que si una nica solicitud de E/S esta formada por mltiples bandas contiguas; estas podrn gestionarse en paralelo reduciendo la transferencia de E/S. NIVEL 1: La redundancia de los datos se consigue duplicando los mismos, los datos son divididos de la misma forma que en RAID0; pero cada banda se corresponde con dos disco fsicos independientes. Aspectos positivos:

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. Una solicitud de escritura requiere la actualizacin de las bandas correspondientes a ambos discos, solo se puede hacer en paralelo. Cuando se actualiza una sola banda, el software de gestin del vector de disco primero debe calcular y actualizar los bits de paridad y luego la banda real. 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: 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: 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. En el caso de un fallo de disco, se accede a la unidad de paridad y se reconstruyen los datos desde los dispositivos restantes. Debido a que los datos estn divididos en pequeas bandas, RAID 3 puede conseguir una tasa de transferencia de datos muy alta. Cualquier solicitud de E/S involucrara una transferencia de datos en paralelo desde todos los discos de datos solo se puede ejecutar una solicitud de E/S. Disminuyendo el rendimiento en un entorn orientado a transacciones. NIVEL 4: Utiliza una tcnica de acceso independiente, por lo que se puede satisfacer las solicitudes de E/S individuales. Son mas apropiados para aplicaciones que requieren tasas altas de solicitudes de E/S, y son relativamente menos apropiados para aplicaciones que requieren tasas altas de transferencias de datos NIVEL 5: Al igual que el RAID 4 se diferencia en la distribucin de las bandas de pariedad a travs de todos los discos, por lo tanto evita el potencial cuello de botella en la E/S del sistema RAID 4 que tiene solo un disco de paridad.

NIVEL 6: Se realizan dos clculos distintos de pariedad, y se almacenan en bloques independientes de diferente discos, la ventaja es la disponibilidad de datos son extremadamente alta. Por otro lado sufre una importante penalizacin de escritura, porque cada escritura afecta a dos bloques de pariedad.

PRINCIPIOS DE SOFTWARE DE DISCOEl tiempo que se tarda desde que el Driver de disco programa al controlador para realizar la lectura de un sector, hasta que la informacin de este esta en la memoria: T. POSICIONAMIENTO + T. LATENCIA + T. TRANSFERENCIA (buffer-controlador) + T. CHECKSUM + T. TRANSFERENCIA (controlador-memoria) Normalmente el tiempo de CHECKSUM es despreciable. En algunos casos puede existir tiempos aadidos si la informacin del disco esta cifrada y el algoritmo de cifrado/ descifrado lo incrementa el controlador, despus de realizar el CHECKSUM el controlador deber descifrar los datos. Caractersticas genricas de los driver de disco son: A: MEJORA EL TIEMPO DE ACCESO. B: TRATAMIENTO DE ERRORES.A: MEJORA EL TIEMPO DE ACCESO

T. ACCESO = T. POSICIONAMIENTO + T. LATENCIA + T. TRANFERENCIADe estos tres tiempos el mas 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. 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 mas 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.

E/S EN UNIX SVR4 En UNIX, cada dispositivo de E/S tiene asociado un archivo especial, gestionado por el sistema de archivos; as se ofrece una interfaz uniforme y bien definida con los usuarios y los procesos. En la Figura 1 se puede observar la estructura lgica del sistema de E/S. En UNIX hay dos tipos de E/S: amortiguada y no amortiguada. La E/S amortiguada aprovecha los buffers del sistema, mientras que la no amortiguada utiliza DMA, realizando directamente la transferencia entre el mdulo de E/S y la zona de E/S del proceso. Con E/S amortiguada se puede usar dos clases de memorias intermedias: sistemas de memoria cache y colas de caracteres. CACHE DE BUFFER La cache de buffer en UNIX es esencialmente una cache de disco. Como la cache de buffer y la zona de E/S del proceso residen ambas en la memoria principal, se usar DMA para llevar a cabo una copia de memoria a memoria. Esta accin no gastar ningn ciclo del procesador, pero consumir ciclos del bus. Cuando se hace una referencia a un nmero de bloque fsico de un dispositivo en particular, el sistema operativo comprueba primero si el bloque est en el buffer de la cache. Para minimizar el tiempo de bsqueda, la lista de dispositivos se organiza como una tabla de dispersin. Despus de que se haya asignado un buffer a un bloque de disco, no podr ser usado por otro bloque hasta que todos los dems buffers se hayan usado. COLA DE CARACTERES El dispositivo de E/S escribe en una cola de caracteres, de la que lee el proceso o, el proceso escribe y el dispositivo lee de ella. De esta manera, las colas de caracteres solo podrn ser ledas una sola vez; a medida que se lee cada carcter, ste es destruido. Este mecanismo es distinto al del buffer de la cache, donde se puede leer varias veces.

E/S NO AMORTIGUADA Es el mtodo ms rpido de realizar E/S para un proceso. Los procesos que realizan E/S no amortiguada quedan bloqueados en la memoria principal y no pueden ser expulsados al disco. Esta condicin reduce las oportunidades de expulsin inmovilizando parte de la memoria principal y reduciendo, por lo tanto, el rendimiento global del sistema. Adems, el dispositivo de E/S se paraliza junto al procesador mientras dure la transferencia, quedando inasequible para otros procesos. DISPOSITIVOS UNIX UNIX reconoce cinco clases de dispositivos: Unidades de disco, Unidades de cinta, Terminales, Lneas de comunicacin, Impresoras.