FD(4)

NAZWA
fd - urządzenie stacji dyskietek

KONFIGURACJA
Napędy dyskietek są urządzeniami blokowymi o numerze głównym 2. Zazwyczaj ich właścicielem jest root.floppy (tzn. użytkownik root, grupa floppy) i mają prawa dostępu 0660 (kontrola dostępu za pośrednictwem przynależności do grupy) lub 0666 (swobodny dostęp dla każdego). Numery poboczne symbolizują typ urządzenia, numer napędu i numer kontrolera. Dla każdego typu urządzenia (tj. kombinacji gęstości i liczby ścieżek) istnieje podstawowy numer poboczny. Do tego numeru podstawowego dodaje się numer napędu na kontrolerze i 128 jeśli napęd jest podłączony do drugiego kontrolera. W podanych dalej tablicach urządzeń n reprezentuje numer napędu. Uwaga: Jeśli używa się formatów z większą ilością ścieżek, niż ta, którą jest w stanie obsłużyć napęd, można spowodować jego fizyczne uszkodzenie. Jednorazowa próba, czy napęd obsługuje więcej niż zwykłe 40/80 ścieżek nie powinna go uszkodzić, ale nie ma na to gwarancji. Lepiej nie tworzyć plików urządzeń dla tych formatów, aby zapewnić, że nikt ich nie użyje.

Niezależne od napędu pliki urządzeń, które automatycznie wykrywają format i pojemność dyskietki:

Nazwa | Podst. nr pob.
fdn | 0

Pliki urządzeń napędu 5.25 cala o podwójnej gęstości:

Nazwa | Pojemn. | Cyl. | Sekt. | Głow. | Podst. nr pob.
fdnd360 | 360K | 40 | 9 | 2 | 4

Pliki urządzeń napędu 5.25 cala o wysokiej gęstości:

Nazwa | Pojemn. | Cyl. | Sekt. | Głow. | Podst. nr pob.
fdnh360 | 360K | 40 | 9 | 2 | 20
fdnh410 | 410K | 41 | 10 | 2 | 48
fdnh420 | 420K | 42 | 10 | 2 | 64
fdnh720 | 720K | 80 | 9 | 2 | 24
fdnh880 | 880K | 80 | 11 | 2 | 80
fdnh1200 | 1200K | 80 | 15 | 2 | 8
fdnh1440 | 1440K | 80 | 18 | 2 | 40
fdnh1476 | 1476K | 82 | 18 | 2 | 56
fdnh1494 | 1494K | 83 | 18 | 2 | 72
fdnh1600 | 1600K | 80 | 20 | 2 | 92

Pliki urządzeń napędu 3.5 cala o podwójnej gęstości:

Nazwa | Pojemn. | Cyl. | Sekt. | Głow. | Podst. nr pob.
fdnu360 | 360K | 80 | 9 | 1 | 12
fdnu720 | 720K | 80 | 9 | 2 | 16
fdnu800 | 800K | 80 | 10 | 2 | 120
fdnu1040 | 1040K | 80 | 13 | 2 | 84
fdnu1120 | 1120K | 80 | 14 | 2 | 88

Pliki urządzeń napędu 3.5 cala o wysokiej gęstości:

Nazwa | Pojemn. | Cyl. | Sekt. | Głow. | Podst. nr pob.
fdnu360 | 360K | 40 | 9 | 2 | 12
fdnu720 | 720K | 80 | 9 | 2 | 16
fdnu820 | 820K | 82 | 10 | 2 | 52
fdnu830 | 830K | 83 | 10 | 2 | 68
fdnu1440 | 1440K | 80 | 18 | 2 | 28
fdnu1600 | 1600K | 80 | 20 | 2 | 124
fdnu1680 | 1680K | 80 | 21 | 2 | 44
fdnu1722 | 1722K | 82 | 21 | 2 | 60
fdnu1743 | 1743K | 83 | 21 | 2 | 76
fdnu1760 | 1760K | 80 | 22 | 2 | 96
fdnu1840 | 1840K | 80 | 23 | 2 | 116
fdnu1920 | 1920K | 80 | 24 | 2 | 100

Pliki urządzeń napędu 3.5 cala o gęstości extra:

Nazwa | Pojemn. | Cyl. | Sekt. | Głow. | Podst. nr pob.
fdnu2880 | 2880K | 80 | 36 | 2 | 32
fdnu3200 | 3200K | 80 | 40 | 2 | 104
fdnu3520 | 3520K | 80 | 44 | 2 | 108
fdnu3840 | 3840K | 80 | 48 | 2 | 112

OPIS
Pliki specjalne fd udostępniają dyskietki w trybie surowym. Następujące odwołania ioctl(2) obsługiwane są przez urządzenia fd:

FDCLRPRM
    usuwa informacje o nośniku (geometrii dyskietki w stacji).

FDSETPRM
    ustawia informacje o nośniku. Informacje te giną wraz ze zmianą dyskietki.

FDDEFPRM
    ustawia informacje o nośniku (geometrii dyskietki w stacji). Informacje te nie giną po zmianie dyskietki. Oznacza to wyłączenie automatycznego rozpoznawania nośnika w razie jego zmiany. Aby włączyć autodetekcję z powrotem, należy użyć FDCLRPRM.

FDGETDRVTYP
    zwraca typ napędu (parametr nazwy). Dla formatów, które działają w różnych typach napędów, FDGETDRVTYP zwraca nazwę, która odpowiada najstarszemu typowi napędu obsługującemu ten format.

FDFLUSH
    dezaktualizuje bufory cache dla danego napędu.

FDSETMAXERRS
    ustawia progi błędów dla ich zgłaszania, anulowania operacji, rekalibracji, resetowania i odczytu sektor po sektorze.

FDSETMAXERRS
    zwraca bieżące progi błędów.

FDGETDRVTYP
    zwraca wewnętrzną nazwę napędu.

FDWERRORCLR
    czyści statystyki błędów zapisu.

FDWERRORGET
    odczytuje statystyki błędów zapisu. Należą do nich: całkowita liczba błędów zapisu, położenie i dysk, na którym wystąpił pierwszy błąd zapisu oraz położenie i dysk, na którym wystąpił ostatni błąd zapisu. Dyski identyfikowane są przez generowany numer, zwiększany po każdej (niemal) zmianie dyskietki.

FDTWADDLE
    Wyłącza silnik napędu na kilka mikrosekund. Może to być niezbędne dla uzyskania dostępu do dyskietki, której sektory są zbyt blisko siebie.

FDSETDRVPRM
    ustawia różne parametry napędu.

FDGETDRVPRM
    odczytuje te parametry.

FDGETDRVSTAT
    zwraca buforowany stan napędu (dyskietka zmieniona, zabezpieczenie przed zapisem, itd.)

FDPOLLDRVSTAT
    odpytuje napęd i zwraca jego stan.

FDGETFDCSTAT
    zwraca stan kontrolera napędu dyskietek.

FDRESET
    resetuje kontroler napędu dyskietek w konkretnych warunkach.

FDRAWCMD
    wysyła surowe polecenie do kontrolera napędu.

Aby uzyskać bardziej szczegółowe informacje, zajrzyj również do plików nagłówkowych <linux/fd.h> i <linux/fdreg.h>, jak również do strony man dla floppycontrol.

UWAGI
Różne formaty pozwalają na zapis i odczyt wielu typów dysków. Jednakże, jeśli dyskietka jest sformatowana ze zbyt małym odstępem między sektorami, wydajność może spaść nawet do poziomu, w którym napęd będzie potrzebował kilku sekund na odczytanie całej ścieżki. Aby tego uniknąć, należy używać formatów z przeplotem. Niemożliwy jest odczyt dyskietek sformatowanych przy użyciu GCR (group code recording - grupowe nagrywanie kodu), stosowanego w komputerach Apple II i Macintosh (dyskietki 800k). Nie działa również odczyt z dyskietek z twardymi sektorami (jedna przerwa na sektor, przerwa indeksowa nieco przesunięcia). Było to powszechne na starych dyskietkach ośmiocalowych.

PLIKI
/dev/fd*

AUTORZY
Alain Knaff (Alain.Knaff@imag.fr), David Niemi (niemidc@clark.net), Bill Broadhurst (bbroad@netcom.com).

ZOBACZ TAKŻE
floppycontrol(1), mknod(1), chown(1), getfdprm(1), superformat(1), mount(8), setfdprm(1)

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Paweł Olszewski (PTM) <alder@civic.amg.net.pl> i Robert Luberda <robert@debian.org>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 5.5 oryginału.