Der Bug im Floppy-Drive

12.11.1999

Nach übereinstimmenden Darstellungen von NEC und Toshiba können Fehlfunktionen des Floppy-Disk-Controllers und ein daraus resultierender Datenverlust ausschließlich beim Schreiben auf eine Diskette eintreten. Dazu müssen verschiedene Faktoren zusammenkommen: Zum einen muß auf einem PCI-Bussystem ein "Overrun" (eine Überlastung) durch mehrere Anwendungen hervorgerufen werden. Das heißt, daß eine vorgegebene Zeitspanne für die Datenübertragung überschritten wird. Zweitens muß diese Überlastung exakt beim Schreiben des letzten Bytes einer Disketten-Partition geschehen.

Ein Overrun tritt beispielsweise ein, wenn mehrere Prozesse gleichzeitig gestartet sind, die versuchen, Daten auf dem Bus zu transportieren. Diese Konstellation ist in Single-Task-Umgebungen, etwa unter DOS oder unter Windows bis zur Version 3.11, nicht möglich. Selbst in Multitasking-Umgebungen (beispielsweise Windows 95, 98 und NT) ist ein Fehler nach Angaben der Hersteller auszuschließen, wenn nur Windows-Programme laufen und nicht zusätzlich etwa eine DOS-Applikation gefahren wird.

Fallen der Overrun und das Schreiben des letzten Bytes einer Partition zeitlich zusammen, wird dieses Byte nicht korrekt auf den Datenträger geschrieben. Findet der Overrun hingegen früher oder später statt, signalisiert der Controller einen Fehler und wiederholt den Datentransfer.

Sitzt an der betreffenden Position auf dem Datenträger die File Allocation Table (FAT), kann als Folge eine komplette Datei verlorengehen. Betrifft der Defekt nur den Datenbereich eines Textdokuments, könnten beispielsweise Formatierungen nicht funktionieren oder Buchstaben vertauscht werden. Für den Anwender sind solche Fehler zum Zeitpunkt der Datenübertragung nicht bemerkbar.

Toshiba bietet laut Dirk Lohmann, Manager Project Engineering Computersysteme, mit dem seit 10. November verfügbaren Software-Patch ein Tool an, das überprüft, ob die Daten korrekt auf die Diskette geschrieben wurden. Dabei handelt es sich um einen Treiber, der als Filter zwischen den Floppy-Laufwerk-Treiber und das File-System des Betriebssystems (Win 95, 98 und NT) gehängt wird.