
Tengo una pregunta que me he estado planteando desde que mi primer sistema operativo se congeló debido a un intento de leer un disquete desde una unidad que no existe. ¿Por qué los sistemas operativos intentan eso? ¿No les es posible detectar la ausencia de una unidad conectada a la placa base?
Respuesta1
La forma en que funcionan las antiguas unidades de disquete no estaba controlada directamente por el sistema operativo, sino por un hardware especializado llamado controlador de disquete. El sistema operativo solicitaría leer desde un disquete con el controlador de disquete y, si no había ningún disquete conectado, el controlador se detendría durante bastante tiempo esperando que regresara la señal, lo que provocaría que el sistema operativo pareciera congelado. El sistema operativo no tendría control sobre este proceso y, por tanto, no había forma de evitar que se congelara.
La razón de esto es que el hardware de las unidades de disquete proviene en gran medida de la década de 1970, una época en la que el hardware era realmente caro. Agregar funcionalidad al chip para detectar si el disquete no estaba allí era simplemente demasiado costoso, por lo que siempre se suponía que el disquete estaba allí para seguir siendo rentable. Es por eso que tendría que especificar qué unidades de disquete estaban realmente presentes en el BIOS. Este aspecto del hardware heredado duró toda la vida de los disquetes porque cambiar los estándares de hardware de las unidades de disquete de IBM rompería la compatibilidad con diferentes sistemas operativos.
Respuesta2
Por lo general, no hay ningún problema que yo sepa si la búsqueda de disquete está deshabilitada en el BIOS. En las muchas computadoras en las que he trabajado, el error causado por la inexistencia de la unidad de disquete se corrigió cambiándolo en el BIOS.