Как запустить 64 битное приложение на 32 битной системе
Перейти к содержимому

Как запустить 64 битное приложение на 32 битной системе

  • автор:

Запуск 64-битного приложения в 32-битном режиме

Всех с Рождеством! Проблема такая: нужно 64 битное приложение запустить в 32 битном режиме. В частности Virtual Box (именно сам клиент). С официального сайта к большому сожалению нельзя по выбору скачать 32 или 64 битную версию. Система сама вроде бы определяет какую ставить. Может как-то можно задать параметр при установке или уже установленную программу запустить в 32 битном режиме? p.s. винда 64 битная, приложение запускается 64 битное. Но нужно именно 32.

На сайте с 21.03.2007
7 января 2014, 09:33
imisterio:
винда 64 битная, приложение запускается 64 битное. Но нужно именно 32.
Мой мозг — сломан ��
На сайте с 11.11.2012
7 января 2014, 09:45

32 на 64 — можно, а наоборот что-то не слышал. Как правило курьезные вопросы порождает изначально неверный посыл! Вот скажите зачем вам 64 запускать как 32 — просто хочется или есть какое-то разумное обоснование?!

На сайте с 06.09.2009
7 января 2014, 09:49

Мемори:
32 на 64 — можно, а наоборот что-то не слышал. Как правило курьезные вопросы порождает изначально неверный посыл! Вот скажите зачем вам 64 запускать как 32 — просто хочется или есть какое-то разумное обоснование?!

Конечно есть 🙂 Прокси менеджер Socks Escrort проксирует только 32 битные приложения. А мне нужно чтобы весь трафик на виртуалке шел через прокси.

На сайте с 10.11.2008
7 января 2014, 09:50

imisterio:
Всех с Рождеством!
Проблема такая: нужно 64 битное приложение запустить в 32 битном режиме. В частности Virtual Box (именно сам клиент).
С официального сайта к большому сожалению нельзя по выбору скачать 32 или 64 битную версию. Система сама вроде бы определяет какую ставить.
Может как-то можно задать параметр при установке или уже установленную программу запустить в 32 битном режиме?
p.s. винда 64 битная, приложение запускается 64 битное. Но нужно именно 32.

Упрт. VB — кроссплатформенное ПО. Позволяет ставить операционку, разрядность которой совпадает с вашей, либо является меньшей.

imisterio:
Конечно есть Прокси менеджер Socks Escrort проксирует только 32 битные приложения.
А мне нужна чтобы весь трафик на виртуалке шел через прокси.

Ну так и задавай проксирование в конфигах виртуалки, а не через жопу.
На сайте с 06.09.2009
7 января 2014, 09:55

Mad_Man:
Упрт. VB — кроссплатформенное ПО, которое не является только x32, либо только x64. VB позволяет ставить операционку, разрядность которой совпадает с вашей, либо является меньшей.

Ну так и задавай проксирование в конфигах виртуалки, а не через жопу.

Написал же в первом посте, что мне нужна не винда на виртуалке 32 битная, а сам клиент VirtualBox 32 битный. Возможности Виртуалбакса к сожалению не так широки как у сторонних программ.

Можно ли запустить 64-битное приложение в 32-битной системе

Рядовые пользователи не особо задумываются о таких вещах как архитектура процессора и разрядность операционной системы, по крайне мере до тех пор, пока не столкнуться с проблемами совместимости при установке приложений или операционной системы. Так, попытка установить 64-битное приложение на 32-битную систему неминуемо приведет к ошибке «32-bit Windows hosts are not supported…» .

32-bit Windows hosts are not supported

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

Да, такой способ существует, но работать он будет только при одном условии, — если процессор поддерживает 64-разрядную архитектуру.

В Windows 10 и 8.1 проверить разрядность ЦП очень просто, достаточно выполнить в окошке Win + R команду control /name Microsoft.System .

Сведения о компьютере

Обратите внимание на пункт «Тип системы», в котором будет указана разрядность ОС и разрядность процессора. Наличие процессора x64 делает возможной установку 64-битных программ, если ЦП x86 , увы, запускать 64-битный софт вы не сможете даже при всём желании.

Тип системы

Примечание: если ЦП поддерживает архитектуру x64, установка 64-разрядной Windows возможна на ПК даже с 1 Гб оперативной памяти.

Более того, на машине с таким процессором возможна установка только 32-разрядной Windows или другой ОС. Для определения разрядности процессора в Windows 7 и более старых ОС можно воспользоваться встроенной консольной утилитой systeminfo или сторонним приложением CPU-Z.

Выполните в командной строке systeminfo и посмотрите, что указано в пункте «Процессор».

Systeminfo

x64 укажет на 64-разрядный ЦП, а x86 — на старый 32-битный. В CPU-Z на 64-разрядный ЦП укажут маркеры х86-64 или ЕМ64Т в блоке «Instructions», если процессор окажется 32-битным, указанные маркеры будут отсутствовать.

CPU-Z

С разрядностью разобрались, теперь что до установки 64-разрядного софта на 32-битные Windows.

Напрямую установить и запустить 64-битную программу на такую ОС не получится, но вы можете воспользоваться любым гипервизором, тем же VirtualBox, создав в нём 64-битную виртуальную машину и установив на нее 64-разрядную Windows.

VirtualBox

Другое дело, будете ли вы довольны результатом такой виртуализации.

Производительность виртуальной 64-битной OS, даже если это будет XP , окажется более чем низкой, впрочем, возможно именно это заставит пользователя задуматься о необходимости перехода на более производительную 64-битную систему.

Общие сведения о совместимости 32-разрядных программ в 64-разрядных версиях Windows

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

Применимо к следующим выпускам: Windows 10 – все выпуски, Windows Server 2012 R2
Оригинальный номер базы знаний: 896456

Аннотация

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

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

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

Введение

64-разрядные версии Microsoft Windows оптимизированы для запуска собственных 64-разрядных программ. Кроме того, в 64-разрядных версиях Windows для запуска 32-разрядных программ используется подсистема WOW64.

Запуск 32-разрядных программ

Подсистема WOW64 позволяет запускать 32-разрядные программы без изменений в 64-разрядных версиях Windows. В подсистеме WOW64 это осуществляется путем создания 32-разрядной среды в 64-разрядных версиях Windows. Дополнительные сведения о подсистеме WOW64 см. в статье «Запуск 32-разрядных приложений» в разделе «64-разрядная версия Windows» документации по Microsoft Platform SDK. Для просмотра этого документа посетите следующий веб-сайт корпорации Майкрософт: Запуск 32-разрядных приложений.

Рекомендации по производительности программы

Подсистема WOW64 создает 32-разрядную среду в 64-разрядных версиях Windows. Некоторые 32-разрядные программы могут работать в этих операционных системах медленнее, чем в 32-разрядных версиях Windows. Кроме того, некоторые 32-разрядные программы, для которых требуется много памяти, могут демонстрировать повышенную производительность в 64-разрядных версиях Windows. Такое увеличение производительности происходит потому, что 64-разрядные версии Windows поддерживают больше физической памяти, чем 32-разрядные версии Windows.

Дополнительные сведения о различиях в управлении памятью между 64-разрядной и 32-разрядной версиями Windows см. в статье «Виртуальное адресное пространство» раздела «Об управлении памятью» документации по Microsoft Platform SDK. Для просмотра этого документа посетите следующий веб-сайт корпорации Майкрософт: Виртуальное адресное пространство

Ограничения подсистемы WOW64

Подсистема WOW64 не поддерживает следующие программы:

  • Программы, скомпилированные для 16-разрядных операционных систем
  • Программы в режиме ядра, скомпилированные для 32-разрядных операционных систем

16-разрядные программы

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

16-разрядный установщик часто используется для установки и настройки 32-разрядной программы. Кроме того, для правильной работы некоторых 32-разрядных программ требуются 16-разрядные компоненты. Хотя 32-разрядные программы, для которых требуются 16-разрядные компоненты, могут запускаться правильно после их установки, нельзя использовать 16-разрядный установщик для установки 32-разрядной программы. Программы, для которых требуются 16-разрядные компоненты, не могут запускаться в 64-разрядных версиях Windows.

Если 32-разрядная программа, для которой требуются 16-разрядные компоненты, попытается запустить 16-разрядный файл или компонент, 32-разрядная программа зарегистрирует сообщение об ошибке в системном журнале. Затем операционная система позволит 32-разрядной программе обработать ошибку.

Чтобы определить, требуется ли для программы 16-разрядный компонент, установите и запустите программу. Если программа создает сообщение об ошибке, обратитесь к производителю программы для получения обновления, совместимого с 64-разрядными версиями Windows.

32-разрядные драйверы

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

Если 32-разрядная программа пытается установить 32-разрядный драйвер на компьютере под управлением 64-разрядной версии Windows, установка драйвера завершается ошибкой. При таком поведении 64-разрядная версия Windows сообщает об ошибке в 32-разрядную программу.

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

Чтобы определить, требуется ли программе 32-разрядный драйвер, установите и запустите программу. Если программа создает сообщение об ошибке, обратитесь к производителю программы для получения обновления, совместимого с 64-разрядными версиями Windows.

Дополнительные сведения

Перенаправление реестра и файлов

Подсистема WOW64 изолирует 32-разрядные двоичные файлы от 64-разрядных двоичных файлов путем перенаправления вызовов реестра и некоторых вызовов файловой системы. Подсистема WOW64 изолирует двоичные файлы, чтобы предотвратить случайный доступ 32-разрядного двоичного файла к данным из 64-разрядного двоичного файла. Например, 32-разрядный двоичный файл, который запускает DLL-файл из папки %systemroot%\System32, может случайно попытаться получить доступ к 64-разрядному DLL-файлу, который несовместим с 32-разрядным двоичным файлом. Чтобы избежать этого, подсистема WOW64 перенаправляет доступ из папки %systemroot%\System32 в папку %systemroot%\SysWOW64. Это перенаправление предотвращает ошибки совместимости, поскольку требуется, чтобы DLL-файл был специально разработан для работы с 32-разрядными программами.

Дополнительные сведения о перенаправлении файловой системы и реестра см. в статье «Запуск 32-разрядных приложений» в разделе «64-разрядная версия Windows» документации по Microsoft Platform SDK. Для просмотра этого документа посетите следующий веб-сайт корпорации Майкрософт: Запуск 32-разрядных приложений
Подсистема WOW64 перенаправляет 32-разрядные двоичные вызовы без внесения изменений в 32-разрядные двоичные файлы. Однако при выполнении некоторых задач может появиться свидетельство этого перенаправления. Например, если ввести скрипт командной строки в 64-разрядной командной строке, командная строка не сможет получить доступ к 32-разрядным программам в папке «Program Files». Подсистема WOW64 выполняет перенаправление и устанавливает 32-разрядные программы в папке Program Files (x86). Чтобы получить доступ к правильной папке, необходимо изменить сценарий командной строки. Кроме того, необходимо ввести скрипт командной строки в 32-разрядной командной строке. 32-разрядная командная строка автоматически перенаправляет вызовы файловой системы в нужный 32-разрядный каталог.

Чтобы открыть 32-разрядную командную строку, выполните указанные ниже действия:

  • Щелкните Пуск, выберите команду Выполнить, введите %windir%\SysWoW64\cmd.exe, затем нажмите кнопку OK.

Проверка версии

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

Microsoft .NET Framework

Программа, скомпилированная с помощью Microsoft .NET Framework, будет выполняться как 32-разрядная программа в подсистеме WOW64, если выполняются следующие условия:

  • В сведениях о заголовке программы задано битовое значение ILONLY.
  • Программа была скомпилирована с помощью Microsoft .NET Framework 1.1. Если в сведениях заголовка не задан бит ILONLY или программа была скомпилирована с помощью Microsoft .NET Framework версии 2.0, программа будет выполняться как собственная 64-разрядная программа.

OpenGL

64-разрядные версии Windows не включают графический драйвер OpenGL. Обратитесь к производителю устройства для получения драйвера, совместимого с 64-разрядными версиями Windows.

Консоль управления (MMC)

В 64-разрядных версиях Windows используется 64-разрядная версия консоли управления (MMC) для запуска различных оснасток. Однако иногда для запуска оснасток в подсистеме WOW64 может потребоваться 32-разрядная версия MMC. Дополнительные сведения о поведении MMC в 64-разрядных версиях Windows см. в статье «Запуск 32-разрядных и 64-разрядных оснасток в 64-разрядной версии Windows» в разделе «Использование MMC 2.0» документации по Microsoft Platform SDK. Чтобы просмотреть этот документ, посетите следующий веб-сайт корпорации Майкрософт: Запуск 32-разрядных и 64-разрядных оснасток в 64-разрядной версии Windows

Рекомендации по использованию 64-разрядной версии

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

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

Корпорация Майкрософт не предоставляет никаких гарантий и отказывается от явных, подразумеваемых или предусмотренных законодательством гарантий, заверений и условий, включая (но не ограничиваясь только ими) отказ от обязательств, условий или гарантий прав собственности, ненарушение прав интеллектуальной собственности, пригодности для продажи и применимости для определенной цели, гарантии качества в связи с использованием продукта, решения, услуг или других материалов или данных. Корпорация Майкрософт не несет ответственности за решения сторонних разработчиков, упомянутые в данной статье.

Ссылки

Дополнительные сведения о процессоре AMD64 см. на следующем веб-сайте Advanced Micro Devices: Веб-сайт AMD
Контактные данные сторонних организаций предоставлены в этой статье с целью помочь пользователям получить необходимую техническую поддержку. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не дает гарантий относительно правильности приведенных контактных данных сторонних производителей.

Дополнительные сведения о разработке программ для версий Windows Server 2003 и Windows XP на базе процессоров Itanium см. на следующем веб-сайте корпорации Майкрософт: Введение в разработку приложений для 64-разрядной версии Windows на базе процессоров Itanium.

В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких явных, подразумеваемых и прочих гарантий относительно производительности или надежности этих продуктов.

Как запустить 64 битные приложения на 32 битной Windows

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

Подготовка компьютера

Поскольку для использования виртуальной машины может потребоваться от 1 до 2 Гбайт на компьютере-хосте, нужно будет закрыть абсолютно все ненужные в данный момент приложения, чтобы она не испытывала нехватку ресурсов. Также нелишним будет увеличение объема области подкачки, который задается вручную. Минимальный размер – не менее 3 Гбайт, а максимальный – не более 15 Гбайт.

Если есть необходимость воспользоваться браузером и другими прикладными программами, то их нужно запускать на виртуальной машине, а не на хостовом компьютере.

Проверить, поддерживает ли процессор 64-битовую архитектуру, можно с помощью свойств системы, а также приложений AIDA64 или Speccy. В последней программе на это укажет строка Intel 64 для одноименных ЦПУ. Кроме того, объем оперативной памяти на хост-ПК должен составлять не менее 4 Гб, если планируется запуск 64-рязрядных приложений, как будет описано ниже.

Как запустить 64 битные приложения на 32 битной Windows

Создание виртуальной машины

Этот способ — один из наиболее эффективных. В некоторых случаях — это единственная возможность запустить 64-разрядное приложение на системе x86 без ее переустановки.
Для использования на ОС Windows существует несколько видов ПО для виртуализации. Их краткий список приведён ниже:
• Oracle VM Virtual Box. Распространяется бесплатно и позволяет запускать на основном компьютере разнообразные операционные системы. Поддерживает аппаратную и программную виртуализацию. Подходит для рядовых пользователей.
• VMware Workstation. Обладает более широкими возможностями и повышенной надежностью. Распространяется платно. Лучше всего подходит для профессионалов и опытных специалистов.
Создание виртуального ПК для запуска 64-битовых приложений без переустановки системы будет рассмотрено на примере VM VirtualBox.
В окне мастера на первом этапе нужно указать тип виртуальной машины (ВМ) – Microsoft Windows и версию (чаще всего – это 8.1 или 10 — 64 бита). Далее, на следующем шаге следует указать, сколько аппаратной памяти на ПК нужно выделить для ВМ.
К виртуальной машине для запуска 64-битовых приложений предъявляются более жесткие требования, чем обычно. Для ВМ выделяют как можно больше памяти, чтобы игры и программы могли запускаться и работать хотя бы на минимальных настройках. Вначале указывают 1,5 Гбайта. Если VirtualBox по мере использования выдаст сообщение о прерывании работы ВМ из-за нехватки ресурсов хост-компьютера, то выделенный объем уменьшают на 100-200 Мбайт. Если же на момент создания ВМ свободно более 1,5 Гб аппаратной оперативы, то выделенный объем памяти, наоборот, повышают на 100-200 Мб. Не стоит забывать, что для хост-системы нужно оставить запас в 150-250 Мб.
На третьем шаге создают виртуальный фиксированный жесткий диск объемом – не менее 60 Гб. Затем присоединяют образ 64-разрядной системы. Эту операцию можно также сделать позже, во время запуска.
В настройках созданной виртуальной машины задают дополнительные параметры:
• Устанавливают флажок включения PAE/NX.
• Увеличивают количество ядер виртуального ЦПУ до 4, а объем видеопамяти – до 128 Мбайт.
Когда ВМ будет сконфигурирована, можно выполнять запуск и установку гостевой системы. Это может занять от 0,5 до 2 часов в зависимости от производительности основного компьютера. Сразу после завершения установки нужно инсталлировать пакет дополнений гостевой ОС, который скачивают с сайта. Вслед за этим виртуальную машину перезагружают и активируют.

Как запустить 64 битные приложения на 32 битной Windows

Установка 64-разрядных программ

Виртуальная система может получить необходимые файлы несколькими способами:
• Путем скачивания из Интернета (браузер Microsoft Edge для этого подойдет).
• Через дисковод, который можно подключить в меню главного окна.
• Из любой папки на хост-компьютере, которую нужно добавить в раздел общих папок, а затем подключить в гостевой ОС, как сетевой диск.
Вначале на гостевой ОС нужно закрыть все ненужные приложения. Затем приступают к установке требуемой 64-разрядной программы. Когда процесс завершится, нужно проверить, запускается ли приложение, поскольку некоторые из них могут работать некорректно на виртуальных машинах. Пример такой программы — UVScreenCamera.
Если игра запустилась, то нужно выставить минимальные настройки графики и попытаться пройти простое испытание. Картинка должна отрисовываться, по возможности, плавно, а звук – идти без перебоев. В этом случае можно повысить разрешение экрана во время игры, например, с 640 на 480 пикселей до 800 на 600 пикселей.

Заключение

Таким образом, запустить 64-разрядные приложения на 32-разрядной системе Windows становится возможным благодаря технологиям виртуализации, с помощью которых можно создать еще одну ОС нужной архитектуры. Единственный недостаток – неполное использование ресурсов хостового ПК.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *