Detección del tamaño del búfer o caché en unidades de disco duro ATA
Las unidades de disco ATA se definen mediante una especificación de ingeniería escrita por un consorcio industrial denominado comité T13. l sector informático utiliza el documento de especificación para garantizar que exista compatibilidad entre los fabricantes de las unidades, los de los sistemas y conjuntos de chips, los de los adaptadores de host, los de los sistemas operativos y los programadores de software, entre otros. Existen especificaciones y grupos similares para SATA, SCSI, USB y 1394.
La especificación actual se denomina ATA-8. La primera especificación, ATA-1 (1991), definió los primeros comandos (basados en la interfaz ESDI), entre los que se encontraba el comando Identify Device (Identificar dispositivo). El comando Identify Device (ECh) en la especificación ATA envía 512 bytes de información binaria sobre una unidad de disco duro. Esta información incluye elementos como el número de modelo, el número de serie y la capacidad. Asimismo, incluye características tales como la compatibilidad con utilidades de diagnóstico y la capacidad de funcionar a determinadas velocidades. Cuando se enciende un ordenador, por ejemplo, ejecuta el comando Identify Device para detectar automáticamente el tamaño de la unidad.
La palabra 21 de la respuesta del comando Identify Device en ATA-1 (1991) se definió como sigue:
"Tamaño de búfer en incrementos de 512 bytes (0000h=no especificado)".
La palabra 21 de la respuesta en ATA-3 (1997) se cambió a “Obsoleto”.
La palabra 21 de la respuesta en ATA-8 (2006) se define actualmente como “Retirado”.
A pesar de que no es necesario, incluso con la modificación de la especificación ATA-3, muchos fabricantes de unidades siguen utilizando la palabra 21 para indicar el tamaño de búfer. A lo largo de los años, se ha escrito una gran cantidad de utilidades de comparación y de herramientas de diagnóstico de las unidades de disco duro en las que se espera que existan datos en la palabra 21. Por ejemplo, si la palabra 21 muestra 8000h, equivaldría a un tamaño de caché de 16 MB (8000h = 32.768 x 512 = 16.777.216 bytes).
Seagate no ofrece ningún software de diagnóstico que muestre el tamaño de búfer de la unidad. Las especificaciones, incluido el tamaño de búfer, de todos los modelos de unidad de Seagate se encuentran disponibles en este sitio web, a través de la herramienta de búsqueda Encontrar soporte.
¿Por qué se indica el tamaño de caché como 0 MB?
Si el software de diagnóstico o de comparación de la unidad de disco duro identifica el tamaño de búfer como 0 MB, es probable que su unidad disponga, en realidad, de 32 MB de caché. Consulte las especificaciones publicadas de su unidad para obtener una confirmación. El valor máximo en absoluto que se podría almacenar en la palabra 21 es FFFFh. Una unidad de disco moderna con 32 MB de búfer necesitaría uno o más bytes para representar el tamaño de búfer: 10000h. Los primeros 2 bytes de 10000h (palabra 21) son 0000h o cero.
Es importante comprender que cualquier valor o información recuperada por el comando de identificación del dispositivo son datos simples proporcionados por el fabricante. En otras palabras, cuando se indica un búfer de 8 MB, solo está leyendo datos que proporciona el diseñador de la unidad. No es una detección automática del chip de memoria real. Cuando una unidad informa de 0 MB, no es una detección automática del tamaño, solo está leyendo los datos almacenados en la palabra 21.
Por lo tanto, hasta que el comité T13 adopte una nueva especificación ATA para admitir la visualización de tamaños de caché mayores que FFFFh, el tamaño del búfer será solo una especificación publicada.