MS-DOS (Microsoft Disk Operating System)

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 15:01, 2 июня 2017.
MS-DOS
MS-DOS icon.png
Разработчик Microsoft Corporation
Написана на Многоязычный
Линейка ОС DOS
Состояние разработки Историческое
Исходный код CP/M (клон), Unix (функционал)
Дата первого релиза August 1981 (1981-08)
Последний релиз 8.0 / 14 September 2000 года; 19 years ago (2000-09-14)
Платформы x86
Ядро (тип) Монолитное ядро
По умолчанию
пользовательский
интерфейс
Командная строка
Лицензия Проприетарное
Официальный веб-сайт MS-DOS Overview

MS-DOS (/ ɛmɛsdɒs / em-es-doss; акроним для Microsoft Disk Operating System) - это дисковая операционная система для персональных компьютеров на базе x86, разработанная преимущественно Microsoft. В 1980-х и начале 1990-х годов была наиболее часто используемой операционной системой семейства DOS и основной операционной системой персональных компьютеров, совместимых с IBM Personal Computer, затем она постепенно вытеснялась операционными системами, предоставляющими графический пользовательский интерфейс (GUI (Graphical User Interface)).[Источник 1]

MS-DOS появилась в результате запроса в 1981 году IBM на использование операционной системы в персональных компьютерах IBM Personal Computer. Microsoft быстро купила права на 86-DOS от Seattle Computer Products и начала работу над его модификацией для соответствия спецификации IBM. IBM лицензировала и выпустила его в августе 1981 года как PC DOS 1.0 для использования на своих ПК. Хотя MS-DOS и PC DOS изначально разрабатывались параллельно Microsoft и IBM, в последующие годы эти два продукта имели различия в совместимости, синтаксисе и возможностях.

В течение жизни MS-DOS было выпущено несколько конкурирующих продуктов для платформы x86, а сам MS-DOS прошел через восемь обновлений, пока разработка не прекратилась в 2000 году. Первоначально MS-DOS ориентировался на процессоры Intel 8086, работающие на компьютерном оборудовании, использующем гибкие диски для хранения и доступа не только к операционной системе, но и к прикладному программному обеспечению и пользовательским данным. Последующие версии обеспечивали поддержку других носителей информации с большим размером и числом форматов наряду с дополнительной поддержкой функций для новых процессоров и быстро развивающейся компьютерной архитектуры. В конечном счете, это был ключевой продукт Microsoft -- компании, занимающейся теперь уже не только языками программирования, но и разработкой программного обеспечения, предоставляющей компании существенные доходы и маркетинговые ресурсы. Это была базовая операционная система, на которой ранние версии Windows работали как графический интерфейс. Это гибкая операционная система, потребляющая незначительное пространство для установки.

История

MS-DOS была переименованной версией 86-DOS, принадлежащей Seattle Computer Products, написанной Тимом Патерсоном. Разработка 86-DOS заняла всего шесть недель, так как это был в основном клон Digital Research CP/M (для процессоров 8080/Z80), портированный для работы на 8086 процессорах и имеющий два заметных отличия по сравнению с CP/M; улучшенная логика буферизации сектора диска и введение FAT12 вместо файловой системы CP/M. Эта первая версия была выпущена ​​в августе 1980 года. Microsoft, которая нуждалась в операционной системе для IBM Personal Computer, наняла Тима Патерсона в мае 1981 года и купила 86-DOS 1.10 за 75 000 долларов в июле того же года. Microsoft сохранила номер версии, но переименовала его в MS-DOS. Они также лицензировали MS-DOS 1.10 / 1.14 для IBM, которая в августе 1981 года предложила его как PC DOS 1.0 в качестве одной из трех операционных систем для IBM 5150 или IBM Personal Computer.

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

Такая конструкция хорошо работала бы для обеспечения совместимости, если бы прикладные программы использовали только службы MS-DOS для выполнения ввода/вывода устройств, и в самом деле одна и та же философия дизайна воплощена в Windows NT. Однако в ранние дни MS-DOS большая скорость, достигаемая программами посредством прямого управления аппаратными средствами, имела особое значение, особенно для игр, которые часто подталкивали пределы их современного оборудования. Очень скоро IBM-совместимая архитектура стала целью, и вскоре все 8086-семейные компьютеры вплотную приблизились к аппаратуре IBM, и для рынка потребовалась только одна версия MS-DOS для фиксированной аппаратной платформы. Эта версия является версией MS-DOS, которая обсуждается здесь, поскольку десятки других OEM-версий «MS-DOS» относятся только к системам, для которых они предназначены, и в любом случае очень похожи по функциям и возможностям на некоторые стандартные версии для IBM Personal Computer - часто версии с одинаковым номером неотличимы, но не всегда, так как некоторые OEM-производители использовали свои собственные схемы нумерации версий (например, маркировку более поздних выпусков MS-DOS 1.x как 2.0 или наоборот).

Microsoft не включила многопользовательскую поддержку в MS-DOS, поскольку операционная система Microsoft на базе Unix Xenix была полностью многопользовательской. Компания планировала со временем улучшить MS-DOS, чтобы он был почти неотличим от однопользовательского Xenix или XEDOS, который также работал бы на Motorola 68000, Zilog Z8000 и LSI-11; Они будут совместимы с Xenix, который в 1983 году был описан как «многопользовательская MS-DOS будущего». Microsoft объявила MS-DOS и Xenix в совокупности, перечисляя общие функции своей «однопользовательской ОС» и «многопользовательской многозадачной операционной системы, производной от UNIX», и обещая их совместимость. Однако после распада Bell System AT&T Computer Systems начала продавать UNIX System V. Полагая, что она не может конкурировать с AT&T Computer Systems на рынке UNIX, Microsoft отказалась от Xenix и в 1987 году передала право собственности на Xenix в Santa Cruz Operation (SCO).

25 марта 2014 года Microsoft внесла код в SCP MS-DOS 1.25 и смесь Altos MS-DOS 2.11 и TeleVideo PC DOS 2.11 стала общедоступна в соответствии с лицензионным соглашением Microsoft Research, которая делает доступным исходный код, но в то же время не делает открытым исходным кодом, определенный Инициативой открытого исходного кода или Free Software Foundation.

В качестве первоапрельской шутки в 2015 году Microsoft Mobile запустила приложение на Windows Phone под названием MS-DOS Mobile, которое было представлено как новая мобильная операционная система и работало подобно MS-DOS.

Версии

Microsoft лицензировала или выпускала версии MS-DOS под разными именами, такими как Lifeboat Associates «Software Bus 86», а также SB-DOS, COMPAQ-DOS, NCR-DOS или Z-DOS перед тем, как в конечном счете принудительно использовало имя MS-DOS для всех версий, кроме IBM, которое первоначально называлось «IBM Personal Computer DOS», позднее сокращенное до IBM PC DOS. (Конкуренты выпустили совместимые системы DOS, такие как DR DOS и PTS-DOS, которые также могли запускать приложения DOS.)

Были выпущены следующие версии MS-DOS:

  • MS-DOS 1.x
    • Версия 1.10 (OEM) - возможная основа для персонального компьютера IBM DOS 1.0
    • Версия 1.11 (OEM) - возможная основа для персонального компьютера IBM DOS 1.0
    • Версия 1.14 (OEM) - возможная основа для персонального компьютера IBM DOS 1.0
    • Версия 1.24 (OEM) - основа для персонального компьютера IBM DOS 1.1
    • Версия 1.25 (OEM) - основа для OEM-версий MS-DOS, отличных от IBM, включая SCP MS-DOS 1.25
      • Compaq-DOS 1.12, OEM-версия Compaq для MS-DOS (1.25 и выше)
      • Zenith Z-DOS 1.19, OEM-версия Zenith для MS-DOS (1.25 или выше)
  • MS-DOS 2.x - поддержка жестких дисков объемом 10 Мбайт, FAT16, драйверы устройств, устанавливаемые пользователем, и система хранения древовидной структуры
    • Версия 2.0 (OEM), первая версия для поддержки floppy-дисководов 5.25 дюймов, 360 кбайт и дискет.
    • Версия 2.1 (OEM)
    • Версия 2.11 (OEM)
      • Altos MS-DOS 2.11, OEM-версия Altos MS-DOS 2.11 для ACT-86C
      • TeleVideo PC DOS 2.11, OEM-версия TeleVideo для MS-DOS 2.11
  • MS-DOS 3.x
    • Версия 3.0 (OEM) - Первая версия для поддержки гибких дисков и дискет 5.25, 1.2 МБ.
    • Версия 3.1 (OEM) - Поддержка сетей Microsoft
    • Версия 3.2 (OEM) - Первая версия для поддержки floppy-дисководов 3,5 дюйма, 720 кБ и дискет.
    • Версия 3.21 (OEM)
    • Версия 3.22 (OEM) - (HP 95LX)
    • Версия 3.25 (OEM)
    • Версия 3.3 (OEM) - Первая версия для поддержки floppy-дисководов 3,5 дюйма, 1,44 МБ и дискет.
    • Версия 3.3a (OEM)
    • Версия 3.31 (OEM) [nb 1] - поддерживает диски FAT16B и более крупные. [Nb 2]
  • MS-DOS 4.0 (многозадачность) и MS-DOS 4.1 - отдельная ветка разработки с дополнительными функциями многозадачности, выпущенная между 3.2 и 3.3, и позже оставленная. Он не имеет отношения к более поздним версиям, включая версии 4.00 и 4.01, перечисленные ниже
  • MS-DOS 4.x (IBM-developed) - включает в себя графический интерфейс / мышь. В нем было много ошибок и проблем с совместимостью.
    • Версия 4.00 (OEM). Первая версия для поддержки одного раздела жесткого диска размером более 32 Мбайт и максимального размера 2 ГБ.
    • Версия 4.01 (OEM) - Microsoft переписала версию 4.00, выпущенную под ярлыком MS-DOS, а не IBM PC DOS. Первая версия для введения серийного номера тома при форматировании жестких дисков и гибких дисков (а также дублирование диска, и при использовании SYS для создания гибкого диска или раздела загрузочного жесткого диска).
    • Версия 4.01a (OEM)
  • MS-DOS 5.x
    • Версия 5.0 (Retail) - включает полноэкранный редактор. Ряд ошибок требовал повторного релиза. Первая версия поддерживает 3,5-дюймовые, 2,88 МБ floppy-диски и дискеты. В настоящее время ядро ​​MS-DOS предоставляет разделы жесткого диска размером более 32 Мбайт и максимальный размер 2 ГБ. Первая версия для загрузки частей операционной системы в область высокой памяти.
      • AST Premium Exec DOS 5.0 (OEM) - версия для ноутбуков серии AST Premium Exec с различными расширениями, включая улучшенную загрузку и расширенную поддержку Code page
    • Версия 5.0a (Retail) - с этой версией версии IBM и Microsoft расходятся.
    • Версия 5.50 (Windows NTVDM) - Все 32-разрядные версии Windows NT поставляются с файлами из DOS 5.0
  • MS-DOS 6.x
    • Версия 6.0 (Retail) - оперативная справка через QBASIC. Сжатие дисков, оптимизация верхней памяти и включение антивируса.
    • Версия 6.2 - Scandisk в качестве замены для CHKDSK. Исправлены серьезные ошибки в DBLSPACE.
    • Версия 6.21 (Retail) - Удалено DBLSPACE, конфликтующее со Stacker.
    • Версия 6.22 (Retail) - Новая компрессия DRVSPACE.
  • MS-DOS 7.x
    • Версия 7.0 (Windows 95, Windows 95A) - Поддержка длинных имен файлов VFAT и 32-битного знакового целого уровня ошибок. Новый редактор. JO.SYS - это альтернативное имя файла ядра IO.SYS и используется как таковое для «особых целей». JO.SYS позволяет загружаться с компакт-диска или жесткого диска. Последняя версия распознает только первые 8,4 ГБ жесткого диска. Внутреннее командное приглашение «ver» сообщает о версии Windows, 4.00.950.
    • Версия 7.1 (Windows 95B - Windows 98 - Windows 98SE) - Поддержка файловой системы FAT32. Последний DOS общего назначения для загрузки Windows. Внутреннее командное приглашение «ver» сообщает версию Windows, 4.00.1111, 4.10.1998 или 4.10.2222.
  • MS-DOS 8.0
    • Версия 8.0 (Windows ME) - Встроенные драйверы для более быстрой загрузки Windows. Наблюдаются четыре разных ядра (IO.SYS). Внутренняя командная строка «ver» сообщает версию Windows, 4.90.3000.
    • Версия 8.0 (Windows XP) - Загрузочные диски DOS, созданные XP и более поздними версиями Windows, содержат файлы из Windows ME. Внутреннее командное приглашение «ver» сообщает о версии Windows, 5.0.

Microsoft DOS была выпущена через OEM-канал, пока DRI не выпустила DR DOS 5.0 в качестве розничного обновления. С PC DOS 5.00.1 соглашение IBM-Microsoft начало заканчиваться, и IBM вышла на рынок розничных DOS с IBM DOS 5.00.1, 5.02, 6.00 и ПК DOS 6.1, 6.3, 7, 2000 и 7.1.

Локализованные версии MS-DOS существовали для разных рынков. В то время как западные релизы MS-DOS развивались вокруг одного и того же набора инструментов и драйверов только с локализованными языками сообщений и различными наборами поддерживаемых кодовых страниц и раскладок клавиатуры, некоторые языковые версии значительно отличались от западных релизов и были адаптированы для работы на локализованном оборудовании ПК с дополнительными службами BIOS, недоступными на западных ПК, и поддерживающими несколько аппаратных кодовых страниц для дисплеев и принтеров, а также DBCS, альтернативные методы ввода и графический вывод. Среди описанных релизов: японский (DOS / V), корейский, арабский (ADOS 3.3 / 5.0), иврит (HDOS 3.3 / 5.0), русский (RDOS 4.01 / 5.0), а также некоторые восточно-европейские версии DOS.

Основные части ОС MS-DOS

  1. BIOS (Base Input Output System Data Area) — базовая система ввода-вывода, представляющая собой базовый набор стандартно присутствующих в системе драйверов, которые находятся в ПЗУ (постоянном запоминающем устройстве). BIOS является только частью ПЗУ. [Источник 2] BIOS, с одной стороны, является внешним ком-понентом для MS-DOS, но с другой стороны, операционная система MS DOS без него не работает. Некоторые ОС отказываются от BIOS, тогда ядро операционной системы работает с аппаратным обеспечением («железом») напрямую. Таким образом организована работа операционных систем OS/2, UNIX, Windows NT;
  2. Загрузчик ОС (BootRecord) – это очень короткая программа, находящаяся в первом секторе диска с операционной системой MS DOS. Функция данной программы заключается в считывании в память двух модулей операционной системы IO.SYS и MSDOS.SYS, которые и завершают процесс загрузки ядра MS-DOS.
  3. Ядро ОС включает следующие основные компоненты:
    • IO.SYS – систему ввода/вывода для уст-ройств, которые не предусмотрены в BIOS;
    • MSDOS.SYS – обработчик прерываний, реализующий основные высокоуровневые функции MS-DOS;
  4. Командный процессор (интерпретатор комманд) — программа, которая обраба-тывает команды, вводимые пользователем. Команды делятся на внутренние и внешние. Внутренние команды командный процессор выполняет сам, а для выполнения внешних команд ищет на диске программу с соответствующим именем и при обна-ружении загружает в память и передает ей управление. По окончании работы програм-мы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению последующих команд. Командный процессор находится в дисковом файле COMMAND.COM;
  5. Утилиты (внешние команды MS-DOS) – специальные программы, которые являются частью операционной системы и выполняют некий стандартный набор команд, например форматирование и проверку дисков, отобра-жение информации о доступной памяти и др.
  6. Файлы конфигурации — это файлы CONFIG.SYS, AUTOEXEC.BAT, в которых выполняется процесс загрузки и инициали-зации конкретной конфигурации системы, настроенный на определенную рабочую обстановку. В файле CONFIG.SYS может содержаться вызов дополнительных драйверов.

Файловая система MS-DOS

Элементы файловой структуры

  • стартовый сектор (сектор начальной загрузки, Boot-сектор),
  • таблица размещения файлов (FAT - File Allocation Table),
  • корневой каталог (Root-Directory),
  • область данных (оставшееся свободным дисковое пространство).

Эти элементы создаются специальной программами (в среде MS-DOS) в процессе инициализации диска.

Файловая система MS-DOS

Стартовый сектор (сектор начальной загрузки, Boot-сектор)

Здесь записана информация, необходимая MS-DOS для работы с диском:

  • идентификатор OS (если диск системный),
  • размер сектора диска,
  • количество секторов в кластере,
  • количество резервных секторов в начале диска,
  • количество копий FAT на диске (стандарт - две),
  • количество элементов в каталоге,
  • количество секторов на диске,
  • тип формата диска,
  • количество секторов в FAT,
  • количество секторов на дорожку,
  • количество поверхностей,
  • блок начальной загрузки OS,

За стартовым сектором располагается FAT.

FAT (таблица размещения файлов)

Область данных диска представлена в MS-DOS как последовательность пронумерованных кластеров. FAT - это массив элементов, адресующих кластеры области данных диска. Каждому кластеру области данных соответствует один элемент FAT. Элементы FAT служат в качестве цепочки ссылок на кластеры файла в области данных. FAT - крайне важный элемент файловой структуры. Нарушения в FAT могут привести к полной или частичной потере информации на всем логическом диске. Именно поэтому, на диске хранится две копии FAT. Существуют специальные программы, которые контролируют состояние FAT и исправляют нарушения.

Корневой каталог

Корневой каталог - это определенная область диска, создаваемая в процессе инициализации диска, где содержится информация о файлах и каталогах, хранящихся на диске. Корневой каталог всегда существует на отформатированном диске. На одном диске всегда бывает только один корневой каталог. Размер корневого каталога для данного диска - величина фиксированная, поэтому максимальное количество «привязанных» к нему файлов и других (дочерних) каталогов - строго определенное.

Каталоги и файлы

Каталог - это определенное место на диске (в области данных диска), где содержится информация о файлах и подкаталогах, привязанных к данному каталогу. MS-DOS поддерживает иерархическую структуру каталогов (древообразную).

В отличие от корневого каталога, остальные каталоги создаются с помощью специальных команд MS-DOS (внутренних). Основная цель такой структуры каталогов - организация эффективного хранения большого количества файлов на диске. Каждый каталог (кроме корневого) имеет "родителя", т.е. другой каталог, к которому привязан данный каталог. MS-DOS рассматривает каждый каталог (кроме корневого), как файл.

Файл - это поименованная область памяти на каком-либо физическом носителе, предназначенная для хранения информации. Файл всегда «привязан» к какому-либо каталогу (в том числе, может быть "привязан" и к корневому каталогу)[Источник 3].

Каталоги и файлы

Интерфейс командной строки Windows

Все версии Microsoft Windows имеют интерфейс командной строки MS-DOS (CLI). Они могут запускать многие DOS и различные Win32, OS/2 1.x и POSIX утилиты командной строки в том же сеансе командной строки, что позволяет передавать данные между командами. Пользовательский интерфейс и значок вплоть до Windows 2000 повторяли нативный интерфейс MS-DOS.

16-разрядные версии Windows (до 3.11) выполнялись как графический пользовательский интерфейс (GUI) поверх MS-DOS. В Windows 95, 98, 98 SE и ME часть MS-DOS была (поверхностно) интегрирована, рассматривая обе операционные системы как полный пакет, хотя по факту компонент DOS мог стоять один. Командная строка обращалась к командной строке DOS через модуль Windows (WINOLDAP.MOD).

Новая линейка Windows (Windows NT) загружается через ядро, единственной целью которого является загрузка Windows. Нельзя запускать приложения Win32 в системе загрузчика так, как OS/2, UNIX или Consumer Windows могут запускать сеансы с символьным режимом.

Сессия команд позволяет запускать различные поддерживаемые утилиты командной строки из Win32, MS-DOS, OS / 2 1.x и POSIX. Эмуляторы для MS-DOS, OS/2 и POSIX используют окно хоста так же, как Win16-приложения используют проводник Win32. Использование окна хоста позволяет передавать выходные данные между эмуляциями.

Эмуляция MS-DOS выполняется с помощью NTVDM (NT Virtual DOS Machine). Это модифицированный SoftPC (аналог VirtualPC), в котором используется модифицированный MS-DOS 5 (NTIO.SYS и NTDOS.SYS). Вывод обрабатывается консольными DLL, так что программа в приглашении (CMD.EXE, 4NT.EXE, TCC.EXE) может видеть вывод. В 64-разрядной версии Windows отсутствует эмуляция DOS или команды DOS (EDIT, DEBUG, EDLIN), которые поставляются с 32-разрядной версией Windows.

Эмуляция OS/2 обрабатывается через OS2SS.EXE и OS2.EXE, а также DOSCALLS.DLL. OS2.EXE - это версия оболочки OS/2 (CMD.EXE), которая передает команды в OS2SS.EXE и ввод-вывод в оболочку Windows NT. Windows 2000 была последней версией NT для поддержки OS/2.

POSIX эмулируется через оболочку POSIX, но без эмуляции оболочки; Команды обрабатываются непосредственно в CMD.EXE.

Командная строка часто называется приглашением MS-DOS. Отчасти это было официальное название для нее в Windows 9x и ранних версиях Windows NT (NT 3.5 и более ранних), и отчасти потому, что в нее выводилась эмуляция SoftPC для DOS. На самом деле только COMMAND.COM и другие 16-битные команды запускаются в NTVDM с AUTOEXEC.NT и CONFIG.NT инициализацией, определяемой _default.pif, при желании разрешая использование консольных приложений Win32 и внутренних команд с помощью директивы NTCMDPROMPT.

Консольные приложения Win32 используют CMD.EXE в качестве оболочки командной строки. Этой путаницы не существует в OS/2, потому что есть отдельные запросы DOS и OS/2, а запуск DOS-программы под OS/2 запустит отдельное окно DOS для запуска приложения.

Все версии Windows для Itanium (больше не продаваемые Windows) и архитектуры x86-64 больше не включают NTVDM и поэтому не могут запускать MS-DOS или 16-разрядные приложения Windows. Существуют альтернативы в виде эмуляторов виртуальных машин, таких как Virtual PC от Windows, а также VMware, DOSBox и другие.

Источники

  1. MS-DOS // Wikipedia: электронная энциклопедия. URL: https://en.wikipedia.org/wiki/MS-DOS (дата обращения: 10.04.2017)
  2. Основные характеристики и возможности ОС фирмы Microsoft // OH, MSBRO! URL: http://msbro.ru/index.php/archives/428 (дата обращения: 10.04.2017)
  3. Файловая система MS-DOS // Учебные материалы. URL: http://works.doklad.ru/view/LZiC035DH28/all.html (дата обращения: 10.05.2017)

Ссылки