Dispositivo de control de lectura
Descripción general
 Mejore la velocidad de lectura del dispositivo de disco que realiza la duplicación. ] Medios para almacenar la posición del cabezal de grabación con respecto a cada dispositivo de disco y medios para almacenar la posición del cabezal de impresión en el medio de almacenamiento cada vez que se realizan lectura y escritura y en el momento de la lectura de datos, Comparación de medios para comparar la posición del cabezal de grabación de cada uno de los dispositivos de disco con una posición de grabación de destino en el disco; medios de comparación para comparar datos de un dispositivo de disco que tiene un cabezal de grabación cerca de una posición de grabación de destino Y medios de control para controlar a fin de leer los datos.
Campo técnico
A un sistema informático que tiene una pluralidad de dispositivos de disco, y más particularmente a un dispositivo de control de lectura de datos en un sistema que realiza el emparejamiento de dos dispositivos de disco y realiza un proceso de duplicación en el momento de la escritura.
Antecedentes de la técnica
En un sistema que realiza la duplicación, es común usar dos dispositivos de disco en pares. Al escribir datos en estos dos dispositivos de disco, la escritura se realiza simultáneamente o secuencialmente a ambos dispositivos de disco.
Por otro lado, en el momento de la lectura, la lectura se realiza solo desde uno de los dispositivos de disco predeterminados que se ha determinado de antemano. Por lo tanto, en el caso de escritura, los mismos datos se escriben en la misma área para los dos dispositivos de disco, por lo que inmediatamente después, los cabezales de grabación de ambos dispositivos de disco se ubican en la misma posición, es decir, con el último sector al que se accedió Está en el cilindro del número.
Sin embargo, en el caso de la lectura, dado que solo se lee desde un dispositivo de disco, es habitual que la posición donde existe el cabezal de grabación difiera entre ambos dispositivos de disco al final del proceso de lectura.
Tarea de solución
En el sistema que realiza la creación de reflejos, el procesamiento de escritura se realiza en dos dispositivos de disco, por lo que es inevitable que el tiempo de procesamiento sea teóricamente necesario en comparación con un sistema que solo escribe en un único dispositivo de disco sin duplicación .
También en la lectura, no solo se requiere un dispositivo de disco sino también dos dispositivos leídos desde dos dispositivos de disco, y se requiere más tiempo de procesamiento. Por lo tanto, cuando se realiza la duplicación, se garantiza la operación sin interrupción en el momento de la falla del disco como su ventaja original, pero la mayoría de las veces cuando el dispositivo de disco está funcionando normalmente, en comparación con el sistema sin duplicación , Existe la desventaja de que el rendimiento está deteriorado.
Por cierto, cuando se utiliza un programa de aplicación general, el número de veces de lectura es varias veces mayor que el de escribir en un dispositivo de disco. Sin embargo, convencionalmente, como los datos solo se leen desde un dispositivo de disco predeterminado, incluso si el otro dispositivo de disco tiene un cabezal de grabación más cercano al área de destino de lectura, se desperdicia tiempo de búsqueda de cabeza innecesario. Es inevitable salir.
Además, existe la desventaja de que el rendimiento que se leerá desde los dos dispositivos de disco como se describió anteriormente también se deteriora en el rendimiento en comparación con un sistema que no realiza la duplicación. Sumario de la invención Es un objetivo de la presente invención proporcionar un aparato de control de lectura que mejore el rendimiento de todo el sistema compensando la degradación del rendimiento del procesamiento de escritura que no puede evitarse en principio aumentando la velocidad de procesamiento de lectura desde el dispositivo de disco. .
Solución
Según la presente invención, se proporciona un sistema para realizar la duplicación en el momento de escribir datos en un dispositivo de disco que tiene una pluralidad de dispositivos de disco accesibles al azar, que comprende: medios para almacenar la posición del cabezal de grabación para cada dispositivo de disco; La posición del cabezal de grabación de cada dispositivo de disco almacenado en los medios de almacenamiento y la posición de grabación de destino en el disco , Y medios de control para controlar a fin de leer datos de un dispositivo de disco que tiene un cabezal de grabación cerca de una posición de grabación objetivo de acuerdo con el resultado de la comparación, Por ejemplo.
Según la presente invención, tras recibir un comando de lectura desde un dispositivo host, la posición del cabezal de grabación de cada dispositivo de disco se compara con la posición de grabación objetivo en el disco, respectivamente, y desde el dispositivo de disco que tiene el cabezal de grabación más cercano a la posición de grabación , Y lee los datos del objetivo.
La figura 3 es un diagrama de bloques que muestra una configuración de hardware del sistema de ejemplo. 1 es una CPU para controlar todo el sistema, 2 es una memoria para almacenar programas y datos ejecutados por la CPU 1, y 3 es un bus. Varios controladores para controlar la entrada y salida a / desde un dispositivo externo están conectados a este bus 3, 4 es un controlador de disco para controlar la entrada / salida con el dispositivo de disco, 6 es un controlador de impresora para controlar la impresora, 7 es otro El controlador de comunicación es para comunicarse con el sistema de la FIG.
Dos dispositivos de disco, el disco A y el disco B están conectados al controlador de disco 4 a través del bus de E / S 5. El controlador de disco 4 empareja los dos dispositivos de disco y realiza la duplicación en el momento de escribir datos. En la presente realización, primero, después de escribir el procesamiento en el disco A, los mismos datos se graban en el disco B Intento escribirlo Por lo tanto, de acuerdo con un solo comando de escritura recibido de la CPU 1, se escriben completamente los mismos datos en dos dispositivos de disco para prepararse para un accidente inesperado tal como la destrucción del medio de disco.
En el dispositivo de disco de la presente realización, se usa una dirección de bloque lógico en lugar del número de cilindro, el número de cabecera y el número de sector para gestionar la ubicación de almacenamiento de datos. Esto se hace para todos los sectores, desde el primer sector del cabezal 0 del cilindro de circunferencia más exterior hasta el último sector del último cabezal del cilindro de circunferencia más interior, o para todos los sectores de algunos sectores Es un número adjunto al que está dividido en.
Al usar esta dirección de bloque lógico, incluso cuando se accede a una serie de datos almacenados en dos o más pistas, la CPU 1 no tiene que ser consciente de la conmutación de la pista, y la CPU 1 instruye al controlador de disco 4 Puede emitir una orden de lectura / escritura.
Por otro lado, el controlador de disco 4 incluye una tabla de conversión de direcciones para convertir la dirección del bloque lógico en un número de cilindro, un número de cabecera y un número de sector que son direcciones físicas. Al recibir la dirección de bloque lógico de la CPU 1, la convierte usando la tabla de conversión de direcciones para obtener el número de cilindro real, el número de cabezal y el número de sector. Luego, mediante la designación directa del número obtenido, se lleva a cabo el control de movimiento del cabezal de grabación del disco A y el disco B, y se llevan a cabo la escritura y la lectura.
Además, el controlador de disco 4 también tiene una tabla de gestión para almacenar la posición física del cabezal de grabación en el momento del final del procesamiento de escritura y lectura. La figura 4 muestra el contenido de esta tabla de gestión 40, e incluye información de fallo 41 que indica si el disco A y el disco B funcionan normalmente o no, y la información de fallo 41 que indica si el disco A o el disco B han fallado. Y una dirección de sector 42 que indica la dirección física a la que se ha accedido.
Una vez que se completa el acceso, si no hay nuevos comandos de lectura o escritura, el cabezal de grabación permanecerá en esa posición, de modo que haya un cabezal de grabación cerca del sector al que se accedió por última vez. Por lo tanto, al almacenar la dirección del sector, es posible conocer la posición actual del cabezal de grabación.
Obsérvese que la dirección del sector aquí se refiere a una combinación de número de cilindro, número de cabeza y número de sector en esta realización. Además, es arbitrario reemplazar esto con la dirección de bloque lógico mencionada anteriormente.
A continuación, se describirá la operación de la presente realización con referencia a los diagramas de flujo de las Figuras 1 y 2. Primero, el caso del procesamiento de escritura se describirá con referencia a la FIG.
La CPU 1 reserva la memoria intermedia 10 en la memoria 2 y prepara los datos para escribir en el disco en la memoria intermedia. Entonces, la dirección de bloque lógico a escribir se designa al controlador de disco 4, se emite el comando de escritura, y se entregan la dirección y el tamaño de datos del almacenamiento intermedio 10 (paso S101).
En respuesta a esto, el controlador de disco 4 convierte la dirección de bloque lógico designada en el número de cilindro real, el número de cabecera y el número de sector usando la tabla de conversión (paso S102), mueve el cabezal de grabación del disco A a esa posición Después del control, los contenidos del buffer 10 se escriben (S103). Al hacerlo, el número de sector, el número de cabezal y el número de cilindro se incrementan secuencialmente según el tamaño de los datos mientras se escribe, y cuando se completa la escritura de todos los datos, la dirección del sector que indica la posición del cabezal de grabación se almacena en la tabla de gestión 40 en el sector dirección 42 (S104). Al mismo tiempo, almacena en la información de fallo 41 de la tabla de gestión 40 que la escritura se completa normalmente. Alternativamente, si la escritura no se realiza normalmente, se almacena como una falla en la información de falla 41 (paso S105).
Posteriormente, el controlador de disco 4 realiza el mismo procesamiento para el disco B. Es decir, el número de cilindro, el número de cabezal y el número de sector obtenido mediante la conversión anterior se asignan al disco B, se mueve el cabezal de grabación, se escribe el contenido del buffer 10 (S106) y se establece la posición del cabezal de grabación en ese momento , Y lo almacena en la dirección del sector 42 del disco B en la tabla de gestión 40 (paso S107). Finalmente, se almacena en la información de falla 41 si la escritura se ha realizado normalmente o no (S108).
A continuación, el proceso de lectura se describirá con referencia a la figura 2. Primero, la CPU 1 reserva un buffer 10 para leer datos en la memoria 2, emite un comando de lectura al controlador de disco 4, lee la dirección del bloque lógico a leer y el tamaño de lectura, la dirección del buffer 10 (Paso S201).
En respuesta a este comando de lectura, el controlador de disco 4 primero convierte la dirección del bloque lógico en un número de cilindro objetivo, un número de cabezal y un número de sector utilizando una tabla de conversión (paso S202) y se refiere a la tabla de gestión 40 Luego, se verifica si el disco A y el disco B son normales o no (S203). Si ambos discos han fallado, el hecho se notifica a la CPU 1 y el procesamiento finaliza (S204). Si solo uno de los dispositivos de disco es normal, el proceso salta al paso S208 (paso S205).
Posteriormente, el controlador de disco 4 compara la dirección de sector 42 de ambos discos almacenados en la tabla de gestión 40 con la dirección física objetivo obtenida en la etapa S202 (paso S206). Como resultado de la comparación En respuesta, se selecciona el dispositivo de disco que tiene la dirección de sector 42 más cerca de la dirección física objetivo (paso S206).
Luego, controlando el cabezal de grabación del dispositivo de disco, se leen los datos desde el cilindro objetivo, la cabeza y el sector al buffer designado 10 (S208). Cuando se completa la lectura de todos los datos, el cabezal de grabación en ese momento A la dirección del sector 42 de la tabla de gestión 40 (paso S209). Al mismo tiempo, se almacena de forma similar en la información de fallo 41 de la tabla de gestión 40 independientemente de si la lectura se completa normalmente (S 210).
Como se describió anteriormente, en el momento de la lectura, la posición donde el cabezal de grabación existe se verifica para cada uno de los dos dispositivos de disco antes de leer, y se selecciona el dispositivo que tiene el cabezal de grabación más cercano a la dirección del sector de destino Lo es Como resultado, el tiempo de búsqueda de cabeza siempre se minimiza y se accede a los datos de destino en el tiempo más corto.
Incidentalmente, inmediatamente después del proceso de escritura, las posiciones de los cabezales de grabación son las mismas en ambos dispositivos de disco, de modo que los contenidos de la dirección de sector 42 en la tabla de gestión 40 también son los mismos. Por lo tanto, en tal caso, el disco A se selecciona a la fuerza en el momento de la selección del dispositivo de disco en los pasos S206 y S207. Sin embargo, si el disco A ha fallado, el disco B se selecciona en el paso anterior S205.
Además, en la descripción anterior, la tabla de gestión 40 se proporciona en el controlador de disco 4, y el controlador de disco 4 realiza el almacenamiento de la última dirección de sector accedida en la tabla de gestión 40 y la selección del dispositivo de disco para la lectura, Esto puede ser hecho por la CPU 1.
Es decir, la tabla de gestión 40 y la tabla de conversión se proporcionan en el lado CPU 1, la CPU 1 procesa los pasos S202 a S207 en el momento de la lectura, luego designa directamente el número de cilindro, el número de cabezal y el número de sector en el controlador de disco 4 Se puede emitir una instrucción de lectura. Una vez completada la lectura, la CPU 1 almacena la información de falla 41 en respuesta al éxito de lectura o aviso de falla devuelto por el controlador de disco 4 y almacena la dirección de sector a la que finalmente se accedió en la dirección de sector 42 de la tabla de gestión 40.
Efecto de la invención
De acuerdo con la presente invención, en el momento de la lectura de datos desde el dispositivo de disco, es posible seleccionar un dispositivo que tenga un cabezal de grabación más cercano a la dirección objetivo en el medio de disco. Luego, el tiempo para mover el cabezal de grabación a la posición de destino siempre se minimiza, y como resultado, se puede acceder y leer los datos del objetivo en el tiempo más corto.
6 es un diagrama de flujo que muestra un proceso de escritura en un dispositivo de disco en la realización de la figura 1.
2 es un diagrama de flujo que muestra un proceso de lectura del dispositivo de disco en la realización de la figura 2;
La figura 3 es un diagrama de bloques que muestra una configuración de la realización en la figura 3.
La figura 4 es un diagrama que muestra un ejemplo de contenido de una tabla de gestión.
1 CPU
2 memoria
4 Controlador de disco
6 Disco A
7 Disco B
40 Mesa de administración
Reclamo
Lo que se reivindica es: 1. Un sistema para realizar duplicación en el momento de escribir datos en un dispositivo de disco que tiene una pluralidad de dispositivos de disco accesibles al azar, que comprende: medios de almacenamiento para almacenar la posición del cabezal de grabación para cada dispositivo de disco; La posición del cabezal de grabación de cada unidad de disco almacenada en la unidad de almacenamiento cuando se leen los datos y la posición del cabezal de grabación de cada dispositivo de disco almacenado en la unidad de almacenamiento como el objeto en el disco Y un medio de control para controlar la lectura de datos desde un dispositivo de disco que tiene un cabezal de grabación cerca de una posición de grabación objetivo de acuerdo con el resultado de la comparación .
2. Aparato de control de lectura según la reivindicación 1, en el que los medios de control de almacenamiento almacenan la dirección de sector del sector al que se accedió por última vez en el momento de la lectura y escritura en los medios de almacenamiento como la posición del cabezal de impresión .
3. El aparato de control de lectura según la reivindicación 2, en el que la dirección de sector es un número de cilindro de un cilindro en el que está presente un sector al que se accede por última vez.
4. Aparato de control de lectura según la reivindicación 2, en el que la dirección de sector es una dirección de bloque lógico obtenida dividiendo equitativamente un área completa del disco y dándose un número de serie.
Dibujo :
Application number :1997-016339
Inventors :三洋電機株式会社
Original Assignee :中村賢一、富沢杉雄