Как запустить файл 32 бит на 64. Как узнать, поддерживает ли процессор x64

Некоторые пользователи ищут ответ на вопрос о том, как перейти с 32 на 64 бита в операционной системе Windows. Дело в том, что начиная с Windows 7, стала выпускать редакции системы одновременно в 32 bit (x86) и 64 bit (x64) версиях операционной системы.

Ранее операционная система Windows имела 32 битную разрядность. Постепенно, с развитием архитектуры процессоров, появилась возможность поддержки 64 битной разрядности системы (начало было положено с выпуска Windows XP Professional x64 Edition).

В настоящее время, производители компьютеров (настольных компьютеров, ноутбуков), в основном, устанавливают на выпускаемые устройства 64 разрядные операционные системы Windows, потому что все современные центральные процессоры поддерживают x64 наборы инструкций.

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

Основные различия между 32 битной Windows и 64 битной Windows

Операционная система Windows имеет две версии разрядности: 32 битную и 64 битную, которые имеют обозначения: 32-bit (x86). 64-bit (x64).

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

Главным отличием, кроме повышения общей производительности, является поддержка работы с определенным количеством памяти. В 32 битной версии Windows, из-за особенности архитектуры системы, используется только менее 4 ГБ оперативной памяти, установленной на компьютере.

Если на компьютере с Windows x86 установлено до 3 ГБ оперативной памяти, операционная система использует всю доступную память. Если, на ПК установлена память объемом в 4 ГБ, то система будет использовать объем оперативной памяти размером, чуть более 3 ГБ. Даже при наличии общей оперативной памяти (ОЗУ), размером в 6 ГБ, 8 ГБ и т.д., в Windows 32-bit, все равно будет доступно только менее 4 ГБ памяти.

В Windows с разрядностью 64 бита эта проблема не существует, потому что подобная система поддерживает объем оперативной памяти (до 16 Тб), достаточный для любой современной конфигурации компьютера.

Работа приложений в операционной системе Windows разного типа (х86 и х64) имеет отличия:

  • в Windows x64 можно установить 64 и 32 битные программы (64 битные приложения, по умолчанию, устанавливаются в папку Program Files, а 32 битные в папку Program Files (x86) на системном диске);
  • в Windows х86 устанавливаются только 32 битные программы, а установка 64 битных приложений не поддерживается.

Большая часть программ, созданных для Windows, поддерживает 32 битную разрядность. Эти приложения можно установить на компьютер с любой разрядностью, они будут работать, при условии поддержки программой определенной версии Windows (Windows 10, Windows 8, Windows 7 и т. д.).

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

Имея в виду эти соображения, осталось узнать, как перейти с 32 бит на 64. Но не все так просто.

Необходимое условие для перехода Windows с 32 bit на 64 bit

Можно ли изменить 32 битную систему на 64 битную Windows? Да это возможно, но при смене разрядности системы, есть нюансы. Без соблюдения некоторых условий сменить 32 бита на 64 битную систему не получится.

Главное условие для перехода на другую разрядность системы: поддержка центральным процессором (ЦП), установленным на компьютере, 64 битных инструкций. Без соблюдения этого условия, установка 64 разрядной Windows на ПК будет невозможна.

Как определить разрядность операционной системы Windows, какую разрядность поддерживает процессор, установленный на компьютере? Проще всего это определить с помощью операционной системы. Для определения параметров процессора в плане поддержки 64 битной разрядности, можно воспользоваться сторонними приложениями, например, и т. д.

Основные отличия типа процессоров, в зависимости от поддержки инструкций для соответствующей разрядности (х86 и х64):

  • Процессор x64 - поддерживается установка на компьютер 64 и 32 разрядной Windows.
  • Процессор x86 - на компьютер можно установить только 32 битную версию Windows.

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

Для установки 64 разрядной Виндовс на компьютере должно быть минимум 2 ГБ оперативной памяти.

Узнать тип процессора на своем компьютере можно по инструкции ниже для операционных систем Windows 10, Windows 8.1 (Windows 8), Windows 7.

Как узнать поддержку процессором инструкций x64 в Windows 10

Для того, чтобы узнать поддерживает ли процессор, установленный на компьютере, 64 битные инструкции в операционной системы Windows 10, выполните следующие шаги:

  1. На Рабочем столе кликните по значку «Этот компьютер» (Мой компьютер). Если на Рабочем столе вашего компьютера данного значка нет, с помощью способа верните значок «Мой компьютер» на Рабочий стол.
  2. В открывшемся контекстном меню выберите «Свойства».
  3. В окне «Система» (Просмотр основных сведений о вашем компьютере), в разделе «Система», в параметре «Тип системы» вы увидите тип разрядности операционной системы и поддержку типа инструкций процессора.

В данном случае, обозначение: «процессор х64», означает, что центральный процессор поддерживает установку 64 разрядной операционной системы (на компьютере установлена Windows 10 64-bit).

Как узнать поддержку процессором 64 разрядной Windows 8.1 (Windows 8)

В операционной системе Windows 8.1 или Windows 8, проделайте следующее:

  1. Подведите курсор мыши к правому нижнему углу экрана, выберите «Параметры».
  2. В окне «Система» отобразится «Просмотр основных сведений о вашем компьютер». В параметрах «Система» => «Тип системы», указаны разрядность Windows и какую разрядность поддерживает центральный процессор.

На данном компьютере установлена 32 разрядная ОС Windows 8.1, на ПК имеется процессор с поддержкой x64 инструкций. На эту систему можно установить 64 разрядную Windows 8.1.

Как узнать имеет процессор 64 разрядную поддержку в Windows 7 или нет

В операционной системе Windows 7 выполните следующее:

  1. Щелкните правой кнопкой мыши по значку «Компьютер» (Мой компьютер) на Рабочем столе.
  2. В контекстном меню выберите «Свойства».
  3. В окне «Просмотр основных сведений о вашем компьютере» нажмите на «Индекс производительности Windows».

  1. В окне «Оценка и увеличение производительности компьютера» нажмите на «Отображение и печать подробных сведений о производительности компьютера и системе».
  2. В открывшемся окне «Счетчики и средства производительности», в разделе «Дополнительные сведения о компьютере», в параметре «Система», напротив пункта «64-разрядная поддержка», будет написано «Да» или «Нет».

На компьютере стоит 32-разрядная операционная система, процессор поддерживает 64 разрядные ОС. Этот компьютер поддерживает переход на Windows 7 64-bit.

Плюсы и минусы перехода на 64 разрядную Windows

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

Основные преимущества 64 битной операционной системы:

  • Использование всего объема оперативной памяти (более 4 ГБ), установленной на компьютере.
  • Более высокая скорость работы системы и программ.

Основные недостатки 64 битной операционной системы:

  • Потребление системой и приложениями большего объема оперативной памяти.
  • Отсутствие x64 драйверов для устаревшего оборудования.

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

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

Пользователям компьютеров с устаревшим железом, с памятью в 2-4 ГБ нужно все тщательно взвесить. В большинстве случаев, играть в современные игры или пользоваться «тяжелыми» программами не получится из-за недостатка памяти. Система и работающие программы займут больше места в памяти компьютера, чем аналогичные приложения в 32 битной Windows. Слабый процессор не даст положительного эффекта. В некоторых случаях, 64 разрядная система будет работать медленнее на компьютере, чем 32 битная Windows.

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

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

Как перейти с 32 бит на 64 битную Windows

Для перехода на 64 разрядную систему есть только один вариант: чистая переустановка Windows с потерей данных на системном диске. Порядок действий следующий:

  • Скачайте на компьютер операционную систему Windows, 64 битной разрядности. Прочитайте , откуда можно скачать оригинальный образ Windows 10, Windows1, Windows 7.
  • Создайте загрузочную флешку или запишите образ системы на DVD диск.
  • Включите компьютер, перед загрузкой системы, войдите в BIOS (UEFI), выберите для загрузки загрузочный носитель с Windows.
  • Установите операционную систему на компьютер.
  • После завершения установки системы, установите необходимые драйвера.
    • В одном из окон установки необходимо выбрать подходящую редакцию Windows подходящей разрядности (сейчас распространены мультиобразы Windows, включающие в одном образе системы разные редакции, разной разрядности).
    • В окне «Выбор типа установки» следует выбрать «Выборочная: только установка Windows (для опытных пользователей)» в Windows 10 или в Windows1, или «Полная установка (дополнительные параметры) в Windows 7.

    После завершения установки, на компьютере появится Windows 10 64-bit.

    Выводы статьи

    Существует возможность поменять 32 разрядную операционную систему на 64 разрядную Windows, в пределах одной редакции. Для успешного перехода на компьютере должен быть установлен процессор, поддерживающий инструкции x64, достаточный объем оперативной памяти.

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

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

Почему 64-битные игры не запускаются?

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

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

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

Как запускать 64-битные игры?

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

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

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

В заключение

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

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

Для пользователей 32-битной ОС иногда возникает необходимость использовать программные средства, предназначенные только для 64-битной ОС. Что же делать, если пользователь не готов отказаться от 32-битной ОС как основной рабочей системы?

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

В Mac OS X ядро является гибридным. Оно позволяет одинаково работать любым приложениям в независимости от того, являются ли они 32- или 64-битными. Единственное отличие гибридного ядра от полноценного 64-разрядного - это невозможность использовать в системе больше 32 ГБ оперативной памяти. Поэтому на данный момент нет совершенно никакой разницы между загрузкой в 32- и 64-битном режимах. А вот в будущем разница обязательно появится по мере увеличения объемов использования ОЗУ и появления новых технологий.

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

Виртуализация


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

WoW64 (Windows-on-Windows 64-bit) - подсистема операционной системы Windows, позволяющая запускать 32-битные приложения на всех 64-битных версиях Windows.

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

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

Накладные расходы

Существуют различия WoW64 в зависимости от архитектуры процессора. Например, 64-битная версия Windows разработанная для процессора Intel Itanium 2 использует WoW64 для эмуляции x86 инструкций. Такая эмуляция весьма ресурсоемка по сравнению с WoW64 для архитектуры Intel 64 , так как происходит переключение с 64-битного режима в режим совместимости при выполнении 32-битных программ.

WoW64 на архитектуре Intel 64 (AMD64 / x64) не требует эмуляции инструкций. Здесь подсистема WoW64 эмулирует только 32-битное окружение за счет дополнительной прослойки между 32-битным приложением и 64-битным Windows API. Где-то эта прослойка тонкая, где-то не очень. Для средней программы потери в производительности из-за наличия такой прослойки составят около 2%. Для некоторых программ это значение может быть больше. Два процента - это немного, но следует учитывать, что 32-битные приложения работают немного медленнее под управлением 64-битной операционной системы Windows, чем в 32-битной среде.

Компиляция 64-битного кода не только исключает необходимость в WoW64, но и дает дополнительный прирост производительности. Это связано с архитектурными изменениями в микропроцессоре, такими, как увеличение количества регистров общего назначения. Для средней программы можно ожидать в пределах 5-15% прироста производительности от простой перекомпиляции.

Преимущество 64-битной среды для 32-битных программ

Из-за наличия прослойки WoW64 32-битные программы работают менее эффективно в 64-битной среде, чем в 32-битной. Но все-таки простые 32-битные приложения могут получить одно преимущество от их запуска в 64-битной среде. Вы, наверное, знаете, что программа, собранная с ключом /LARGEADDRESSAWARE:YES, может выделять до 3-х гигабайт памяти, если 32-битная операционная система Windows запущена с ключом /3gb. Так вот, эта же 32-битная программа, запущенная на 64-битной системе, может выделить почти 4 GB памяти (на практике около 3.5 GB).

Перенаправления

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

Подробнее с механизмами перенаправления файловой системы и реестра можно познакомиться в разделе MSDN "Running 32-bit Applications ".

Почему невозможно использовать в 64-битной программе 32-битные DLL? Можно ли это обойти?

Загрузить 32-битную DLL из 64-битного процесса и выполнить код из неё невозможно. Невозможно в силу дизайна 64-битных систем. В принципе, невозможно. Не помогут ни хитрости, ни недокументированные пути. Для этого нужно загрузить и проинициализировать WoW64, не говоря уже о структурах в ядре. Фактически нужно будет на лету превратить 64-битный процесс в 32-х битный. Подробнее эта тема рассмотрена в посте "Недокументированные функции; Загрузка 32-х битных DLL в 64-х битный процесс ". Единственное, что можно порекомендовать, - это создание суррогатного процесса и взаимодействия с ним посредством технологии COM. Об этом рассказывается в статье "Accessing 32-bit DLLs from 64-bit code ".

А вот загрузить ресурсы из 32-битной DLL в 64-битный процесс совсем несложно. Это можно сделать, если при вызове LoadLibraryEx указать флаг LOAD_LIBRARY_AS_DATAFILE.

Постепенный отказ от поддержки 32-битных программ

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

Многие администраторы знают про относительно новый режим установки и работы серверной версии операционной системы под названием Server Core. Это тот режим, о котором участники войн "Windows vs Linux" говорили очень давно. Одним из аргументов сторонников использования Linux на сервере была возможность установить серверную ОС без графического интерфейса (GUI). Но вот и в Windows Server появилась такая возможность. Установка в этом режиме позволяет получить только командную строку без пользовательского интерфейса.

Эта возможность (установка Server Core) появилась в Windows Server 2008. Но в Windows Server 2008 R2 появилось нововведение, приближающее 64-битное будущее. При установке Windows Server 2008 R2 (Server Core) поддержка запуска 32-битных приложений стала опциональной . Причем по умолчанию эта поддержка выключена. И при попытке запуска 32-битного приложения в режиме Server Core пользователь получит сообщение о невозможности запуска. Конечно, можно добавить поддержку 32-битных программ:

start /w ocsetup ServerCore-WOW64

В обычном (Full Installation) режиме 32-битные приложения по умолчанию запускаются, а вот в Server Core уже нет.

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

Дополнительная информация

Интересным источником информации по системе WoW64 является блог Алексея Пахунова: http://blog.not-a-kernel-guy.com/ . Алексей является сотрудником компании Microsoft и принимает непосредственное участие в разработке подсистемы WoW64.

Большинство современных игр, таких как Overwatch, Hurtworld или Subnautica, могут работать исключительно на 64-разрядных операционных системах. Создателям этих программ просто не выгодно делать разные варианты приложений под 32- и 64-bit. Хотя обе версии достаточно распространены. Конечно, перейти на x64 достаточно легко. Но что делать, если вы не собираетесь переставлять ОС и при этом хотите посмотреть на популярную игру? Узнайте, как на 32-битной системе запустить Subnautica и другие 64-разрядные программы.

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

Почему же программы, рассчитанные на 64 bit, не получается открыть на 32 bit? Чем эти версии так отличаются, раз на них не работают одни и те же приложения? И если Overwatch можно запустить в x64, почему в него нельзя поиграть на таком же компьютере, но с x32?

Ультрасовременные облачные сервисы расширяют наши возможности

Работа с 64-разрядными приложениями на системе с 32 bit вполне возможна. Но нужно устанавливать дополнительный софт или, вообще, переходить на удалённый сервер. Сделать это достаточно сложно. Если вы хотите полноценно играть в Overwatch, Hurtword и другие популярные игры, лучше установить x64 ОС. Так не возникнет проблем с совместимостью. И не надо будет ничего настраивать.