Microsoft раскрыла код MS-DOS 4.00, в которой впервые появились мышь и графический интерфейс


Microsoft продолжает открывать DOS

Microsoft и IBM открыли исходный код классической операционной системы MS-DOS 4.00. Об этом говорится в сообщении, опубликованном блоге Microsoft Open Source Blog на официальном сайте корпорации.

Код ОС написан на языке ассемблера процессора Intel 8086 и распространяется на условиях свободной лицензии MIT. Помимо кода, доступны бинарные образы установочных дискет, а также документация к системе в формате PDF.

Проект опубликован в соответствующем репозитории на хостинге ИТ-проектов GitHub, который принадлежит Microsoft с 2018 г. Работать с правками к коду в компании не планируют, поэтому просят не присылать запросы на принятие изменений (пул-реквесты), а создавать собственные форки для дальнейшего совершенствования программы.

Классические ПК IBM работали под управлением DOS

В Microsoft утверждают, что перед публикацией кода специалисты компании смогли успешно собрать и запустить ОС на реальном «железе»: IBM PC XT и ПК на одном из первых процессоров Intel семейства Pentium. Сборка также работает в эмуляторах с открытым исходным кодом PCem и 86box.

В 2014 г. Microsoft передала Калифорнийскому музею компьютерной истории исходные коды двух ранних версий операционной системы MS-DOS – 1.25 (1982 г.) и 2.0 (1983 г.)., а позднее выложила их в открытом доступе на GitHub, где они доступный и по сей день.

Чем интересна MS-DOS 4.00

MS-DOS 4.00 вышла в октябре 1988 г. Релиз отличался большим количеством багом и наличием проблем совместимости с существующими приложениями. Значительную часть из них Microsoft устранила с в обновлении MS-DOS 4.01, которое увидело свет уже в декабре 1988 г.

Несмотря на ряд недостатков четвертая версия знаменитой ОС обладала значительным количеством полезных новшеств. В ОС впервые появился простой графический пользовательский интерфейс с поддержкой мыши.

Кроме того, от своих предшественниц эта версия ОС Microsoft отличается наличием поддержки разделов жесткого диска размером больше 32 МБ (но не более 2 ГБ), возможностью буферизации дисковых операций с использованием расширенной памяти EMS (область «верхней» памяти в диапазоне от первых 640 КБ до 1 МБ ОЗУ).

В состав MS-DOS 4.00 также был впервые включен файловый менеджер с псевдографическим интерфейсом DOS Shell, который затем станет неотъемлемой частью дистрибутива ОС вплоть до версии 6.0. Впоследствии, до выхода MS-DOS 6.22, поставлялся на дискете с дополнительным ПО (Supplemental Disk).

Также стоит отметить, что MS-DOS 4.x стала последней версией ОС, установка которой осуществлялась при помощи программы Select. В дальнейшем для этой процедуры использовалась утилита Setup.

Многозадачный вариант ОС

Помимо «классической» однозадачной MS-DOS 4.0, существует вариант ОС с поддержкой вытесняющей многозадачности (MS-DOS 4.0 Multitasking), который, несмотря на нумерацию версии, в действительности построен на кодовой базе MS-DOS 2.0.

В системе были реализованы планировщик задач и такие механизмы межпроцессного взаимодействия как конвейеры и разделяемая память. ОС не умела работать в защищенном режиме, который поддерживали процессоры Intel, начиная с модели 80386, что делало ее не слишком надежной. Кроме того, от предшественниц она унаследовала невозможность работы с пространством оперативной памяти за пределами первых 640 КБ.

Microsoft впоследствии пришлось свернуть этот проект, поскольку он не вызвал интереса у OEM-партнеров компании, в частности, IBM.

В GitHub-репозитории с исходным кодом MS-DOS сегодня можно найти файлы, связанные не только с «классической» четвертой версией ОС, но и с бета-версией ее многозадачного варианта, в том числе образцы документации и бинарники.