Операционные системы dos windows. Операционная система MS DOS. Интерфейс командной строки. Файловая система. Гениальный Гейтс. Время MS-DOS

MS DOS -- первая операционная система для персональных компьютеров, которая получила широкое распространение. Со временем она была практически вытеснена новыми, современными операционными системами, типа Windows и Linux, но в ряде случаев MS DOS остается удобной и единственно возможной для работы на ЭВМ (устаревшая техника, давно написанное программное обеспечение и т. п.)

Работа пользователей с операционной системой DOS осуществляется с помощью командной строки, ведь собственный графический интерфейс у нее отсутствует. Предпринималось множество попыток упростить общение с системой и самое удачное решение предложил Питер Нортон (Pеter Norton). У многих пользователей работа в операционной системе DOS ассоциируется именно с его программой -- Norton Commander. Оболочка NC скрывает от пользователя множество неудобств, возникающих при работе с файловой системой MS DOS, например, такие, как необходимость набирать команды из командной строки. Простота и удобство в использовании -- вот что делает оболочки типа NC популярными и в наше время (к ним можно отнести QDos, PathMinder, XTree, Dos Navigator, Volkov Commander и др.). Принципиально отличаются от них графические оболочки Windows 3.1 и Windows 3.11. В них применяется концепция так называемых "окон", которые можно открывать, перемещать по экрану и закрывать.

В MS DOS используется файловая система FAT. Одним из ее недостатков являются жесткие ограничения на имена файлов и каталогов. Имя может состоять не более чем из восьми символов. Расширение указывается после точки и состоит из не более чем трех символов. Присутствие расширения в имени файла не является обязательным, оно добавляется для удобства, так как расширение позволяет узнать, какая программа создала его и тип содержимого файла. DOS не делает различий между одноименными строчными и прописными буквами. Кроме букв и цифр имя и расширение файла могут состоять из следующих символов: -, _, $, #, &, @, !, %, (,), {, }, ", ^ . Примеры имен файлов в MS DOS: doom.exe, referat.doc.

Так как MS DOS была создана довольно давно (известно, как стремительно развиваются и устаревают компьютеры и, как следствие, программы для них), она совершенно не соответствует требованиям, предъявляемым к современным операционным системам. Она не может напрямую использовать большие объемы памяти, устанавливаемые в современные ЭВМ. В файловой системе используются только короткие имена файлов (8 символов в имени и 3 в расширении), плохо поддерживаются разные устройства типа звуковых карт, видео-ускорителей и т. д.



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

Перечислим некоторые компоненты операционной системы MS DOS. Дисковые файлы IO.SYS и MSDOS.SYS (они могут называться и по-другому, например IBMBIO.COM и IBMDOS.COM для PC DOS) помещаются в оперативную память при загрузке и остаются в ней постоянно. Файл IO.SYS представляет собой дополнение к базовой системе ввода-вывода, а MSDOS.SYS реализует основные высокоуровневые услуги операционной системы.

Командный процессор DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND.COM на диске, с которого загружается операционная система. Некоторые команды пользователя, например type, dir или copy, командный процессор выполняет сам. Такие команды называются внутренними или встроенными. Для выполнения остальных (внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и, если находит ее, загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению команд (приглашение DOS).

Внешние команды DOS -- это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Эти программы выполняют действия обслуживающего характера, например форматирование дискет (format.com), проверку состояния дисков (scandisk.exe) и т. д.

Драйверы устройств -- это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых или нестандартное использование имеющихся устройств. Например, с помощью драйвера DOS ramdrive.sys возможна работа с "электронным диском", т. е. частью памяти компьютера, с которой можно работать так же, как с диском. Драйверы помещаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS. Такая схема облегчает добавление новых устройств и позволяет делать это, не затрагивая системные файлы DOS.

Интерфейс командной строки - разновидность текстового интерфейса между человеком и компьютером, в котором инструкции компьютеру даются в основном путём ввода с клавиатуры текстовых строк, в UNIX-системах возможно применение мыши. Также известен под названием консоль.

Интерфейс командной строки противопоставляется системам управления программой на основе меню, а также различным реализациям графического интерфейса.

Формат вывода информации в интерфейсе командной строки не регламентируется; обычно это также простой текстовый вывод, но может быть и графическим, звуковым и т. д.

Назначение

На устройстве-консоли, которое печатало текст на бумаге, интерфейс командной строки был единственным возможным. На видеотерминалах интерфейс командной строки применяется по таким причинам:

· Небольшой расход памяти по сравнению с системой меню.

· В современном программном обеспечении имеется большое число команд, многие из которых нужны крайне редко. Поэтому даже в некоторых программах с графическим интерфейсом применяется командная строка: набор команды осуществляется гораздо быстрее, чем, например, навигация по меню.

· Естественное расширение интерфейса командной строки - пакетный интерфейс. Его суть в том, что в файл обычного текстового формата записывается последовательность команд, после чего этот файл можно выполнить в программе, что возымеет такой же эффект, как если бы эти команды были по очереди введены в командную строку. Примеры - .bat-файлы в DOS и Windows, shell-скрипты в Unix-системах.

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

При формировании файловой структуры диска операционная система MS-DOS соблюдает ряд правил:

· файл или каталог могут быть зарегистрированы с одним и тем же именем в разных каталогах множество раз, но в одном и том же каталоге – только один раз;

· порядок следования имен файлов и подкаталогов в родительском каталоге произвольный;

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

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

Каталоги, находящиеся на 1-м, 2-м и т. д. уровнях иерархической структуры, являются по отношению к корневому каталогу подкаталогами. Это в равной степени относится к каталогам любого уровня: каталог, который входит в другой каталог, называется подкаталогом, а каталог, имеющий подкаталоги, называется родительским каталогом. Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой стороны, подкаталогом по отношению к каталогу верхнего уровня.

Запись о файле в каталоге содержит имя и тип (расширение) файла, объем файла в байтах, дату создания, время создания и еще ряд параметров, необходимых операционной системе для организации доступа. Запись о подкаталоге нижнего уровня в родительском каталоге содержит его имя, признак

, дату и время создания.

Файл размещается на диске по кластерам, каждый из которых имеет свой номер (адрес). Кластеры, принадлежащие одному файлу, могут находиться в разных местах диска. Таким образом, файл может храниться на диске в виде отдельных фрагментов. В этом случае говорят, что файл фрагментирован. Чтобы сократить время поиска и чтения файла, необходимо, чтобы кластеры, выделенные для хранения файла, располагались на диске подряд. Для упорядочения файлов используются специальные программы, а процедура упорядочения файла получила название дефрагментации файла.

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

Трагедия Гари Килдалла. Эпоха CP/M

К концу 1970-х операционная система CP/M стала промышленным стандартом де-факто на рынке 8-разрядных микрокомпьютеров, под нее разрабатывалась большая часть программного обеспечения. По некоторым данным, общее число реализованных копий за все время существования CP/M составляет более 1,5 млн. Ее повсеместная востребованность объяснялась в первую очередь наличием встроенной поддержки дисководов с гибкими магнитными дисками. Использование же последних было оправдано удобством произвольного доступа к данным - в отличие от той же магнитной ленты. Между тем стабильная и прибыльная монополия CP/M была практически в одночасье разрушена с рождением 12 августа 1981 г. IBM PC - первого удачного персонального компьютера от IBM.

История CP/M началась с того, что Гари Килдалл (Gary Kildall) в 1972 г. по чистой случайности приобрел за 25 долл. 4-разрядный микропроцессор Intel 4004. Создав ряд программ для навигационных расчетов, Килдалл пробует заинтересовать Intel своими разработками. Руководство компании положительно оценивает способности Гари и берет его на работу в качестве консультанта. К концу 1973 г. Килдалл придумывает язык программирования PL/M (Programming Language for Microcomputers), объединяющий идеи PL/I, Алгола и XPL. Немного позже он начинает создание версии PL/M для процессора 8080. Однако компьютер Intellec-8, на котором работает Гари по поручению Intel, обладал довольно скромной конфигурацией (клавиатура, монитор, считыватель с перфоленты). И Килдалл приходит к выводу о необходимости использования дисковода с гибкими магнитными дисками. Да, это было действительно революционной идеей.

Восьмидюймовый гибкий диск (1971, справа)

В сотрудничестве с Аланом Шугартом (Alan Shugart), изобретателем гибкого диска, и Джоном Тородом (John Torod), своим однокурсником, Килдалл подключает к Intellec-8 дисковод, снабженный контроллером. После этого он приступает к созданию операционной системы как набора сервисных программ для организации обмена данными с памятью и дисками на уровне более высоком, чем прямое аппаратное программирование. Через два месяца ядро операционной системы было готово. Свое детище Гари решил назвать CP/M - Control Program/Monitor, это уже потом аббревиатура стала расшифровываться как Control Program/Microcomputer.

В последующем Килдалл постоянно дорабатывает CP/M, снабжая ее дополнительными средствами и сервисными утилитами. Со временем он создает варианты CP/M и для других процессоров. Самое удивительное, что руководство Intel абсолютно не заинтересовалось появлением CP/M, хотя компания имела грандиозные планы в отношении PL/M. В дальнейшем Килдалл организует собственную компанию Digital Research, отдавая большую часть времени работе над CP/M. Между тем судьба уготовила Килдаллу сюрприз, причем довольно неприятный.

В 1980 г., исходя из текущей рыночной ситуации, корпорация IBM решает построить собственный 16-разрядный персональный компьютер, подобный популярному Apple, с похожим программным обеспечением. И для этого, разумеется, нужна была операционная система. Однако на тот момент версии CP/M были исключительно 8-разрядными. Параллельно с этим корпорация IBM задумывается и о наборе ПО для проектируемого ПК. Зная об успешных разработках Microsoft (несколько версий Бейсика, Кобола и Фортрана для различных компьютерных систем), IBM встречается с Биллом Гейтсом, попросив того высказать свои соображения в отношении будущего ПК. Гейтс, конечно же, предлагает голубому гиганту приобрести у него Бейсик. А на вопрос об операционной системе советует обратиться к Гари Килдаллу - автору CP/M. Но тот медлит, а Гейтс не упускает свой шанс: он отсылает в IBM письмо, в котором убеждает компанию использовать в создаваемом компьютере 16-разрядный микропроцессор Intel 8088, а не 8-разрядный. В дальнейшем письмо позволит ему склонить чашу весов в выборе IBM на свою сторону, так как это предполагает, что CP/M Гари Килдалла изначально выполнена для 8-разрядных машин, а ОС от Microsoft «заточена» якобы под 16-разрядные компьютеры. Разумеется, Гейтс обещает поставить IBM нужную ей операционную систему в должные сроки.

Тем временем Пол Аллен, соратник Гейтса, приобретает операционную систему QDOS Тима Патерсона (Tim Paterson), никому не известного программиста из фирмы Seattle Computer Products. И вновь судьба-злодейка выставила всех участников этой истории в странном, искаженном свете: QDOS оказывается невероятно похожей на СР/М Гари Килдалла.

История Тима Патерсона. Период 86-DOS

Хотя доподлинно известно, что MS-DOS приобрела популярность благодаря успеху IBM PC, корни ее берут начало в первых поколениях микрокомпьютеров. Так, первые, широко распространенные микрокомпьютеры были построены на аппаратной части, использующей так называемую шину S-100. Начало этому было положено с появлением в 1976 г. разработанного предприятием MITS (Microwave Instrumentation and Telemetry Systems) компьютера Altair 8800. Конструктивной особенностью системной платы Altair было отсутствие на ней каких-либо жестко встроенных модулей - по сути, она имела только ряд 100-контактных разъемов (шин S-100), необходимых для подключения других плат. В роли последних выступали как непосредственно основные элементы компьютера (процессор, память), так и дополнительные (терминал, последовательные и параллельные интерфейсы, адаптеры клавиатуры, дисплея, магнитофона). Фактически пользователь мог выбрать конфигурацию Altair по своему усмотрению: расширить память, модернизировать процессор, добавить новые функции. Именно она, шина S-100, обеспечила поразительную популярность Altair 8800, обусловленную гибкостью его конструкции. Только благодаря концепции S-100 появилось множество фирм и предприятий, разрабатывающих платы для Altair.

В 1978 г. небольшая фирма Seattle Computer Products (SCP), располагающаяся в городе Туквила (Tukwila), шт. Вашингтон, начала производство карт памяти для шины S-100. Часть своей продукции SCP реализовывала посредством специализирующегося на компьютерах магазина в Сиэтле - The Retail Computer Store. В этом магазине работает техником Тим Патерсон, одновременно учащийся в Университете Вашингтона (University of Washington). Примечательным для нашей истории оказался один факт биографии Тима: он очень хорошо разбирался в компьютере Imsai 8080.

Однажды, когда владелец SCP Род Брок (Rod Brock) в очередной раз приехал в магазин забрать новые заказы от покупателей, они разговорились. Брок пожаловался Патерсону на ряд проблем, возникающих при использовании производимых SCP плат памяти. Тим высказал по этому поводу несколько толковых идей, Брок же взял парня на заметку и после окончания университета предложил Патерсону работу в SCP, где тот, согласившись на зарплату в 50 долл. в день, и пытался найти решение задачи.

В июле 1978 г. появляется микропроцессор Intel 8086. Опытный Брок посылает Тима на интеловский семинар, посвященный новому продукту. Заметим, что подавляющее большинство тогдашних компьютеров со схемой

S-100 базировалось либо на Intel 8080, либо на Zilog Z-80. Процессор 8086 был потенциально быстрее своих предшественников, хотя и не мог выполнять существующие 8-разрядные программы.

Будучи достаточно прозорливым, Брок дает Патерсону задание разработать плату с процессором 8086 для шины S-100. Первые удачные прототипы появились уже в мае 1979 г. Тогда же SCP обращается в Microsoft с просьбой подумать о создании 16-разрядного ПО для нового компьютера компании. Так уж случилось, что в самой Microsoft уже какое-то время велись разработки программ для 8086. В итоге прототипы SCP снабжаются 16-разрядной автономной дисковой версией Бейсика от Microsoft.

В ноябре 1979 г. SCP начинает продажи своих компьютеров на базе Altair и процессора 8086 с установленным интерпретатором Бейсика от Microsoft. Между тем Бейсик, являясь скорее игрушкой, чем полноценным языком программирования, не предлагал каких-либо удачных средств для написания стороннего коммерческого ПО, поэтому Брок принимает решение о создании операционной системы для своих компьютеров.

Не секрет, что в то время ОС CP/M производства Digital Research являлась чуть ли не единственной операционной системой для 8-разрядных микрокомпьютеров, своего рода стандартом де-факто. Следуя за технологическим прогрессом, Digital Research усиленно работает над новой, 16-разрядной версией своей ОС (CP/M-86), предназначенной для использования в компьютерах на основе процессора 8086. Становится понятно, почему Digital Research заинтересовалась разработкой SCP. Однако Брок сотрудничать отказывается. Между тем выход CP/M-86 намечен на конец 1979 г.

Но даже к апрелю 1980 г. CP/M-86 так и не выходит - Брок сильно обеспокоен. И действительно, кто купит компьютеры, пусть даже с новым 8086, но без набора программного обеспечения? Думается, только либо разработчики, либо энтузиасты, желающие быть всегда на гребне технологической волны. Патерсон предлагает Броку написать собственную операционную систему, не дожидаясь, пока Гари Килдалл закончит свою CP/M-86.

Итак, наш герой чувствует, что сможет проделать аналогичную работу и в отношении 8086, причем уверен, что его ОС (далее по тексту DOS - Disk Operating System, дисковая операционная система) окажется много лучше CP/M. План Тима состоял из двух этапов. Первым делом Патерсон предполагает создание «быстрой и грязной» (quick and dirty) DOS - для того чтобы немедленно заполнить недостающее звено в цепи продаж компьютеров на базе 8086. Далее планировалась тщательная отладка (так никогда, к сожалению, и не реализованная) готовой DOS, которая затем должна была явиться в двух версиях: одно- и многопользовательской. Брок соглашается.

Патерсон выбрал верную стратегию для разработки DOS. В первую очередь была поставлена цель максимально облегчить написание ПО сторонними программистами в окружении DOS, а также упростить процесс переноса на другие платформы. Дело в том, что программы для 8-разрядной CP/M не могли непосредственно исполняться 16-разрядным 8086, их следовало немного переработать с учетом схемы адресации данных, поддерживаемой новым процессором. А поскольку CP/M лидировала в качестве операционной системы на микрокомпьютере, под нее были написаны тысячи программ, которые и требовалось перенести в среду DOS. Для этого Тим решил добиться совместимости с уже существующей 8-разрядной CP/M на уровне API-интерфейса. Это значительно облегчило программирование в DOS: все выглядело так, будто вы пишете под старой доброй CP/M.

Во-вторых, желая наделить свою операционную систему максимальной эффективностью и быстродействием, он пишет ее на чистом ассемблере.

В период с апреля по июль 1980 г. Патерсон тратит почти половину своего времени на создание QDOS. И уже в августе QDOS 0.11 начала продаваться в комплекте с компьютерами производства SCP на основе Intel 8086. Брок вновь связывается с Microsoft и предлагает ей заняться адаптированием существующего ПО под окружение QDOS. Гейтс выражает готовность, но... только за деньги.

В декабре 1980 г. Патерсон выпускает новую версию QDOS под маркой 86-DOS 0.33. Именно ее исходные тексты (порядка 4 тыс. ассемблерных строк) в последующем и приобретает Microsoft.

Гениальный Гейтс. Время MS-DOS

Некоторое время спустя Microsoft все же заключает с SCP сделку: Гейтс единоразово выплачивает Броку сумму в 10 тыс. долл. за право продажи 86-DOS и по 15 тыс. долл. за каждого OEM-партнера (Original Equipment Manufacturer, изготовитель комплексного оборудования), согласившегося купить 86-DOS. При этом, разумеется, Билл не раскрывает (это было условием сделки) того, что уже имеющимся партнером выступает сама IBM. В итоге удовлетворенные стороны подписывают необходимые бумаги: Брок получает вожделенные 25 тыс. долл., Microsoft - 86-DOS.

Между тем, зная, что IBM сильно заинтересована в скорейшем получении ОС для разрабатываемого ею персонального компьютера IBM PC, а договориться с Килдаллом ей так и не удалось, Microsoft разрабатывает гениальный план.

В апреле 1981 г. Тим Патерсон покидает Seattle Computer Products (успев выпустить, кстати, 86-DOS 1.0), а в мае по приглашению Гейтса устраивается на работу в Microsoft. В этом Билл заинтересован, как никто другой: ведь необходимо избежать возможных скандалов вокруг авторских прав на 86-DOS, а также облегчить труд Microsoft по адаптации этой ОС под запросы IBM. До невозможности удивленный и даже рассерженный тем фактом, что заказчиком операционной системы выступает IBM, Патерсон все же продолжает работу над 86-DOS под крылом заботливого Гейтса.

В самом напряженном темпе, чрезвычайно эффективно используя отпущенное время, Патерсон перерабатывает 86-DOS под требования IBM. Разумеется, сроки поджимают - Тим не успевает до конца выполнить все поставленные условия. В июле он передает то, что имелось на тот день, - местами недоработанную MS-DOS 1.0. Голубой гигант изменяет название операционной системы на PC-DOS 1.0 и начинает ее поставки вместе со своим IBM PC.

Напомним, что Гейтс приобрел исходные тексты 86-DOS 0.33, хотя в апреле 1981 г. Патерсон выпустил 86-DOS 1.0. Понятно, что MS-DOS 1.0, полученная в результате переработки Патерсоном 86-DOS 0.3, уже не могла служить камнем преткновения для выяснения, кому же принадлежат авторские права на DOS - Броку (Seattle Computer Products) или Гейтсу (Microsoft).

Когда Гари Килдалл увидел PC-DOS, то высказался примерно так: «Я был сильно поражен потрясающей схожестью между PC-DOS и СР/М. Я был вне себя от злости на IBM и Microsoft. Все, кто хоть немного разбирался в компьютерах, могли убедиться, что даже команды этих операционных систем были одинаковыми. Это было просто невероятно!»

Возмущенный Килдалл выразил свое недоумение по поводу того, что такой гигант, как IBM, умудрился сделать подобное. Однако все-таки не решился предпринимать какие-либо судебные меры в отношении корпорации - как из-за своего склада характера, так и по причине поступившего от IBM предложения. Компания посулила в качестве компенсации включить только что созданную Килдаллом 16-разрядную версию ОС (CP/M-86) в состав ПО, поставляемого с IBM PC. Но все оказалось еще хуже, чем хотелось несчастному Килдаллу.

Одна из первых версий MS-DOS 1.0

Так, при приобретении IBM PC покупателю предлагалось выбрать из трех ОС: PC-DOS, CP/M-86 и P-System UCSD (ОС с интегрированным языком Паскаль). Благодаря тому что PC-DOS оказалась самой дешевой, выбор потребителя пал именно на нее - наметилась тенденция комплектовать все последующие компьютеры IBM PC только PC-DOS.

Что касается коммерческого видения DOS, до определенных пор для Microsoft эта ОС представлялась исключительно как вотчина IBM - Гейтс уделял много времени рынку языков программирования. Однако уже в 1982 г. Microsoft решает выйти на коммерческую арену операционных систем, заинтересовав ею и своих OEM-партнеров. Тогда же она проводит политику перехода с CP/M-версий своих продуктов (тех же языков программирования) исключительно на их DOS-реализации. Подобный шаг значительно ослабил лидирующие позиции Digital Research в монополии де-факто на операционные системы для микрокомпьютеров.

Необходимо понимать, почему Microsoft удалось пойти собственным путем вразрез с планами IBM, начав собственную кампанию по продаже MS-DOS. Во-первых, сразу после получения вожделенной MS-DOS 1.0 для своего персонального компьютера IBM, конечно же, проводит ее ревизию и, обнаружив порядка 300 ошибок, переписывает неверные участки, попутно переименовав в PC-DOS. По причине этой вынужденной модификации первоначальной версии MS-DOS и IBM, и Microsoft обладают авторскими правами на данную операционную систему.

Во-вторых, Гейтсу, уверенному в будущем MS-DOS, удалось убедить IBM не заключать с ним исключительного лицензионного соглашения по передаче всех прав на DOS, а также уговорить корпорацию продавать ПК отдельно от операционной системы. По условиям контракта Microsoft получала некоторый процент с каждого проданного IBM PC. Забавно, но нынешние менеджеры изучают детали этого договора в качестве примера катастрофической ошибки со стороны IBM.

Правильная маркетинговая политика Microsoft вкупе с успехом IBM PC послужили созданию прочного 15-летнего фундамента для DOS. В течение этого срока, вплоть до прихода на рынок Windows 95, DOS непрестанно развивалась, совершенствовалась и впитывала лучшие разработки третьих фирм, оставаясь при этом, конечно же, доминирующей ОС в нише персональных компьютеров. Учитывая плановую стратегию перехода из 16-разрядного мира DOS в сферу 32-разрядных Windows 95 и Windows NT, как относительно перспективных операционных сред, Microsoft постепенно прекратила обновления и реализацию MS-DOS.

На сегодняшний день можно смело утверждать, что эпоха DOS завершилась. Путь DOS - это путь любой мало-мальски успешной разработки в золотом веке персональных компьютеров. Опыт ее распространения - это опыт своевременной и верной маркетинговой политики в отношении перспективных бизнес-решений. Итоги ее эпохи - это поколение программистов на IBM PC - коммерчески наиболее удачной модели персонального компьютера.

ДОС... Черной пеленой экран заполнил чистый ДОС.

Мышь... Стала вдруг квадратной, потеряла форму мышь.

Я разбил окно... «Виндовс»… Ненавистное, проклятое окно.

Я поставил ДОС и тогда увидел - это счастье, вот оно!

Современные операционные системы требуют всё больше и больше ресурсов: оперативной памяти, дискового пространства, быстродействия центрального процессора… Старые компьютеры приходится попросту выбрасывать, и даже блоки с процессорами Pentium или Pentium II с мониторами 14-15” сегодня практически ничего не стоят. Особенно жалко расставаться с ноутбуками на процессорах i386 и i486, которые ничем не хуже современных КПК, однако вряд ли удастся добавить им памяти, чтобы запустить более или менее современную операционную систему семейства Windows.

А так ли уж нужны все эти сногсшибательные вычислительные мощности обычному пользователю, который, по сути, хочет лишь выходить в Интернет, отправлять электронную почту, редактировать тексты, слушать музыку и играть в несложные компьютерные игры время от времени? И стоит ли переходить на новые технологии, где быстродействие и надежность компьютера во многом зависят от мощности блока питания и от эффективности системы охлаждения, а разница между старыми и новыми версиями программ зачастую понятна только специалистам?

Дисковая Операционная Система (DOS)

Вопрос: Сколько сотрудников Microsoft нужно для смены перегоревшей лампы?

Ответ: Ни одного, так как Microsoft в таких случаях стандартизирует темноту!

Анекдот

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

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

Однако в середине 90-х Билл Гейтс заявил: «DOS is dead». И действительно, уже после выхода MS Windows 95 и первых версий Linux стало очевидно, что дни DOS как массовой операционной системы сочтены. И хотя теоретически DOS еще долго будет находить применение в дешевых решениях при создании электронных микропроцессорных систем (некоторые варианты DR-DOS и PTS-DOS имеют ROM-версии, а также есть специальные ROM-версии таких систем, как Datalight ROM-DOS и General Software DOS-ROM для технических приложений), эти сферы применения очень узки и вряд ли могут поддержать существование подобных операционных систем в будущем.

Клавиши для редактирования команд в DOS

С началом XXI века последние коммерческие версии DOS прекратили свое существование. Последняя версия IBM PC-DOS датирована 2000 годом (она продавалась по 60 долл.), и тогда же вышла последняя полная версия PTS-DOS (это отечественная разработка фирмы «Физтех-софт»). В версии же PTS-DOS, выпущенной в 2002 году, появилась поддержка FAT32 и работы с большими объемами памяти, но исчезли некоторые полезные утилиты, не приспособленные к упомянутой поддержке. Последняя версия DR-DOS 8.0 (с поддержкой FAT32 и длинных имен файлов) датируется 2004 годом (она продавалась по 40 долл.). Кстати, теперь эта система называется Caldera OpenDOS, распространяется бесплатно в рамках проекта Open Source (то есть доступны исходные тексты этой системы), а скачать ее можно по адресу: http://www.opendos.de/download/ .

Наконец, продолжает свое существование бесплатная версия FreeDOS, тоже с открытыми исходниками, но это уже, скорее, общественный проект энтузиастов, разбросанных по всему миру. Последняя версия этой ОС появилась в 2003 году, но поскольку различные части FreeDOS разрабатываются независимо, то она до сих пор больше напоминает Linux, чем DOS в классическом виде (в частности, полная инсталляция этой системы - такая же непростая операция). Впрочем, ни одна из альтернативных систем не имеет 100% совместимости с MS-DOS, а больше всего проблем с совместимостью у FreeDOS. Получается, что лучшей DOS по-прежнему остается «мертвая» MS-DOS. Официально последней версией MS-DOS была версия 6.22 от 1994 года, но MS-DOS версий 7.x существовали вместе с Windows 95/98/Me - их можно было отделять от оболочки Windows и использовать отдельно.

Однако с каждым годом обостряется проблема драйверной поддержки новых аппаратных средств - речь идет в первую очередь о USB-устройствах, приводах DVD-R/RW и т.д. Аналогичная проблема существует и для сетевых протоколов, и для новых форматов данных.

Освобожденный DOS

Хрюкнул жесткий диск, и железо тихо зашуршало под столом.

Загрузилось сразу. Эй, давай-ка мы посмотрим, что почем!

Выходи под ДОС и лучше поработай головой!

Посмотри же сам: ведь ДОС не сказка, это правда, он с тобой!

В последние годы стали свободно распространяться и некоторые превосходные программы для разработчиков под DOS, среди которых компиляторы Watcom C, C++ и Fortran (известные высоким качеством генерируемых кодов); Borland Turbo C; Free Pascal (полностью совместимый с Borland Pascal и частично с Delphi); отличный, быстро развивающийся макроассемблер FASM (качество генерируемых им кодов выше, чем у некоторых известных ныне коммерческих ассемблеров), а также такие Интернет-браузеры, как Arachne и Bobcat. А благодаря системе DJ Delorie, для DOS доступны практически все базовые средства Linux (gcc, g++, gdb, bash, grep и др.).

Работа с USB под DOS

Слезы на очках... Странные очки, а может, это слезы на лице?

ДОС очистил всё! Всё, что было лишним у меня на диске «Ц».

Я нажал «Ф8», и веселый «Нортон» удалял мне всё подряд:

Сорок мегабайт, а может, больше... может, даже шестьдесят...

Использование USB-диска (флэшки) в качестве загрузочного (см. статью «Многоликие USB-флэшки») дает интересную возможность: если распространять какую-то программу на таком диске вместе с DOS, то ее можно использовать на любом компьютере, независимо от установленной операционной системы на жестком диске (для этого, правда, необходимо чтобы BIOS материнской платы поддерживала загрузку с USB-устройств).

Однако далеко не все материнские платы поддерживают загрузку с USB-дисков (а если и поддерживают, то на компьютерах с процессором не ниже Pentium III), а во времена DOS поддержки USB Flash Drive вообще не было. Поэтому даже если вы захотите просто прочитать с флэшки под DOS (например, загрузившись с аварийной дискеты), то вам понадобятся для этого специальные драйверы, которые были написаны гораздо позже периода активного использования DOS.

Существует несколько подобных драйверов для поддержки USB-устройств, написанных различными фирмами для своих целей, поскольку базовых средств поддержки USB-устройств нет ни в одной альтернативной DOS-системе, даже в FreeDOS. Наиболее популярными являются драйверы от японской компании Panasonic (Matsushita), и хотя компания писала их для своих устройств, но драйверы получились универсальными и работают с большинством USB-накопителей, соответствующих спецификациям UHCI- (старые устройства USB 1.x), или OHCI- (устройства USB 1.x следующего поколения, где работа осуществляется не через порты ввода-вывода, как прежде, а через области памяти, что получается быстрее), или, наконец, EHCI-стандарта (USB 2.0). Драйверы компании Panasonic являются 16-разрядными и работают с любой версией DOS.

Для поддержки USB-накопителей прежде всего необходим драйвер ASPI, сохранивший свое название от Advanced SCSI Programming Interface. Основным драйвером является файл USBASPI.SYS (Panasonic v2.06 ASPI Manager for USB mass storage), который вы должны скопировать на системную дискету и вызвать при загрузке DOS из config.sys следующей строкой:

DEVICE=USBAPSI.SYS /v /w /e /noprt /norst

В данном случае параметр /v (Verbose) означает использование режима подробного вывода информации об устройстве, а параметр /w (Wait) будет останавливать загрузку до того момента, пока к USB-разъему не будет подключено устройство и нажата клавиша Enter.

Кроме этих параметров у USBASPI.SYS есть и другие. Общая строка вызова будет выглядеть так:

DEVICE=USBASPI.SYS ] /r]

Однако все остальные параметры, кроме вышеупомянутых /v и /w, малоинтересны, и можно применять их значения по умолчанию. Если же у вас возникнут какие-то проблемы с распознаванием USB-устройства, то можно попробовать использовать другие параметры. Так, иногда помогает ключ /noprt. Отметим, что параметр /l[=n] явно указывает номер логического устройства (LUN), поэтому его задание может ускорить загрузку (по умолчанию n = 0). К тому же иногда бывает полезно явно указать спецификацию USB (/e - это EHCI; /o - OHCI; /u - UHCI).

Таким образом, если драйвер USBASPI.SYS распознает ваше USB-устройство, то он обеспечит ему ASPI-интерфейс. Однако для того, чтобы получить доступ к USB-устройству из DOS, вам понадобится еще и драйвер диска DI1000DD.SYS (ASPI mass storage driver) от компании Novac, который будет назначать этому USB-устройству соответствующую букву в ряду других накопителей (почему-то этот драйвер у производителя называется Motto Hairu USB Driver). В файле config.sys следует прописать его отдельной строкой:

В состав пакета для работы с USB-устройствами от Panasonic входит также файл RAMFD.SYS, который создает RAM-диск, и на него целиком копируется загрузочная дискета, чтобы ускорить работу под DOS.

Кроме того, в пакете есть специальные драйверы USBCD.SYS, которые позволяют подключать внешние CD-приводы с USB-интерфейсом.

Соответствующие строчки в файле config.sys вашей загрузочной дискеты должны выглядеть примерно так:

DEVICE=HIMEM.SYS

DEVICEHIGH=DI1000DD.SYS

DEVICEHIGH =USBCD.SYS /d:USBCD001

Если же у вас есть CD-привод с интерфейсом USB, то в командном файле autoexec.bat надо добавить следующие строчки:

REM Монтирование USB CD-ROM

LH MSCDEX /d:USBCD001

Теперь, даже если вы не хотите работать под DOS, а просто собираетесь загрузиться с аварийной дискеты, сделать резервную копию жесткого диска на USB-накопитель при помощи программы Paragon Drive Backup, скопировать системный диск при помощи программы Powerquest Drive Image или воспользоваться средствами Norton Ghost, то вы сможете осуществить это, загрузив соответствующие драйверы поддержки USB Flash Drive под DOS.

Сложности в применении драйверов от Panasonic могут возникнуть при использовании EMM386.EXE (менеджера памяти под DOS). Если у вас возникает ошибка, связанная с размещением (mapped memory), то необходимо отключить загрузку EMM386.EXE или воспользоваться USB-драйверами от других компаний. Кроме того, может случиться, что ваша флэшка может неправильно распознаваться драйвером USBASPI.SYS или что драйвер DI1000DD.SYS выдаст сообщение о неправильных данных в загрузочном секторе USB-накопителя, - в этих случаях можно попробовать подготовить флэш-диск непосредственно в DOS: запустить, например, программу fdisk.exe, создать на флэшке primary DOS partition и отформатировать ее в FAT. Однако некоторые флэшки нельзя форматировать, так как после этого они могут работать некорректно или вообще перестанут распознаваться. Поэтому перед подобной процедурой обязательно узнайте у производителя о возможности форматирования USB-накопителя и поищите специальную фирменную утилиту для этой операции. В любом случае лучше вначале попробовать все возможные драйверы и их настройки для подключения USB-устройства в DOS и только потом, если ни один из методов не сработает, прибегнуть к более рискованным экспериментам.

Помимо драйверов от Panasonic, существуют USB-драйверы производства компании Cypress, которые работают с EMM386.EXE без конфликтов, так что отключать менеджер памяти (если он необходим вам) в этом случае заведомо не понадобится. К тому же у Cypress DUSE есть только драйвер диска DUSE.EXE (ASPI mass storage driver), который назначает USB-устройству соответствующую букву, так что ASPI-менеджер все равно понадобится: можно взять тот же вышеописанный USBASPI.SYS и заменить только драйвер DI1000DD.SYS на DUSE.EXE. Драйвер DUSE.EXE можно прописать в файле config.sys как драйвер устройства (DEVICE), например:

DEVICE=HIMEM.SYS

DEVICEHIGH= EMM386.EXE

DEVICEHIGH=USBASPI.SYS /v /w /e /noprt /norst

REM Присвоение устройству буквы

DEVICEHIGH= DUSE.EXE

А можно просто вызвать DUSE.EXE в командном файле autoexec.bat как программу при помощи специального загрузчика DUSELDR.EXE:

DUSELDR.EXE A:\ DUSE.EXE

Для выхода в Интернет можно применять не только обычный телефон, но и ADSL-модем (естественно, лучше использовать Ethernet-модем в режиме роутера), а также подключиться по локальной сети. Напомним, что в DOS отсутствует поддержка сети на уровне операционной системы, поэтому необходимо будет поставить так называемый пакетный драйвер для вашей сетевой карточки, который можно взять с сайта производителя Ethernet-карты.

Если же текстового браузера недостаточно, то можно поставить мощный графический Web-браузер Arachne («паук»), который запускается из командной строки DOS (http://www.cisnet.com/glennmcc/arachne/). Применять его не намного сложнее, чем Internet Explorer. Для настройки соединения у Arachne есть специальный мастер (PPP Wizard) - почти такой же, как в Windows-программах. «Звонилка» Arachne поддерживает протокол PPP для связи с модемом провайдера и осуществляет автоматическую авторизацию (ввод логина и пароля).

Чтобы подключиться к Интернету при помощи этого мастера, вам нужно выставить следующие параметры:

  • указать COM-порт, на котором находится модем, и выставить номер его прерывания (если вы этого не знаете, то мастер сам может определить, куда подключен модем);
  • указать максимальную скорость соединения (Baud Rate);
  • задать метод набора номера для вашей телефонной линии (тоновый или импульсный). Если у вас тоновый набор, то выберите ATDT, если импульсный, как обычно, то ATDP;
  • набрать номер для дозвона до провайдера Интернета;
  • задать имя (логин) и пароль для выхода в Интернет;
  • в явном виде указать используемые DNS-серверы.

Если вы правильно ответите мастеру подключения на все эти вопросы, то выйти в Интернет вам не составит особого труда, а скорость загрузки страниц на процессоре Pentium будет не ниже, чем под Windows XP на Pentium 4. Единственное неудобство этой программы состоит в том, что она однооконная, то есть одновременно можно посещать только один сайт. Однако сохраняется вся история ваших посещений, а возврат на предыдущую страницу осуществляется очень быстро. Кстати, для ускорения работы в Arachne следует завести RAM-диск и определить на него временную папку (если, конечно, у вас для этого достаточно оперативной памяти):

Графические страницы отображаются вполне корректно (поддерживаются разрешения VESA вплоть до 1024Ѕ768 в полноцветном режиме), загружается графика, поддерживаются таблицы и т.д. Более того, Arachne поддерживает прокрутку страниц колесиком мыши: для этого нужно использовать драйвер мыши CTMOUSE, поставляющийся в комплекте с Arachne (каталог \SYSTEM\DEVDRVRS).

Программа Arachne универсальна, как и Bobcat/Lynx, - в ее комплект входят и «звонилка» PPP, и графический браузер, и почтовая программа, и многое другое. И все это в упакованном виде занимает один мегабайт и помещается на одной дискете. Чтобы русифицировать интерфейс, необходимо скачать специальный модуль (Plug-in) с сайта http://386.by.ru - FULLRUS.APM, а для поддержки русских шрифтов (кодировок) нужны файлы CP1251.APM и KOI8-R.APM. Русифицируются и мастер PPP, и настроечные меню, и полезные советы и т.д. Дополнительные модули устанавливаются из специального инсталлятора Arachne в разделе утилит программы.

По своей сути Arachne является мощной графической оболочкой для DOS и имеет много дополнительных модулей и легко перестраиваемый интерфейс. Короче говоря, несмотря на «смерть» ДОСа, программа Arachne продолжает совершенствоваться!

Радуют и низкие системные требования Arachne: для работы необходим процессор i386, 4 Мбайт памяти, видеосистема CGA/EGA/VGA/SVGA и всего 5 Мбайт на диске. Кроме того, для некоммерческого использования программа распространяется бесплатно (freeware).

Таким образом, Arachne можно настроить на USB-флэшке и получить мобильный выход в Интернет, которым можно пользоваться прямо из DOS. К тому же из-под DOC доступны и другие возможности Интернета, такие как IRC, ICQ и т.д.

Клавиатурные команды управления операциями в DOS

Простым IRC-клиентом под DOS является Trumpet (http://www.trumpet.com.au) - это и newsreader, и IRC-клиент, и самостоятельная «звонилка». Есть и ICQ-клиенты под DOS, причем одна из таких программ реализована компанией LADsoft как специальный модуль для Arachne - Lsicq (http://members.tripod.com/~ladsoft/lsicq/), позволяющий работать с консольной «болталкой» одновременно с просмотром Web-страниц. Конечно, окна браузера и ICQ вызываются по очереди, но в одной программе и с простым переключением между ними.

Развлечения под DOS

Послушать любую музыку под DOS не составляет большого труда - плееров под эту операционную систему написано предостаточно. И среди них выделяется MPxPlay (http://www.geocities.com/mpxplay/) - уникальный проигрыватель практически любых звуковых файлов, который продолжает совершенствоваться до сих пор (последняя версия датирована 16 мая текущего года). Плеер обеспечивает стандартный набор функций, включая управление при помощи мыши и клавиатуры (а также джойстика или устройства, подключаемого в последовательный порт), работу с плейлистами и даже имеет встроенный анализатор спектра.

Особо стоит отметить такую возможность MPxPlay, как подключение ЖК-индикатора к параллельному порту, что позволяет работать даже без видеоадаптера и монитора. MPxPlay дает возможность проигрывать файлы MP3, MP2 (MPG), OGG, CDW, WAV, MPC и AC3. В качестве носителя файлов может выступать загрузочный компакт-диск, что позволяет обойтись без жесткого диска и снижает габариты и энергопотребление устройства, оснащенного MPxPlay. К тому же программа занимает на диске совсем немного места и потребляет ничтожно малого процессорного времени. Программа поддерживает длинные имена файлов (LFN), осуществляет коррекцию звука и конвертирует файлы в различные форматы. MpxPlay является также CD-граббером, то есть позволяет копировать треки с аудиокомпакт-дисков и сохранять их в WAV-формате. В новой версии обеспечена поддержка проигрывания файлов формата MPEGPlus (MPC) и улучшена поддержка OGG-формата.

И что совсем уж удивительно, так это полная поддержка под DOS проигрывания видеодисков (в том числе и просмотр DVD-фильмов). В этой области наиболее популярным считается плеер Quick View Pro (www.multimediaware.com), поражающий своими системными требованиями и количеством поддерживаемых графических и мультимедийных форматов и кодеков. Программа запускается на компьютере с процессором i386, с любой VGA-совместимой видеокартой (желательно VESA-compatible) и с операционной системой DOS 3.0 или выше. При этом желательно иметь SoundBlaster-совместимую звуковую карту.

Эта программа вполне успешно крутит полноэкранные фильмы в формате MPEG-4 даже на процессорах i486, хотя, конечно, для просмотра фильмов лучше использовать процессоры Pentium, а на i486 нужно смотреть фильмы в черно-белом варианте или в половинном разрешении. Кроме фильмов, Quick View позволяет просматривать практически все графические форматы и проигрывать музыку (в том числе и MP3).

О том, как правильно настроить эту программу в зависимости от конфигурации вашего компьютера, можно узнать из очень подробной документации, причем ключей запуска там гораздо больше, чем визуальных настроек. К тому же интерфейс Quick View очень простой и понятный.

Основные команды DOS

Есть у этой компании и еще более простой DOS MPEG- и VideoCD-плеер - MPEGone (http://www.multimediaware.com/mpeg/), который работает без графического интерфейса, запуская полноэкранное воспроизведение прямо из командной строки, а занимает на диске он чуть больше 100 Кбайт.

Архивы программ для DOS

Под DOS написаны сотни тысяч программ, и до сих пор энтузиасты их поддерживают и разрабатывают новые. Так, на сайте у вышеупомянутых разработчиков Bobcat/Lynx (http://www.fdisk.com/doslynx/) есть большой архив полезных программ и утилит, где собрано все, что может пригодиться для эффективной работы в Интернете. Объемная коллекция USB-драйверов и различных утилит находится на сайте и http://nostalgy.org.ru/ .

А если вы захотите поиграть под DOC, то к вашим услугам архив старых популярных компьютерных игр

Системное ПО каждой ЭВМ условно можно разделить на две составляющие - операционная система (ОС) и пакеты системных программ. Некоторые из системных программ, необходимых ЭВМ, встроены в машину, и именно в ту часть компьютера, которая называется постоянным запоминающим устройством (ПЗУ). Программы ПЗУ доступны только для чтения. Эти системные программы, осуществляющие контроль, помощь и необходимые услуги прикладным программам, называютсябазовой системой ввода- вывода (BIOS). Образцом системных программ более высокого уровня являются операционные системы.Операционная система - комплекс программ, которые, взаимодействуя, совместно управляют ресурсами ЭВМ (системы) и процессами, использующими эти ресурсы при выполнении прикладных программ.

Основные функции ОС:

Тестирование (проверка правильности функционирования) аппаратных средств;

Расшифровка и исполнение команд, поступающих от пользователя (с клавиатуры)или из оперативной памяти;

Управление работой всех устройств и блоков ЭВМ;

Распределение ресурсов памяти;

Предоставление возможности работы на одной ЭВМ нескольким пользователям;

Защита ПО от постороннего воздействия;

Обслуживание прерываний в работе аппаратных средств.

Назначение и характеристика MS DOS. Версии MS DOS; состав MS DOS;

MSDOS– Microsoft Disk Operating System, т.е. дисковая операционная система фирмы Microsoft. Операционная системаMS DOS - это самая простая операцион­ная система для компьютеровIBMPC. Она используется на всех младших моделяхIBMPCи может применяться на всех старших моделях компьютеров этого же типа.

Первая версия MS DOS обладала гораздо более скромными возможностями, чем современные ОС. Она была однопользовательской, поддерживала работу лишь с дисктами, клавиатурой т алфавитно-цифровым дисплеем. Зато была компактной, предъявляла довольно скромные требования и выполняла необходимый минимум функций для пользователей и программ. Со временем в MS DOS внесено много изменений:

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

Включена поддержка иерархической файловой структуры на дискетах и жестких дисках;

Обеспечена поддержка национальных клавиатур и алфавитов;

Включены многочисленные новые возможности для пользователя.

MS DOS так и осталась однозадачной ОС;

В MS DOS оказалось невозможным встроить надежные средства для защиты данных от несанкционированного доступа и организации коллективной работы с данными;

DOS-программы могут выполняться только в пределах первого Мбайта памяти, а остальная память может использоваться только для хранения данных.

ОБЗОР ВЕРСИЙ MS DOS

Версии 1.х : Очень похожа на OS CP/M. Поддерживался только односторонний формат дискет с объемом памяти 160 Кб (8 секторов,40 дорожек, размер сектора 512 байт). Начиная с версии 1.25(PC DOS 1.0), появившейся в Мае 1982 г. введен двухсторонний формат дискет с объемом памяти 320 Кб.

Версии 2.х : Март, 1983 г. Дополнительные возможности: работа с жесткими дисками(HDD); иерархическая структура файловой системы; средства перенаправления ввода/вывода (заимствованы у UNIX);концепция устанавливаемых драйверов периферийных устройств, что позволило оперативно адаптировать OS к различным конфигурациям аппаратных средств; формат дискет на 360 Кб (9 секторов, 40 дорожек, размер сектора 512 байт)

Версии 3.х : Август, 1984 г. Дополнительные возможности: формат дискет на 1.2 Мб,

дискеты 3.5"(формат 720 Кб)(начиная с версии 3.2), разбиение HDD на логические диски(размером до 32 Мб), что дало возможность использовать HDD большего, чем 32 Мб объема, улучшена поддержка национальных наборов символов. Поддержка компьютерных сетей(слабая, начиная с версии 3.1), команды (программы): LABEL, ATTRIB, команды(программы) : XCOPY, REPLACE (начиная с версии 3.3),

MS DOS 3.3 и на сегодняшний день является наиболее широко применяемой на IBM PC XT и на IBM PC AT-286 с объемом памяти не более 640 Кб.

Версии 4.х : Ноябрь, 1988 г. Дополнительные возможности: поддержка графических Видео Адаптеров EGA,VGA, объем логических дисков - более 32 Мб., поддержка стандарта LIM/EMS, что позволило отдельные части MS DOS загружать в дополнительную память,

программа-оболочка Dos-Shell. Несмотря на это - MS DOS версий 4.х не получили широкого распространения.

Версия 5.0 : Июль, 1991 г. Дополнительные возможности: эффективное использование ОЗУ, дополнительные сервисные программы, возможность загрузки ядра MS DOS, в HMA-память(High Memory Area) на IBM PC AT-286 и выше, возможность загрузки драйверов периферийных устройств в UMB-память на IBM PC AT-386 и выше,

для прикладных программ отводится до 620 Кб адресного пространства(0-640 Кб) ОЗУ,

поддержка HDD до 2 Гб, формат 2.88 Мб для дискет 3.5",

Версия 6.0 : Март, 1993 г. Дополнительные возможности: эффективное использование ОЗУ, дополнительные сервисные программы, программные средства для оптимизации файловой системы на логических дисках (DEFRAG), изъяты команды(программы), утратившие актуальность, спец. программа MEMMAKER - оптимизация расположения резидентных программ в ОЗУ, мультиконфигурационные файлы ONFIG.sys, система защиты от вирусов (слабая), увеличение доступного дискового ространства (DoubleSpace),

средства регулирования энергопотребления PC (LapTop,NoteBook)

Версия 6.2 : Октябрь, 1993 г. Все улучшения - в области повышения надежности работы с данными на уровне файловой системы. Дополнительные возможности: повышена эффективность существующих команд(программ), КЭШирование CD-ROM, отказ от DoubleSpace без потери информации, выявление и обход физических дефектов HDD и FDD, выявление и устранение дефектов в файловой системе, в том числе и "сжатых" DoubleSpace, пошаговое выполнение любого *.bat-файла, в том числе и AutoExec.bat,

Из чего состоит операционная система MS-DOS.

Операционная система MS-DOS состоит из множества различных файлов. Они включают собственно файлы операционной системы IO.SYS, MSDOS.SYS и командный процессор COMMAND.COM. Кроме этих трех файлов, представляющих собой работоспособное ядро MS-DOS, в дистрибутив операционной системы включены файлы так называемых внешних команд, например FORMAT, FDISK, SYS, драйверы различных устройств и некоторые другие файлы.

Файл IO.SYS содержит расширение базовой системы ввода/вывода и используется операционной системой для взаимодействия с аппаратурой компьютера и BIOS.

Файл MSDOS.SYS в некотором смысле является набором программ обработки прерываний, в частности прерывания INT 21H.

Командный процессор COMMAND.COM предназначен для организации диалога с пользователем компьютера. Он анализирует вводимые пользователем команды и организует их выполнение. Так называемые внутренние команды - DIR, COPY и т. д. обрабатываются именно командным процессором.

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

Драйверы (обычно это файлы, имеющие расширение имени SYS или EXE) представляют собой программы, обслуживающие различную аппаратуру. Применение драйверов легко решает проблемы использования новой аппаратуры - достаточно подключить соответствующий драйвер к операционной системе.

Прикладные программы взаимодействуют с устройством через драйвер, поэтому они не будут меняться при изменениях в аппаратуре. Например, новое дисковое устройство может иметь другое количество дорожек и секторов, другие управляющие команды. Все это учитывается драйвером, а прикладная программа будет работать с новым диском как и раньше, используя прерывания DOS.

Файлы операционной системы IO.SYS, MSDOS.SYS и COMMAND.COM должны быть записаны на диске в определенном месте. Их не надо копировать в другие каталоги диска.

Процесс загрузки осуществляется следующим образом. Сначала в память загружается запись старта системы, затем - системные файлы IO.SYS, MSDOS.SYS и COMMAND.COM .

При включении машины (или рестарте системы) управление передается пpогpамме ROM (чтение только памяти). Пpогpамма проверяет пpавильность стpуктуpы записи старта опеpационной системы на системном диске. Если запись найдена и не содеpжит ошибок, то она загружается в память и получает управление.

Запись старта проверяет, являются ли файлы IO.SYS и MSDOS.SYS первыми файлами на диске. Если результат проверки положительный, то файлы загружаются в память, причем выбирается свободный участок с самым младшим адресом. Затем управление передается инициализирующему модулю файла IO.SYS. Если файлы записаны в другом месте или их нет на диске, на экране появляется сообщение:

Non system disk Replace and press any key

Инициализирующий модуль передает управление файлу MSDOS.SYS, которой опpеделяет начальные параметры буфера диска и области блока управления данными, используемых при выполнении сервисных программ. Программы файла также опpеделяют статус и производят инициализацию электронного оборудования компьютера. После этого управление возвращается в инициализирующий модуль IO.SYS.

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

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

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

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

Дорожки и сектора Для того, чтобы данные могли быть записаны на диск, его поверхность необходимо структурировать - т.е. разделить на сектора и дорожки. ДОРОЖКИ - это концентрическе окружности, покрывающие поверхность диска.Ближайшей к краю диска дорожке присвоен номер 0, следующей за ней - 1 и т. д. Если дискета двусторонняя, то пронумерованы обе ее стороны. Номер первой стороны - 0, номер второй - 1.

Каждая дорожка pазбивается на участки, называемые секторами. Секторам также присваиваются номера. Первому сектору на дорожке присваивается номер 1, второму - 2 и т.д. Обычно сектор занимает 512 байт.

Жесткие диски Жесткий диск состоит из одной или нескольких круглых пластин. Для хранения информации используются обе поверхности пластины. Каждая поверхность разбивается на дорожки, дорожки, в свою очередь, - на сектора. Дорожки одинакового радиуса составляют цилиндр. Таким образом, все нулевые дорожки составляют цилиндр с номером ноль, дорожки с номером 1 - цилиндр с номером 1 и т.д.

Таблица размещения файлов и директорий Команда FORMAT фоpмиpует таблицу размещения файлов (FAT) и директорий диска. Обе эти структуры тесно связаны с организацией доступа к файлам. На каждом диске имеется две копии FAT. Эта таблица имеет исключительное значение при обслуживании файлов, поэтому в случае потери первой копии FAT, система получает доступ ко второй.

На стандартной дискете, имеющей по 8 секторов на дорожке, FAT занимает 1 сектор. На стандартной дискете с 9-ю секторами на дорожке для таблицы отводится 2 сектора.

Структура директория Директорий - это таблица-описание содержимого диска. Каждому файлу в таблице соответствует одна запись. Запись занимает 32 байта, разбитых на 8 участков или полей. В каждое поле записывается информация, используемая системой при обслуживании файла.

Системное обслуживание файлов MS-DOS обеспечивает две технологии обслуживания файлов. Первая была разработана при создании версий 1.Х. Эта технология основана на использовании структур данных, называемых блоками управления файлом (FCB). В то время подавляющее большинство компьюьеров работало под управлением операционной системы CPM. Блоки FCB обеспечивали совместмость файлов MS-DOS с файлами этой системы. При разработке MS-DOS версий 2.Х, когда была предложена иерархическая структура организации файлов, была разработана вторая технология их обслуживания. Она основана на использовании ссылок на управляющую запись файла и не требует организации FCB. После того, как эта технология была опробована на операционной системе UNIX, она получила широкое распространение.

Организация памяти

Память состоит из большого количества отдельных элементов, каждый из которых предназначен для хранения минимальной единицы информации - 1 байта. Каждому элементу соответствует уникальный числовой адрес. Первому элементу присвоен адрес 0, второму - 1 и т.д., включая последний элемент, чей адрес определяется общим количеством элементов памяти минус единица. Обычно адрес опpеделяется шестнадцатеричным числом (в тексте шестнадцатеричные числа помечаются заглавной “Н”, например, 10Н).

Сегменты Процессор компьютера (CPU) делит память на блоки, называемые сегментами. Каждый сегмент занимает 64 К и каждому сегменту соответствует уникальный числовой адрес. Процессор имеет четыре регистра сегмента. Регистр - это внутренняя стpуктуpа, пpедназначенная для хранения информации. Регистры сегмента предназначены для хранения адресов отдельных сегментов. Они называются CS (сегмент кода), DS (сегмент данных), SS (сегмент стэка) и ES (запасной сегмент). Кроме указанных, процессор имеет еще 9 регистров. В данный момент следует отметить регистры IP (указатель команды) и SP (указатель стэка). Регистры CS и IP в паре составляют длинный адрес команды, которая будет выполняться следующей. Регистры SS и SP в паре составляют длинный адрес стэка.

Доступ к памяти Доступ к ячейкам памяти осуществляется посредством соединения содержимого регистра сегмента с содержимым того или другого регистра.Таким образом определяется адрес требуемого участка памяти. Например, адрес следующей команды определяется содержимым регистров CS и IP (записывается “CS:IP”). После выполнения команды и ее удаления из памяти содержимое IP изменяется так, чтобы в регистрах CS:IP находился адрес команды, которая будет выполнена после данной. Способ объединения регистров для определения адреса ячейки памяти не накладывает ограничений на количество доступной памяти. Верхнее ограничение зависит от физического строения памяти (т. е. от общего количества ячеек). Первые версии MS-DOS разрабатывались для процессора Intel 8088 CPU. Каждый регистр этого процессора рассчитан на хранение 16-битового числа. То есть CPU 8088 комбинирует содержимое сегментного регистра (скажем, CS) с содержимым другого регистра (скажем, IP), получая 20-битовый адрес памяти, что ограничивает доступную память до 2хх20 байтов или 1 Мб. Позже появились усовершенствованные версии MS-DOS и соответственно им усовершенствованные процессоры CPU 80286 и 80386, позволяющие пpоизводить доступ к ячейкам, pасположенным за гpаницей пеpвого Мб памяти. Однако, ограничение на 1 Мб до сих пор (по крайней мере в версии 3.3) не удалось обойти, что является одним из основных недостатков операционной системы.

Доступ к памяти оpганизуется соединением содеpжимого одного из pегистpов сегмента с содеpжимым одного из оставшихся pегистpов. Значение сегментного pегистpа называется адpесом сегмента. Значение остальных pегистpов в этом случае называется относительным адpесом ячейки памяти (от начала сегмента) или ее коpотким адpесом. Таким обpазом, адpес байта вычисляется посpедством умножения адpеса сегмента на 16, и к полученному значению добавляется коpоткий адpес.

Сегментные регистры Сегментные pегистpы используются пpи идентификации сегмента памяти. Сегмент - это непpеpывный блок памяти, длиной 64 К. Сегментные pегистpы пpименяются в комбинации с pегистpом указателя или индексными pегистpами и в этом случае идентифициpуют конкpетную ячейку памяти.

Всего сегментных pегистpа четыpе. Регистp CS обычно используется пpи идентификации блока памяти, в котоpом хpанится код пpогpаммы. Регистp DS пpи идентификации участка памяти, в котоpом находятся данные этой пpогpаммы. С помощью pегистpа SS оpганизуется доступ к стэку. (Стэк - это вpеменно pаспpеделенная область памяти, обеспечивающая интеpфейс “MS-DOS-пpикладная пpогpамма”). Регистp ES - дополнительный (или запасной) сегментный pегистp. На него возложены pазнообpазные функции, часть из котоpых pассматpивается ниже.

Регистры стека Имеется два pегистpа стэка. Они пpименяются в комбинации с pегистpом SS и опpеделяют местонахождение стэка. Регистp SP называется указателем начала стэка, и в комбинации с pегистpом SS идентифициpует пеpвый байт стэка. Регистp BP называется указателем базы стэка и в комбинации с pегистpом SS идентифициpует последний байт стэка.

Индексные регистры Индексных pегистpа тоже два. Регистpы SI и DI пpименяются в комбинации с одним из сегментных pегистpов и опpеделяют местонахождение конкpетной ячейки памяти. Регистp SI обычно комбиниpуют с pегистpом DS, pегистp DI - с pегистpом ES.

Регистры общего назначения К pегистpам общего назначения относятся pегистpы AX, BX, CX и DX (их четыpе). Это многофункциональные pегистpы.

Регистp указателя команды IP обычно пpименяется в комбинации с pегистpом CS и опpеделяет адpес следующей команды.

Регистp флагов состояния

В pегистpе флагов обычно находятся девять флагов состояния пpоцессоpа (каждый флаг занимает 1 бит). Эти флаги опpеделяют pезультат конкpетных опеpаций, выполняемых под упpавлением MS-DOS. Регистpы памяти Регистp памяти включает 2 байта данных (или 16 битов). Реально pегистpы общего назначения однобайтные. Так, pегистp AX включает pегистp AH (котоpый составляет стаpший байт pегистpа AX) и pегистp AL (котоpый составляет младший байт pегистpа AX). Аналогично, pегистpы BH, BL, CH, CL, DH и DL - однобайтные.

Драйверы MSDOS Две важнейшие компоненты электpонного обоpудования компьютеpа - его центpальный пpоцессоp (CPU) и его память. Остальные компоненты (дисководы, клавиатуpа, дисплеи, пpинтеpы и т.д.) являются внешними по отношению к компьютеpу. Эти внешние компоненты электpонного обоpудования называются ПЕРИФЕРИЙНЫМИ УСТРОЙСТВАМИ или пpосто УСТРОЙСТВАМИ.

Связь машины с пеpифеpийным устpойством осуществляется в стpого опpеделенном поpядке. Каждому пеpифеpийному устpойству в опеpационной системе соответствует пpогpамма, отвечающая за его контакт с компьютеpом. Эти пpогpаммы называются ДРАЙВЕРАМИ.

Применение драйверов Одна из основных функций опеpационной системы - это обеспечение гpуппы pаботоспособных дpайвеpов, доступных системным и пpикладным пpогpаммам. Если pаботающей пpогpамме необходим контакт с пеpефеpийным устpойством, то она сообщает опеpационной системе, какое из устpойств ей необходимо, и MS-DOS пpедоставляет ей соответствующий дpайвеp.

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

Прерывания Пpеpывание - это сигнал, поступающий из пpогpамм математического обеспечения, или генеpиpуемый электpонным обоpудованием. Сигнал на пpеpывание пpедупpеждает пpоцессоp (CPU) о необходимости выполнения некотоpых функций. Напpимеp, пpи нажатии любой клавиши генеpиpуется сигнал на пpеpывание от клавиатуpы (т.е. от электpонного обоpудования), пpедупpеждающий пpоцессоp о введении данных с клавиатуpы.

Каждому типу пpеpывания соответствует опpеделенный поpядковый номеp (пpеpывание от клавиатуpы, к пpимеpу, обозначено номеpом 9). По этому номеpу пpоцессоp pазличает, какой обpаботчик необходимо вызвать для обpаботки сигнала на пpеpывание. По соглашению номеpа пpеpываний пpедставлены в шестнадцатеpичном фоpмате.

Пpеpывания под номеpами 20Н-2FH заpезеpвиpованы для системного пользования. Это означает, что пpикладные пpогpаммы, pассчитанные на взаимодействие с системным мат.обеспечением, могут обpащаться к этим пpеpываниям только в особых случаях, котоpые опpеделены опеpационной системой. Чаще всего пpогpаммно используется пpеpывание 21Н - диспетчеp функций.

Дипетчер функций Пpеpывание 21Н носит название “диспетчеp функций”. Диспетчеp функций отвечает за выполнение большей части pаботы MS-DOS. В его обязанности входит обеспечение доступа к системным функциям. Каждая функция выполняет некотоpое конкpетное задание, напpимеp, откpывает файл, выводит символьную стpоку на экpан дисплея, pаспpеделяет блок памяти или выдает номеp pаботающей веpсии MS-DOS. Функции также диффеpенциpованы по номеpам.

Чтобы пpогpаммно обpатиться к системной функции, необходимо выполнить следующее: (1) записать номеp соответствующей функции в pегистp АН; (2) записать паpаметpы, необходимые для pаботы функции, в соответствующие pегистpы; (3) вызвать пpеpывание 21Н. Пpи обpащении к пpеpыванию 21Н, упpавление пеpедается MS-DOS. Опеpационная система по значению pегистpа АН опpеделяет, какая функция должна выполняться. Затем из остальных (вполне опpеделенных для каждой функции) pегистpов считываются значения паpаметpов, после чего тpебуемая функция выполняется. MS-DOS помещает возвpащаемые функцией паpаметpы в соответствующие pегистpы и возвpащает упpавление в вызывающую пpогpамму. Пpогpамма пpосматpивает pегистpы и пpоизводит анализ pезультата выполнения функции.

Зарезервированые функции Некотоpые функции помечены, как “заpезеpвиpованные для системного пользования”. Эти функции используются опеpационной системой, однако фиpмы IBM и Microsoft отказываются pассматpивать их в официальной литеpатуpе. Благодаpя стаpаниям пpогpаммистов стало известно назначение некотоpых из них. Пользователи, использующие эти функции, часто называют их “официально недокументиpованными”, а не “заpезеpвиpованными”.

Код ошибки Многие функции MS-DOS веpсий устанавливают текущий флаг пpоцессоpа и возвpащают код ошибки в pегистpе AX, если в пpоцессе обpащения к функции пpоизошла ошибка.Из специальных таблиц можно узнать причину ошибки.

Понятие системного, текущего и логического дисков; приглашение DOS.

Логический диск или том (англ. volume ) - часть долговременной памяти компьютера, рассматриваемая как единое целое для удобства работы.

Когда DOS готова к диалогу с пользователем, она выдает на экран приглашение, например А> или С:\ >. Это означает, что DOS готова к приему команд. Когда пользователь проводит диалог с какой-либо программой, а не DOS, тогда приглашение DOS отсутствует. Однако большинство программ осуществляют общение с пользователем не с помощью команд, а посредством меню, запросов, нажатий определенных комбинаций клавиш и т.д. приглашение DOS, как правило, содержит информацию о текущем каталоге. Но иногда включает также информацию о текущем времени суток. Вид приглашения можно изменить с помощью команды DOS Prompt.

Понятие ядра DOS, основные функции модулей ядра;

Ядро MS DOS реализирует систему MS DOS, это специальная программа, поставляемая фирмой Microsoft, которая включает набор аппаратно независимых сервисных программ называемые системными функциями. К ним относятся: 1. Управление файлами и записями. 2. Управление памятью. 3. Символьно ориентируемое устройство ввода/вывода. 4. Порождение других задач. 5. Доступ к часам реального времени. Ядро MS DOS считывается в память при инициализации системы из файла MSDOS.SYS, находящегося на диске начальной загрузки, этот файл отличается атрибутами скрытый и системный.

Назначение файлов config.sys иautoexec.bat ;

Основную роль в установлении конфигурации DOS играют файлы config.sys и autoexec.bat. DOS при начальной загрузке считывает из корневого каталога загрузочного диска файлы config.sys и autoexec.bat и выполняет содержащиеся там команды. Файл config.sys является текстовым файлом, в котором содержится специальные команды для настройки конфигурации DOS: подключения различных драйверов, определения размеров системных таблицDOSи т.д. заданные в файле config.sys команды выполняются в процессе начальной загрузкиDOS.

После завершения выполнения файла config.sys автоматически выполняется командный файл autoexec.bat, если он имеется в корневом каталоге загрузочного диска. Как правило в файл autoexec.bat записывают команды для запуска резидентных программ и других программ, которые целесообразно запускать при каждой загрузке DOS, а так же команды для установки переменных окруженияDOS, задания списка каталогов, в которых производится поиск запускаемых программ, и установки формата приглашенияDOS.

DOS расшифровывается как дисковая операционная система. Всего за несколько лет система DOS прошла путь от простого загрузчика до универсальной операционной системы для персональных компьютеров, построенных на базе микропроцессоров Intel 8086.

Отсчет DOS-истории начнем с 1973 года - именно в столь теперь далеком от нас году Gary Kildall написал простую операционную систему на созданном им же PL/M языке (Programming Language/Microprocessor). Он называл ее CP/M - Control Program/ Monitor, или Control Program for Microcomputer. К середине 70-х годов СР/М-80, права на которую принадлежали фирме Digital Research, стала наиболее популярной системой для компьютеров на базе Intel 8080 и Zilog Z-80. Эта система обеспечивала доступ к разнообразным средствам прикладного программнoго обеспечения (текстовые процессоры, администраторы баз данных и т.д).

связи с задержкой выпуска новой версии этой системы (СР/М-86) в апреле 1980 года компания Sеаttlе Соmputer Рroducts, занимавшаяся изготовлением компьютеров на базе 8086-процессоров, решает использовать в них свою собственную операционную систему, которую в итоге (к августу этого же года) и написал Тим Петерсон. Эта операционная система была названа QDOS (Quick & Dirty Operating System), но затем переименована в 86-DOS. Для облегчения процесса переноса прикладных программ из 8-битной системы СР/М-80 в новую 16-битную среду системы 86-DOS последняя изначально строилась так, чтобы в ней имитировались все функции и виды операций СР/М-80. Вследствие этого структуры блоков управления файлами, префиксов сегментов программ и выполнимых файлов в системе 86-DOS почти идентичны структурам СР/М-80.

Программы, существовавшие в СР/М-80, можно было легко преобразовать (обрабатывая файлы исходных программ с помощью специального транслятора) и далее запускать в системе 86-DOS либо сразу, либо выполнив несложное ручное редактирование. Ввиду того, что 86-DOS поставлялась на рынок как собственная операционная система семейства компьютеров фирмы Seattle Computer Research с интерфейсом S-100 на базе Intel 8086, в целом такой подход слабо повлиял на состояние дел в мире персональных компьютеров. Другие поставщики компьютеров на базе Intel 8086, вынужденные по очевидным причинам применять операционную систему конкурентов, с нетерпением ждали выпуска системы СР/М-86 фирмы Digital Research.

В октябре 1980 г. кампания IВМ предложила фирмам, занимающимся разработкой программного обеспечения для компьютеров, начать поиск операционной системы для нового семейства персональных компьютеров. Фирма Мicrosoft не могла предложить собственной операционной системы (за исключением автономной версии Мicrosoft ВАSIС), однако она в июле 1981 года купила у компании Seattle Computer Products право на использование операционной системы 86-DOS, после чего заключила контракт с фирмой IBM, обязуясь разработать операционную систему для новой модели персональных компьютеров, выпускаемых фирмой. Кстати, в результате этой сделки Seattle Computer Products получила лицензию на право использовать и продавать языки программирования и все версии операционной системы для микропроцессора 8086, разработанные фирмой Мicrosoft.

В конце 1981 года, когда новый компьютер IBM PC приобрел широкую популярность (IBM 5150 PC: 4.77-MHz Intel 8088 CPU, 64KB RAM, 40KB ROM, 5.25-дймовый флоппи- дисковод - "всего" $3000), его операционная система представляла собой модифицированную версию системы 86-DOS, названную PC-DOS 1.0. Вскоре после выпуска IBM-PC на рынке стали появляться персональные компьютеры, "схожие с РС" (PC-совместимые). Операционная система этих компьютеров называлась MS-DOS 1.0 - корпорация Microsoft предоставила в распоряжение фирм, производящих эти машины, точную копию операционной системы PC-DOS - широко теперь известную MS-DOS.

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

С момента выпуска операционные системы PC-DOS и MS-DOS усовершенствовались параллельно и аналогичным образом. В 1982 году появились версии 1.1. Главным преимуществом новой версии была возможность использования двухсторонних дискет (версия 1.0 позволяла работать только с односторонними дискетами), а также возможность пересылки принтеровского вывода на другие устройства.

В 1983 году были разработаны версии 2.x. По сравнению с предыдущими они давали возможность использовать жесткий диск (в то время наличие жесткого диска было не то что необязятельным, но и делало компьютер "супернавороченным"), обеспечивали усложненный иерархический каталог диска, включали встроенные устройства для дискет и систему управления файлами.

MS-DOS версии 3.0, выпущенная в 1984 году, предлагала улучшенный вариант обслуживания жесткого диска и подсоединенных к компьютеру микрокомпьютеров; последующие версии, включая 3.3 (появившуюся в 1987 году), развивались в том же направлении.

Возвращаясь к CP/M: эта система тоже развивалась, и в 1988 году компания Digital Research превращает CP/M в DR DOS...

MS-DOS версии 5.0 (1991 год) предоставила возможность использования памяти, расположенной выше 1M, была добавлена поддержка новых 2.88 MB дискет, а также несколько утилит, в том числе UNDELETE - для восстановления удаленных по ошибке данных. В 1992 году появляется версия 5.a - в ней устранены грубые ошибки работы утилит UNDELETE и CHKDSK.

В MS-DOS версии 6.0, вышедшей в 1993 году, расширились возможности использования памяти, расположенной выше 1M, добавлены утилита оптимизации использования памяти Memmaker и средство увеличения эффективного дискового пространства DoubleSpace, а также утилиты проверки и оптимизации жесткого диска ScanDisk и Defrag и антивирусная программа (следует отметить, что после судебных разбирательств с компанией Stack по поводу авторского права на DoubleSpace, последний в версии MS DOS 6.22 был заменен на аналогичную утилиту DriveSpace).

В 1983 году MS DOS модернизируется несколько раз - выпускаются версии 6.2 и 6.21 (в основном усовершенствования заключались в удалении из ОС DoubleSpace и включении в нее утилит DriveSpace, DISKCOPY и обновленной утилиты SCANDISK); в следующем году выходит еще одно обновление - версия 6.22 с включенной в нее утилитой DriveSpace.

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

Начиная с версии 7.0 MS-DOS поставляется только вместе с Windows, явно указывая тем самым на закат своей бурной истории. В MS-DOS версии 7.1, распространявшейся в составе Windows 95 Service Release 2, появилась поддержка файловой системы FAT32 и больших жестких дисков, а вот в Windows Me, хотя MS- DOS 8 и была включена, но оказалась настолько запрятанной вглубь Windows, что загрузка "чистого" DOS оказалась невозможной (программы для DOS можно запускать только в окне Windows), да и конфигурационные файлы сonfig.sys и autoexec.bat, хоть они и были сохранены, чтобы не "смущать" старые программы, при загрузке Windows перестали обрабатываться.

С другой стороны, даже в Windows Me MS-DOS не является простым "довеском", а представляет собой один из обязательных компонентов системы: если, к примеру, заменить файл IO.SYS на аналогичный, но от одной из предыдущих версий Windows, то получим сообщение, что для загрузки системы требуется MS-DOS 8. Впрочем, роль MS-DOS в Windows Me стала минимальной - тот же IO.SYS передает управление непосредственно VMM32.VXD, то есть ядру Windows...