- Apple DOS
-
Apple DOS
Скриншот Apple DOS 3.0Разработчик Семейство ОС Apple DOS
Тип ядра Лицензия Apple Software License Agreement
Состояние Историческое
Apple DOS — операционная система для микрокомпьютеров серии Apple II с 1978 по 1983 гг. Также известна как просто DOS 3.x. У Apple DOS было три важных версии: DOS 3.1, DOS 3.2 и DOS 3.3, за каждой из которых следовал релиз, исправляющий небольшие ошибки, но только в случае DOS 3.2 этот релиз получил собственный номер версии — DOS 3.2.1.
Наиболее известная и используемая версия — DOS 3.3 релиза 1980 и 1983 годов.
Содержание
Особенности Apple DOS
Продвинутой по тем временам особенностью Apple DOS была поддержка имён файлов, cпособных содержать до 30 любых символов (хотя в случае использования в именах файлов управляющих символов и запятых могли возникать проблемы с использованием таких имён в командах). Также интересной особенностью была строгая типизация файлов: каждый файл мог иметь один из типов A (Applesoft BASIC), B (двоичный), I (Integer BASIC), T (текстовый), и, в зависимости от типа, к файлу могли быть применены разные операции. Ещё несколько типов (R, S, «дополнительный A», «дополнительный B») было зарезервировано для дальнейших расширений. Файлы разных типов имели разную внутреннюю организацию; изменить тип существующего файла было невозможно.
Штатно Apple DOS была рассчитана на работу только с устройством Disk II, то есть с 5-дюймовыми односторонними дискетами ёмкостью 140 килобайт. Так как физически дискета имела две рабочие стороны, то её можно было вынуть из дисковода и вставить обратно другой стороной. Таким образом, каждая физическая дискета логически представляла собой два отдельных 140-килобайтных диска. Диски разбивались на 35 дорожек по 16 секторов размером 256 байт (13 секторов в версиях 3.1 и 3.2, использовавших более примитивный метод кодирования битов на диске). Диск имел один каталог, который, вместе с таблицей свободного пространства, размещался на зарезервированной для этого 17-й дорожке (посередине). В трёх первых дорожках диска размещалась сама Apple DOS (на загрузочных дискетах), в том числе самый первый сектор был загрузочным сектором. В каталоге для каждого файла сохранялись его имя, тип, флажок защиты от записи, номер первого сектора и размер файла в секторах. В первом секторе файла находился общий список занимаемых файлом секторов, этот список при необходимости сам мог продолжаться в других секторах. Экстенты не использовались, всё дисковое пространство распределялось секторами.
Одновременно могло быть установлено несколько дисков в различных устройствах Disk II. Эти устройства с дисками идентифицировались по номерам разъёмов, к которым они подключались.
Каждый диск в Apple DOS имел так называемый номер тома, однобайтное число, по умолчанию 254. В командах работы с файлами можно было указывать специальный параметр для проверки, что в дисководе установлен диск с указанным номером. Если номер не совпадал, команда завершалась с ошибкой. Но на практике идея с номерами томов не получила развития, практически все диски имели номер 254. В позднейшие годы существовали решения по использованию номера тома при подключении к Apple II жёсткого диска, который в таком случае логически выглядел как набор отдельных дискет. Но с жёстким диском было гораздо удобнее работать в пришедшей на смену Apple DOS системе ProDOS (ранние версии которой были совместимы со всеми моделями Apple II).
В связи с отсутствием в Apple II системных часов, время и дата в Apple DOS никак не отслеживались. Работа со временем появилась только в ProDOS.
Команды Apple DOS были реализованы как расширение набора команд интерпретатора языка Бейсик, зашитого в ПЗУ Apple II. Собственного командного процессора или другого интерфейса пользователя Apple DOS не имела.
Вся система Apple DOS полностью загружалась в оперативную память и постоянно там находилась во время своей работы. В связи с этим, системный диск был нужен только для начальной загрузки. Даже для создания нового системного диска (командой INIT) было достаточно только загруженного в оперативную память кода Apple DOS, диск с исходной копией не требовался.
Подпрограмма RWTS
Одним из самых объёмных и сложных модулей Apple DOS была подпрограмма RWTS (Read/Write Track and Sector), предоставлявшая интерфейс чтения-записи сектора и форматирования дорожки для дисковода Disk II. Сложность RWTS была вызвана тем, что Disk II имел интерфейс очень низкого уровня, так что даже кодирование и декодирование отдельных битов и синхронизацию данных на дорожке диска надо было выполнять программно.
Клоны Apple DOS
Существовало огромное количество клонов Apple DOS (в основном версии 3.3), полученных путём обратной разработки и внесения тех или иных исправлений, от очень незначительных (просто замены названия системы) до весьма нетривиальных (ускорения работы с диском, реализации дополнительных команд, дополнительных типов файлов и т. д.). Многие клоны Apple DOS при работе с диском выводили в правом нижнем углу экрана текущие номера дорожки и сектора диска, чтобы обеспечить пользователю контроль в случае сбоев (дискеты имели невысокую надёжность). Одним из самых развитых клонов была система Eagle Software GraphExt 2.x и её русифицированная и расширенная советской фирмой Space Soft версия Eagle & Space Soft QDOS 2.A, которая, в частности, поддерживала работу со сжатыми графическими файлами (тип G, он же «дополнительный B», команды GSAVE, GLOAD) и с файлами перемещаемого объектного кода (тип R, команда RLOAD). Также в этой версии имелись команды для ввода с консоли и вывода на консоль содержимого текстовых файлов (MAKE, TYPE), отсутствовавшие (что удивительно) в базовой Apple DOS.
Команды Apple DOS
- CATALOG — выдача каталога диска;
- DELETE, LOCK, RENAME, UNLOCK, VERIFY — управление файлами, только эти команды могли работать с файлами произвольного типа;
- INIT — запись копии Apple DOS из памяти на диск и установка файла автозапуска (в оригинальной Apple DOS также форматирование диска; клоны обычно не содержали встроенных средств форматирования, это делалось специальными программами);
- APPEND, CLOSE, OPEN, POSITION, READ, WRITE — работа с текстовыми файлами;
- EXEC — исполнение команд из текстового файла;
- LOAD, RUN, SAVE — загрузка, исполнение и сохранение файлов на Бейсике;
- BLOAD, BRUN, BSAVE — загрузка, исполнение и сохранение двоичных файлов;
- FP, INT — переключение между интерпретаторами Applesoft BASIC и Integer BASIC;
- IN#, PR# — инициализация внешних устройств ввода и вывода (переопределяли такие же команды интерпретатора Бейсика);
- MON, NOMON — включение и выключение трассировки команд Apple DOS;
- MAXFILES — установка количества одновременно открытых файлов;
- CHAIN, GLOAD, GSAVE, DIR, TYPE, MAKE, MODE, SOUND, BOOT, RLOAD, HALT (в QDOS 2.A вместо HALT была реализована команда KEYS) — дополнительные команды в семействе клонов Eagle Software GraphExt, отсутствовавшие в оригинальной Apple DOS.
Литература
- Вълчев О. П. Що е дискова операционна система. — София: Державно издателство «Техника», 1987. 80 с. (болг.)
- Worth, Don, and Pieter Lechner. Beneath Apple DOS. — Quality Software, 1981. ISBN 0-912985-00-3 (англ.) (существовал самиздатовский русский перевод под названием «Под яблоней DOS 3.3»)
Ссылки
- (англ.) DOS — A2wiki
- (англ.) История MacOS
Операционные системы Apple Inc. Текущие: iOS · Mac OS X · Mac OS X Server · Darwin Исторические: A/ROSE · A/UX · Apple DOS · Copland · GS/OS · Lisa OS · Mac OS · MkLinux · Newton OS · ProDOS · Rhapsody · SOS · Taligent Программное обеспечение Apple Inc. Операционные системы Потребительское Полупрофессиональное Final Cut Express • Logic Express
Профессиональное Aperture • Final Cut Studio • Logic Pro (Studio) • Shake
Встроенное Address Book • Dashboard • Front Row • iChat • FaceTime • Photo Booth • QuickTime • Safari • TextEdit • Core Animation • Sherlock
Серверное Apple Remote Desktop • Mac OS X Server • WebObjects • Xsan
Прошлое HyperCard • MacDraw • Mac OS • MacPaint • MacProject • MacTerminal • MacWrite
Категории:- Дисковые однозадачные операционные системы
- Операционные системы Apple inc.
- Программное обеспечение Apple Inc.
- История компьютерной техники
Wikimedia Foundation. 2010.