MS-DOS 2.0 speichert einen Festplattenlesepuffer, jedoch keinen Schreibpuffer. Der Lesepuffer ist wichtig: Er vermeidet ein erneutes Lesen. Und es kann abgebrochen werden, wenn das Volume nicht gemountet ist.
Aber hey, wir nehmen keine Disketten ab. Wir nehmen sie einfach raus.
Die Laufwerke dieser Zeit konnten jederzeit manuell geöffnet und die Diskette entfernt werden. Die Spezifikation lieferte Status zum Öffnen der Laufwerkstür, aber IBM hat diesen Teil der Spezifikation nicht implementiert, um ein logisches Gate zu speichern. Ausrüstungslieferanten werden alles tun,
um mindestens einen Cent zu
sparen .
Dieser Lesepuffer ist jedoch für die Leistung von entscheidender Bedeutung. Ohne sie müssen Sie jede E / A-Operation von vorne beginnen, das Inhaltsverzeichnis des Volumes erneut lesen, Verzeichniseinträge suchen, die Blockzuordnungstabellen auf der Suche nach dem nächsten freien Cluster durchsuchen ... und die Diskette ist definitiv nicht das schnellste Laufwerk, sodass alle diese Operationen um Sekunden verzögert werden.
Um zumindest etwas Cache zu lassen, haben die Entwickler von MS-DOS einen Benchmark gestartet: Wie schnell kann eine Person eine Diskette in einem IBM PC-Laufwerk wechseln?
Mark Zbikowski, Projektmanager von MS-DOS 2.0, saß mit einer Stoppuhr, während
Aaron Reynolds und
Chris Peters versuchten, die Disketten auf einem IBM-Computer so schnell wie möglich zu wechseln.
Sie konnten es nicht schneller als zwei Sekunden tun.
Somit ist der MS-DOS-Cache in zwei Sekunden abgelaufen. Wenn zwei Diskettenzugriffe in einem Intervall von zwei Sekunden erfolgen, verwendet der zweite Versuch den Cache von der alten Diskette.
Ich weiß nicht, ob die moderne Zwei-Sekunden-Richtlinie zum Löschen des Caches eine direkte Folge dieses Wettbewerbs im Büro ist, aber ich denke gern, dass es irgendeine Verbindung gibt.