El disco duro

En el post en el que hablaba del almacenamiento secundario, sus tecnologías y soportes, mencionaba el disco duro como soporte más habitual para almacenar los datos, pero dejaba el tema para tratarlo en otro post y así poder hacerlo con la profundidad que requiere. Pues bien, este es el post en el que te hablo del disco duro, qué es y cómo funciona.

¿Qué es el disco duro?

El disco duro de un ordenador o HDD (Hard Disk Drive) en inglés, es el dispositivo más habitual para almacenar datos de manera persistente. Recordemos que el almacenamiento de datos en el ordenador podíamos clasificarlo en el sistema primario y el secundario. En el primario, representado fundamentalmente por la RAM, guardábamos los datos de manera temporal mientras el ordenador estuviera alimentado con corriente eléctrica, pero estos datos se perdían al apagar el ordenador. En el secundario, guardábamos los datos de manera persistente, es decir, no se perdían al apagar el ordenador.

Disco duro
Disco duro

Estructura física del disco duro

Lo primero que tenemos que conocer es la estructura física del disco duro, sus partes y cómo funcionan.

El disco duro es el principal dispositivo de almacenamiento secundario, y utiliza la tecnología de almacenamiento magnético. Son dispositivos muy complejos, pero al mismo tiempo muy resistentes. Formados por varios discos metálicos colocados de manera concéntrica, de tal forma que tienen el mismo eje y todos giran a la vez. Estos discos son llamados platos, y en sus dos caras están las partículas magnéticas que polarizábamos para almacenar un ‘1’ o un ‘0’ (tecnología de almacenamiento magnético).

Interior de un disco duro
Interior de un disco duro

Si recordamos un poco del almacenamiento magnético, para polarizar las partículas magnéticas usábamos un cabezal de escritura y para leer la polarización que tiene la partícula, un cabezal de lectura. Ambos cabezales había que situarlos en frente de la partícula con la que trabajamos, y para este propósito, el disco duro cuenta con brazos en cuyo extremos se encuentran los cabezales.

Cabezal de disco duro
Cabezal de disco duro

Finalmente, todos estos componentes están montados sobre una placa con la electrónica necesaria para controlar el movimiento coordinado de todos ellos, y de esta forma poder escribir o leer datos del disco.

Geometría del disco duro

La distribución geométrica de todos los componentes que hemos visto que tiene el disco duro, va a determinar cómo se trabaja con él, y en definitiva las capacidades y eficiencia del disco duro. Para definirla, usamos tres parámetros:

  • Número de cabezales: Ya hemos visto lo que eran los cabezales, que empleábamos para leer o escribir. Estaban ubicados en el extremo de los brazo, que los posicionaban sobre las partículas magnéticas, y teníamos dos para cada plato, uno para cada lado.
  • Número de cilindros: En cada plato, por cada cara, tenemos miles de pistas de partículas magnéticas, colocadas de forma concéntrica. El conjunto de todas las pistas con el mismo diámetro, de todas las caras de todos los platos, que se encuentran en la misma vertical, es un cilindro.
Cilindro
Cilindro
  • Número de sectores por pista: Cada una de las pistas concéntricas situadas sobre las caras de los platos, están divididas en sectores, que no es otra cosa más que un trozo de la pista que se corresponde con un arco concreto. Por ejemplo, si el arco fuera de 45 grados, por cada pista tendríamos 8 sectores.

Este elemento de la geometría, el sector, es importante porque representa la mínima cantidad de información que puede ser almacenada. No es posible dividir los datos en cantidades menores. Normalmente cada sector guarda 512 bytes de información, siempre que hablemos de discos magnéticos, en los discos ópticos sería diferente.

Geometría del disco duro
Geometría del disco duro

Con esta información, si conocemos la geometría de un disco duro, resulta inmediato calcular su capacidad. Veámoslo con un ejemplo:

  • Un disco duro tiene:
    • Cabezales: 16
    • Cilindros: 9.600
    • Sectores por pista: 128
    • Tamaño del sector: 512 bytes

Su capacidad vendrá dada por:

  • Capacidad = 16 x 9.600 x 128 x 512 = 10.066.329.600 bytes

Es decir, 10 Gb.

Estructura lógica del disco duro

Trabajando con el disco duro, resulta muy engorroso y complicado manejarse directamente con la estructura física del disco duro, que además puede variar mucho de unos discos duros a otros. Para hacer mucho más intuitivo y practico el manejo del espacio de almacenamiento, se define una estructura lógica del disco duro que nos permite abstraernos de las características físicas del mismo. Empleando esta estructura lógica, podemos recuperar un fichero de datos sencillamente indicando el nombre del mismo, mientras que si interactuáramos directamente con la estructura física tendríamos que ir indicando exactamente a que sectores, de que pistas, de que platos, habría que ir a recuperar los datos.

Pero, ¿en qué consiste la estructura lógica del disco duro? Básicamente, está constituida por dos elementos: Las particiones y los sistemas de archivos.

Particiones

Una partición es una estructura lógica que nos permite organizar los datos en una unidad, entendiendo por esta última, la famosa letra que vemos en el administrador de archivos, que no es otra cosa que la representación y el acceso a una partición.

¡¡Ojo!!, una unidad, o la partición que representa, no tiene por qué equivaler a un disco duro físico. La partición puede abarcar desde una parte de un único disco duro hasta varias partes de varios discos duros. Eso sí, de cara al usuario, se nos presenta como una unidad, un elemento unitario con el que trabajar.

Todo disco duro, tendrá al menos una partición que dependerá del Sistema Operativo que tenga instalado. Y toda partición, tiene un fichero que contiene la ubicación de todos los archivos de la partición, que es conocido como la Tabla de asignación de archivos.

En ocasiones, podemos oír hablar de la partición OEM. Esta no es otra cosa que una partición realizada por el fabricante del ordenador, donde almacena información del equipo y los programas de recuperación para, en caso de necesidad, restaurar el equipo a la configuración que traía de fábrica.

En Windows 10, podemos gestionar las distintas particiones que tenemos desde la utilidad “Administración de Equipos”, en versiones más antiguas desde “Administrador de discos”. Aquí podéis ver el aspecto del interfaz:

Particiones
Particiones

El sistema de archivos

La partición nos permite organizar el espacio del disco duro, pero necesitamos también poder organizar la información, guardarla y recuperarla. De esto último se ocupa el sistema de archivos, que nos permite definir los nombres de los archivos, controlar en qué sectores se guardan y crear carpetas para organizar adecuadamente el contenido del disco. El sistema de archivos es el que nos permite recuperar un fichero indicando solamente el nombre, sin tener que indicar todas las partes físicas del disco duro donde hay almacenados datos del mismo.

Funcionamiento del disco duro

Tras la descripción de la estructura física y lógica del disco duro, estamos en disposición de entender cómo funciona este dispositivo, que es lo que pasa cuando queremos recuperar o guardar datos en el mismo.

Lo descrito para la estructura lógica: las particiones y los sistemas de archivo, es general y valido para todos los Sistema Operativos. Sin embargo, cada uno de estos últimos tiene su propia forma de trabajar con estos elementos. En mi caso, me voy a basar en el Sistema Operativo Windows y el Sistema de Archivos FAT, que es probablemente el más universal.

Para explicar cómo funciona un disco duro en Windows tengo que introducir algunos conceptos más:

  • Sector de arranque: Se llama así al primer sector del disco. Recordemos que el tamaño de un sector era normalmente de 512 bytes. En este sector, se encuentra un programa: el MBR (Master Boot Record), que se ejecuta al iniciarse el Sistema Operativo. Lo que hace este programa es buscar la tabla de particiones y llevarla al sector de arranque.
  • Tabla de particiones: Es un estructura de datos que almacena la información de las distintas particiones que tiene el disco duro.
  • La FAT (File Allocation Table): Su traducción sería algo así como Tabla de localización de ficheros. Como su propio nombre indica, contiene la información sobre donde están almacenados los ficheros en el disco duro, es decir, en que sectores. Consultando esta información, el Sistema Operativo sabrá a que sectores tiene que ir para recuperar todos los datos de un fichero, o que sectores están vacíos y disponibles para almacenar información.

Si perdiéramos esta información, es como si se nos borrara todo el disco duro, porque aunque los datos estén ahí, no sabríamos donde están y no podríamos recuperarlos. Por seguridad, hay dos copias de esta tabla, una de ellas es un back up.

  • Directorios: Es la zona destinada a guardar la estructura de directorios del disco duro.
  • Zona de almacenamiento de datos de usuario: Básicamente, el resto del espacio de disco duro se emplea para guardar información de los usuarios.

Bien, después de introducir estos conceptos, podemos explicar de forma breve como funciona un disco duro en Windows. Cuando este quiere leer o escribir alguna información en el disco duro, habla con el controlador del disco y le solicita que coloque los cabezales de lectura y escritura sobre la tabla de asignación del sistema de archivos, en nuestro ejemplo FAT.

Si lo que quiere el Sistema Operativo es recuperar un fichero, leerá de la FAT la información de los sectores donde se encuentran los datos del fichero, y con esa información, posteriormente irá recuperando los datos de los sectores indicados y guardándolos en la RAM.

Por el contrario, si lo que quiere es guardar un fichero, lo que hará será leer la FAT para saber qué sectores están libres, disponibles para guardar datos. Posteriormente irá guardando los datos del fichero en los distintos sectores y actualiza la lista de los sectores empleados en la FAT.

Este funcionamiento es similar para otros sistemas de archivos. Si alguno estuviera interesado en profundizar en este tema, le recomiendo que revise los sistemas de archivos NTFS, también para Windows, y Mac OS plus para IOS.

Tipos de discos duros

Hasta ahora he descrito el funcionamiento de un tipo concreto de disco duro, aquellos con partes mecánicas móviles que emplean la tecnología de almacenamiento magnético. Podríamos llamarles discos duros mecánicos.

Sin embargo, en los últimos años, otro tipo de soportes de almacenamiento están sustituyéndolos, se trata de los conocidos como discos duros de estado sólido, o por sus siglas en inglés SSD (Solid State Drive). En realidad, simplificándolo mucho, vienen a ser como un pen drive de mucha capacidad, sin partes móviles y formados por memorias semiconductoras. A mi modo de ver están más cercanos a las memorias semiconductoras que a los discos duros tradicionales, lo que ocurre es que al aumentar sus capacidades de almacenamiento han ido desplazando a los discos duros mecánicos en su función de almacenamiento secundario.

De los discos duros SSD hablaremos más adelante. En este apartado, me centrare en los tipos de discos duros mecánicos, con partes móviles que podemos escuchar cuando funcionan.

La manera más habitual de clasificar este tipo de discos duros es por su tipo de conexión, atendiendo a la cual tenemos los estándares: ATA, SATA y SAS.

ATA (Advanced Technology Attachment)

Es un standard antiguo que permite conectar en paralelo el disco duro a la placa base, normalmente a través de un bus de 40 líneas.

Si oyes hablar de IDE o EIDE, ambos en realidad se refieren a este estándar. IDE (Integrated Drive Electronics) es el nombre empleado comercialmente y EIDE es un IDE mejorado. También puedes escuchar el término PATA, haciendo referencia a Parallel ATA.

Estandard ATA
Estandard ATA

En cualquier caso, este standard viene siendo reemplazado por el SATA.

SATA (Serial ATA)

Como su nombre indica, en realidad es la evolución del ATA pero con un interfaz serie. Cabe preguntarse: ¿Por qué pasarlo a serie, si irá más lento? Pero como las velocidades de funcionamiento de todos los circuitos han aumentado considerablemente, con un interfaz serie se alcanzan velocidades muy interesantes y se tiene la simplicidad y ahorro de coste de este tipo de interfaces.

Si tienes un ordenador personal de sobremesa, lo más probable es que tengas un disco de este tipo en su versión SATA III. Los discos duros externos suelen ser de esta tecnología con otros conectores serie, normalmente USB (Universal Serial Bus) o FireWire (IEEE 1394), ambas conexiones serie de gran velocidad y ampliamente usadas en una gran variedad de dispositivos.

Estandard SATA
Estandard SATA

SAS (Serial Attached SCSI)

Este tipo de discos duros es el que se emplea en entornos profesionales, ya que son más fiables que los SATA, aunque también más caros.

Como habrás podido deducir de su nombre, provienen de los famosos SCSI, que entre otras cosas han evolucionado de una conexión paralela a otra serie. En efecto, al final se están imponiendo las conexiones serie a las paralelas, por ser más sencilla y barata, cumpliendo con los requerimientos de velocidad.

Estandard SAS
Estandard SAS

El discos de estado sólido (SSD)

El disco de estado sólido o SSD (Solid State Drive), por sus siglas en inglés, en realidad es equivalente a un gran pen drive, pero más sofisticado. Utiliza memorias de semiconductores para almacenar toda la información, por lo que no necesita partes móviles. Recordemos que los discos duros tradicionales, HDD (Hard Disk Drive), usaban la tecnología de almacenamiento magnético, que obligaba a colocar los cabezales de escritura y lectura, sobre las partículas magnéticas que se quisieran leer o escribir.

El no tener partes móviles es una de las ventajas de los discos SSD porque reducen significativamente la probabilidad de fallo mecánico. Aunque ciertamente los HDD han mejorado muchísimo y son altamente fiables, todavía podemos oír que si habríamos un HDD este dejará de funcionar al instante, como si estuviera al vacío. Lo más probable es que siga funcionando durante un tiempo más bien corto, hasta que el polvo depositado en los platos acabe por estropearlo.

Pero bueno, volvamos a los SSD, que son los que nos ocupan este apartado. Estos tienen dos bloques de memoria, el primero constituido por las memorias semiconductoras donde guardaremos los datos, la zona que podríamos llamar permanente, y el segundo, la zona temporal, constituido por memorias cache.

Las memorias caché son las más rápidas, pero son volátiles. Constituyen la zona temporal que empleamos para aumentar la velocidad de acceso a los datos. Con todo ello, los SSD van a ser también más rápidos que los HDD. Entonces cabe preguntarse porque todavía se siguen viendo estos últimos, y la respuesta es por precio y capacidad, son más baratos y almacenan más cantidad de datos.

Todo esto manejado por un chip controlador, que lo gestiona todo y se las entiende con la CPU, facilitándole la vida.

Para acabar, os dejo una imagen que muestra ambos discos, donde es fácil identificar a cada uno y apreciar las diferencias:

HDD versus SSD
HDD versus SSD

NOTA:

Este post es parte de la colección “Arquitectura de Ordenadores”. Puedes ver el índice de esta colección aquí.