Все новости
Это интересно
Сейчас читают
Windows
Аватар Evernews Evernews

Windows XP обманывала старые программы, чтобы они продолжали работать

0
0
Поделиться
Телеграфировать

Система могла притвориться другой Windows - и только для определенной версии программы.

Windows XP обманывала старые программы, чтобы они продолжали работать

Ветеран Microsoft Рэймонд Чен рассказал, как Microsoft обеспечивала совместимость Windows XP с приложениями, выпущенными задолго до релиза операционной системы. Оказалось, Windows XP использовала специальную базу проблемных приложений.

Благодаря этому Windows XP могла менять собственное поведение отдельно для каждой программы — вплоть до подмены версии Windows и запуска старого диспетчера памяти, позаимствованного у Windows 95.

Microsoft хранила базу проблемных приложений в Application Compatibility Database — файл назывался Sysmain.sdb. При запуске приложения ОС могла проверять не только имя исполняемого файла, но и его размер, контрольную сумму, версию, дату и содержимое папки. Это позволяло применять исправление к конкретной версии программы.

После обнаружения совпадения Windows подключала программные прослойки между приложением и системными API. Они могли менять параметры вызовов, корректировать ответы Windows или выполнять дополнительный код: например, Win98VersionLie сообщал старому приложению, что оно работает в Windows 98.

Еще одна прослойка, EmulateHeap, заменяла стандартный механизм управления памяти копией диспетчера кучи Windows 95. Это помогало запускать старые программы, зависевшие от особенностей распределения памяти в предыдущих версиях ОС.

Реализовать такую систему решили по коммерческим причинам — как объясняет Чен, одно несовместимое приложение могло сорвать переход целой компании на новую версию Windows. Особенно серьезной проблемой оказались программы, созданные на Visual Basic для конкретных компаний и оставшиеся без поддержки после ухода их разработчиков.

Понравились наши истории?
Скорее добавляйте WTFTime.ru в предпочтительные источники Google — и мы всегда будем рядом.
Читать далее
Уже пробовали взлом Denuvo через гипервизор?
Да, работает
491 голос, 26.2%
Да, не заработало
154 голоса, 8.2%
Нет, страшновато
684 голоса, 36.6%
Лучше купить аккаунт
244 голоса, 13.0%
Только лицензии, только хардкор
298 голосов, 15.9%
Теги: Windows
Аватар Evernews
Evernews
8091 подписчик