Kurzanleitung zu CHECKHD ------------------------ Autoren: Claus Brod, Anton Stepper WAS IST DENN NUN WIEDER DIESES CHECKHD? CHECKHD stammt aus unserem Buch "SCHEIBENKLEISTER - Massenspeicher am ST". Es erfažt wichtige Hardware-Kenndaten von Festplatten fr den ST und mižt Zugriffszeiten und Transferraten. Wir haben es geschrieben, um auf Hardware-Ebene einen einheitlichen Test zu schaffen. Dazu haben wir auch zus„tzliche Testsoftware angefertigt, die Platten auch auf Betriebssysteme testet, um das Bild zu vervollst„ndigen (Plattenbenchmark-Paket der "ST-Computer"). Wir hoffen, damit einen Beitrag zur Versachlichung der Diskussion ber die Geschwindigkeit von Festplatten leisten zu k”nnen. WARNUNG Zuallererst ein Wort der Warnung: CHECKHD greift direkt auf die Hardware zu. Das bedeutet einerseits, daž nur Platten damit getestet werden k”nnen, die das sogenannte ACSI-Protokoll befolgen. Andererseits k”nnen wir deswegen - zumal wir beim besten Willen nicht alle Platten/Controller-Kombinationen testen k”nnen - nicht fr einwandfreie Funktion und Datensicherheit garantieren. Eine Liste der Platten, die wir bereits getestet haben, k”nnen Sie im Programm unter 'HILFE' abrufen. UND WEN ODER WAS PRUEFE ICH JETZT? CHECKHD ist ein GEM-Programm und daher nicht allzuschwer zu bedienen. Wenn Sie CHECKHD starten, durchsucht es den DMA-Bus nach angeschlossenen Ger„ten. Am DMA-Bus k”nnen maximal 8 Controller h„ngen, von denen jeder wiederum maximal 8 Ger„te verwaltet. CHECKHD durchl„uft alle 8 Targetnummern (das sind die Nummern der Controller, in Ihrem Vortex-Handbuch heižt das auch "Adapternummer") und prft an jedem Controller die Ger„tenummern 0 und 1. Andere Ger„tenummern werden so gut wie nie verwendet. "Prfen" heižt: CHECKHD versucht den Block 0 des jeweiligen Ger„tes zu lesen. Mižlingt dies, geht CHECKHD davon aus, daž unter dieser Target- und Ger„tenummer kein Ger„t angeschlossen ist, die entsprechende Targetnummer bleibt im Hauptdialog grau unterlegt. Ansonsten wird die entsprechende Targetnummer im Hauptdialog des Programms selektierbar. Die meisten Plattenhersteller verwendet nur die Ger„tenummer 0; dies ist auch die Voreinstellung, an der Sie nichts „ndern mssen. Die Targetnummer dagegen kann - je nach Stellung der DIP-Schalter an Ihrer Platte - variieren. CHECKHD w„hlt die erste am DMA-Bus gefundene Platte vor. Im Hauptdialog haben Sie die Auswahl zwischen den verschiedenen Plattentypen und vier verschiedenen Tests. Vorab: Zus„tzliche Informationen k”nnen Sie bekommen, wenn Sie im Hauptdialog auf "HILFE" klicken und danach auf "START". Es erscheinen dann mehrere Hilfsbildschirme, die Sie sich komplett (immer auf 'Mehr' drcken) oder nur teilweise (dazu dient 'Genug') ansehen k”nnen. Die Auswahl des Plattentyps ist wichtig, weil CHECKHD im ATARI- Modus nichts mit den Antworten einer SCSI-Festplatte anfangen kann und umgekehrt. Zwar w„re es m”glich, den Typ der angeschlossenen Festplatte meistens richtig zu erkennen, doch ist uns "meistens" nicht sicher genug. Und da Sie das Fabrikat Ihrer Platte ja doch wohl kennen, sollten Sie mit der Auswahl keine Schwierigkeiten haben. Fast alle Hersteller verwenden heutzutage schnelle SCSI-Laufwerke; auch die DataJet-Reihe von Vortex basiert auf SCSI-Laufwerken. Die Vortex-HDplus-Reihe sowie die Platten der Firma ATARI verwenden Laufwerke und Controller anderer Typen, weswegen Sie hier auf den Vortex- oder ATARI- Modus umstellen MšSSEN. Insbesondere bei der HDplus-Reihe kann die Auswahl des falschen Plattentyps t”dlich fr Ihre Daten sein! Achten Sie also darauf, Sie werden aber auch mehrfach gewarnt. PRIMA! UND WELCHE FOLTERMETHODEN BIETET CHECKHD? CHECKHD bietet Ihnen vier verschiedene Testmodi, die auch nochmals unter 'HILFE' erl„utert werden. Hier sollen daher einige erg„nzende Bemerkungen gengen: STEP ---- Hiermit werden die Zugriffszeiten der ausgew„hlten Platte gemessen, das heižt, die Zeiten, die die K”pfe des betreffenden Laufwerks brauchen, um zu bestimmten Spuren zu gelangen. Je schneller das geht, desto flotter k”nnen Sie natrlich mit Ihrer Platte arbeiten. Die meisten Hersteller geben mindestens die "mittlere Zugriffszeit" an; das ist die Zeit, die im Mittel fr den Zugriff auf eine Spur ben”tigt wird. Die Hersteller arbeiten dabei meistens mit dem Zwei-Drittel-Test, das heižt, die Lesek”pfe werden beim Testen ber eine konstante Strecke hin- und herbewegt, die etwa zwei Drittel der gesamten Plattenoberfl„che ausmacht. Eine andere Testmethode l„žt den Kopf auf zuf„llig bestimmte Spuren fahren und mižt dann einen Durchschnittswert. Beide Verfahren wendet CHECKHD an; sie liefern bei den allermeisten Platten in etwa identische Ergebnisse. CHECKHD liefert Ihnen die minimale Zugriffszeit (die Zeit, die beim Wechsel von Zylinder n auf Zylinder n+1 verstreicht), zwei mittlere Zugriffszeiten (eine ermittelt durch zuf„llige Kopfbewegungen, die andere durch den Zwei-Drittel-Test) und eine maximale Zugriffszeit (die Zeit, die maximal vergeht, um einen Zylinder zu erreichen; wird gemessen, indem der Kopf zwischen h”chstem und niedrigstem Zylinder hin- und herbewegt wird). Plattenlaufwerke „lterer Bauart boten mittlere Zugriffszeiten zwischen 60 und 80 Millisekunden (ms). Heute erh„ltliche Billigplatten liegen bei 30 bis 40 ms; eine gute Platte liegt unter 25 ms, sehr gute unter 20 ms. Es ist nicht ganz einfach, die Mežmethoden der Hersteller nachzuempfinden und so deren Angaben zu berprfen. Inzwischen haben wir den Mežoverhead in CHECKHD auf ein Minimum reduziert und die Mežmethode so optimiert, daž sie mit sehr vielen Platten sehr exakte Werte liefert. Opfer unseres Optimierungswahns sind leider die Ergebnisse frherer CHECKHD-Versionen geworden; diese liegen etwa 3 ms ber denen der jetzigen Version. Wenn Sie also CHECKHD-Ergebnisse zitieren, geben Sie bitte immer die Versionsnummer an. Der Umbruch war aus verschiedenen Grnden unvermeidbar; Sie k”nnen nun zwar nicht mehr die Zugriffszeiten zwischen CHECKHD7 und CHKHD8x vergleichen, dafr aber die Zugriffszeiten, die der Hersteller angibt, und diejenigen, die CHKHD8x mižt. Die anderen CHECKHD-Mežwerte sind weiterhin ber alle bisherigen Versionen vergleichbar. Die mittlere Zugriffszeit hat im t„glichen Betrieb vor allem Einfluž auf Operationen wie das Anlegen oder Suchen von Dateien. Da bei diesen Operationen die Kosten der Dateiverwaltung unter GEMDOS aber besonders hoch sind, wird sich eine nur halb so grože Zugriffszeit sicher nicht in einer doppelt so schnellen Suchgeschwindigkeit im Alltagsgebrauch niederschlagen. LESEN ----- In der guten alten Zeit, als M„nner noch richtige M„nner, Frauen noch richtige Frauen und kleine pelzige Wesen aus dem Krebsnebel noch richtige kleine pelzige Wesen aus dem Krebsnebel waren (Doug Adams lebe hoch!), diente CHECKHD ausschliežlich dem Prflesen aller Sektoren auf einer Platte. 'LESEN' ist ein Relikt dieser Zeit. Alle Sektoren der Platte werden probeweise gelesen; meldet dabei der Controller der Platte einen Fehler, wird dieser angezeigt und - wenn m”glich - in Klartext bersetzt. Da nur gelesen wird, brauchen Sie um Ihre Daten keine Angst zu haben; andererseits wird CHECKHD dadurch auch nicht unbedingt _alle_ Fehler auf Ihrer Platte finden - die fallen eben oft erst beim Schreiben auf. 'LESEN' holt sich immer einen ganzen Schwung Sektoren in den Hauptspeicher; entsprechend werden bei einer Fehlermeldung meistens zwei Sektornummern angezeigt: Die Nummer des Sektors, ab dem der aktuelle Block von Sektoren gelesen wurde, und die Nummer des fehlerhaften Sektors. TRANSFER -------- Neben den Zugriffszeiten bestimmt die Transferrate einer Platte die Geschwindigkeit im t„glichen Gebrauch. Was Transferrate heižt? Dazu gibt es verwirrend viele Definitionen. Viele Laufwerkshersteller geben als maximale Transferrate utopische Zahlen an, die meist als "Burst-Transferrate" oder "Bustransferrate" daherkommen. Diese Zahlen geben an, welche maximale Transferrate der Bus, ber den das Laufwerk an den Controller oder an die Platte anschlossen ist, berhaupt aush„lt. Mit der Wirklichkeit hat eine solche Zahl ungef„hr soviel zu tun wie die maximale Geschwindigkeit, die eine Autobahn aush„lt, mit der maximalen Geschwindigkeit, die ein Automotor tats„chlich auf die Straže bringt. Andere, seri”sere Hersteller geben maximale Bittransferraten an. Diese Rate korrespondiert dann in etwa zur Flužwechseldichte auf einer Spur. Bei MFM-Laufwerken kommt man so beispielsweise auf 625 KB/s, bei RLL-Laufwerken auf 937 KB/s. Aber auch diese Zahlen sind Blendwerk, denn neben der Nutzinformation befinden sich auf einer Spur noch Verwaltungsinformationen; die Nutzinformation belegt meist weniger als 80 Prozent einer Spur. Selbst wenn man dies bercksichtigt, hat man noch nicht alle Eventualit„ten erfažt: Wenn eine Spur komplett gelesen ist, wird auf den n„chsten Kopf des aktuellen Zylinders umgeschaltet, um die n„chste Spur zu lesen. Dieses Umschalten kostet eventuell Zeit, wodurch Plattenumdrehungen nutzlos verlorengehen k”nnen; auch beim Wechsel zwischen zwei Zylindern k”nnen zus„tzliche Umdrehungen eingelegt werden, w„hrend derer keine Daten bertragen werden. CHECKHD versucht solche Totzeiten zu erfassen. Dazu werden zwei leicht verschiedene Transfertests durchgefhrt: Der erste (Transfer I, "mit Zylinderwechsel") liest mehrfach alle Sektoren eines Zylinders und errechnet aus der dafr ben”tigten Zeit eine Transferrate. Bei diesem Test geht meistens eine Umdrehung am Ende des Zylinders verloren, weil nicht fix genug vom letzten Sektor des Zylinders auf den ersten umgeschaltet werden kann (Kopfumschalt- zeiten). Der zweite Transfertest (Transfer II, "ohne Zylinderwechsel") versucht diese Totzeit durch einen kleinen Trick zu eliminieren; dadurch erh„lt man die maximale Transferrate innerhalb eines Zylinders. Anders als die Zugriffsgeschwindigkeit schl„gt die Transferrate einer Platte bei bestimmten Alltags-Operationen - insbesondere beim Lesen und Schreiben von l„ngeren Dateien - sehr direkt (fast proportional) durch. MFM-Platten wie SH204/SH205 liegen im Test "Transfer I" bei gut 400 KB/s, HDplus-Platten wegen des Interleaves 3 unter 300 KB/s, RLL-Platten und SCSI-Platten bei etwa 650 KB/s, sehr gute SCSI- Platten ber 750 KB/s (manche erreichen 900 KB/s). šbrigens mižt CHECKHD bei diesen Tests bei den bisher getesteten Platten sehr genau; die Werte weichen von den theoretisch errechneten physikalischen Sollwerten meist um nicht mehr als zwei oder drei Prozent ab. ALLES ----- Alle vorigen Tests auf einen Schlag. Na denn Prost! Bei dieser Gelegenheit: Alle Tests lassen sich mit einem Druck auf die rechte Maustaste oder ESC abbrechen; da CHECKHD aber vorher die gerade laufende Operation noch abschliežt, kann es sein, daž Sie ein wenig auf die Reaktion warten mssen. DIVERSES Wenn Sie einen Test ausgew„hlt und geSTARTet haben, liest CHECKHD wichtige Formatparameter vom Deliquenten und offeriert Sie Ihnen in einer Dialogbox: - Zylinder: Die Anzahl der Zylinder, die die Platte insgesamt hat. Diesen Wert braucht CHECKHD insbesondere fr die Zugriffstests. Normale Werte bei gebr„uchlichen ST-Platten liegen zwischen 500 und 1000. - Sektoren/Spur: Die Anzahl der Datensektoren, die auf einer Spur zu finden sind. Bei MFM-Platten meist 17, bei RLL-Platten meist 26 oder 27, bei SCSI- Platten auch mehr. - K”pfe: Anzahl der K”pfe, die zum Lesen von Datenspuren verwendet werden. - Startsektor: Normalerweise 0; bezeichnet den ersten zu prfenden Sektor bei 'LESEN' - Endsektor: Entspricht normalerweise der Maximalanzahl der Datensektoren auf der Platte. Beim LESEN bezeichnet der Endsektor den letzten zu prfenden Sektor. - Bytes/Sektor: Gr”že eines solchen Datensektors in Bytes. Warum diese Parameter edierbar sind? 1. CHECKHD k”nnte sich - man weiž ja nie - einmal irren; dann k”nnen Sie von Hand die richtigen Werte nachtragen. Wenn dieser Fall auftritt, bitten wir um Meldung, damit wir CHECKHD auch an ungew”hnliche Platten anpassen k”nnen. 2. Beim Prflesen von Sektoren kommt des ”fteren der Wunsch auf, nur einen bestimmten Bereich auf der Platte zu prfen. Dazu stellt man von Hand einfach 'Startsektor' und 'Endsektor' passend ein. Vorsicht: Benutzereingaben gehen CHECKHD ber seine eigene Weisheit. Wenn Sie also unsinnige Werte eingeben, brauchen Sie sich nicht ber merkwrdige Mežwerte zu wundern; CHECKHD f„ngt nur offensichtliche Fehlbedienungen wie 'Startsektor > Endsektor' ab. Und bedenken Sie, daž CHECKHD den Parameter 'Endsektor' im Normalfall zur Berechnung der Gr”že der Platte verwendet; dieser Parameter fliežt beispiels- weise beim Spurwechseltest ein. Moral von der Geschicht': Lassen Sie die Parameter so, wie sie sind, und benutzen Sie CHECKHDs Freizgigkeit nur beim Prflesen von Plattenausschnitten, zum Experimentieren oder wenn CHECKHD sich offensichtlich irrt. Aus dem 'Endsektor'-Wert k”nnen Sie auch die tats„chliche Kapazit„t Ihrer Platte in MB errechnen. Die Formel dazu lautet: (Endsektor * Bytes/Sektor)/(1024*1024) Viele Laufwerkshersteller glauben wohl immer noch, daž ein Megabyte 1000*1000 Bytes seien. Richtig w„re: 1 MB = 1024*1024 Bytes. Deswegen k”nnen die Herstellerangaben und der Wert aus der obigen Formel differieren. Die Mežwerte werden nach dem Test in einem Dialog zusammengefažt ausgegeben. Sie k”nnen sie danach auch auf Drucker oder in eine Datei ausgeben. Voreingestellt ist die Datei CHECKHD.DAT. Mit dieser Version wird eine solche CHECKHD.DAT-Datei mitgeliefert, in der einige typische Beispielwerte stehen. Die CHECKHD.DAT-Datei ist eine ASCII-Datei und damit von jedem Editor lesbar. Neue Werte sollten Sie normalerweise den bereits vorhandenen hinzufgen. Wir sind sehr interessiert an den Werten, die Sie fr Ihre Platte herausgefunden haben. Wir sammeln diese Werte und wollen sie zu geeigneter Zeit in der 'ST-Computer' ver”ffentlichen, um Plattenk„ufern einen Anhaltspunkt zu geben. Wenn Sie also eine Messung an einer Platte gemacht haben, die noch nicht in der Liste der von uns getesteten Platten steht, w„ren wir Ihnen fr einen kleinen Testbericht sehr dankbar, den Sie an die unten angegebene Adresse schicken k”nnen. Jetzt aber genug. Keep hacking, Claus Brod Am Felsenkeller 2 D-8772 Marktheidenfeld Nachtrag: Versionengeschichte V1.0 bis V6.9: Die guten alten Zeiten, als CHECKHD noch ein TOS- Programm war und anfangs nur eine Platte komplett prflesen konnte. Entstand, weil ein Leser Probleme mit seiner Platte hatte und wir mit fernmndlichen Diagnosen nicht mehr weiterkamen. V7.0: GEM-Version, erschien erstmals auf der KLEISTERSCHEIBE, Version 2.0 und wurde zur Grundlage des Benchmarkpakets der Zeitschrift 'ST-Computer'. V8.0: Stark berarbeitete GEM-Version mit Anpassungen an viele Platten, verbesserten Algorithmen und sch”nerer Bedienung. Erste von der Firma Vortex ausgelieferte Version. V8.1: L„uft auch als Accessory; in GEMINI kann man CHKHD81.ACC auch per Doppelklick aufs Icon starten. Bei ATARI- und SCSI-Platten (also auch bei der DataJet- Serie von Vortex) schaltet CHKHD81 die interne Fehlerkorrektur der Controller fr die Zeit des Lesetests aus. Damit sprt CHECKHD auch nur zeitweise instabile Sektoren auf. Die wachsenden und schrumpfenden Boxen beim ™ffnen und Schliežen eines Dialogs sind nun normalerweise ausge- schaltet. V8.3: Vorbereitungen fr mehrsprachige Version. Die Dialoge sind nun beweglich. Man klicke einfach auf das Hintergrundobjekt und verschiebe sie bei gedrckter Maustaste. Klickt man auf ein Hintergrundobjekt in einem Dialog, w„hrend man gleichzeitig die rechte Maustaste gedrckt h„lt, wird der Dialog ausgeblendet, so daž man sehen kann, was unter dem Dialog liegt. Den gleichen Effekt erreicht man auch mit ALT+Mausklick.