Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Advanced Disc Подача System ( ADFS ) является вычислительной файловой системой уникальна для Acorn диапазона компьютерного и RISC OS -наследники. Первоначально основанный на редкой системе архивирования Acorn Winchester, он был переименован в Advanced Disc Filing System, когда была добавлена поддержка гибких дисков (с использованием контроллера гибких дисков WD1770), а в более поздних 32-разрядных системах - вариант контроллера гибких дисков в стиле ПК. . [2]

Первоначальная система хранения дисков Acorn была ограничена 31 файлом на поверхность диска, 7 символами на имя файла и одним символом для имен каталогов, формат, унаследованный от более ранних компьютеров Atom и System 3–5 Eurocard . Чтобы преодолеть некоторые из этих ограничений, Acorn разработал ADFS. Самым значительным изменением стало введение иерархической структуры каталогов. Длина имени файла увеличилась с 7 до 10 букв, а количество файлов в каталоге увеличилось до 47. Он сохранил некоторые внешние атрибуты DFS; разделитель каталогов продолжал быть точкой и $теперь указывал на иерархический корень файловой системы. ^использовался для ссылки на родительский каталог, @текущий каталог и\ ранее посещенный каталог.

BBC Master Compact содержал ADFS версии 2.0, которая обеспечивала добавление команд форматирования, проверки и резервного копирования в ПЗУ, но не поддерживала жесткие диски. [3]

8-битное использование [ править ]

Для ADFS в 8-битных системах требуется контроллер гибких дисков серии WD1770 или более поздней версии 1772 из-за неспособности исходного чипа Intel 8271 справиться с требуемым форматом ADFS с двойной плотностью. Однако ADFS можно использовать для поддержки жестких дисков без контроллера 1770; при разработке основной целью было использование жестких дисков, позже появилось расширение для работы с дискетами. [ необходима цитата ] Контроллер флоппи-дисковода 1770 был непосредственно включен в конструкцию моделей Master Series и B + [4] и был доступен в качестве платы обновления для более ранней модели B. [5] [6] ADFS можно было добавить в Model Системы B и B + с дополнительным апгрейдом. [7]

Acorn Plus 3 , официальное расширение диска Acorn для желудя Electron, снабжались ADFS как стандарт, но реализация признаков различных заметных ошибок. Файл с именем ZYSYSHELP был «необходим системой» и был создан во время форматирования. [8] ( стр. 7 ) Это была путаница. Первоначальная реализация ADFS Acorn на Electron была ненадежной при записи на первые несколько дорожек гибкого диска, так что это было «исправление» и просто включало запись файла, полного мусора, в подозрительную часть. Тогда ADFS пропустит его. [ необходима цитата ] Повреждение диска также могло произойти, если попытаться использовать *COMPACTкоманду без отключения мигающего текстового курсора. [9][примечание 1] Хьюго Тайсон, главный разработчик ADFS, напоминает, что эта ошибка была обнаружена во время позднего тестирования, но не исправлена ​​в первоначальном выпуске ПЗУ, чтобы избежать поздних изменений, поскольку существуют обходные пути.

На Electron форматирование диска производилось с помощью *EFORMкоманды вместо установленных команд *FORM40/ *FORM80DFS. Кроме того, обратите внимание на то, что эта *EFORMкоманда отличается от эквивалентной *AFORMкоманды для 1770 ADFS на микрокомпьютере BBC. Возможно, это связано с необходимостью создания файла ZYSYSHELP на Electron. Команда была предоставлена ​​только на приветственном диске, поставляемом с Plus3, и не была включена в ПЗУ. [8] ( стр 48 )*EFORM

ADFS поддерживает жесткие диски и 5-дюймовые гибкие диски, отформатированные до емкости до 640 КБ с использованием кодирования MFM двойной плотности ( формат L ; односторонние диски поддерживаются с форматом S (160 КБ) и форматом M (320 КБ)). ADFS как реализованная в микрокомпьютерной системе BBC (а затем и в ОС RISC) никогда не поддерживала дискеты одинарной плотности.

Поддержка жестких дисков в ADFS использует тот же формат, что и дискеты формата L , с точки зрения 256-байтовых блоков; [10] только основное расположение дорожек и секторов отличалось в зависимости от фактически используемого диска, но это управлялось контроллером SCSI . Он взаимодействует с блоком Winchester на базе ST506 / ST412 через шину BBC Micro 1 МГц, интерфейсную карту, разработанную Acorn (адаптер шины 1 МГц для SCSI) и стандартный контроллер Adaptec SCSI (адаптер SCSI - ST-506). ).

Поддержка дисков в стиле IDE / ATAPI была добавлена ​​«неофициально» третьими сторонами в последние годы. [11]

Формат файла ADFS использовал байты ascii Hugo для разделения имен каталогов на диске, названного в честь автора ADFS Хьюго Тайсона.

32-битное использование (Arthur и RISC OS) [ править ]

В 32-битных системах WD 1770 или 1772 изначально использовался в качестве контроллера гибких дисков на ранних машинах этого диапазона. В более поздних моделях использовался контроллер множественного ввода-вывода в стиле ПК, требующий небольших изменений в ADFS. В дополнение к устаревшей поддержке формата L-типа, Arthur и более поздние версии ОС RISC предоставили расширенные форматы, которые преодолевают ограничения BBC Micro.

Артур добавил формат D с 77 записями на каталог по сравнению с предыдущими 47, которые также можно использовать на жестких дисках, и новый формат 800 КБ для гибких дисков двойной плотности. Атрибут "типа" для каждого файла был добавлен в пространство, ранее использовавшееся для хранения адресов загрузки и выполнения. 12 бит информации о типе используются для обозначения содержимого или предполагаемого использования файла, как правило, в виде трех шестнадцатеричных цифр. Это похоже на тип 32-битном атрибуты хранятся в компании Apple HFS файловой системы, и концептуально сопоставимы с более общего использования типов MIME К Be Operating System (BeOS), или магических чисел в системах Unix (хотя последний хранится в виде часть файла, а не как метаданные).

ОС RISC представлена ​​в формате E и F для дисков двойной плотности и дисков / жестких дисков высокой плотности соответственно. Эти форматы поддерживают фрагментацию файлов (с так называемой «новой картой»), хранение нескольких файлов на фрагмент и хранение небольших файлов в таблицах каталогов. Стратегия распределения оптимизирована для минимизации фрагментации и иногда выполняет дефрагментацию как часть операции хранения файлов. [1] В RISC OS 4 добавлен формат E + / F + , позволяющий использовать длинные имена файлов и более 77 файлов в каталоге. [ необходима цитата ] Более свежие версии ОС RISC, в том числе для Iyonix, продолжаем предоставлять ADFS и расширяем его, чтобы справляться с жесткими дисками большего размера.

В отличие от 8-битной реализации, ADFS, реализованная в ОС RISC, не является монолитной. Системный модуль под названием «ADFS» предоставляет не более чем блочный драйвер и пользовательские интерфейсы, где модуль «FileCore» содержит фактическую реализацию файловой системы, а FileSwitch содержит реализации VFS и высокоуровневого API доступа к файлам. Это позволяет другому оборудованию легко использовать формат ADFS, например IDEFS (обычно используется для дополнительных карт IDE), SCSIFS и AppFS с поддержкой сети. Функции FileCore и FileSwitch в некотором смысле похожи на системные менеджеры IFS и IO в Windows NT. Эта гибкость позволила относительно легко внедрить другие файловые системы в ОС RISC.

Поддержка ADFS на других платформах [ править ]

Linux ядро поддерживает ADFS для E формате и позже.

NetBSD имеет поддержку filecore [12] начиная с NetBSD 1.4.

Такие инструменты, как Omniflop (в Windows 2000 и более поздних версиях) и поддержка Libdsk позволяют читать «физическую» структуру дискет ADFS в системах ПК, использующих внутренний диск. Однако логическая структура остается нереализованной.

Ссылки [ править ]

  1. ^ a b Ривз, Ник (26 октября 1990 г.). «Дизайн-документ формата Е» . Проверено 24 мая 2013 года .
  2. ^ Расширенная система хранения дисков: Руководство пользователя (PDF) . Acorn Computers Limited. Сентябрь 1985 . Проверено 1 августа +2016 .
  3. ^ "Снимая крышку с Master Compact" . Пользователь Acorn . Октябрь 1986. с. 17 . Дата обращения 5 сентября 2020 .
  4. ^ Смит, Брюс (июль 1985). «Оценка B +» . Пользователь Acorn . С. 160–161 . Проверено 18 октября 2020 года .
  5. ^ Интерфейс диска 1770 (PDF) . Acorn Computers Limited . Проверено 6 марта 2021 года .
  6. ^ Инструкции по установке комплекта обновления интерфейса диска 1770 (PDF) . Acorn Computers Limited. Август 1985 . Проверено 11 марта 2021 года .
  7. ^ Обновление ADFS (PDF) . Acorn Computers Limited . Проверено 6 марта 2021 года .
  8. ^ a b Руководство пользователя Electron Plus 3 (PDF) . Acorn Computers Limited. Октябрь 1984 . Проверено 6 марта 2021 года .
  9. ^ Waddilove, Roland (август 1988). «Совершенствование к совершенству» . Электронный пользователь . 5 (11). п. 9 . Проверено 20 января 2021 года .
  10. ^ «Структура 8-битной файловой системы ADFS Acorn» (TXT) . Mdfs.net . Проверено 1 августа 2016 .
  11. ^ "Интерфейс BBC IDE - MDFS :: Info.Comp.BBC.IDE" . MDFS.net . Проверено 1 августа 2016 .
  12. ^ «Изменения и новости NetBSD в 1998 году» . Netbsd.org . Проверено 1 августа 2016 .
  • Watford Electronics, "Расширенное справочное руководство для BBC Master Series", 1988 г. (стр. 169)
  • Acorn Computers Ltd, «Справочное руководство BBC Microcomputer System Master Series, часть 1», номер детали, 0443-001, выпуск 1, март 1986 г. - (Страницы (с J.10-1 по J10-3)

Заметки [ править ]

  1. ^ Это было связано с тем, что*COMPACTкоманда использовала экранную память (по умолчанию) в качестве рабочего пространства во время операции, а программно реализованный мигающий курсор повредил это пространство памяти. В качестве альтернативы можно было бы привести аргументы, чтобы заставить его использовать неэкранную память для рабочего пространства, например,*COMPACT 40 20в экранном режиме 6. На BBC Micro мигающий курсор, если он был включен, накладывался на вывод дисплея 6845 CRTC и видео Acorn. ULA, без изменения памяти экрана. У Acorn Electron не было этого дополнительного оборудования, и ему приходилось программно изменять память экрана, чтобы курсор мигал.

Внешние ссылки [ править ]

  • Документация по размещению ADFS на диске