table of contents
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:
- 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 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 |