fd(4) Device Drivers Manual fd(4) BEZEICHNUNG fd - Disketten-Gerate KONFIGURATION Diskettenlaufwerke sind blockorientierte Gerate mit der Major-Nummer 2. Typischerweise gehoren sie root:floppy (d.h. Benutzer >>root<<, Gruppe >>floppy<<) und haben entweder den Modus 0660 (Zugriffskontrolle uber Gruppenmitgliedschaft) oder 0666 (Zugriff fur alle). Die Minor-Nummern geben den Geratetyp, die Laufwerksnummer und die Controller-Nummer an. Fur jeden Geratetyp (die Kombination aus Dichte und Anzahl der Spuren) gibt es eine Basis-Minor-Nummer. Zu dieser Basis-Nummer wird die Laufwerksnummer an dessen Controller hinzugefugt und 128, wenn das Laufwerk am zweiten Controller hangt. In den folgenen Geratetabellen reprasentiert n die Geratenummer. Warnung: Wenn Sie Formate mit mehr Spuren verwenden, als von Ihrem Laufwerk unterstutzt werden, kann dies mechanische Schaden verursachen. Ein einmaliger Versuch, falls mehr Spuren vorhanden sind als die ublichen unterstutzten 40/80, sollte nichts schaden, aber es kann keine Garantie dafur gegeben werden. Wenn Sie nicht sicher sind, legen Sie keine Gerateeintrage fur diese Formate an, um die Verwendung von vornherein zu verhindern. Die folgenden laufwerksunabhangigen Geratedateien verfugen uber Treiber, die automatisch das Diskettenformat und die Kapazitat erkennen: Name Basis Minor-Nummer -------------------- fdn 0 Geratedateien fur 5,25 Zoll Double Density: Name Kapaz. Zyl. Sekt. Kopfe Basis KiB Minor-Nummer ------------------------------------------------------------ fdnd360 360 40 9 2 4 Geratedateien fur 5,25 Zoll High Density: Name Kapaz. Zyl. Sekt. Kopfe Basis KiB Minor-Nummer ------------------------------------------------------------ fdnh360 360 40 9 2 20 fdnh410 410 41 10 2 48 fdnh420 420 42 10 2 64 fdnh720 720 80 9 2 24 fdnh880 880 80 11 2 80 fdnh1200 1200 80 15 2 8 fdnh1440 1440 80 18 2 40 fdnh1476 1476 82 18 2 56 fdnh1494 1494 83 18 2 72 fdnh1600 1600 80 20 2 92 3.5 inch double-density device files: Name Kapaz. Zyl. Sekt. Kopfe Basis KiB Minor-Nummer ------------------------------------------------------------ fdnu360 360 80 9 1 12 fdnu720 720 80 9 2 16 fdnu800 800 80 10 2 120 fdnu1040 1040 80 13 2 84 fdnu1120 1120 80 14 2 88 Geratedateien fur 3,5 Zoll High Density: Name Kapaz. Zyl. Sekt. Kopfe Basis KiB Minor-Nummer ------------------------------------------------------------ fdnu360 360 40 9 2 12 fdnu720 720 80 9 2 16 fdnu820 820 82 10 2 52 fdnu830 830 83 10 2 68 fdnu1440 1440 80 18 2 28 fdnu1600 1600 80 20 2 124 fdnu1680 1680 80 21 2 44 fdnu1722 1722 82 21 2 60 fdnu1743 1743 83 21 2 76 fdnu1760 1760 80 22 2 96 fdnu1840 1840 80 23 2 116 fdnu1920 1920 80 24 2 100 Geratedateien fur 3,5 Zoll Extra Density: Name Kapaz. Zyl. Sekt. Kopfe Basis KiB Minor-Nummer ------------------------------------------------------------ fdnu2880 2880 80 36 2 32 fdnCompaQ 2880 80 36 2 36 fdnu3200 3200 80 40 2 104 fdnu3520 3520 80 44 2 108 fdnu3840 3840 80 48 2 112 BESCHREIBUNG Die fd-Geratedateien greifen direkt auf die Diskettenlaufwerke zu. Sie unterstutzen die folgenden Aufrufe von ioctl(2): FDCLRPRM loscht die Medieninformationen (die Geometrie der eingelegten Diskette) eines Laufwerks. FDSETPRM setzt die Medieninformationen eines Laufwerks. Diese Informationen gehen bei einem Diskettenwechsel verloren. FDDEFPRM setzt die Medieninformationen (die Geometrie der eingelegten Diskette) eines Laufwerks dauerhaft, sodass sie auch einen Diskettenwechsel uberdauern. Damit wird auch die automatische Medienerkennung (autodetection) ausgeschaltet. Um sie wieder einzuschalten, muss ein FDCLRPRM-Ioctl-Aufruf abgesetzt werden. FDGETDRVTYP gibt den Typ des Laufwerks zuruck (namentlich). Bei von mehreren Laufwerkstypen unterstutzten Formaten, gibt FDGETDRVTYP den Namen des altesten Laufwerktyps zuruck, der dieses Format unterstutzt. FDFLUSH erklart den Puffer fur das angegebene Laufwerk fur ungultig. FDSETMAXERRS setzt die Schwelle fur die Meldung von Fehlern, Fehlerberichte, abgebrochenen Zugriffen, Neukalibrierungen, Resets (Zurucksetzen) und sektorweisem Lesen. FDSETMAXERRS gibt die aktuellen Fehlerschwellen zuruck. FDGETDRVTYP gibt den internen Namen des Laufwerks zuruck. FDWERRORCLR loscht die Schreibfehler-Statistiken. FDWERRORGET liest die Schreibfehler-Statistiken. Diese beinhalten die Gesamtzahl der Schreibfehler, die Position und Diskette des ersten Schreibfehlers und die Position und Diskette des letzten Schreibfehlers. Disketten werden anhand einer Generationenzahl identifiziert, die bei (fast) jedem Diskettenwechsel hochgezahlt wird. FDTWADDLE Schaltet den Laufwerksmotor fur ein paar Mikrosekunden aus. Dieses kann fur den Zugriff auf Disketten erforderlich sein, deren Sektoren zu nah beieinander liegen. FDSETDRVPRM setzt diverse Laufwerksparameter. FDGETDRVPRM gibt diverse Laufwerksparameter zuruck. FDGETDRVSTAT gibt den gepufferten Laufwerksstatus zuruck (Diskettenwechsel, Schreibschutz etc.). FDPOLLDRVSTAT fragt das Laufwerk ab und gibt dessen Status zuruck. FDGETFDCSTAT gibt den Status des Floppycontrollers zuruck. FDRESET setzt den Floppycontroller unter bestimmten Bedingungen zuruck. FDRAWCMD sendet einen >>rohen<< Befehl direkt an den Floppycontroller. Weitere genaue Informationen sind in den Headerdateien und sowie in der Handbuchseite floppycontrol(1) zu finden. DATEIEN /dev/fd* ANMERKUNGEN Die unterschiedlichen Formate ermoglichen es, unterschiedliche Diskettentypen zu lesen und zu schreiben. Wenn eine Diskette jedoch mit zu geringem Abstand zwischen den Sektoren formatiert wurde, kann der Durchsatz sinken. Es kann dann bis zu einigen Sekunden dauern, eine ganze Spur zu lesen. Um dies zu vermeiden, sollten verschachtelte (>>interleaved<<) Formate benutzt werden. Mit GCR (Group Code Recoding, wird bei den 800k-Disketten der Apple-II- und MacIntosh-Computern verwendet) formatierte Disketten konnen nicht gelesen werden. Das Lesen von hartsektorierten Disketten (ein Loch pro Sektor, mit einem verschobenen Indexloch) wird nicht unterstutzt. Dies war bei alteren 8-Zoll Disketten ublich. SIEHE AUCH chown(1), floppycontrol(1), getfdprm(1), mknod(1), superformat(1), mount(8), setfdprm(8) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Martin Schulze , Martin Eberhard Schauer und Mario Blattermann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 fd(4)