Scroll to navigation

FD(4) Pliki specjalne 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.
fdnD360 360K 80 9 1 12
fdnD720 720K 80 9 2 16
fdnD800 800K 80 10 2 120
fdnD1040 1040K 80 13 2 84
fdnD1120 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.
fdnH360 360K 40 9 2 12
fdnH720 720K 80 9 2 16
fdnH820 820K 82 10 2 52
fdnH830 830K 83 10 2 68
fdnH1440 1440K 80 18 2 28
fdnH1600 1600K 80 20 2 124
fdnH1680 1680K 80 21 2 44
fdnH1722 1722K 82 21 2 60
fdnH1743 1743K 83 21 2 76
fdnH1760 1760K 80 22 2 96
fdnH1840 1840K 80 23 2 116
fdnH1920 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.
fdnE2880 2880K 80 36 2 32
fdnCompaQ 2880K 80 36 2 36
fdnE3200 3200K 80 40 2 104
fdnE3520 3520K 80 44 2 108
fdnE3840 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:

usuwa informacje o nośniku (geometrii dyskietki w stacji).
ustawia informacje o nośniku. Informacje te giną wraz ze zmianą dyskietki.
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.
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.
dezaktualizuje bufory cache dla danego napędu.
ustawia progi błędów dla ich zgłaszania, anulowania operacji, rekalibracji, resetowania i odczytu sektor po sektorze.
zwraca bieżące progi błędów.
zwraca wewnętrzną nazwę napędu.
czyści statystyki błędów zapisu.
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.
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.
ustawia różne parametry napędu.
odczytuje te parametry.
zwraca buforowany stan napędu (dyskietka zmieniona, zabezpieczenie przed zapisem, itd.)
odpytuje napęd i zwraca jego stan.
zwraca stan kontrolera napędu dyskietek.
resetuje kontroler napędu dyskietek w konkretnych warunkach.
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 8-mio calowych dyskietkach.

PLIKI

/dev/fd*

AUTORZY

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

TŁUMACZ

Paweł Olszewski (alder@amg.net.pl).

ZOBACZ TAKŻE

floppycontrol(1), mknod(1), chown(1), getfdprm(1), superformat(1), mount(8), setfdprm(8)

1995-01-29 Linux