FD(4) | Руководство программиста Linux | FD(4) |
ИМЯ¶
fd - устройство для работы с дисководом
НАСТРОЙКА¶
Дисководы гибких дисков — это блочные устройства со старшим номером 2. Обычно их владельцем является root.floppy (т.е. пользователь root, группа floppy), а права доступа к ним — 0660 (доступно членам группы) или 0666 (доступно всем). Младшим номером определяется тип устройства, номер устройства и номер контроллера. Для каждого типа устройства, то есть комбинации объёма и количества дорожек, существует базовый младший номер. К этому базовому номеру прибавьте номер устройства в пределах его контроллера и ещё 128, если дисковод подключен к вторичному контроллеру. В нижеследующих таблицах n означает номер дисковода.
Предупреждение: Если вы используете формат дискет с большим числом дорожек, чем поддерживает ваш дисковод, вы можете вызвать механическое повреждение. Однократная попытка поработать с числом дорожек больше обычных 40/80, не должна его повредить, но нет гарантии, что этого не произойдет. Если вы не уверены, не создавайте устройства для таких форматов, чтобы предотвратить их использование.
Файлы устройств, не зависящие от дисковода, которые автоматически определяют формат носителя и ёмкость диска:
Имя | Базовый младший # |
fdn | 0 |
Файлы устройств с носителями 5.25 дюймов с двойной плотностью:
Имя | Ёмк. | Цил. | Сек. | Головок | Базовый младший # |
fdnd360 | 360K | 40 | 9 | 2 | 4 |
Файлы устройств с носителями 5.25 дюймов повышенной плотности:
Имя | Ёмк. | Цил. | Сек. | Головок | Базовый младший # |
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 |
Файлы устройств с носителями 3.5 дюймов с двойной плотностью:
Имя | Ёмк. | Цил. | Сек. | Головок | Базовый младший # |
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 |
Файлы устройств с носителями 3.5 дюймов повышенной плотности:
Имя | Ёмк. | Цил. | Сек. | Головок | Базовый младший # |
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 |
Файлы устройств 3.5 дюймов с дополнительной плотностью:
Имя | Ёмк. | Цил. | Сек. | Головок | Базовый младший # |
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 |
ОПИСАНИЕ¶
Специальные файлы fd обеспечивают доступ к дисководам в режиме без обработки (raw mode). Устройства fd поддерживают следующие вызовы ioctl(2):
- FDCLRPRM
- Очищает информацию о носителе в дисководе (геометрию диска в дисководе).
- FDSETPRM
- Устанавливает информацию о носителе в дисководе. Информация о носителе потеряется, когда носитель будет сменён.
- FDDEFPRM
- Устанавливает информацию о носителе в дисководе (геометрию диска в дисководе). Информация о носителе не будет потеряна, когда носитель будет сменён. При этом автоопределение носителя будет выключено. Чтобы снова его включить, выполните FDCLRPRM.
- FDGETDRVTYP
- Возвращает тип дисковода (параметр имени). Для форматов, работающих на нескольких типах дисководов, FDGETDRVTYP возвращает имя, соответствующее самому старому типу дисковода, который поддерживает данный формат.
- FDFLUSH
- Объявляет недействительными данные буферного кэша указанного привода.
- FDSETMAXERRS
- Устанавливает пороговые значения для сообщения об ошибках, остановки действий, перекалибровки, сброса в начальное состояние и посекторного чтения.
- FDSETMAXERRS
- Возвращает текущие пороговые значения для ошибок.
- FDGETDRVTYP
- Возвращает внутреннее имя дисковода.
- FDWERRORCLR
- Очищает статистику ошибок записи.
- FDWERRORGET
- Читает статистику ошибок записи. Она включает общее число ошибок записи, расположение и диск, на котором произошла первая ошибка записи, и расположение и диск, на котором произошла последняя ошибка записи. Диски обозначаются генерирующимся числом, которое увеличивается на единицу при (почти) каждой смене диска.
- FDTWADDLE
- Выключает на несколько микросекунд мотор привода. Это может быть необходимо для получения доступа к диску, чьи сектора располагаются слишком близко друг к другу.
- FDSETDRVPRM
- Устанавливает различные параметры дисковода.
- FDGETDRVPRM
- Возвращает различные параметры.
- FDGETDRVSTAT
- Возвращает кэшированное состояние дисковода (диск сменён, защищён от записи и т. д.)
- FDPOLLDRVSTAT
- Обращается к дисководу и возвращает его состояние.
- FDGETFDCSTAT
- Возвращает состояние контроллера дисководов.
- FDRESET
- Сбрасывает в начальное состояние контроллер дисководов при определённых условиях.
- FDRAWCMD
- Посылает команду в необработанном виде (raw command) контроллеру дисководов.
За более точной информацией обратитесь также к файлам <linux/fd.h> и <linux/fdreg.h>, а также к справочной странице floppycontrol(1).
ФАЙЛЫ¶
/dev/fd*
ЗАМЕЧАНИЯ¶
Разные форматы позволяют читать и записывать многие типы дисков. Однако, если дискета отформатирована со слишком маленьким межсекторным промежутком, производительность может снизиться вплоть до того, что для доступа к дорожке может понадобиться несколько секунд. Во избежание этого, используйте перемежающиеся (interleaved) форматы.
Невозможно прочитать дискеты, отформатированные с использованием GCR (групповая запись кодов), которые используются компьютерами Apple II и Macintosh (диски 800k).
Чтение аппаратно размеченных на секторы дискет (с отверстием на каждый сектор и слегка повернутым индексным отверстием) не поддерживается. Такими были старые 8-дюймовые дискеты.
СМОТРИТЕ ТАКЖЕ¶
chown(1), floppycontrol(1), getfdprm(1), mknod(1), superformat(1), mount(8), setfdprm(8)
2010-08-29 | Linux |