4. Zur Geschichte der verschiedenen Schnittstellen |
Der Dateizugriff über Int 13h |
Auch Festplattenzugriffe heutiger Betriebssysteme wie Windows 95 oder NT basieren auf den anfang der 80er entwickelten DOS-BIOS-Modellen. Die Programme arbeiten hierbei auf der Basis von Dateinamen. Wenn eine Textverarbeitung z.B. ihr Dokument speichern will, tut sie das, indem sie dem Betriebssystem den Auftrag gibt, die Daten in eine mit Namen benannte Datei zu speichern. Beim Laden ist dies ebenso.
|
Die ST509/ST412-Schnittstelle |
Anfang der 80er Jahre entwickelte die Firma Seagate eine Schnittstelle zur Ansteuerung von Festplatten, die sie ST506 (oder auch Shugart-Schnittstelle) nannten. Das "ST" in der Namensgebung hat Seagate bis zu den heutigen Produkten beibehalten. Diese Schnittstelle konnte zunächst die Hauseigene Platten mit 5 MByte verwalten. Kurze Zeit später entwickelte sie Seagate weiter zur ST412-Schnittstelle, die nun auch größere Platten bis zu 140 MByte (zunächst die o.g. 10 MByte-Platte) verwalten konnte. Dieser Anschluß war Hard- und Softwaretechnisch mit der ST509 kompatibel und bedurfte keiner BIOS-Änderung des PCs. Auch heutige BIOS-Versionen haben eine Abwärtskompatibilität hierzu beibehalten, was man an der dortigen Liste der Festplattentypen erkennen kann, die von 10 bis 152 MBytes reicht. Dies rührt auch daher, daß der Anschluß einer Platte über das ST412-Interface bis Anfang der 90er die am weitesten verbreitete Methode war. |
Der Controller |
ST509-Controller und Festplatte stellen zwei getrennte Geräte dar, da der Controller mit einer eigenständigen Intelligenz ausgestattet ist und als Erweiterungskarte in einen freien ISA-Slot gesteckt wird. Der Controller kann maximal 2 Festplatten ansteuern und ist meist als Kombicontroller ausgerüstet, der weitere Anschlüsse für bietet. In Hochleistungssystemen verwendete man auch Controller zum Anschluß von vier Festplatten. Der Controller wird über zwei Leitungen mit der Festplatte verbunden. Diese sind meist als Flachbandleitung mit je einem Pfostenstecker und einem Platinenstecker ausgestattet. Diese haben außer der Farblichen Markierung und der aufgedruckten "1" keine Verpolungssicherheit. |
Abb: Seagate-Festplatte ST125 mit ST509/412-Schnittstelle
|
Die Installation |
Früher hatten die Computer der XT-Kompatiblen noch kein so komfortables menügesteuertes BIOS wie heutige Rechner. Folglich war es auch etwas umständlicher eine Festplatte in solch einem System einzurichten.
|
Die ESDI (Enhanced Small Devices Interface) –Schnittstelle |
Die ESDI-Schnittstelle bezeichnet eine 1983 von Maxtor vorgestellte Weiterentwicklung der ST509/412-Schnittstelle. IBM setzte auch diesmal wieder diesen neuen Typ als erste in seinen PS/2-Modellen ein. Es bestehen keine äußerlichen Unterschiede zu den vorherigen Laufwerken, auch nicht im Anschlußverfahren, das hierbei wieder mittels getrennter Steuer- und Datenleitungen vollzogen wird. Auch auf die Registerkompatibilität legte Maxtor wert. Somit sind diese Festplatten auch in den vorhandenen Systemen mit dem alten BIOS einsetzbar. Probleme bereitete allerdings die Kompatibilität der Geräte verschiedener Hersteller untereinander. Obwohl man aufgrund des äußeren Erscheinungsbildes glauben könnte, man könne ESDI- mit ST509/412-Geräten kombinieren, funktioniert dies nicht. Für Datenübertragung wird bei ESDI nämlich im gegensatz zur Vorgängerschnittstelle kein analoges Verfahren mehr eingesetzt, sondern eines nach der digitalen NRZ-Kodierung. Dies kommt daher, daß man einen Teil der Intelligenz auf der Festplatte unterbringt: den sogenannten Datenseparator. Er bereitet die gelesenen bzw. zu schreibenden Daten auf und überträgt nur die Nutzdaten, was eine bessere Ausnutzung der vorhandenen Bandbreite auf der Datenleitung und somit eine Erhöhung der Übertragungsrate ermöglicht. Ein weiteres Verfahren macht ein ESDI-Laufwerk schneller: Die Daten werden in einem Sektorpuffer von meist 64kByte zwischengespeichert. Dies ermöglicht einen Interleave-Faktor von 1:1. Dadurch erhöht sich die Übertragungsrate auf standardisierte 10,15, 20 und sogar 24 MBit/s, was maximal etwa 3 MByte/s beträgt. Meist verwenden ESDI-Festplatten das RLL2.7-Format zur Datenaufzeichnung. ESDI wird oft auch als Vorläufer von SCSI bezeichnet, da man an den ESDI-Controller auch Bandlaufwerke zur Datensicherung anschließen kann.
|
Abb: Seagate-Festplatte ST1100 mit ESDI-Schnittstelle
|
Die Installation |
Um eine ESDI-Festplatte in einem PC betreiben zu können, muß diese im BIOS angemeldet werden. Da die meisten BIOSe nur eine begrenzte Auswahl an Festplatten unterstützen, ist es schwer, den passenden Typ zu finden. Deshalb wird hierbei vom Controller ein Translation-Mode verwendet, der die Festplattendaten so umsetzt, daß die Platte mit ihrer maximalen Kapazität betrieben werden kann. Hierzu trägt man im BIOS "Typ 1" ein, was dem BIOS signalisiert, daß überhaupt eine Festplatte vorhanden ist. Der Controller fordert dann die Laufwerksdaten von der Festplatte an und überlagert damit das PC-BIOS. Dadurch kann das Betriebssystem die Platte voll ausnutzen. Dieser Translation-Mode wird auch dazu eingesetzt, Geräte mit mehr als 1024 Zylindern, 63 Sektoren oder 16 Köpfen einzusetzen.
|
Die SCSI (Small Computer System Interface) - Schnittstelle |
Bereits in den 70er Jahren wurde die SCSI-Schnittstelle entwickelt, der Standard wird ständig erweitert. Sie stellt eine große Flexibilität zur Verfügung, da an ihr nicht nur Festplatten, sondern auch andere Geräte wie Streamer, Scanner, CD-ROMs usw. angeschlossen werden können – maximal 7 bzw. 15 Geräte pro Controller. Der Controller trägt hierbei den Namen Host-Adapter. Die eigentlichen Controller befinden sich auf den Geräten selbst, was sie in gewissem Sinne "intelligent" macht.
|
Abb: Seagate-Festplatte ST11201N - Swift SCSI mit SCSI-Schnittstelle
|
Die IDE (Integrated Device Electronic)-Schnittstelle
|
Die IDE-Schnittstelle – auch AT-Bus-Schnittstelle genannt – wurde 1984 von Conner entwickelt. Der grundlegende Gedanke dieses Systems ist auch in der Namensgebung zu erkennen: die Elektronik ist fast vollständig auf der Festplatte untergebracht. Im prinzip handelt es sich lediglich um eine Verlängerung des AT-Bus, der ab dem 80286 eingesetzt wurde – daher der Beiname. Am Anfang gab es auch XT-Bus-Festplatten, die aber nur kurze Zeit überlebten, da die XTs vom Markt verschwanden. Auf dem Adapter zum AT-Bus, der meist als Multi-I/O-Karte ausgeführt ist, befinden sich lediglich Controllerbausteine für die Diskettenlaufwerke, eine Adressendekodierungsschaltung für die Portadressen und Daten- und Adressentreiberbausteine. Oft sind auch Parallele und Serielle Schnittstellen implementiert. Bei Boards, die ab dem 80486 zum Einsatz kamen, ist der Adapter fast immer auf dem Motherboard integriert – also onboard. An die normalen IDE-Schnittstelle lassen sich maximal zwei Festplatten über eine 40polige, maximal 18" lange Daten-/Steuerleitung per Bus anschließen. Diese müssen dann auf ihre Rolle in diesem Bus eingestellt werden. D.h., ein Laufwerk wird als "Master" und das andere als "Slave" gejumpert. Ist nur eine Platte angeschlossen, sollte diese als "Single" gejumpert sein. Auch bei IDE werden verpolungssichere Pfostenstecker verwendet, die außerdem mit einem Pfeil an der farblich markierten Leitung 1 vesehen sind. Bei den ersten IDE-Festplatten waren jedoch noch keine Kunststoffrahmen um die Pfosten-Stiftleiste angebracht, was eine Vertauschung ermöglichte. Auch die Stiftleisten auf den Controllerkarten und Motherboards besitzen erst seit wenigen Jahren solche Verpolungssicherungen. IDE-Festplatten sind denkbar einfach im PC-BIOS anzumelden. Bei allen modernen BIOSe gibt es einen sogenannten "User Typ". Hierbei kann der Benutzer selbst die Laufwerksdaten ins BIOS eintragen. Leider gilt auch hierbei die Beschränkung der CHS-Methode (cluster,head, sector) mit ihren 1024 Zylindern, 63 Sektoren und 16 Köpfen, was multipliziert mit der DOS-Sektorgröße von 512 kByte eine maximale Kapazität von 504 MByte ergibt. Diese Einschränkung rührte noch von der BIOS-Kompatibilität – es konnte nur 1024 Zylinder verwalten – zu früheren Standards her, denn IDE wurde eigentlich für 255 Sektoren auf 65536 Zylindern bei 16 Köpfen konzipiert.
|
EIDE (Enhanced IDE) |
EIDE ist eine 1993 von Western Digital ins Leben berufene Weiterentwicklung der IDE-Schnittstelle und behebt die Einschränkungen bezüglich der Speicherkapazität unter Beibehaltung der Kompatibilität.
|
Abb: Seagate-Festplatte ST34520A - Medalist Pro mit EIDE-Schnittstelle
|
Mittlerweile ist man jedoch bei weitaus größeren Festplatten angelangt, die neue Tricks nötig machen. Man benutzt eine Int 13 Erweiterung, die man auf neuen Boards schon im BIOS implementiert hat. Für ältere BIOSs steht meist ein Update zur Verfügung oder man verwendet wieder ein Hilfsprogramm der Plattenherstellers, das sich in den Bootsektor einnistet. Das Problem besteht nämlich darin, daß die ATA-Spezifikation zwar eine 28 bit-Adresse verwendet, die maximal 137 GByte adressieren könnte, von den älteren BIOSe aber nur 26 bit ((7,8 GByte) mittels Int 13h angesprochen werden können. Bei 137 GByte liegt also die nächste Begrenzung der Festplattenkapazität, die jedoch erst in einigen Jahren überwunden werden muß – und auch nicht unbedingt von EIDE, sondern einer der zukünftigen Schnittstellen. |
|
||||