Disquetes

Un disco flexible (o disquete) consiste de una membrana flexible, la cual se encuentra cubierta en uno o en ambos lados con una substancia magnética similar a la de los discos rígidos. El disco flexible por si mismo no tiene una cabeza lectora-escritora, esta se encuentra incluida en la unidad. Un disquete se corresponde a lo que es un solo disco en un disco rígido, pero este es de carácter removible, lo que significa que una misma unidad puede ser utilizada para acceder a diferentes disquetes, a diferencia de los discos rígidos en la que cada unidad es indivisible.

Al igual que un disco rígido, un disquete se encuentra dividido en pistas y sectores (y las dos pistas que se corresponden en ambos lados del disquete forman un cilindro), aunque existe mucha menos cantidad de ellas que en un disco rígido.

Una unidad de disquetes soporta en general varios tipos diferentes de discos; por ejemplo, una unidad de 3.5 pulgadas puede utilizar discos de 720 Kb y también de 1,44 Mb. Debido a que la unidad tiene para operar un bit que utiliza para distinguir, y el sistema operativo debe conocer que tan grande (en capacidad) es el disco, existen muchos archivos de dispositivos para unidades de disquetes, uno por combinación de unidad y de tipo de disco. Por ejemplo, el archivo /dev/fd0H1440 es la primera unidad de disquetes (fd0), la cual debe ser una unidad de 3.5 pulgadas, utilizando un disco de alta densidad (H) de 3.5 pulgadas de 1440 kB (1440), es decir, un disquete de alta densidad de 3.5 pulgadas normal.

Para más información sobre las convenciones de nombres para los dispositivos de disquetes, vea XXX (lista de dispositivos).

Los nombres de los archivos de dispositivos para unidades de disquetes son complejos, sin embargo, en Linux existen tipos especiales de dispositivos que pueden detectar automáticamente el tipo de disco flexible que se encuentra en la unidad. Este trabaja intentando leer el primer sector de un disquete recién insertado, utilizando diferentes tipos, hasta que alguno de ellos consiga leer el disquete correctamente. Se requiere que el disquete se encuentre formateado para que este procedimiento funcione. Los archivos de dispositivos automáticos son /dev/fd0, /dev/fd1,..., etc.

Los parámetros que los dispositivos automáticos utilizan para acceder a un disco pueden ser establecidos mediante el programa setfdprm. Este comando es útil en aquellos casos en que desees acceder a un disco flexible que no tiene un tamaño de los que normalmente se utilizan, debido a que por ejemplo, contiene un número de sectores inusual. O también, si por alguna razón la auto detección falla y el archivo de dispositivo no se encuentra.

Linux puede utilizar muchos formatos de discos flexibles no estándar, que se suman a todos los estándar a los que Linux tiene soporte. Algunos de estos requieren que se utilice programas especiales para darles formato. Omitiremos estos tipos de discos por ahora, pero en el momento en que debas utilizar uno de ellos, puedes examinar el archivo /etc/fdprm. Este especifica los parámetros que setfdprm reconoce.

El sistema operativo debe conocer cuando se cambia un disco flexible en la unidad, por ejemplo, para evitar que los datos que están en caché y que pertenecían al disquete que se estuvo utilizando previamente, sigan siendo válidos para el nuevo disquete insertado. Desafortunadamente, la línea serial que se utiliza para esta tarea algunas veces está dañada, y para peor, no siempre notifica cuando se está utilizando una unidad como sucedía con MS-DOS. Si experimentas problemas utilizando disquetes, esta puede ser la razón. La única forma de solucionar este problema es reparando la unidad de disquete.