HDDRIVER erfreut sich in ATARI-Kreisen schon länger großer Beliebtheit. Lesen Sie im folgenden Testbericht, was die Version 7.00 an Neuigkeiten bietet und wie sie sich im Vergleich mit anderen Plattentreibern hält.
Die Lieferung von HDDRIVER erfolgt relativ unspektakulär in einem Umschlag, der eine Diskette und ein ringgebundenes Handbuch enthält. Die Diskette enthält neben dem eigentlichen HDDRIVER noch einige Zusatzprogramme und die jeweils neueste Version der XHDI-Spezifikation. Die verständlich geschriebene Anleitung erklärt im wesentlichen das Programm HDDRUTIL, das die Steuerzentrale für HDDRIVER darstellt. Mit ihm läßt sich der Treiber installieren, entfernen und anpassen; außerdem können hier Festplatten formatiert, partitioniert und konfiguriert werden. Warum das Handbuch allerdings als erstes auf das Formatieren und Partitionieren von Festplatten eingeht, ist etwas verwunderlich, da die meisten Anwender bereits eine Festplatte im Betrieb haben und daher zunächst an der Installation des Treibers interessiert sein dürften.
Um den Treiber auf die eigene Festplatte aufbringen zu können, muß bereits ein XHDI-kompatibler Treiber aktiv sein. Ist dies nicht der Fall (z.B. bei AHDI), muß man HDDRIVER direkt von der mitgelieferten Diskette starten. Diese speziell konfigurierte Version des Treibers scannt sämtliche IDs an allen unterstützten Schnittstellen in der Reihenfolge IDE, SCSI und ACSI ab, um wirklich alle angeschlossenen Massenspeicher zu erkennen.
Nach der Installation des Treibers muß er konfiguriert werden, da er sonst nur ID 0 von IDE-, SCSI- und ACSI-Bus scannt und im Erfolgsfall einbindet. Zur Vereinfachung bietet HDDRUTIL die Funktion "Autokonfiguration", mit der das Programm selbsttätig nach angeschlossenen Festplatten sucht (die dafür natürlich auch alle eingeschaltet sein müssen) und sie anschließend in den Treiber einträgt. Natürlich lassen sich die zu prüfenden IDs auch manuell einstellen, wobei hier besonders positiv auffällt, daß sich die Scanreihenfolge bequem per Verschieben mit der Maus verändern läßt.
In weiteren Konfigurationsdialogen (die leider nicht in Fenstern liegen, aber zumindest tastaturbedienbar sind) lassen sich alle Betriebsparameter des Treibers beeinflussen. So ist es unter anderem möglich, das Standardbootlaufwerk festzulegen, die Größe der GEMDOSCaches zu ändern oder bestimmte Laufwerke sowie Boot- und Rootsektoren vor Schreibzugriffen zu schützen. Selbstverständlich können diese Einstellungen auch nachträglich geändert werden, sind also auch ohne direkt vorausgegangene Installation zugänglich.
Der Partitionierungsdialog von HDDRUTIL ist übersichtlich gestaltet (siehe Bild oben) und erlaubt die Definition von bis zu 30 Partitionen, von denen mit TOS 14, mit MagiC 23 und mit TOS + Big-DOS 29 genutzt werden können (unter alternative Betriebssystemen wie z.B. Linux68k sieht das natürlich anders aus).
Die maximal ohne Warnung mögliche Partitionsgröße (abhängig von der TOS- bzw. GEMDOS-Version) wird über den Unterdialog "Kompatibilität" festgelegt, der auch eine Besonderheit offenbart: HDDRUTIL erlaubt auch eine PC-kompatible Partitionierung von Medien (und natürlich kann HDDRIVER solche Platten auch korrekt einbinden).
Mit Version 7 DOS-kompatibel partitionierte Festplatten entsprechen jetzt vollständig den dortigen Konventionen, so daß man problemlos auch am ATARI eine Platte für den PC aufteilen kann. Außerdem bietet HDDRUTIL nun die Möglichkeit, bei SCSI-Platten das optimierte Mapping eines Controllers mit SDMS-BIOS zu verwenden (NCR, Symbios Logic), das eine möglichst gute Ausnutzung der Festplattenkapazität ermöglicht. Wer sich jetzt übrigens wundert: Am PC müssen Festplatten unter DOS auch heute noch über Kopf, Spur und Sektor angesteuert werden, obwohl SCSI-Platten über durchgehend lineare Sektornummern angesprochen werden. Das BIOS des Controllers sorgt dabei für eine entsprechende Umsetzung, wobei allerdings fast jeder Hersteller dafür ein anderes Modell benutzt, was die Platten nach der Partitionierung meist fest an den Controllertyp bindet (wobei sich das SDMS-BIOS auch in dieser Hinsicht flexibler zeigt, da es auch "fremde" Platten problemlos einbinden kann). HDDRIVER ist natürlich ebenfalls in der Lage, Platten mit beliebigem Mapping korrekt anzusprechen.
Unabhängig vom Kompatibilitätsmodus praktisch ist die Möglichkeit, die Partitionsdaten wahlweise als Größe in Megabyte oder Start- und Endsektor anzeigen zu lassen, wobei es im Modus "Sektoren" angenehm wäre, wenn der Cursor bei Tab nicht nach unten, sondern nach rechts springen würde.
Außerdem läßt sich der Typ ändern, falls man eine Partition nicht für GEMDOS zur Verfügung stellen will (z.B. für ein ext2fs oder MinixFS), was auch noch nach der Partitionierung durch einen speziellen Menüpunkt ohne Datenverlust möglich ist. Wünschenswert im Hinblick auf die DOS-kompatible Partitionierung wäre allerdings, daß das Feld "Typ" dann nicht mehr den ATARI-Partitionstyp anzeigte (der in diesem Fall sogar editierbar ist, obwohl er anschließend nicht berücksichtigt werden kann), sondern die Eingabe der numerischen DOS-Partitionskennung erlaubte.
Um die Performance von HDDRIVER zu bewerten, habe ich einige Geschwindigkeitstests durchgeführt, die zu Vergleichszwecken auch mit AHDI 6.061 und CBHD 5.02 getätigt wurden. Den Abbildungen 2 bis 4 kann man entnehmen, wie schnell die drei Treiber auf GEMDOS-Ebene mit einer SCSI-Festplatte (IBM DPES-31080S) an einem Falcon030 (TOS 4.04, Auflösung 640x480 in zwei Farben, keine Auto-Ordner-Programme und Accessories) umgehen können.
Tabelle 1 enthält die Ausgaben eines Programms, das die Übertragungsraten auf BIOS-Ebene bei großen und kleinen Blöcken mißt (es befindet sich zu Vergleichszwecken samt Quellcode auf der Spezialdisk zu diesem Heft). Laufwerk F war dabei die letzte Partition einer Seagate ST9080A IDE-Platte, Laufwerk G die erste Partition der bereits erwähnten IBM-SCSI-Platte, und bei Laufwerk L handelte es sich um ein externes SCSI-Zip-Drive mit einer AHDI-kompatiblen Partition (man kann den Meßwerten entnehmen, daß die neueren Zip-Drives deutlich schneller sind als das in [1] getestete Modell).
Die Geschwindigkeit bei der Übertragung kleiner Blöcke ist vor allem für spezielle Anwendungen wie virtueller Speicher von Bedeutung; im reinen GEMDOS-Betrieb fällt sie nicht so deutlich ins Gewicht.
Bei AHDI wurde übrigens Laufwerk J statt Laufwerk L gemessen, da dieser Treiber die zwei im Rootsektor als "RAW" markierten Minix-Partitionen nicht eingebunden hat, da er nicht XHDI-konform ist.
Da CBHD an der IDE-Platte unverständlicherweise stark eingebrochen ist, nachdem ich die Scanreihenfolge an die von AHDI und HDDRIVER angepaßt hatte, enthält die Tabelle auch noch das Ergebnis für IDE mit der Originalkonfiguration des Treibers, bei der IDE-Platten nach allen SC-Sl-Geräten eingebunden werden.
Anhand der Meßwerte läßt sich feststellen, daß HDDRIVER zwar in fast allen Tests die schnellsten Werte liefert, die Unterschiede zwischen den Treibern im Alltagsbetrieb aber dennoch nicht allzu gravierend sind (von dem bereits erwähnten seltsamen Problem mit CBHD einmal abgesehen). Was also bietet HDDRIVER noch, um sich von der Konkurrenz zu unterscheiden, von der die zwei für den Vergleichstest herangezogenen Vertreter sogar nicht kommerziell sind?
Zunächst ist HDDRIVER der bisher einzige Treiber für ATARI-Computer, der eine explizite Unterstützung für Zip-und Jaz-Laufwerke der Firma Iomega bietet. Das heißt, daß sich die Medien mit HDDRUTIL oder dem CPXModul schreib- bzw. durch ein Paßwort schützen lassen; verwenden kann man diese Laufwerke natürlich auch mit allen anderen Treibern, die mit wechselbaren Medien zurecht kommen.
Eine weitere Spezialität, die sonst nur noch CBHD bietet, ist die Unterstützung des Hintergrund-DMA unter MagiC. Ist diese Option aktiviert (über HDDRUTIL oder das HDDRCONF-CPX, die Option "HintergrundDMA" des CPX-Moduls zu MagiC beeinflußt nur den Diskettenbetrieb!), werden Zugriffe auf SCSI- und ACSI-Festplatten ohne Blockieren des Prozessors durchgeführt, so daß der Rechner auch während umfangreicher Festplattenoperationen flüssig bedienbar bleibt. Besonders bei Verwendung von virtuellem Speicher auf TT oder Falcon bringt dies eine spürbare Besserung der Reaktionszeit des Rechners.
Falcon-Besitzer dürften sich über die Optionen "SCSI-Reset bei Fehler" und "SCSI-Reset beim Booten" freuen. Erstere hilft unter Umständen bei den berühmt-berüchtigten SCSI-Hängern des ATARI-Vogels. Die zweite Option ist hauptsächlich für diejenigen interessant, die MagiC auf dem Falcon verwenden, da dieses bei einem Warmstart den SCSI-Bus nicht zurücksetzt, was in ungünstigen Fällen ein Ausschalten der Platten nötig macht. Ist die Option gesetzt, sorgt HDDRIVER beim Start selbst für einen Reset am SCSI-Bus (er muß dafür natürlich auf einer IDEPIatte installiert sein).
Für problematische IDE-Platten, die keine korrekten Geometriedaten (aus denen die Gesamtkapazität und die genaue Ansteuerung hervorgeht) liefern, kann HDDRIVER speziell für die Daten der betroffenen Platte modifiziert werden (diese sollte man natürlich kennen, sie sind aber häufig auf der Platte selbst angegeben oder lassen sich beim Fachhändler oder über den Hersteller ermitteln). Für besonders störrische Platten, die selbst mit diesen speziellen Einstellungen nicht funktionieren (z.B. weil TOS nicht von ihnen booten kann), läßt sich auch eine Bootdiskette erstellen, die dann für ein korrektes Einbinden der Platte sorgt.
Besitzer eines ICD-kompatiblen Hostadapters erhalten die Möglichkeit, mit HDDRIVER Platten optimiert anzusprechen und können darüber hinaus auch Kapazitäten jenseits der Ein-Gigabyte-Grenze nutzen (anschließen lassen sich sowieso beliebige Plattengrößen an jeden ATARI und jede Schnittstelle). Für alle Rechner mit AC-Sl-Schnittstelle kann die Option "Fast-ACSI" eine spürbare Beschleunigung der Datenübertragung bewirken.
Falcon- und TT-Anwender können mit Hilfe der SCSI-Bus-Arbitrierung eine Festplatte an mehreren Rechnern betreiben (wobei man von den Partitionen der Platte, die gemeinsam genutzt werden, nur lesen sollte, um Dateninkonsistenzen zu vermeiden, die der Treiber alleine natürlich nicht verhindern kann).
Eine Neuerung in HDDRIVER 7.00 sind der targetgesteuerte SCSI-Transfer und die Unterstützung des von Steffen Engel (CBHD) definierten SC-Sl-Treiber-Interfaces. Mit letzterem wird es möglich, mit HDDRIVER Programme und Filesysteme direkt zu benutzen, die auf diese Schnittstelle angewiesen sind; es ist also nicht mehr nötig, SC-SIDRV.PRG mitzubooten. Umgekehrt nutzt HDDRUTIL auch einen eventuell vorhandenen SCSI-Treiber, so daß ein Teil der Funktionen auch unter MagiC Mac zur Verfügung steht, wenn dort der entsprechende Treiber installiert ist.
HDDRIVER ist ein moderner Festplattentreiber mit umfangreichen Konfigurationsmöglichkeiten und einem leicht bedienbaren Partitionierungstool. Wer die Investition von DM 58,- (Ausland 60,-) nicht scheut (was angesichts der gebotenen Leistung günstig ist), erhält mit Sicherheit den komplettesten Festplattentreiber, der zur Zeit für den ATARI erhältlich ist. Das neu eingebaute SCSI-Treiber-Interface macht auch ein Upgrade für Benutzer der Version 6.x interessant, falls sie Programme benutzen oder benutzen wollen, die diese Schnittstelle benötigen (z.B. das neue CD-ROM-Filesystem SPIN! von Julian Reschke für MiNT und MagiC), ohne dafür ein zusätzliches Auto-Ordner-Tool installieren zu müssen.
Preis: 58,- DM (Ausland 60,- DM)
Upgrade: Für beim Autor registrierte Anwender siehe README der Diskette
Für alle anderen Anwender:
HDDRIVER 6.x auf 7.0: 15,-HDDRIVER 5.x auf 7.0: 20,-HDDRIVER 4.x auf 7.0: 30,- (inkl. Handbuch)
HDDRIVER 3.x und älter auf 7.0: 35,-(inkl. Handbuch)
Wichtig: Ein Erwerb oder Upgrade ist nicht mehr über CCD, sondern nur noch direkt beim Autor möglich!
Bezugsquelle:
Uwe Selmet Lüdersstraße 4 D-76275 Ettlingen
Es existiert auch eine Demoversion des HDDRIVERs, die über Maus- und InterNet erhältlich ist:
HDDRIV70.ZIP (Maus KA) ftp://acp5.chemie.uni-kl.de/pub/ATA-Rl/hddriver70_demo.zip http://acp5.chemie.uni-kl.de/sei-met/hddriver_german.html
Darüber hinaus kann die aktuelle Demo-Version auch über die Diskette Nr. 67 der PD-Serie bezogen werden.
Literatur:
[1] Joachim Heller, Iomega kontra Syquest, ST-Computer 01/96, S. 28f
Hinweis:
Lesen Sie in dieser Ausgabe auch unseren Artikel zum SCSIDRV-Interface.
Positiv
Negativ
Geschrieben in Pure C von Thomas Binder
AHDI 6.061, IDE - SCSI - Zip-100
F: Lese fünf mal ain Megabyte ............................................ 521.120 Kilobyte/s
F: Schreibe fünf mal ein Megabyte......................................... 442.142 Kilobyte/s
F: Lese 64 mal einen Sektor linear........................................ 376.471 Kilobyte/s
F: Schreibe 64 mal einen Sektor linear..................................... 27.826 Kiiobyte/s
F: Lese 64 mal einen zufälligen Sektor..................................... 18.659 Kilobyte/s
G: Lese fünf mal ein Megabyte............................................ 1499.268 Kilobyte/s
G: Schreibe fünf mal ein Megabyte........................................ 1517.037 Kilobyte/s
G: Lese 64 mal einen Sektor linear........................................ 400.000 Kilobyte/s
G: Schreibe 64 mal einen Sektor linear.................................... 400.000 Kilobyte/s
G: Lese 64 mal einen zufälligen Sektor.................................... 165.696 Kilobyte/s
J: Lese fünf mal ein Megabyte............................................ 1194.866 Kilobyte/s
J: Schreibe fünf mal ein Megabyte........................................ 1289.673 Kilobyte/s
J: Lese 64 mal einen Sektor linear......................................... 75.294 Kilobyte/s
J: Schreibe 64 mal einen Sektor linear..................................... 90.780 Kilobyte/s
J: Lese 64 mal einen zufälligen Sektor..................................... 32.821 Kilobyte/s
CBHD 5.02, IDE - SCSI - Zip-100
F: Lese fünf mal ein Megabyte............................................. 166.802 Kilobyte/s
F: Schreibe fünf mal ein Megabyte......................................... 157.442 Kilobyte/s
F: Lese 64 mal einen Sektor linear......................................... 27.826 Kilobyte/s
F: Schreibe 64 mal einen Sektor linear..................................... 27.706 Kilobyte/s
F: Lese 64 mal einen zufälligen Sektor..................................... 21.622 Kilobyte/s
G: Lese fünf mal ein Megabyte............................................ 1458.689 Kilobyte/s
G: Schreibe fünf mal ein Megabyte........................................ 1486.212 Kllobyte/s
G: Lase 64 mal einen Sektor linear........................................ 948.148 Kilobyte/s
G: Schreibe 64 mal einen Sektor linear.................................... 914.286 Kilobyte/s
G: Lese 64 mal einen zufälligen Sektor.................................... 217.872 Kilobyte/s
L: Lese fünf mal ein Megabyte............................................. 965.127 Kilobyte/s
L: Schreibe fünf mal ein Megabyte......................................... 966.038 Kilobyte/s
L: Lese 64 mal einen Sektor linear......................................... 91.756 Kilobyte/s
L: Schreibe 64 mal einen Sektor linear..................................... 92.086 Kilobyte/s
L: Lese 64 mal einen zufälligen Sektor..................................... 42.244 Kilobyte/s
CBHD 5.02 - nur IDE in Originalkonfiguration (siehe Text)
L: Lese fünf mal ein Megabyte............................................. 479.401 Kilobyte/s
L: Schreibe fünf mal ein Megabyte......................................... 417.618 Kllobyte/s
L: Lese 64 mal einen Sektor linear......................................... 27.826 Kilobyte/s
L: Schreibe 64 mal einen Sektor linear..................................... 27.826 Kilobyte/s
L: Lese 64 mal einen zufälligen Sektor..................................... 21.122 Kilobyte/s
HDDRIVER 7.00, IDE - SCSI - Zip-100
F: Lese fünf mal ein Megabyte............................................. 512.000 Kilobyte/s
F: Schreibe fünf mal ein Megabyte......................................... 439.485 Kilobyte/s
F: Lese 64 mal einen Sektor linear........................................ 492.308 Kilobyte/s
F: Schreibe 64 mal einen Sektor iinear..................................... 27.706 Kilobyte/s
F: Lese 64 mal einen zufälligen Sektor..................................... 18.234 Kilobyte/s
G: Lese fünf mal ein Megabyte............................................ 1512.555 Kilobyte/s
G: Schreibe fünf mal ein Megabyte........................................ 1539.850 Kilobyte/s
G: Lese 64 mal einen Sektor linear....................................... 1024.000 Kilobyte/s
G: Schreibe 64 mal einen Sektor linear................................... 1003.922 Kilobyte/s
G: Lese 64 mal einen zufälligen Sektor.................................... 215.126 Kilobyte/s
L: Lese fünf mal ein Megabyte............................................ 1223.417 Kilobyte/s
L: Schreibe fünf mal ein Megabyte........................................ 1356.291 Kilobyte/s
L: Lese 64 mal einen Sektor linear......................................... 91.756 Kiiobyte/s
L: Schreiba 64 mal einen Sektor Iinear..................................... 92.086 Kilobyte/s
L: Lese 64 mal einen zufälligen Sektor..................................... 43.098 Kilobyte/s