MS-DOS () — однозадачная операционная система для компьютеров на базе архитектуры x86, использующая интерфейс командной строки. MS-DOS положила начало семейству DOS-совместимых операционных систем и была самой популярной операционной системой для IBM PC-совместимых компьютеров с 1980-х до середины 1990-х годов, пока её не вытеснили операционные системы с графическим пользовательским интерфейсом, в основном из семейства Microsoft Windows.

Описание В 1981 году корпорация IBM разместила запрос на создание операционной системы, которая должна была использоваться в новом семействе компьютеров IBM PC. Microsoft выкупила права на операционную систему 86-DOS у и начала работу по её модификации под требования IBM. Впоследствии IBM лицензировала MS-DOS и выпустила её в августе 1981 года под наименованием PC DOS 1.0. В дальнейшем разработка MS-DOS и PC DOS велась Microsoft и IBM совместно до 1993 года, когда были выпущены два раздельных релиза — 6.0 от Microsoft и 6.1 от IBM.

За время существования MS-DOS вышло восемь основных релизов (1.00, 2.00 и т. д.) и два десятка промежуточных (3.10, 3.30 и т. д.), пока в 2000 году Microsoft не прекратила её разработку. Изначально MS-DOS ориентировалась на процессор Intel 8088, использовавшийся в первом IBM PC, и работала только с дискетами, на которых располагались как сама ОС, так и программы и данные пользователей. Последующие версии обзавелись возможностью работы с различными типами накопителей, такими как жёсткий диск и CD-ROM, добавилась поддержка новых процессоров и компьютерных архитектур. Это был ключевой продукт фирмы, дававший ей существенный доход и маркетинговый ресурс, в ходе развития Microsoft превратилась из разработчика языка программирования в крупную компанию, производящую самое разнообразное программное обеспечение. MS-DOS также стала базовым слоем для ранних версий Windows, запускавшихся как графический пользовательский интерфейс поверх командной строки.

Последней коробочной версией стала 6.22, однако MS-DOS продолжала служить загрузчиком для Windows 95 (версии 7.0 и 7.1), Windows 98 (версия 7.1) и Windows Me (версия 8.0).

25 марта 2014 года музей компьютерной истории в Маунтин-Вью с разрешения компании Microsoft обнародовал исходный код операционной системы MS-DOS (версии 1.1 и 2.0), вышедшей в 1981 году, а также текстового редактора Word (1.1а) для Windows. В 2018 году был опубликован исходный код MS-DOS версий 1.25 и 2.0 под свободной лицензией MIT.

История MS-DOS

MS-DOS является переименованной версией 86-DOS, написанной Тимом Патерсоном из Seattle Computer Products. Разработка 86-DOS заняла всего шесть недель и представляла собой клон CP/M от Digital Research, портированный для использования на процессоре 8086 и содержащий всего два отличия от оригинала: улучшенную логику буферизации дисковых секторов и новую файловую систему FAT12. Первая версия 86-DOS вышла в августе 1980 года. Согласно подписанному в ноябре 1980 года договору с IBM, от компании Microsoft требовалось предоставить операционную систему для нового компьютера IBM PC, основанного на Intel 8086. Для этого Microsoft в мае 1981 года наняла Тима Патерсона для завершения адаптации 86-DOS к прототипу IBM PC, а затем в июле того же года полностью выкупила права на 86-DOS 1.10 за 75 тыс $. Microsoft сохранила нумерацию версий, но переименовала ОС в MS-DOS. В августе 1981 года лицензированная корпорацией IBM MS-DOS 1.10/1.14 под наименованием PC DOS 1.0 начала поставляться с новыми персональными компьютерами IBM PC. Причину, почему Microsoft была вынуждена купить стороннюю разработку, а не писать заново, пояснил сам Билл Гейтс: его компания не имела возможности успеть с написанием операционной системы в срок. В результате авральной работы им удалось переработать 8-битную QDOS (позднее названную 86-DOS) для микропроцессоров 8088/8086 и заключить договор с IBM о реализации продукта.

В версии 2.0, приуроченной к выпуску компьютера IBM PC XT с жёстким диском, Microsoft кардинально расширила функциональность ОС, отчасти адаптировав недостающее из Unix (например, подкаталоги, работа с файлами через дескрипторы, перенаправление ввода-вывода, обращение к устройствам по именам и т. п.). Масштаб внесённых изменений подчёркивает и тот факт, что больша́я часть поздних программ, в том числе для последних версий MS-DOS, имеет в требованиях строчку «DOS 2.0 или выше».

Первоначально MS-DOS разрабатывалась как операционная система, способная работать на любых компьютерах с процессором 8086. Microsoft повторяла модель распространения CP/M, когда для каждого компьютера с различным аппаратным обеспечением использовалась своя версия MS-DOS. Для этого ОС имела модульную структуру с минимальным набором драйверов для дисковых накопителей и консоли, интегрированных в ядро, и устанавливаемых драйверов других устройств, загружаемых и доступных во время загрузки. OEM-производители использовали комплект разработчика, предоставлявшийся Microsoft для создания собственной версии MS-DOS со стандартным ядром, но с драйверами устройств ввода-вывода, характерными для их оборудования. Производителями такая версия обычно поставлялась на дискетах вместе с компьютерами. Таким образом, существовало множество версий MS-DOS для различных архитектур, и следует отличать IBM PC-совместимые и MS-DOS-совместимые компьютеры. Некоторые компьютеры, например Tandy 2000, могли выполнять программное обеспечение, написанное только для MS-DOS, но не такое, где бы использовались особенности архитектуры IBM PC.

Конструкция операционной системы предполагает хорошую совместимость, если программы для своей работы используют только стандартные вызовы MS-DOS. Подобная философия в дальнейшем была реализована в Windows NT (см. Слой аппаратных абстракций). Тем не менее в MS-DOS большая скорость работы программ достигается только через прямой доступ к аппаратному обеспечению (память видеоадаптера, чтение и запись портов), что было особенно характерно для игр того времени, требующих значительных ресурсов компьютера. Доминирование IBM PC-совместимой архитектуры привело к распространению многочисленных клонов, и необходимость в отдельных аппаратно-зависимых версиях операционной системы отпала. Важной частью совместимости являлось сохранение неизменными функций ROM BIOS, используемых множеством выпущенных программ, обходивших медленные системные вызовы MS-DOS.

Впоследствии зависимость от архитектуры IBM вызвала ряд серьёзных проблем в индустрии при смене оригинального дизайна IBM PC. Так, первоначально не предполагалось использовать более 640 Кбайт оперативной памяти (барьер 640 Кбайт), поскольку более высокие области ОЗУ были зарезервированы для периферийных устройств и ПЗУ. Производителям пришлось изобретать различные схемы обхода данного препятствия (EMS, XMS и т. п.) для доступа к дополнительной памяти. Если бы первоначальная идея с независимостью от аппаратного обеспечения была продолжена, то подобной проблемы удалось бы избежать. Таким образом, MS-DOS — это операционная система, работающая в реальном режиме процессора с архитектурой x86, в котором она способна адресовать не более 1 Мбайт ОЗУ.

В компьютеры, произведённые IBM, устанавливалась версия под названием PC DOS. Для сторонних производителей Microsoft предлагала версию DOS уже под именем MS-DOS. Благодаря сотрудничеству IBM и Microsoft, вплоть до версии 5.0 системы PC DOS и MS-DOS практически не отличались. Первой коробочной версией MS-DOS стала 5.0 в варианте Upgrade, до этого все релизы распространялись только как OEM-продукт компаниями-производителями персональных компьютеров.

История версий