Привет, Хабр! Это Антон Комаров из МТС Диджитал. Сегодня снова немного ностальгии — поговорим о Desktop2.

Представьте, что на дворе середина 90-х. Вы щелкаете переключателем питания на своем ПК с процессором Intel 486DX2. Раздается жужжание шпинделя жесткого диска, дисковод весело подхрюкивает шаговым двигателем, а на дисплее появляется его величество MS-DOS. Просто черный экран и строка, куда можно вводить команды. Понятное дело, что на этом далеко не уедешь, поэтому у многих пользователей стоял какой-нибудь Norton Commander. А чтобы насладиться настоящим графическим интерфейсом, можно было приобрести одну из первых версий Windows — например, 3.11.

То время давно прошло, и вот только сейчас, изучая различные материалы в сети, я наткнулся на интересную графическую оболочку тех времен. Называлась она Desktop2 и была создана немецким программистом Феликсом Риттером (Felix Ritter) в 1998 году. Детали — традиционно под катом.

Кто был первым

Сейчас достаточно сложно разобраться в том, какая компания впервые взяла на вооружение графический интерфейс пользователя. Кто-то может сказать, что это Xerox, внедривший GUI в компьютере Xerox Alto. Другие скажут, что тренд был задан Apple Lisa. Третьи вспомнят про AmigaOS, созданную для ПК Amiga. Большинство разработчиков операционных систем того времени не просто заимствовало саму концепцию графического интерфейса, но и делало собственные реализации отдельных элементов, которые подсмотрели у конкурентов.

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

Но Microsoft были вовсе не единственной компанией, которая создала графический интерфейс для MS-DOS. Другие разработчики, видя вполне конкретный успех Windows 3.XX, пробовали создавать альтернативные оболочки. Об одной из них сегодня пойдет речь.

Установка

Это сейчас мы пользуемся широкополосными соединениями, позволяющими скачивать гигабайты данных за пару минут. Ну или вместительными дисковыми накопителями, которые измеряются десятками терабайт. Раньше же софт часто распространялся на дискетах. Например, дистрибутив MS-DOS 6.22 занимал 3 стандартных дискеты 1.44”, а Windows 3.11 — целых 8 дискет. Инсталлятор Desktop2 помещался всего на одном гибком диске, занимая менее 800 Кб. Неплохо для полноценной графической оболочки с кучей программ, о которых расскажу дальше.

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

Могу посоветовать драйвер из коллекции ресурса old-dos.ru, который отлично определяет стандартные мыши от Microsoft, а также эмулированные в том же PCem. Когда все приготовления завершены, переходим на дискету с инсталлятором и запускаем его с помощью INSTALL.BAT:

Запущенный инсталлятор
Запущенный инсталлятор

Здесь предлагается указать место на диске, куда будут скопированы файлы оболочки. Можно поставить галочку и прописать вызов команды DBD для старта из DOS, чтобы не приходилось вручную вызывать исполняемый файл по его полному пути. После нажатия кнопки Start начнется копирование. Каждая стадия установки визуализируется отдельными статус-барами:

Установка в процессе
Установка в процессе

Первый запуск

Сразу после завершения установки инсталлятор автоматически запустит Desktop2, и мы увидим главное окно оболочки. Особенно забавно выглядит серый сильно пьющий колобок с красным носом:

Главное окно оболочки
Главное окно оболочки

В Desktop2 есть два основных режима: Program Manager и File Manager. То, что мы видим на экране по умолчанию, — это Program Manager с рабочим столом, пока что пустым. Второй режим — File Manager. Он позволяет выполнять множество действий над файлами и директориями:

Файловый менеджер
Файловый менеджер

Чувствуется, что создатель оболочки по достоинству оценил преимущества двухпанельных файловых менеджеров, вроде Norton Commander, и не стал изобретать велосипед. Вместе с этим четко обозначено, что левая панель — это источник, а правая — приемник. Это позволяет избежать путаницы, вместо банальных Left и Right.

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

Дополнительное меню
Дополнительное меню

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

Утилиты и программы

Любопытно и то, что в Desktop2 есть возможность увидеть, сколько места занято на том или ином дисковом накопителе. А еще — произвести необходимые действия, например, отформатировать или проверить на ошибки:

Информация о дисковом накопителе
Информация о дисковом накопителе

Еще один необычный пункт — Freshen. Дело в том, что все дискеты со временем теряют магнитный заряд и возникает риск потери данных. Так что вы могли скопировать содержимое на жесткий диск, а затем дать команду Freshen, которая несколько раз перезапишет каждый сектор и тем самым ее «освежит», восстановив намагниченность. Утилита считывает каждый перезаписанный сектор и показывает детальную статистику по каждому из них. Потом можно будет отформатировать дискету и вновь записать данные.

Помимо этого, в комплекте с Desktop2 поставлялся удобный текстовый редактор:

Выглядит весьма недурно. Он еще и предоставляет расширенные функции редактирования, такие как X-Edit и Prg-Mode. Первая позволяет копировать и вставлять текст, используя левую и правую клавишу мыши, а вторая автоматически делает отступы строк. Там же есть возможность поиска текста и перехода к нужному участку файла по номеру строки.

Закрыв редактор, я на несколько минут отошел от компьютера, а когда вернулся, то увидел следующую забавную картину:

Хранитель экрана Puzzle
Хранитель экрана Puzzle

Это сейчас хранители экрана не столь популярны. Раньше, во время господства ЭЛТ-мониторов, такими программами снабжалась фактически любая операционная система с GUI. Чтобы кинескоп не выгорал. В Desktop2 экран разбивался на множество фрагментов, которые постоянно перемещались и не давали выгорать люминофору экрана. Помимо основного хранителя Puzzle, есть еще один, представляющий собой разноцветные полосы, рандомно скачущие по экрану:

Хранитель экрана Lines
Хранитель экрана Lines

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

Скринсейвер Bezier из Windows 95
Скринсейвер Bezier из Windows 95

Потом я решил залезть в пункт настроек:

Окно настроек
Окно настроек

Тут нужно обратить внимание на цвет кнопки OK. Если бы автор имел отношение к китайской культуре, это было бы еще логично. Но тут прям вот иллюстрация для любого начинающего UI-дизайнера в стиле «как делать не надо».

Сами настройки достаточно скудные. Можно изменить скорость перемещения указателя мыши, цвет рабочего стола, выбрать тот самый хранитель экрана или задать текущую дату/время. Помимо этого, есть возможность установить, какое приложение (File Manager или Program Manager) станет открываться по дефолту.

Еще раз взглянув на кнопку Exit, я ощутил дежавю. Где-то я это точно видел. Такое впечатление, что автор посмотрел на карточные рубашки пасьянса в Windows 3.11 и решил сотворить нечто подобное:

Карточные рубашки из Windows 3.11
Карточные рубашки из Windows 3.11

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

Окно сохранения
Окно сохранения

Подводим итоги

Хорошенько изучив Desktop2, я понял, что у этой оболочки есть много плюсов, но немало и минусов. Во-первых, это именно оболочка, а не полноценная операционная система. Она не привносит в работу ничего сверх того, что умеет MS-DOS. Да, она позволяет удобно управлять файлами, находить нужную информацию и легко править какой-нибудь конфиг. В ней есть куча полезных утилит, помогающих быстро отформатировать дискету, послушать музыкальный компакт-диск или запустить нужную программу, просто щелкнув мышкой. Это очень круто, но с другой стороны, Windows 3.11 такое тоже умела.

Во-вторых, это изначально коммерческий продукт, который планировалось продавать. Увы, но этой планки Desktop2 так и не достиг. С выходом Windows 95 стало ясно, что время DOS стремительно истекает. А на фоне его, отточенного по меркам тех лет графического интерфейса, такие продукты, как Desktop2, сразу выглядят архаичными. Это привело к тому, что автор открыл исходный код и сделал его доступным для всех желающих.

В-третьих, дизайн явно не для ежедневного использования. Мне понравился и текстовый редактор, и даже файловый менеджер, но что уж греха таить — Norton Commander для старых компьютеров как-то привычнее. Это, кстати, привело к тому, что я до сих пор пользуюсь Far Manager, который для меня по-прежнему остается эталоном.

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

А вы когда-нибудь работали с такой оболочкой для DOS? Жду вас в комментариях.

Комментарии (11)


  1. degistration
    16.09.2024 14:35
    +1

    А вы когда-нибудь работали с такой оболочкой для DOS?

    видя уже существующее все боятся написать что-нибудь подобное из статьи - единственное: на свой vc с длинными имена решаются


  1. saboteur_kiev
    16.09.2024 14:35
    +3

    Первые версии Windows не были операционными системами в привычном понимании. Их можно назвать оболочками, значительно расширяющими возможности MS-DOS.

    Нет, это все-таки была именно операционной системой.
    Да, основанной поверх ДОС, обратно совместимая с ним архитектурно. Но это была именно платформа, под которую можно было писать софт, используя функции ОС, обращаться к устройствам через вызовы функций ОС и так далее.

    Время было такое, что переписать весь софт под новую системы как бы нельзя за короткое время, а без софта, ОС никому не нужна. Поэтому первые версии Win и вся линейка 9x были почти полностью обратно совместимы с DOS, но предлагали уже и свой win32 подход.

    Если ты писал что-то уже под Windows, то это уже не было софтом, который написан под дос с расширениями, нативные приложения написанные под win32 в будущем уже спокойно могли запускаться под WinNT без DOS вообще.

    Вот например Андроид - это же не оболочка для Линукс, это отдельная ОС которая базируется на ядре Линукс, но не является Линуксом.


    1. axe_chita
      16.09.2024 14:35
      +3

      Windows до 9х были именно графическими оболочками DOS с описанным API, которым для работы нужна была настроенная среда DOS, с загруженными драйверами DOS Himem и EMM386. Так же Window до 9х могли работать под управление OS/2 где они работали устойчивее чем под DOS, а её падение не приводило к перезагрузке всей машины.


      1. CrashLogger
        16.09.2024 14:35
        +3

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


        1. axe_chita
          16.09.2024 14:35
          +3

          Только этот доступ к памяти обеспечивают драйвер DOS. Как в прочем доступ к файлам на диске обеспечивает сама DOS.


          1. UranusExplorer
            16.09.2024 14:35

            Как в прочем доступ к файлам на диске обеспечивает сама DOS.

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

            Upd. Невнимательно прочитал, я говорил про Win9x, а не про "до".

            Впрочем, в 3.11 уже точно был 32 Bit Disk Access и 32-bit file access для доступа к диску и ФС в обход DOS.


      1. Merrynose
        16.09.2024 14:35

        А можете дать ссылку на какое-то общеупотребимое определение ОС и оболочки ОС, на которое вы опираетесь?


        1. OlegZH
          16.09.2024 14:35
          +1

          Тут надо понимать, что в оперативную память загружалась именно MS-DOS, у которой были свои ограничения на физическую память. Что-то вроде 64K (из первого мегабайта оперативной памяти, которой могло быть больше, чем 64K). А затем запускался файл WIN.COM, который надстраивал над этим всем делом защищённый режим, с его виртуализацией памяти.


          1. S_gray
            16.09.2024 14:35

            Вообще-то, в оперативную память загружается любой код, если его нужно выполнить (ну, если забыть о современных видеокартах со своими процессорами, или какой-нибудь экзотике). И не 64 килобайта, а 640 (хотя были и машины с 512 кБ), а для того, чтобы пользоваться памятью до 1 мБ (там была какая-то специфика с HMA, позволявшая адресоваться к чуть большему объему, но для простоты можно принять 1) ДОСу нужен был специальный драйвер.


        1. S_gray
          16.09.2024 14:35

          Спорить можно долго, только вот это была графическая оболочка, никто ее тогда не считал операционной системой. По сути, это была программа, запускаемая из ДОСа и при выходе из неё вы опять оказывались в ДОС. Без ДОС ее нельзя было запустить (под полуосью там, скорее всего, был режим эмуляции ДОС, в котором она и запускалась, как любая другая ДОС программа). Не, если, конечно, очень хочется, кто-то может её считать осью. Но Майкрософт это не подтвердит - а им виднее, полагаю. А то так можно любой браузер в операционные системы записать...


      1. UranusExplorer
        16.09.2024 14:35
        +1

        EMM386

        Вообще не нужно было. Более того, насколько я помню если был EMM386, то для винды это было только во вред (доступная память жёстко ограничивалась 64 мегабайтами , а то и меньше)

        Upd. Невнимательно прочитал, я говорил про Win9x, а не про "до". Впрочем, даже в Win 3.1x EMM386 использовался для совместимости с досовским софтом, а в 386 Enhanced режиме был не нужен и наоборот приостанавливался.