В мире открытого программного обеспечения пользователи привыкли к тому, что программы собираются из исходного кода под конкретный дистрибутив, поэтому даже очень старый релиз обычно без проблем запускается на свежей версии системы. В экосистеме Windows всё иначе: исходники прилагаются редко, и на руках остаётся лишь бинарный файл, который заработает только в том случае, если в установленной версии ОС есть нужные ему API. После того как современные выпуски Windows окончательно лишились поддержки 16-битных приложений, возник закономерный вопрос — какое самое старое графическое приложение Windows всё ещё способно запуститься сегодня? Разобраться в этом взялся один из энтузиастов.
Поскольку самый ранний API, поддерживаемый в Windows 11, относится к 32-битной архитектуре, поиски сразу вели в двух направлениях: либо к первому выпуску Windows NT — прямому предку Windows 11, — либо к расширению Win32s для Windows 3.1. Так, версия пасьянса FreeCell под Win32s от 1993 года запускается без всяких проблем. Но это ещё не конец пути.
Обратная совместимость долгие годы оставалась одним из ключевых принципов Microsoft, и именно благодаря ей многие древние программы продолжают работать спустя десятилетия. Однако у этой совместимости есть жёсткая граница: отказ от 16-битного кода провёл черту, за которой часть наследия прошлого века окончательно теряет совместимость с актуальной системой.
Самый ранний подходящий бинарник следует искать где-то среди предрелизных сборок Windows NT 3.1. Здесь, однако, кроется подвох: ранние API этой версии оказались несовместимы с более поздними. Через множество аварийно завершавшихся программ исследование привело к приложению CD-плеера от ноября 1992 года — оно заработало лишь потому, что обращается к DLL-библиотеке, которая присутствует в системе по сей день. Любопытно, что для запуска понадобилась ещё одна библиотека, эмулирующая сам привод компакт-дисков: красноречивое свидетельство того, как изменился мир ПК. Когда-то CD были вершиной технологий хранения данных, а сегодня дисковод найдётся далеко не у каждого.
Но и на этом история не заканчивается. Хотя в Windows 11 нет виртуальной DOS-машины (VDM) для запуска 16-битных приложений, существует реализация WINE VDM, решающая эту задачу. С её помощью удалось запустить игру Reversi из Windows 1.01, выпущенной ещё в ноябре 1985 года, прямо в Windows 11. Так что у вашего древнего софта, возможно, ещё есть шанс на вторую жизнь.
Эксперименты подобного рода — не только развлечение для любителей ретрокомпьютинга. Они наглядно показывают, насколько глубоко в фундаменте современных операционных систем лежат архитектурные решения тридцати- и сорокалетней давности, и напоминают, что цифровое наследие стоит сохранять, пока для него ещё находятся работающие лазейки.














