Поделиться через


Использование одной базы исходного кода для 64-разрядной версии Windows

64-разрядная версия Windows предназначена для того, чтобы разработчики использовали одну базу исходного кода для своих 32-разрядных и 64-разрядных приложений Windows. В значительной степени это также верно для 32-разрядных и 64-разрядных драйверов Windows.

Для приложений в пользовательском режиме 64-разрядная версия Windows включает слой совместимости Windows on Windows (WOW64), который позволяет 32-разрядным приложениям выполняться (с некоторым снижением производительности) на 64-разрядных версиях Windows. Это делается путем перехвата 32-разрядных вызовов функций и преобразования типов параметров с точностью указателя в типы фиксированной точности по мере необходимости, прежде чем переходить к 64-разрядному ядру. Этот процесс преобразования называется thunking.

Обратите внимание, что thunking выполняется только для 32-разрядных приложений; 32-разрядные драйверы не поддерживаются в 64-разрядных версиях Windows.