|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Igor A. Goussarov 2:5020/400 05 Jun 2002 22:39:56 To : All Subject : Блокировка выброса ZIP-диска -------------------------------------------------------------------------------- Привет, спецы! Ещё один вопрос, связанный с работой дисков. Есть ATAPI ZIP. Он умеет блокировать выброс диска. Обычно выброс диска запрещён, пока диск подмонтирован. Вот в связи с этим и наблюдается глюк: 1. Вставляем в ZIP дискетку. 2. В midc пробуем посмотреть на содержимое файла /dev/afd0. Hу, то есть, симулируем какое-то использование этого файла... 3. Пока файл устройства открыт, кнопочка eject на нём не работает - всё как и должно быть. 4. Закрываем /dev/afd0, открываем для просмотра /dev/afd0s4 5. Hесмотря на то, что файл открыт и потенциально используется, выброс диска не заблокирован. Вопрос: что делать? Зиповые дискетки, отформатированные под msdos, ведь можно подмонтировать только как mount_msdos /dev/afd0s4 /mnt... Собственно, я и напоролся на то, что во время записи можно запросто вынуть дискетку со всеми вытекающими разрушениями. Экстренное расследование показало, что в /usr/src/sys/dev/ata/atapi-fd.c в функции afdopen функция count_dev возвращает нулевой счётчик использования устройства при попытке открыть его как /dev/afd0s4 и единичку при открытии /dev/afd0. В ядре я ориентируюсь плохо... Куда копать дальше, чтобы выяснить, где оно неправильно учитывает это самое количество использований устройства? Или можно ли как-то добиться блокировки выброса без вмешательства в код ОС? Игорь Hа этот раз i386-FreeBSD-4.4-RELEASE --- ifmail v.2.15dev5 * Origin: Akella (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/4388ada0134c.html, оценка из 5, голосов 10
|