PLANIFICACIÓN DE DISCO CUANDO LA UNIDAD DE DISCO

Fachdidaktik Spanisch ii Lvleiterin mag Isolde Seeleitner Planificación un






PLANIFICACIÓN DE DISCO

PLANIFICACIÓN DE DISCO

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 móviles hay que mover la cabeza para elegir la pista. Si el sistema es de cabezas fijas, habrá que seleccionar electrónicamente una de ellas.

En un sistema de cabezas móviles, el tiempo que se tarda en ubicar la cabeza en la pista de llama tiempo de búsqueda. 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 rotación. 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 búsqueda y el retardo de giro es el tiempo de acceso, es decir, el tiempo que se tarda en llegar a la posición de lectura o escritura. Una vez que la cabeza está ubicada, se puede llevar a cabo la operación 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 operación.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO POLÍTICAS DE PLANIFICACIÓN DE DISCOS

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.

NOMBRE

DESCRIPCION

COMENTARIOS

Selección en función del demandante

RSS

Planificación aleatoria.

Para análisis y simulación.

FIFO

Primero en entrar, primero en salir.

El mas justo de todos.

PRI

Prioridad del proceso.

El control se lleva fuera de la gestión de la cola del disco.

LIFO

Último en entrar último en salir.

Maximiza uso de recursos y cercanías.

Selección en función del elemento solicitado

SSTF

Primero el mas corto.

Gran aprovechamiento y colas pequeñas.

SCAN

Recorre el disco de un lado a otro.

Mejor distribución del servicio.

C-SCAN

Recorre el disco en un solo sentido.

Menor variabilidad en el servicio.

SCAN de N-pasos

Scan de N registros a la vez.

Garantía de servicio.

F-SCAN

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

Sensible a la carga.

 

SOFTWARE  RAID

 

   Con el uso de múltiples discos, existen varias formas que se pueden organizar los datos. Dificultando el desarrollo de esquemas de bases de datos  que se pueden utilizar en múltiples plataformas y S.O.  La industria a acordado un sistema estándar para el diseño de base de datos sobre múltiples discos, llamado RAID (Vector Redundante de Discos Independientes), este esquema consta de siete niveles que distinguen distintas arquitecturas de diseño, compartiendo tres características comunes:          

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  RAID es un conjunto de unidades de disco físicos vistas por el S.O.  como una sola unidad lógica.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  Los datos están distribuidos a través de las unidades físicas del vector.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  La capacidad del disco redundante se utiliza para almacenar información 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 múltiples discos de menor capacidad y distribuye los datos que luego son accedidos simultáneamente a ellos por múltiples discos, esto mejora el rendimiento de las E/S y aumenta su capacidad. Para compensar la disminución de la fiabilidad, RAID hace uso de la información de paridad almacenada, que permite la recuperación de los datos perdidos como consecuencia de un fallo del disco.

NIVELES RAID

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 0: Los usuarios y los datos del sistema están distribuidos a lo largo de todo el vector de discos, este esta dividido en bandas que pueden ser bloques físicos, sectores o alguna otra unidad. Al conjunto de bandas consecutivas lógicamente, se lo denomina franja. Presenta la ventaja de que si una única solicitud de E/S esta formada por múltiples bandas contiguas; estas podrán gestionarse en paralelo reduciendo la transferencia de E/S.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   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 físicos independientes.

Aspectos positivos:

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   Una solicitud de lectura puede utilizar cualquiera de los dos discos que contienen los datos solicitados y que suponga menor tiempo sumando el de búsqueda y la latencia de giro.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   Una solicitud de escritura requiere la actualización de las bandas correspondientes a ambos discos, solo se puede hacer en paralelo. Cuando se actualiza una sola banda, el software de gestión del vector de disco primero debe calcular y actualizar los bits de paridad y luego la banda real.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   Cuando una unidad falla, los datos todavía están disponibles desde la segunda unidad.

Desventaja, su COSTE requiere dos veces el espacio de disco del disco lógico 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.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 2: Este utiliza una técnica de acceso paralelo. Las bandas de este nivel son muy pequeñas, considerándolo como un único byte o palabra. Se utiliza un código HAMMING para corregir errores de un solo bit y la detección de errores de dos bit.

Cuando se requiere una solicitud de lectura todos los discos son accedidos simultáneamente, ocurriendo lo mismo con una solicitud de escritura y n este caso también son accedidos todos los discos de paridad.

RAID 2 solo será eficiente cuando se produzcan muchos errores en el disco.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 3: Este requiere solo un disco redundante, emplea acceso paralelo. Cuando ha ocurrido algún error, se calcula un solo bit de paridad para el conjunto de bits en la misma posición 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 están divididos en pequeñas 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.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 4: Utiliza una técnica 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

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 5: Al igual que el RAID 4 se diferencia en la distribución de las bandas de pariedad a través 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.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO   NIVEL 6: Se realizan dos cálculos 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 penalización de escritura, porque cada escritura afecta a dos bloques de pariedad.

PRINCIPIOS DE SOFTWARE DE DISCO

El tiempo que se tarda desde que el Driver de disco programa al controlador para realizar la lectura de un sector, hasta que la información 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 añadidos    si la información del disco esta cifrada y el algoritmo de cifrado/ descifrado lo incrementa el controlador, después de realizar el CHECKSUM  el controlador deberá descifrar los datos.

Características genéricas 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. TRANFERENCIA

De 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 petición de las pendientes atender primero.

B: TRATAMIENTO DE ERRORES

Los discos están sometidos a una gran variedad de errores. Cuando se producen el controlador deberá avisar al driver para que tome la decisión pertinente. Los errores mas comunes son:

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO         Errores de programación: El driver le indica al controlador que una pista, cilindro, sector que no  existe  o una dirección de memoria invalida. El controlador al detectar el error lo trasmite al driver. Este avisa al SW E/S independiente.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO          Errores de posicionamiento: Este error se produce por errores mecánicos del brazo de      lectura / escritura. El controlador de disco mantiene internamente cual es la posición 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 posición 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 acción puede realizarla el controlador o, si este no puede, el driver de disco (comando RECALIBRABLE)

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO          Errores en el controlador de disco: puede darse la situación que el controlador se niegue a aceptar comandos del driver, en este caso el driver debe recetar el controlador.

DMA- ACCESO DIRECTO A MEMORIA

El acceso directo a memoria se inventó con el propósito de liberar al CPU de la carga de atender a algunos controladores de dispositivos, adecuada para grandes transferencias de datos. El controlador del periférico se comunica directamente con la memoria, sin intervención de al CPU. Se necesita un componente especial que supervise la transferencia, el encargado de esto es el controlador del DMA .

El controlador DMA contiene un registro de dirección, un registro de datos, un contador de palabras y una lógica de control.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  REGISTRO DE DIRECCIÓN: especifica la posición de memoria a usar como fuente o destino del dato a transferir

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  REGISTRO DE DATOS: contiene el dato que esta en ruta entre la memoria y los periféricos

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  CONTADOR DE PALABRAS : número de palabras de datos que quedan para ser transferidos en la operación de entrada / salida.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  LÓGICA DE CONTROL: se encarga de solicitar los buses a la CPU o provocar una interrupción. Tanto el registro de dirección como el contador de palabras se configuran como puertos de salida configurables tal que puedan ser inicializados por programas ejecutables en la CPU.

Cuando El periférico solicite o produzca un dato en la interfaz el controlador del DMA activa la línea de petición del DMA, la CPU responde a esta petición dejando los buses libres para que puedan ser usados, el controlador del DMA asume el control de los buses y procede a transferir datos directamente entre periférico y memoria, se ejecuta una rutina de inicialización, el registro de dirección se carga con la dirección de comienzo de la zona de memoria afectada por la transferencia, el registro contador de palabras se carga con el numero de palabras a ser transferidos, se van actualizando los registros según avanza la trasferencia, la cual finaliza cuando el contador de palabras se pone a cero. El controlador DMA indica el fin de la tarea enviando una petición de interrupción a la CPU, la CPU solo interviene al principio y al final de la transferencia

Existen varias formas de realizar el DMA según la estrategia de control de los buses que exista por parte del controlador del DMA, por ráfagas, por robo de ciclo, transparente y por demanda.

 

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  POR RÁFAGAS: el controlador del DMA no libera los buses hasta que acaba la transferencia de un bloque completo de datos, se obtiene una alta velocidad en la transferencia, el procesador permanece inactivo largos periodos de tiempo, pues no pueden obtenerse instrucciones  de memoria mientras se produce la transferencia.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  POR ROBO DE CICLO: dispone de datos a transferir toma el control de los buses durante un ciclo de CPU en el que transmite una palabra, al transmitir la palabra cede los buses a la CPU que continua con su actividad normal hasta un nuevo robo, los buses se reparten entre controlador DMA y CPU, se alcanza menor velocidad de transferencia, la CPU mantiene su actividad a menor velocidad evitando periodos largos de tiempo inactiva.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  TRANSPARENTE: similar a robo de ciclo pero el controlador del DMA roba los buses a la CPU los ciclos en los que esta no los utiliza ( Por ejemplo: fase de decodificación de una instrucción, no disminuye la velocidad de procesamiento de la CPU, no llega a alcanzarse una buena velocidad de transferencia.

PLANIFICACIÓN DE DISCO  CUANDO LA UNIDAD DE DISCO  POR DEMANDA: cuando el controlador DMA dispone de datos a transferir, solicita el control de los buses y los mantiene hasta que termina de enviar toda la información, alta velocidad de transferencia, baja velocidad de procesamiento de CPU.   

 

 






Tags: disco ----------------------, de disco, disco, planificación, unidad, cuando