IBM PC DOS ( аббревиатура от IBM Personal Computer Disk Operating System ), [nb 1] также известная как PC DOS или IBM DOS — это прекратившая поддержку дисковая операционная система для IBM Personal Computer , его преемников и IBM PC-совместимых компьютеров . Она производилась и продавалась IBM с начала 1980-х до 2000-х годов. Разработанная Microsoft , она также продавалась этой компанией как MS-DOS . Обе операционные системы были идентичны или почти идентичны до 1993 года, когда IBM начала продавать PC DOS 6.1 с новыми функциями. Общее сокращение для PC DOS и MS-DOS было DOS , что также является общим термином для дисковой операционной системы и используется совместно с десятками дисковых операционных систем под названием DOS .
Рабочая группа IBM, собранная для разработки IBM PC, решила, что критически важные компоненты машины, включая операционную систему, будут поставляться внешними поставщиками. Этот радикальный разрыв с традицией компании по внутренней разработке стал одним из ключевых решений, сделавших IBM PC отраслевым стандартом. В конечном итоге для операционной системы была выбрана компания Microsoft , основанная Биллом Гейтсом пятью годами ранее.
IBM хотела, чтобы Microsoft сохранила право собственности на любое разработанное ею программное обеспечение, и не хотела иметь ничего общего с помощью Microsoft, кроме как делать предложения издалека. По словам члена целевой группы Джека Сэмса:
Причины были внутренними. У нас была ужасная проблема с судебными исками от людей, утверждавших, что мы украли их вещи. Для нас было ужасно дорого заставлять наших программистов смотреть код, который принадлежал кому-то другому, потому что они бы потом вернулись и сказали, что мы украли его и заработали все эти деньги. Мы проиграли серию исков по этому поводу, и поэтому мы не хотели, чтобы продукт, который был явно чужим продуктом, разрабатывался людьми из IBM. Мы обратились в Microsoft с предложением, что хотим, чтобы это был их продукт. [1] [ необходима цитата ]
IBM впервые связалась с Microsoft, чтобы осмотреть компанию, в июле 1980 года. Переговоры продолжались в течение последующих месяцев, и документы были официально подписаны в начале ноября. [2]
Хотя IBM ожидала, что большинство клиентов будут использовать PC DOS, [3] IBM PC также поддерживала операционные системы CP/M-86 , которая стала доступна через шесть месяцев после PC DOS, [4] и UCSD p-System . [5] Ожидания IBM оказались верными: одно исследование показало, что 96,3% ПК были заказаны с PC DOS за 40 долларов по сравнению с 3,4% с CP/M-86 за 240 долларов. [6]
За всю историю IBM PC DOS IBM и Microsoft разработали различные версии. К моменту завершения PC DOS 3.0 у IBM была команда разработчиков, охватывающая всю ОС. На тот момент либо IBM, либо Microsoft полностью разработали версии IBM PC DOS для будущих версий. К 1985 году соглашение о совместной разработке (JDA) между IBM и Microsoft для разработки PC DOS предусматривало, что каждая компания предоставляла другой компании полностью разработанную версию. Большую часть времени фирменные версии были идентичны, но были случаи, когда каждая из компаний вносила незначительные изменения в свою версию DOS. Осенью 1984 года IBM передала весь исходный код и документацию внутренне разработанного IBM TopView для DOS в Microsoft, чтобы Microsoft могла более полно понять, как разрабатывать объектно-ориентированную операционную среду , перекрывающиеся окна (для разработки Windows 2.0 ) и многозадачность .
Microsoft сначала лицензировала, [21] а затем купила [22] 86-DOS у Seattle Computer Products (SCP), которая была модифицирована для IBM PC сотрудником Microsoft Бобом О'Риром с помощью сотрудника SCP (позже Microsoft) Тима Патерсона . [23] О'Риру удалось запустить 86-DOS на прототипе ПК в феврале 1981 года. 86-DOS нужно было преобразовать с 8-дюймовых на 5,25-дюймовые дискеты и интегрировать с BIOS , который Microsoft помогала IBM писать. [24] [25] У IBM было больше людей, писавших требования к компьютеру, чем у Microsoft, писавших код. О'Рира часто чувствовал себя подавленным количеством людей, с которыми ему приходилось иметь дело на предприятии ESD (Entry Systems Division) в Бока-Ратоне, Флорида .
Возможно, первое публичное упоминание об операционной системе было в июле 1981 года, когда Byte обсуждал слухи о готовящемся персональном компьютере с «CP/M-подобной DOS ... которая будет называться просто „IBM Personal Computer DOS “ ». [26] 86-DOS была переименована в IBM PC DOS 1.0 для своего выпуска в августе 1981 года вместе с IBM PC. Первоначальная версия DOS была в значительной степени основана на CP/M-80 1.x, и большая часть ее архитектуры, вызовов функций и соглашений об именовании файлов были скопированы напрямую из старой ОС. Самым значительным отличием был тот факт, что она представила другую файловую систему, FAT12 . В отличие от всех более поздних версий DOS, команды DATE и TIME были отдельными исполняемыми файлами, а не частью COMMAND.COM . Единственным поддерживаемым форматом диска были односторонние 160- килобайтные (КБ) 5,25-дюймовые дискеты.
В конце 1981 года Патерсон, теперь работающий в Microsoft, начал писать PC DOS 1.10. Он дебютировал в мае 1982 года вместе с IBM PC Revision B. Была добавлена поддержка новых двусторонних приводов, что позволяло записывать 320 КБ на диск. Было исправлено несколько ошибок, а сообщения об ошибках и подсказки стали менее загадочными. DEBUG.EXE теперь мог загружать файлы размером более 64 КБ.
Позже группа программистов Microsoft (в первую очередь Пол Аллен , Марк Збиковски и Аарон Рейнольдс ) [25] начала работу над PC DOS 2.0. Полностью переписанный, DOS 2.0 добавил подкаталоги и поддержку жесткого диска для нового IBM XT , который дебютировал в марте 1983 года. Новый 9-секторный формат увеличил емкость дискет до 360 КБ. Ядро, вдохновленное Unix, включало дескрипторы файлов вместо производных от CP/M блоков управления файлами, а загружаемые драйверы устройств теперь можно было использовать для добавления оборудования сверх того, что поддерживалось IBM PC BIOS. BASIC и большинство утилит, поставляемых с DOS, также были существенно обновлены. Крупное начинание, которое заняло почти 10 месяцев работы, DOS 2.0 был более чем в два раза больше, чем DOS 1.x, занимая около 28 КБ ОЗУ по сравнению с 12 КБ у своего предшественника. Она легла в основу всех потребительских операционных систем Microsoft до 2001 года, когда была выпущена Windows XP (на базе Windows NT ). [25]
В октябре 1983 года (официально 1 ноября 1983 года) [27] дебютировала DOS 2.1. Она исправила некоторые ошибки и добавила поддержку дисководов половинной высоты и нового IBM PCjr .
В 1983 году Compaq выпустила Compaq Portable , первый на 100% совместимый с IBM PC , и лицензировала собственную OEM-версию DOS 1.10 (быстро замененную на DOS 2.00) от Microsoft. Другие совместимые с PC последовали ее примеру, большинство из которых включали аппаратно-специфичные функции DOS, хотя некоторые были общими.
В августе 1984 года IBM представила IBM PC/AT , производную от Intel 80286 , свою машину следующего поколения. Вместе с ней была DOS 3.00. Несмотря на скачок на целый номер версии, она снова оказалась не более чем инкрементальным обновлением, не добавив ничего более существенного, чем поддержка новых 1,2- мегабайтных (МБ) дискет AT. Планируемые сетевые возможности в DOS 3.00 были признаны слишком глючными, чтобы их можно было использовать, и Microsoft отключила их до выпуска ОС. В любом случае, первоначальные планы IBM относительно AT состояли в том, чтобы оснастить его надлежащей ОС следующего поколения, которая использовала бы его расширенные возможности, но это так и не было реализовано. [2] PC DOS 3.1 (выпущенная в марте 1985 года) исправила ошибки в DOS 3.00 и поддерживала сетевую карту IBM в сети IBM PC . PC DOS 3.2 добавила поддержку 3+1 ⁄ 2 -дюймовые дисководы двойной плотности емкостью 720 КБ, поддерживающие IBM PC Convertible , первый компьютер IBM, в котором использовалось 3+1 ⁄ 2 -дюймовые дискеты, выпущенные в апреле 1986 года, а позднее IBM Personal System/2 в 1987 году.
В июне 1985 года IBM и Microsoft подписали долгосрочное соглашение о совместной разработке, чтобы совместно использовать указанный код DOS и создать новую операционную систему с нуля, известную в то время как Advanced DOS. 2 апреля 1987 года OS/2 была объявлена первым продуктом, произведенным в рамках соглашения. [28] В то же время IBM выпустила следующее поколение персональных компьютеров, IBM Personal System/2 (PS/2). [2] PC DOS 3.3, выпущенная с линейкой PS/2, добавила поддержку высокой плотности 3+Дисководы для гибких дисков размером 1 ⁄ 2 дюйма емкостью 1,44 МБ, которые IBM представила в своих моделях PS/2 на базе 80286 и выше. Обновление с DOS 3.2 до 3.3 было полностью написано IBM, без каких-либо усилий со стороны Microsoft, которая работала над «Advanced DOS 1.0». DOS 3.30 была последней версией, разработанной с учетом IBM XT и систем, работающих только на гибких дисках; она стала одной из самых популярных версий, и многие пользователи предпочли ее ее глючному преемнику.
PC DOS 4.0 (изначально известная как DOS 3.4) была выпущена в июле 1988 года. У DOS 4.0 были некоторые проблемы совместимости с низкоуровневыми дисковыми утилитами из-за некоторых внутренних изменений структуры данных. DOS 4.0 использовала больше памяти, чем DOS 3.30, и у нее также было несколько сбоев. Недавно добавленные драйверы EMS были совместимы только с платами EMS от IBM, а не с более распространенными [ нужна цитата ] Intel и AST. DOS 4.0 также примечательна тем, что включала первую версию DOS Shell , полноэкранной утилиты, разработанной для того, чтобы сделать ОС командной строки более удобной для пользователя. Microsoft вернула себе контроль над разработкой и выпустила исправленную версию DOS 4.01. [29]
DOS 5 дебютировал в июне 1991 года. DOS 5 поддерживал использование области верхней памяти (HMA) и верхних блоков памяти (UMB) на 80286 и более поздних системах для уменьшения использования обычной памяти . Кроме того, все команды DOS теперь поддерживали опцию /? для отображения синтаксиса команды. Помимо PC DOS от IBM, MS-DOS была единственной другой доступной версией, поскольку OEM-издания исчезли, поскольку к этому времени ПК были на 100% совместимы, поэтому настройки для аппаратных различий больше не были нужны.
Был представлен POWER.EXE, имеющий стандарт APM в версии 5.02. [30] [31]
Это была последняя версия DOS, для которой IBM и Microsoft совместно использовали полный код, и DOS, которая была интегрирована в OS/2 2.0, а позднее и в Windows NT, виртуальную машину DOS .
PC DOS оставалась переименованной версией MS-DOS до 1993 года. Пути IBM и Microsoft разошлись — MS-DOS 6 была выпущена в марте, а PC DOS 6.1 (разработанная отдельно) последовала в июне. Большинство новых функций из MS-DOS 6.0 появились в PC DOS 6.1, включая поддержку нового меню загрузки и новые команды CHOICE , DELTREE и MOVE . QBasic был исключен, а редактор MS-DOS был заменен на IBM E Editor . Он также лицензировал компоненты Central Point PC Tools , такие как Central Point Backup Utility (CPBACKUP). [32] [33] PC DOS 6.1 сообщает о себе как о DOS 6.00.
В декабре вышла версия PC DOS 6.3. PC DOS 6.3 также использовалась в OS/2 для PowerPC . PC DOS 6.3 также включала технологию сжатия дисков SuperStor от Addstor.
PC DOS 7 был выпущен в апреле 1995 года и был последним выпуском DOS перед тем, как разработка программного обеспечения IBM (кроме разработки IBM ViaVoice ) переехала в Остин. Был добавлен язык программирования REXX , а также поддержка нового формата дискет XDF , который расширил стандартный дискетный диск объемом 1,44 МБ до 1,86 МБ. Технология сжатия дисков SuperStor была заменена на STACKER от Stac Electronics . Были добавлены алгебраический калькулятор командной строки и служебная программа для загрузки драйверов устройств из командной строки. PC DOS 7 также включал множество оптимизаций для повышения производительности и сокращения использования памяти. [34]
Последним розничным релизом был PC DOS 2000, выпущенный в Остине в 1998 году, который нашел свою нишу на рынке встроенного программного обеспечения и в других местах. PC DOS 2000 — это промежуточный вариант 7.0 с исправлениями Y2K и другими исправлениями. Для приложений PC DOS 2000 сообщает о себе как о «IBM PC DOS 7.00, revision 1», в отличие от оригинального PC DOS 7, который сообщал о себе как о «IBM PC DOS 7.00, revision 0». [nb 2]
PC-DOS 2000 была последней версией IBM PC-DOS, которая продавалась в розницу. IBM рекламировала ее как DOS, совместимую с Y2K. Поскольку она называет себя "IBM PC-DOS 7 Revision 1", ее часто называют "IBM PC-DOS7R1" или просто "PC-DOS7R1".
Hitachi использовала PC DOS 2000 в своих устаревших Drive Fitness Test (4.15) и Hitachi Feature Tool (2.15) до 2009 года. [35] Продукты ThinkPad имели копию последней версии PC DOS в своем разделе Rescue and Recovery. [36]
В PC DOS 7.1 добавлена поддержка логической адресации блоков (LBA) и разделов FAT32 . [nb 2] Различные сборки с 1999 по 2003 год не выпускались в розницу, но использовались в таких продуктах, как IBM ServerGuide Scripting Toolkit. [37] Сборка этой версии DOS появилась в Norton Ghost от Symantec . [38] Версия 7.1 также указывает на поддержку FAT32 в MS-DOS . [34]
Большинство сборок этой версии DOS ограничены файлами ядра IBMBIO.COM , IBMDOS.COM и COMMAND.COM . Обновленные программы FDISK32 и FORMAT32 позволяют подготовить диски FAT32. Дополнительные утилиты берутся из PC DOS 2000, где это необходимо.
В 1986 году IBM объявила о поддержке PC DOS для клиентского доступа к файловым службам, определенным в Distributed Data Management Architecture (DDM). Это позволило программам на ПК создавать, управлять и получать доступ к ориентированным на записи файлам, доступным на IBM System/36, IBM System/38 и мэйнфреймах IBM, работающих под управлением CICS . В 1988 году поддержка клиентов для потоковых файлов и иерархических каталогов была добавлена в PC DOS, когда они стали доступны на серверных системах DDM.
21h
30h
Get DOS version возвращает OEM- код 00h
для IBM вместо FFh
Microsoft . Это особенно важно для DOS 7, поскольку различные функции, представленные в MS-DOS 7.0 и 7.1, не поддерживаются в PC DOS 7.x, и наоборот, например, MS-DOS не поддерживает REXX , а PC DOS 7 и 2000 не поддерживают доступ LBA.Дополнительная недокументированная функция, добавленная в пользовательский интерфейс, — это возможность прямого выхода в командную строку DOS. Нажатие F3 (для этого нет подсказки) приведет к выходу из утилиты восстановления и переходу в командную строку DOS