stringtranslate.com

СпартаDOS X

SpartaDOS X (или SpartaDOS 4.0 ) — дисковая операционная система для 8-битного семейства компьютеров Atari, очень похожая на MS-DOS . Он был разработан и продан компанией ICD, Inc. в 1987–1993 годах, а много лет спустя подхвачен сторонним сообществом SpartaDOS X Upgrade Project, которое до сих пор поддерживает это программное обеспечение.

История

SpartaDOS X является преемником SpartaDOS 1.0, 2.0 и 3.0 (также продуктов ICD), и хотя он имеет хороший уровень обратной совместимости со старыми версиями, это совершенно новая система, написанная с нуля.

SpartaDOS X 4.0 была первоначально разработана Майклом Густафсоном в 1987-89 годах [2] и поставлялась на картриджах с 64 КБ ПЗУ компанией ICD, Inc. [3] до версии 4.21. Картридж имел дополнительный слот для картриджа, так что можно было подключить другой картридж, например часы ICD R-Time 8 с батарейным питанием, языковой картридж ( Action!, MAC /65 и т. д.) или игру. картридж и используйте его совместно с DOS.

В 1992 году корпорация Atari прекратила официальную поддержку своих 8-битных компьютеров, вскоре после этого последовала и ICD. Права на 8-битную версию ICD были куплены в ноябре 1993 года Майклом Хоманом, официально называвшимся Fine Tooned Engineering. FTE выпустила слегка обновленную версию 4.22 5 ноября 1995 г. [2] и через два или три года исчезла вместе со всеми принадлежащими ей элементами и правами.

Десять лет спустя разработку SpartaDOS X подхватили энтузиасты под названием SpartaDOS X Upgrade Project. [4] Это привело к появлению нескольких неофициальных версий программного обеспечения, включающих многие утилиты, написанные с 1992 года, устраняющих многие выявленные проблемы и включающих многочисленные улучшения. По состоянию на 2020 год опубликованные версии:

Характеристики

Общий

SpartaDOS X — это немногозадачная операционная система , намеренно созданная по образцу MS-DOS и внешне напоминающая ее по внешнему виду. Он состоит из ядра, системной библиотеки, нескольких типов драйверов, оболочки (называемой COMMAND.COM ) и ряда служебных программ. SpartaDOS X написан на машинном языке 6502 и помещается в файлово-ориентированный ПЗУ-картридж емкостью 128 КБ .

Поддерживаемые устройства хранения

Утилита редактора дисков SpartaDOS X

Обеспечивается полная поддержка последовательных дисков типа Atari, а также параллельных жестких дисков, если они соответствуют стандартам Atari (т. е. если они используют реализованный механизм интерфейса параллельной шины (PBI) «подключи и работай»). в ПЗУ компьютеров XL/XE). Для тех, которые этого не делают, а также для виртуальных дисков и т.п. можно установить до четырех драйверов блочных устройств. Нестандартные интерфейсы жестких дисков обрабатываются специализированными драйверами.

Максимальное количество одновременно подключенных дисков (или разделов жесткого диска) составляет 15, начиная с версии 4.40 (9 в более ранних версиях).

Встроенные функции ядра

Ядро позволяет открывать файлы и каталоги в режимах «только чтение», «только запись», «запись-добавление» и «чтение-запись». Он также поддерживает переменные среды , и программы могут запрашивать поиск файлов в каталогах, указанных в $PATH. Переменные также управляют некоторыми настройками DOS и программ, например, форматом отображаемой даты и времени (выбор осуществляется между «европейским» форматом ДД-ММ-ГГ и 24-часовым форматом часов и «американским» форматом). ММ-ДД-ГГ и 12-часовой формат времени).

Драйверы файловой системы

Благодаря некоторой форме виртуальной файловой системы практически к любой файловой системе можно получить прямой доступ, если соответствующий драйвер файловой системы существует и загружен в память. Одновременно можно установить до восьми таких драйверов.

Основной драйвер файловой системы (размером менее 4,5 КБ) может выполнять поиск в каталогах (FFIRST/FNEXT), читать/записывать файлы (FREAD/FWRITE), получать или изменять текущую позицию в файле (FTELL/FSEEK), получать длину файла. (FILELENG), удаление файлов и каталогов (REMOVE/ RMDIR ), переименование файлов и каталогов ( RENAME /RENDIR), создание каталогов ( MKDIR ), изменение атрибутов в файлах и каталогах ( CHMOD ), изменение текущего каталога ( CHDIR ), получение пути к текущий каталог (GETCWD), собрать информацию о диске (GETDFREE) и сделать бинарный файл загрузочным (SETBOOT). Он также поддерживает буферный кэш с очередью, который может одновременно хранить до 16 секторов (8 КБ).

Файловая система SpartaDOS

Текстовый режим SpartaDOS X с 64 столбцами

Собственный формат файловой системы , называемый SpartaDOS FS (не связанный с MS-DOS FAT и несовместимый с ним), предлагает полную поддержку подкаталогов, атрибутов, подобных MS-DOS (AHPS: Archived , Hidden , Protected , Subdirectory ), даты и времени изменения. штампы, произвольный доступ к данным внутри файла, разреженные файлы .

Соглашение об именах файлов — 8+3 (эта схема, унаследованная от CP/M , является обычной для Atari). Структура каталогов иерархическая, и нет никаких ограничений на вложенность каталогов, кроме практических. Каталог может содержать до 1423 записей файлов и других каталогов.

Файловая система 16-битная: диск может содержать до 65 535 логических секторов (на дисках Atari сектор 0 отсутствует). Размер логического сектора составляет 128 или 256 байт в более ранних версиях и 128, 256 и 512 байт в версии 4.40. Таким образом, максимальная емкость каждого раздела составляет 16 МБ в более ранних версиях и 32 МБ в версии 4.40. 4 ГБ на диск — путем создания секторных кластеров до 65 536 байт на кластер — теоретически возможно, но пока не реализовано.

Библиотека ДОС

Системная библиотека содержит двоичный загрузчик, поддерживающий стандартные, зависящие от адреса двоичные файлы Atari, а также независимые от адреса («перемещаемые») двоичные файлы SpartaDOS X. Она также облегчает такие задачи, как обработка ошибок, анализ командной строки, а также управление памятью, ресурсами файлов и устройств и т. д. Библиотека также содержит управляемый меню форматировщик дисков, который можно вызвать в любое время, не только из DOS. ' Командный процессор, но и из прикладной программы.

Вся библиотека занимает 24 КБ картриджа (в трёх банках по 8 КБ) и при необходимости может быть отключена для освобождения части памяти.

КОМАНД.КОМ

Пользовательский интерфейс SpartaDOS X по умолчанию представляет собой интерпретатор командной строки с тем же именем, что и тот, который используется в MS-DOS: COMMAND.COM. Программа SpartaDOS X COMMAND.COM занимает менее 4 КБ и включает примерно 45 внутренних команд , таких как DIR , CD , DEL и т. д. Для перенаправления ввода-вывода используются «<<» и «>>» вместо «<» и «>». UNIX и других систем (это потому, что знак «>» является собственным разделителем путей SpartaDOS).

Псевдоконвейеры доступны начиная с версии SpartaDOS X 4.42.

Пакетные файлы могут содержать структурированные условия, такие как IF... ELSE... FI, GOTO, GOSUB, процедуры и циклы.

Переменная среды $COMSPEC может указывать на альтернативный интерпретатор командной строки, который нужно загрузить вместо COMMAND.COM.

Команды, служебные программы и дополнительные расширения

Утилита SpartaDOS X Menu

Дополнительная утилита, называемая RUNEXT, позволяет связать типы данных с программами, которые будут вызываться автоматически, когда пользователь вводит имя файла данных в командной строке DOS и нажимает клавишу Return.

Программа под названием MENU облегчает сложные задачи управления файлами и может служить заменой оболочки. Другие утилиты позволяют изменять имена дисков, искать на дисках файлы, восстанавливать их, устанавливать буфер клавиатуры , редактировать системные файлы ( CONFIG.SYS и AUTOEXEC.BAT ) и так далее. Порт ARC предоставляет возможности сжатия файлов.

Среди специальных программ, которые не доступны непосредственно на картридже и, следовательно, не входят в состав самой DOS, имеются редакторы дисков, а также утилиты для проверки и восстановления целостности файловой системы.

Следующие команды поддерживаются SpartaDOS X. [5]

Конфигурация

При запуске с загрузочного диска считывается текстовый файл CONFIG.SYS. Содержимое файла определяет, какую память DOS будет использовать для хранения основной части своего кода и драйверов (выбор стоит между расширенной памятью и двумя областями обычного 64 КБ), сколько файлов можно открыть одновременно, размер буферного кэша и его расположение в памяти (те же варианты, что и для кода DOS), переменные среды по умолчанию и драйверы для загрузки.

Помимо «основного» может быть до 9 альтернативных конфигурационных файлов (или 19 начиная с версии 4.45). Выбор между ними предлагается при запуске в виде меню. Если файл CONFIG.SYS отсутствует, из картриджа загружается файл по умолчанию.

Другой файл по умолчанию, который можно использовать для настройки, — AUTOEXEC.BAT. Это пакетный файл, который запускается COMMAND.COM при первой загрузке COMMAND.COM.

Требования

Для работы SpartaDOS X требуется 8-битный компьютер Atari (модели 400, 800 или XL/XE), оснащенный как минимум 48 КБ обычной памяти для работы или 64 КБ для действительного использования (на машине с 48 КБ остается слишком мало памяти, поскольку для выполнения большинства программ). Однако рекомендуемая конфигурация — не менее 128 КБ ОЗУ (64 КБ обычного плюс не менее 64 КБ расширенного). DOS может использовать расширенную память для хранения большой части своего кода, буферного кэша и внутренних структур, освобождая таким образом традиционную память. Остальную расширенную память можно использовать для дополнительных драйверов или виртуальных дисков.

Связь с другими DOS-версиями для Atari

В отличие от своего предшественника, SpartaDOS 3.0, SpartaDOS X не является тем, что обычно называют «DOS» на 8-битном языке Atari.

8-битная операционная система Atari состоит из двух основных частей: «ОС» на основе ПЗУ и загрузочной «DOS». Распространенное заблуждение относительно этого разделения состоит в том, что эти соответствующие части соответствуют BIOS и DOS на компьютере , совместимом с IBM PC . В действительности «ОС» отвечает за связь не только с блочными устройствами (вроде PC BIOS ), но и с символьными устройствами, в том числе файлово-ориентированными (вроде PC DOS ). Следовательно, все функции управления файлами централизованы в части «ОС», а часть «DOS» является лишь одним из подчиненных ей драйверов устройств, которые работают на запоминающих носителях (например, на дискетах).

Таким образом, « DOS » для Atari обычно состоит из вышеупомянутого драйвера устройства (называемого FMS, «Система управления файлами») и прикладной программы, играющей роль оболочки ОС. Эту оболочку обычно называют DUP, «Пакет дисковой утилиты». Вся связь между пользовательскими программами (включая DUP) и FMS осуществляется через CIO («центральный ввод/вывод»), находящийся в ПЗУ.

Такая конструкция имеет некоторые недостатки, например, ни одна типичная DOS не может держать открытыми более восьми файлов одновременно, поскольку это ограничение, налагаемое API « ОС » на основе ПЗУ.

Теперь SpartaDOS X, даже несмотря на то, что он зарегистрирован в CIO на базе ПЗУ как драйвер устройства и (для обратной совместимости) выполняет все типичные функции DOS по запросу, фактически независим от CIO. Вместо этого он имеет собственный «центр ввода-вывода» (известный как «ядро»), не связанный с ОС на базе ПЗУ, с собственным набором спецификаторов и драйверов как для символьных устройств (таких как CON: или COM:), так и для блочных устройств. устройства.

В SpartaDOS X программы могут выполнять все операции ввода-вывода через ядро ​​SpartaDOS, полностью минуя ОС Atari в ПЗУ. Благодаря этому удалось обойти многие ограничения: например, одновременно может быть открыто до 16 файлов. Это также делает SpartaDOS X (в отличие, например, от его предшественника SpartaDOS 3.2 или любой другой DOS для Atari) операционной системой , а не просто еще одним драйвером устройства с какой-то оболочкой.

Рекомендации

  1. ^ Страница проекта обновления SpartaDOS X: Текущая бета-версия
  2. ^ FAQ по 8-битной версии Atari http://faqs.cs.uu.nl/na-dir/atari-8-bit/faq.html
  3. ^ АНТИК ТОМ. 7, НЕТ. 11 / МАРТ 1989 г. / СТРАНИЦА 15 http://www.atarimagazines.com/v7n11/spartados.html
  4. ^ «Проект обновления SpartaDOS X» . Проверено 12 октября 2011 г.
  5. ^ Руководство пользователя SpartaDOS X 4.48.