На чем написан dos
Полная история IBM PC, часть вторая: империя DOS наносит удар
Реальным победителем была Microsoft, построившая империю на закорках сомнительно приобретённой MS-DOS.
Intel 8086, более дорогая, но функционально идентичная версия Intel 8088, под управлением которой в итоге и будет работать IBM PC
В ноябре 1979 года частый партнёр Microsoft, компания Seattle Computer Products выпустила материнскую плату Intel 8086 для самых упёртых любителей хобби и производителей компьютеров, проводящих эксперименты с этим новым и очень мощным ЦП. 8086 состоял в близком родстве с 8088, выбранным IBM для PC. Последний был удешевлённой версией первого, гибридный чип на 8-бит/16 бит, а не чисто 16-битный, как 8086.
IBM склонилась к менее мощному 8088 в частности, чтобы контролировать издержки, но и затем, чтобы позволить использовать с ним определённую периферию, которой требовалась 8-битная внешняя шина данных, которой обладал 8088. Но, вероятно, самым сильный аргумент поступил, как это часто бывает, из отдела маркетинга, а не разработок. Чип 8086 был таким мощным, что оборудованный им IBM PC мог заставить клиентов отказаться в его пользу от более крупных систем IBM. IBM хотела отобрать бизнес у других производителей PC, но не у своих подразделений.
Скромный ЦП Intel 8088
Для нас важно понять, что у обоих чипов был одинаковый набор инструкций, поэтому на них могли идти одни и те же программы. Все хотели запускать CP/M на картах SCP, но CP/M была разработана только для Intel 8080 и Zilog Z80. Потому у SCP были те же проблемы, на которые Джек Сэмс и IBM натолкнулись через несколько месяцев. Digital Research периодически обещала выпустить версию CP/M для 8086/8088, но не сделала этого. Так что в апреле 1980-го Тим Патерсон из SCP решил самостоятельно написать ОС для 8086/8088. Он назвал её QDOS – «дешёвой и сердитой операционной системой» [Quick and Dirty Operating System].
Этичность или отсутствие таковой в поступке Патерсона обсуждалась годами. Гэри Килдалл много раз заявлял, что он похитил исходные коды CP/M, но это утверждение сомнительно. Нет никаких свидетельств, что у него был доступ к коду, тщательно охранявшемуся компанией Digital, как это принято у большинства компаний, как того времени, так и современных.
С другой стороны, Патерсон признаёт, что просто взял руководство по CP/M и просто скопировал все API-вызовы, один за другим. С третьей стороны, даже если это был не очень оригинальный и творческий подход, его действия были совершенно легальны, даже по сегодняшним стандартам. Суды раз за разом заключают, что API не защищается авторским правом, это можно сделать только с его конкретной реализацией, поэтому реверс-инжиниринг допустим. Ну, конечно, существует ещё патентное право, но в это болото мы не полезем.
Карта Intel 8086, выпускавшаяся Seattle Computer Products
Пища для размышлений для приверженцев открытого кода и противников Microsoft: если создание QDOS было неэтичным, тогда Linux – по большей части повторное воплощение стандартов Unix – будет настолько же неэтичным. Патерсон утверждает, что у него были существенные причины для копирования CP/M: он хотел, чтобы программистам было как можно легче портировать программы с CP/M на QDOS. Он также заявляет, что под капотом, там, где это было возможно, он серьёзно улучшил свой вариант С, особенно в работе с диском и файлами.
А в это время Билл Гейтс размышлял, как, чёрт побери, он сможет сотворить операционку для IBM в назначенные ему сроки. А затем Патерсон позвонил сооснователю Microsoft Полу Аллену и рассказал про QDOS – просто на случай, если вдруг Microsoft заинтересуется написанием для неё программ или внутреннего использования. Гейтс, как человек, способный распознать внезапного спасителя, позвонил Сэмсу и спросил: «Сами заберёте, или хотите, чтобы я это сделал?» Ответ Сэмса на этот вопрос за последующие десятилетия обойдётся IBM в миллиарды долларов. «Конечно, забирайте сами», – сказал он.
А теперь – с дополнением в виде сопроцессора 8087!
Понимая, что программы для PC были очень далеки от его области знаний, Сэмс просто отдал все проблемы, связанные с ПО, в Microsoft, и не видел причин менять курс. «Мы хотели, чтобы это было их проблемой», – говорил он после. «Проблема» Microsoft через несколько лет станет большой, огромной проблемой для IBM.
Да будет свет!
Стив Балмер и Билл Гейтс на PC Forum в 1986.
30 сентября Гейтс, Стив Балмер и Боб О’Рир – седьмой сотрудник Microsoft – полетели во Флориду с целью сделать окончательное предложение IBM. Сэмсу, желавшему всучить проблему разработки ПО кому-то другому, их план показался идеальным. Microsoft будет отвечать за поставку ОС, четырёх языков программирования (BASIC, COBOL, Fortran, Pascal) и набора другого софта, который должен быть готов к запуску продукта (включая нашего старого друга, Microsoft Adventure).
На одном из пунктов Гейтс настаивал особенно: Microsoft будет продавать лицензии на софт для IBM, а не просто продавать готовый продукт, и будет ожидать с них роялти, оплаты с каждой копии. IBM, считая, что возможностей заработать на этом хватит всем, и что не помешает так тесно привязать судьбу Microsoft к IBM PC, согласилась. Огромная компания, чья консервативность и избегание рисков были легендарными, согласилась вручить судьбу одного из крупнейших проектов в руки 24-летнего парня. Если бы Microsoft не справилась, то IBM PC был бы мертворожденным продуктом.
Пока составлялся договор по поводу ПО, Project Chess не стоял на месте. В том же ноябре Microsoft получила два первых прототипа. IBM, отчаянно боровшаяся за секретность, потребовала, чтобы их держали в подвале без окон, закрытом на замки, которые поставляла сама IBM. Microsoft и Project Chess, физически разделённые так, как это только возможно, чтобы всё ещё оставаться в США, всё же создали работающие взаимоотношения, похожие на рабочие связи, существующие сегодня, когда от географии зависит гораздо меньше. Они постоянно общались по телефону и особенно по специальной системе электронной почты, которую они наладили, передававшей сообщения в обе стороны при помощи сервиса за одни сутки, и часто ездили друг к другу – иногда и без предупреждения. Это стало особенной причиной беспокойства для Microsoft. У IBM была привычка приезжать без предупреждения, чтобы проверить, придерживаются ли тут их хитромудрых практик безопасности.
Конечно, у команды IBM тоже было, чем заняться, но Microsoft реально приходилось торопиться. Из-за всех этих переговоров они, если верить Гейтсу, уже «отставали от графика на три месяца» в день подписания контракта. Все несколько месяцев подряд работали без выходных. Большинство даже не ушло на Рождество.
Первой целью было заставить машину работать в двух режимах: BASIC и дисковая операционная система. Microsoft могла справиться с первым и сама, но по второму вопросы они зависели от Seattle Computer Products. Когда Microsoft заканчивала переговоры с IBM и начинала работу, Патерсон и SCP продолжали собственные разработки, улучшая QDOS от состояния хака «дёшево и сердито» до пригодной к продаже ОС. В процессе они по очевидным причинам переименовали её в 86-DOS. К окончанию года у них, наконец, появилась версия, пригодная для выхода в мир.
Билл Гейтс, может, и не выглядит хладнокровным бизнесменом, но именно такого впечатления он и добивается!
Билл Гейтс выходит из тени
До того момента Билл Гейтс вёл себя тихо, действуя, как целеустремлённый, но честный бизнесмен. Теперь же мы начинаем видеть, как на свет выходит что-то от той легендарной уклончивости Гейтса. Он хотел, чтобы Microsoft работала по схеме роялти, которая давала им долю в проекте IBM PC, на успех которого возлагались надежды. Но он не хотел делиться этими плодами с SCP, которая и не подозревала о существовании проекта IBM, или о том, что их скромная ОС, написанная одним человеком, была ключом к планам одной из крупнейших компаний мира. Гейтс хотел держать их в неведении, но 86-DOS была нужна ему уже вчера. Следовательно, ему нужно было вырвать 86-DOS из их рук, не давая им узнать, зачем она ему нужна.
Пол Аллен и Билл Гейтс скучают на PC Forum 1987 года
Для SCP, небольшой компании, занимавшейся оборудованием, без связей и маркетинговых навыков Microsoft такая сделка звучала прекрасно – особенно из-за того, что за последнее время бизнес шёл не очень хорошо. Microsoft выказывала уверенность в том, что она сможет продать довольно много лицензий, что принесёт фирме лёгкие деньги за ОС, которую Патерсон начал почти что забавы ради.
Первая загрузка
Была уже вроде глубокая ночь. Это был один из самых радостных моментов моей жизни, наконец, после всех приготовлений и работы, метаний туда и сюда, операционка загрузилась и сообщила, что готова принимать команды. Это был волнительный момент.
IBM вскоре начала требовать внести в 86-DOS различные изменения. Microsoft обнаружила, что попала в неудобное положение, поскольку ей пришлось снова обращаться к Патерсону, знавшему 86-DOS лучше любого другого, с кем они заключили контракт на консультации, и просить у него внести изменения, не говоря, от кого идут эти запросы. В результате они убедили его уйти из SCP и прийти к ним на полный рабочий день. «Это IBM!» – сообщили они ему, как только он переступил порог своего кабинета в первый рабочий день в качестве сотрудника.
86-DOS (QDOS), работающая на эмуляторе
Ирония с точки зрения Патерсона, десятилетиями защищавшегося от обвинений в пиратском копировании CP/M, заключалась в том, что многие изменения, запрошенные IBM, ещё сильнее приближали 86-DOS к CP/M. К примеру, запрос команд, демонстрирующий текущий диск, «A:>», был введён по просьбе IBM, и это была копия того, что делала CP/M. Патерсон говорит, что его от этого «тошнило», но, естественно, в этом проекте IBM обычно получала то, что требовала.
IBM планировала сделать анонс IBM PC в августе 1981 года – согласно изначальному плану, по которому Project Chess должен был родиться ровно за год. Им не хотелось откладывать это, поэтому все в Бока-Ратон, и особенно в Microsoft, работали ещё усерднее, пропуская мелкие дедлайны, в то время как основной оставался недвижимым.
IBM также начала делать конфиденциальные предложения разработчикам такого ПО, как VisiCalc и пакету для обработки текстов Easy Writer, чтобы добавить их к линейке приложений и игр от Microsoft. Они даже договорились, что UCSD Pascal P-System будет доступна для тех, кто захочет запускать её совместно с 86-DOS или Microsoft BASIC.
Удивительно, но такой обширный проект очень долго оставался тайным. Но, наконец, в июне InfoWorld напечатала подробную статью, описывающую практически весь план в деталях, и даже упомянула, что ОС в проекте будет не CP/M, но очень на неё похожей. InfoWorld ошибся только с датой анонса, написав, что он произойдёт в июне, а не в августе. Более ранний проект персонального компьютера Datamaster, технологии и создатели которого пригодились в Project Chess, совершил свой дебют именно в том месяце. Многие решили, что статья InfoWorld была про Datamaster, и что в результате журнал всё описал неправильно. Однако люди с хорошими связями уже были в курсе происходящего.
Я выпью твой молочный коктейль
Версия PC-DOS 1982 года
А потом 27 июля 1981 года, менее, чем за две недели до запланированного анонса, Билл Гейтс заключил сделку столетия.
Но тогда у Microsoft и IBM осталась ещё одна юридическая загвоздка. В то время, как проект IBM PC становился всё более известным секретом индустрии, Гэри Килдалл увидел, как работает 86-DOS/MS-DOS. Он был убеждён, что Патерсон украл его операционку, каким-то образом получив доступ к исходному коду, затем изменил его, чтобы он запускался на Intel 8086/8088, спилил серийники и продал её IBM. Он начал угрожать судом, и (что, вероятно, больше волновало IBM), поднять вой в прессе, способный омрачить грядущий анонс.
Килдал и Гейтс встретились за обедом, чтобы попытаться договориться, но ничего не вышло. «Это была одна из тех встреч, на которых все сначала вежливо говорят друг с другом, затем все орут друг на друга, затем все опять вежливы друг с другом, а потом все опять орут», – вспоминает Джон Катсарос, сотрудник Digital Research, присутствовавший на встрече. Поэтому IBM вмешалась и предложила сделку. Компания будет предлагать версию CP/M-86, совместимую с 8088, которую Digital никак не могла доделать, как только Килдалл предоставит им её готовый вариант. Успокоенный Килдалл согласился.
IBM PC, который с самого начала задумывался, как «машина для всего», теперь будет обладать целыми четырьмя возможностями для работы: BASIC, встроенный в ROM, MS-DOS, CP/M или UCSD Pascal.
12 августа 1981 года
Первая версия IBM PC 5150 с принтером, представленная в августе 1981
Килдалл, вплоть до своей смерти уверенный в том, что MS-DOS была пиратской копией CP/M, и иногда заявлявший, что сумеет доказать это посредством встроенного в систему секретного сообщения или необычного атрибута API, считал, что IBM специально назначила для CP/M цену в шесть раз выше, чем для MS-DOS, чтобы её никто не покупал, и, таким образом, выполняла букву, но не дух соглашения. IBM просто заявила, что поскольку Digital потребовали слишком высоких лицензионных отчислений, у неё не было выхода. Три из четырёх вариантов операционок, CP/M, Microsoft BASIC и UCSD Pascal, использовали так редко, что сегодня уже мало кто помнит, что они вообще были доступны в качестве опций. А MS-DOS, понятное дело, отправилась завоёвывать мир.
IBM PC 5150
При этом железо было серым и скучным. Несмотря на необычный для IBM процесс разработки, конечный продукт не сильно отличался от того, что можно было ожидать от IBM. В нём не было никакой творческой жилки, но по клацанью клавиатуры и по большому, крепкому корпусу с большим количеством металла внутри, агрегат выглядел достаточно надёжным. И это было не поверхностное впечатление. Что бы ни говорили, IBM PC был создан на века. Возможно, наименее известной инновацией было использование памяти с дополнительным битом чётности, который автоматически обнаруживал ошибки. Это был первый массовый микрокомпьютер, оборудованный такой защитой памяти, помогавшей избегать редких, но чрезвычайно сложно обнаруживаемых ошибок памяти, которые могли приводить к совершенно непредсказуемым результатам на ранних PC. Проверка чётности в RAM – не та функция, что может возбудить хакеров, но для бизнесмена, жизнь которого зависит от оборудования, это именно такая функция, которая характеризует компанию IBM. Она обеспечивала вам чувство безопасности.
Реклама IBM PC 5150 в печатном издании
Отсутствие творческого начала в дизайне подтверждало предубеждённость хакеров, но для бизнесменов, не доверяющим всяким неряшливым стартапам-выскочкам, появление IBM PC сделало микрокомпьютер серьёзным инструментом, пригодным для серьёзной работы. Менеджеры среднего звена кинулись скупать IBM PC, поскольку ещё никого никогда не увольняли за покупку IBM – даже если раньше этот процесс так сильно никого не радовал. IBM продала 13500 PC за последние два месяца 1981 года, а после этого продажи вообще рванули в космос.
Apple, уже тогда больше всех понимавшая в связях с общественностью, дала рекламную статью в Wall Street Journal на полную страницу, в которой говорилось: «Добро пожаловать, IBM. Правда.» Как и многие другие примеры рекламы от Apple, это был шедевр риторики, звучащий вроде бы вежливо, и при этом дававший понять, что а) IBM опоздала и б) Apple рассматривает их как ещё одних конкурентов.
Реклама Apple в WSJ:
Добро пожаловать на самый интересный и важный рынок с момента начала компьютерной революции, стартовавшей 35 лет назад.
Поздравляем с вашим первым персональным компьютером.
Отдать все возможности компьютера в распоряжение отдельных индивидов – это значит, улучшить качество того, как люди живут, работают, обучаются, общаются и проводят свободное время.
Когда мы придумали первую персональную вычислительную систему, мы прикидывали, что примерно 140 млн людей смогут оправдать её покупку, если поймут её преимущества.
Мы предположили, что только в следующем году миллион человек придёт к этому пониманию. А в следующем десятилетии рост персональных компьютеров будет логарифмическим.
Мы ждём ответственной конкурентной борьбы в сложной попытке распространить эту американскую технологию по всему миру. Мы ценим сложность взятых вами на себя обязательств.
Потому что мы занимаемся увеличением социального капитала через улучшение продуктивности индивидов.
Добро пожаловать на выполнение этой задачи.
Эпилог
IBM PC 5150 стал настолько успешным, что породил множество вариаций
Много лет спустя станет ясно, что появление IBM PC стало третьей величайшей вехой в истории PC, последовавшей за первыми микрокомпьютерными наборами, появившимися в 1975 году, и троицей (Apple II, PET, TRS-80), вышедшей в 1977. Также оно отметило конец первой эры истории Microsoft, неряшливого, но уважаемого поставщика BASIC, других языков программирования и прикладных программ (в таком порядке). На фоне запуска IBM PC Microsoft быстро оборвала связи с более хакерскими сообществами, среди которых она росла, чтобы крепко прицепить свой вагон к поезду бизнес-вычислений IBM и MS-DOS. На этом пути их ожидало множество эстетических, технических и юридических проблем – но кроме этого, там же ждали и сотни миллиардов долларов.
Начиная с IBM PC XT в 1983, со встроенным жёстким диском
Потом был IBM PC AT в 1984, с новым ЦП 80286
IBM PCjr, первая попытка компании прорваться на рынок домашних компьютеров, 1984
Хотя IBM PC отметил окончание эры, и начало новой, эти эры лучше видны задним числом, чем в момент их существования. Сразу после его запуска мало что сразу изменилось для счастливых пользователей Apple, Commodore, Atari и Radio Shack. IBM при разработке PC представляла себе машину как подходящую для чего угодно, включая и конкуренцию с упомянутыми компаниями – отсюда и BASIC в ROM, вариант с поддержкой кассет, и даже требование о возможности присоединения его к телевизору. IBM даже договорилась о возможности продаж через популярную сеть Sears. И всё же машина была достаточно дорогой даже в простейших вариантах, и ей не хватало основы из казуального софта (в основном, игр) и таких приверженцев, какие были у её конкурентов. Также были малопривлекательными её возможности в графике и звуке (и удивительно, что они вообще были), особенно по сравнению с новой машиной Commodore 64, вышедшей в 1982-м.
Commodore 64 удерживал IBM PC от завоевания рынка домашних компьютеров. Некоторое время.
Так что, хотя бизнес-сообщество удивительно быстро потянулось к IBM и MS-DOS, мир домашних вычислений, любителей хобби и образовательных компьютеров оставался достаточно раздробленным ещё много лет. В результате, конечно, MS-DOS победит – но это займёт больше десятилетия, вместо нескольких месяцев, что позволит расти и процветать самым живым и интересным компьютерным культурам.
История MS-DOS (19 фото)
Ничто не мешает нам запустить несколько программ и переключаться между ними, работая одновременно с несколькими документами разных видов. Мы не задумываемся о том, что такой тип взаимодействия компьютера с пользователем был разработан всего три десятка лет назад, и что он называется графическим пользовательским интерфейсом. (Я уже не говорю о том, что сегодня предельно облегчено подключение компьютера к различным видам сетей и поддерживается колоссальное количество разновидностей внешних устройств.)
И уж конечно мы не думаем о том, что всего тридцать лет пользователи управляли компьютером при помощи команд, вводимых с клавиатуры, а компьютер — точнее, операционная система MS‑DOS — в ответ на ошибочные команды выдавала ядовито-зелеными буквами малопонятные текстовые сообщения, например:
Программы приходилось загружать по очереди (MS‑DOS не обладала многозадачными возможностями), у них была масса проблем с совместимостью и очень разношерстный пользовательский интерфейс. Но те, кому это не нравилось, могли вернуться к пишущей машинке и черчению тушью. И таких охотников находилось все меньше и меньше — возможность сохранять документы в виде электронных файлов и затем повторно использовать и модифицировать их, а не перепечатывать все время под копирку, открывала широчайшие перспективы.
Чтобы понять, почему операционная система MS‑DOS была именно такой, каким образом она стала своеобразным трамплином для Microsoft Windows, и почему, в разных своих ипостасях, просуществовала целых два десятилетия, перенесемся еще на десятилетие назад, в 1971 год.
До MS-DOS
В 1971 г. фирма Intel по заказу японской компании Busicom выпустила интегральную микросхему 4004 — первый микропроцессор, функционально аналогичный современному центральному процессору, лежащему в основе любого компьютера, но значительно менее мощный — он был четырехразрядным, т.е. мог обрабатывать только четырехразрядные двоичные числа, от нуля до 1111 (десятичное 15), и имел тактовую частоту менее 1 МГц. Всего год спустя появился первый восьмиразрядный микропроцессор 8008, а микропроцессор 8080 с тактовой частотой 2 МГц, выпущенный Intel в 1974 г., был уже настолько мощным, что на его основе можно было построить небольшой компьютер. Это и сделала фирма MITS, которая выпустила в 1975 г. первый в мире ПК Altair 8800.
За ним последовали ПК других фирм, которые тоже использовали восьмиразрядные микропроцессоры Intel и других производителей — Motorola, Zilog. В отличие от профессиональных компьютеров, работавших с UNIX, ПК использовали операционную систему CP/M (Control Program for Microcomputers) фирмы Digital Research — первую ОС, работавшую на ПК от различных производителей. Другим программным средством, работавшим практически на всех существовавших тогда ПК, был транслятор языка программирования Basic, выпущенный молодой компанией Microsoft.
Расцвет MS-DOS
В 1980 г. на рынок ПК решила выйти корпорация IBM, и в 1981 г. была выпущена модель IBM Personal Computer, созданная департаментом систем начального уровня IBM под руководством Филипа Дональда Эстриджа — великого Дона Эстриджа (1937—1985), почитаемого ныне, как отца IBM PC. Чтобы максимально сократить сроки и затраты, разработчики использовали открытую архитектуру. IBM PC был сконструирован на основе независимо производимых компонентов. Базовая модель IBM PC имела 64 КБ оперативной памяти с возможностью расширения до 256 КБ. Мозгом IBM PC стал новый 16-разрядный микропроцессор 8088 фирмы Intel. Были опубликованы документация по аппаратуре и программные спецификации.
Когда в октябре 1980 г. IBM обратилась к различным программистским фирмам с предложением принять участие в проекте создания нового ПК, Microsoft не могла предложить IBM собственной ОС. Однако Digital Research располагала только CP/M‑80 для 8-разрядных компьютеров. Пока Digital Research работала над 16-разрядной CP/M‑86, Microsoft приобрела права на 16-разрядную систему 86‑DOS у компании Seattle Computer Products.
Одним из важных качеств 86‑DOS была легкая переносимость программ из среды CP/М‑80. Она к тому же заимствовала многие команды CP/M, такие как REN (переименовать файл), DIR (показать содержание каталога) и TYPE (вывести содержимое файла на экран). Значительно переработанная версия 86‑DOS получила название MS‑DOS 1.0. В августе 1981 г. начались поставки компьютеров IBM PC с этой ОС под названием PC‑DOS 1.0. Кроме того, Microsoft получила право продавать лицензии на MS‑DOS и другим производителям ПК.
Аббревиатура DOS (Disk Operating System — дисковая ОС) подчеркивала основное назначение данной операционной системы — обеспечение управления дисковым вводом-выводом. Система MS‑DOS не содержала встроенной поддержки накопителей на магнитных лентах или локальных сетей. Главное, что она обеспечивала, — работу с файлами. Для удобства использования файлов MS‑DOS позволяла давать им имена длиной до восьми символов, с описанием (расширением) длиной до 3 символов, например DOCUMENT.TXT или READ.ME.
MS‑DOS 1.0, довольно прогрессивная в сравнении с CP/M, использовала более совершенные методы управления дисковыми данными и имела широкий набор команд для сервисных программ. Поскольку оригинальная модель IBM PC выпускалась с дисководами для 160‑килобайтных дискет, PC‑DOS 1.0 поддерживала только такие носители. Другие производители ПК не принимали PC‑DOS, пока в мае 1982 г. не появилась PC‑DOS 1.1, позволявшая работать с дискетами емкостью 320 Кбайт. Вот когда Microsoft смогла воспользоваться своим правом продажи лицензий на MS‑DOS — спустя месяц та же версия ОС вышла под названием MS‑DOS 1.25, и ее начали применять Texas Instruments, Compaq Computers и другие фирмы, приступившие к изготовлению IBM PC-совместимых компьютеров.
MS‑DOS 2.0 (март 1983 г.) поддерживала 360-килобайтные дискеты и 10-мегабайтные жесткие диски (специально для нового компьютера IBM PC XT) и предоставляла возможность рассортировывать файлы по каталогам. Тогда-то и начался мировой бум производства IBM PC-совместимых компьютеров — к числу изготовителей этих машин присоединились такие респектабельные компании, как Tandy, Hewlett-Packard, Digital Equipment Corporation и др. Базовой ОС для продукции многих фирм стала MS‑DOS 2.11 — наиболее стабильная реализация второго поколения MS‑DOS.
MS‑DOS 3.0 (август 1984 г.) была ориентирована на новую модель компьютеров IBM — IBM PC AT — первый компьютер, основанный на микропроцессоре Intel 80286, с 5,25‑дюймовым дисководом высокой плотности (для дискет на 1,2 Мбайт) и 20‑мегабайтным жестким диском. MS‑DOS 3.2 (декабрь 1985 г.) поддерживала 3‑дюймовые 720-килобайтные дискеты и логические разделы жестких дисков объемом до 32 Мбайт. Система продолжала развиваться, в нее добавлялись все новые и новые возможности поддержки национальных изображений валюты и времени, таблиц символов и раскладок клавиатуры.
Росла и популярность платформы IBM PC, больше становилось производителей IBM PC-совместимых машин, а количество разработчиков ПО для IBM PC превзошло все мыслимые пределы. В 1986 г. уже появился IBM PC-совместимый компьютер фирмы Compaq Computer, основанный на микропроцессоре 80386. В следующем году и у IBM появился компьютер с микропроцессором 80386 — PS/2 Model 80. MS‑DOS не была способна в полной мере задействовать возможности новых компьютеров. Так, если компьютеры с микропроцессором 8086 выпускались не более чем с 640 Кбайт оперативной памяти, то на 286‑й компьютер теоретически можно было установить до 16 Мбайт памяти, а на 386‑й — до 4 Гбайт. MS‑DOS же никогда не могла использовать более 640 Кбайт памяти.
Однако растущий рынок требовал интенсивного производства IBM PC-совместимых машин, еще более интенсивного совершенствования MS‑DOS и возможно более интенсивного выпуска профессиональных приложений для IBM PC и MS‑DOS. Одним из главных требований была совместимость: все новые версии MS‑DOS обязаны были успешно работать с программами, выпущенными для более старых версий MS‑DOS.
Поэтому в MS‑DOS 3.3 (апрель 1987 г.) не было ничего принципиально нового, зато все старое было усовершенствовано. В частности, версия 3.3 поддерживала новые 3‑дюймовые 1,44-мегабайтные дискеты. MS‑DOS 3.3 стала важнейшим этапом в истории развития MS‑DOS, следующие версии MS‑DOS 4.0 и MS‑DOS 4.01 (1988 г.) не привлекли большого внимания покупателей. Большинство пользователей IBM PC сохранило верность MS‑DOS 3.3.
Появление Windows
Как мы уже отметили, MS‑DOS имела весьма примитивный пользовательский интерфейс: чтобы загрузить программу или выполнить другие операции, пользователь должен был набирать на клавиатуре команды. Например, команда для копирования из каталога DOC\WORK диска C: на диск A: всех файлов и каталогов, кроме тех, что там уже есть, выглядит так:
В 1985 г. Microsoft выпустила первую версию Windows — графической оболочки MS‑DOS, предлагавшей пользователю оконный интерфейс. Чтобы задействовать все преимущества Windows, программа должна быть спроектирована специально для Windows.
Существовавшим тогда IBM PC-совместимым компьютерам, однако, не хватало мощности, чтобы обеспечить полноценное функционирование графической среды. Поэтому та Windows, какой ее удалось сделать в 1985 г., выглядела довольно бледно. Но Microsoft продолжала вкладывать средства в Windows. В 1987-1988 гг. появлялись различные реализации Windows/286 и Windows/386 (Windows 2.x).
Предназначенные для выполнения на соответствующих микропроцессорах, они были уже вполне работоспособны. Наконец, в мае 1990 г. произошло событие, во многом определившее сегодняшнее состояние программно-аппаратного рынка IBM PC-совместимых компьютеров.
Windows 3.x
Windows 3.0, выпущенная в мае 1990 г., загружалась из-под MS‑DOS, но заставляла сразу забыть о MS‑DOS. Доступ ко всему объему памяти компьютера осуществлялся через драйвер MS‑DOS HIMEM.SYS и специальную систему «расширения MS‑DOS». Это обусловило качественный скачок — полностью графический оконный интерфейс в сочетании с многозадачными возможностями. Многозадачность Windows не позволяла управлять работой программ так же гибко, как многозадачность OS/2, зато требовала меньше памяти. На компьютерах с микропроцессором 80386 и выше Windows 3.0 работала с виртуальной памятью, т. е. использовала часть диска как продолжение оперативной памяти.
Для запуска программ служило приложение Диспетчер программ — Program Manager. Чтобы можно было упорядочивать и хранить значки запуска для большого количества приложений, разработчики сделали Диспетчер файлов многооконным. Для операций с файлами и дисками в Windows 3.0 входила многооконная программа Диспетчер файлов — File Manager, позволявшая производить многие операции с файлами методом перетаскивания мышью.
Комплекс услуг, предоставляемый Windows, привел к тому, что все перспективные программы стали разрабатываться с учетом требований Windows. От MS-DOS теперь в первую очередь требовалось быть надежной опорой Windows, и в июне 1991 г. вышла MS‑DOS 5.0, разработанная так, чтобы из-под нее было лучше работать с Windows 3.0. В нее вошла, например, новая версия HIMEM.SYS. Для иллюстрации преимуществ многозадачности с MS‑DOS 5.0 поставлялась оболочка MS‑DOS Shell с заимствованной из Windows 3.0 подсистемой переключения программ.
В апреле 1992 г. в продажу поступила Windows 3.1. С этого момента она именуется операционной системой. Строго говоря, эта среда не могла функционировать самостоятельно, без MS‑DOS. Но положения вещей это не меняет. Чуть позже была выпущена Windows 3.1 for Workgroups для работы с одноранговыми локальными сетями, а через год — Windows 3.11, практически идентичная Windows 3.1, и Windows 3.11 for Workgroups. Эти версии Windows были во многом усовершенствованы по сравнению с Windows 3.0.
В 1993–1994 гг. было выпущено и несколько новых версий MS‑DOS. Наиболее существенной особенностью MS‑DOS 6.0 (апрель 1993 г.) стало наличие большой коллекции оригинальных и лицензированных служебных программ, в том числе Microsoft DoubleSpace для увеличения полезной емкости дисков путем динамического сжатия данных. В версии MS‑DOS 6.2 (октябрь 1993 г.) программа Microsoft DoubleSpace была усовершенствована, из версии MS‑DOS 6.21 — изъята из за юридических противоречий с компанией Stac Electronics, производителем аналогичной программы Stacker, a в версии MS‑DOS 6.22 (обе — 1994 г.) — заменена на DriveSpace, не вызывавшую нарекание у компании Stac. И это была последняя самостоятельная версия MS‑DOS.
Windows 9x
Последующие версии MS-DOS были включены в комплект поставки новейших версий Windows.
В частично 32-разрядной операционной системе Windows 95, выпущенной Microsoft в конце лета 1995 г., присутствовала «внутренняя» MS‑DOS 7.0, ее можно было использовать для поддержки программ, несовместимых с новой версией Windows, но по умолчанию на компьютерах пользователей сразу загружался графический интерфейс.
Почему так важно было отвлечь пользователей от MS‑DOS? Новое поколение Windows обеспечивало более высокую надежность и более стабильную и устойчивую одновременную работу приложений, чем Windows 3.1. Windows 95 продуктивнее использовала память и диски, позволяя к тому же давать файлам имена длиной до 255 символов. Система поддерживала спецификацию автоматической настройки оборудования Plug and Play, позволяющую автоматически определять и настраивать большую часть существующей аппаратуры для IBM PC-совместимых компьютеров. Windows 95 работала со всеми видами игровых и мультимедиа-устройств, существовавшими на момент выхода этой ОС.
Windows 95 была первой системой, которая, с одной стороны, была предназначена для выполнения 32-разрядных программ, а с другой — работала с 16-разрядными Windows 3.1-программами и практически любыми программами для MS‑DOS. Конечной же целью было избавиться от 16-разрядного кода, и полностью перевести весь рынок на 32-разрядные приложения и операционные системы. Именно с этой целью параллельно развивалась ветвь Windows NT — современных, полностью 32-разрядных операционных систем для бизнеса.
В течение 1995—1998 гг. Microsoft постоянно обновляла Windows 95, а в 1998 г. выпустила Windows 98, имевшую усовершенствованный интерфейс, новую файловую систему FAT32, и поддерживавшую объединенную модель драйверов устройств для Windows и Windows NT (Windows Driver Model), а также новые типы оборудования, в том числе универсальный порт Universal Serial Bus (USB), и т.д. Интегрированная версия MS‑DOS имела номер 7.1
«Двухтысячные» версии Windows для дома (Windows Millennium Edition, или Windows Me) и Windows для бизнеса (Windows 2000) были очень похожи внешне. При этом Windows 2000 уже почти предоставляла необходимую гибкость в пользовании разнообразным программным обеспечением (включая компьютерные игры и средства мультимедиа) и при подборе оборудования, а из Windows Me была почти исключена MS-DOS — остался только загрузчик с внутренним номером версии 8.0.
На этом приключения MS-DOS и история двух параллельных ветвей Windows закончились, и началась новая эра — следующей версией операционной системы от Microsoft стала Windows XP.
В заключение отметим, что в разное время разные фирмы выпускали собственные версии MS‑DOS-совместимых ОС. Это были не только версии DOS, предназначенные фирмами-производителями для установки на ПК собственного производства, такие как Compaq DOS, Zenith DOS или ранние версии PC‑DOS фирмы IBM. Отдельные версии DOS выпускались для широкой продажи, чтобы составить конкуренцию MS‑DOS от Microsoft. В их числе DR DOS от Digital Research, Novell DOS 7.0 (последняя версия DR DOS, выпущенная после того, как фирма Digital Research была приобретена фирмой Novell), поздние версии IBM PC‑DOS, PTS‑DOS российской фирмы «Физтех-софт» и др.
И главное. Значение операционной системы MS-DOS трудно переоценить. Под ее управлением работали компьютеры с микропроцессорами с тактовой частотой менее 5 МГц, объемом оперативной памяти до 640 КБ и с такими маленькими жесткими дисками, на которые не поместилась бы даже одна-единственная фотография, сделанная современной профессиональной камерой. Сегодня мы работаем на персональных компьютерах с 32- и 64-разрядной архитектурой, частота микропроцессора которых измеряется гигагерцами, объем оперативной памяти — гигабайтами, а вместимость жесткого диска — сотнями гигабайт, но именно надежная, неприхотливая рабочая лошадка MS‑DOS вытащила на себе всю компьютерную революцию. Миллионы людей стали пользователями и программистами персональных компьютеров именно с этой операционной системой.