Главная - Новичкам
Как установить 32 разрядную программу на 64. Windows XP x64: обещания и реальность

В настоящее время подавляющее большинство продаваемых современных компьютеров и мобильных ПК имеют предустановленную Windows 7 64 bit. Это обусловлено тем, что они комплектуются достаточным количеством оперативной памяти – от 4 Гб и выше. Тем же пользователям, которые только собираются перейти на Windows 7 (как бы удивительно это не звучало в преддверии выхода Windows 8) и приобрести коробочную версию (BOX) определиться с выбором разрядности поможет эта статья, которая составлена в виде вопросов и ответов.

Преимущества 64-битной ОС.

Разрядность может быть 32 или 64 бита, но на экране обе версии Windows 7 выглядят одинаково. Возможности систем также идентичны: в комплекте те же дополнительные программы, например Windows Media Player или Paint. Однако «под капотом» все же есть существенные различия.

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

    Больше оперативной памяти. 32-битные версии Windows могут использовать максимум 4 Гб памяти, причем не вся она доступна программам. Например, 1 Гб занимает сама операционная система, к тому же до 1 Гб (в зависимости от ПК) резервируется для видеопамяти. Так что для самих программ остается не более 2 Гб. Если они «прожорливы», памяти может не хватить.

Для 64-битных версий Windows подобного ограничения нет. Максимальная рабочая память в Windows 7 Home Premium выросла до 16 Гб; версии Professional, Ultimate и Enterprise могут работать даже со 192 Гб. Благодаря большей доступной памяти Windows реже приходится выгружать разделы программ на сравнительно медленный жесткий диск (в файл подкачки), поэтому и компьютер работает быстрее.

Недостатки 64-битной ОС.

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

    Требуется больше памяти. Многие структуры данных в 64-битных программах имеют размер 8 байт (64 бит). Поэтому программы занимают на 10–20% больше места на жестких дисках, чем соответствующие 32-битные версии с 4-байтными структурами. Потребность в оперативной памяти для 64-битного ПО также повышается – примерно на 15 процентов.

Поддерживает ли мой компьютер 64-разрядную версию Windows 7?

Большинство компьютеров, выпущенных за последние три года (то есть, после релиза Windows Vista) совместимы с 64-битной версией Windows 7. Исключение - системы с дешевыми процессорами, не поддерживающими 64-разрядные расширения AMD и Intel. В их числе - линейка процессоров Intel Atom с низким энергопотреблением и ранние модели Intel Core, в частности, Core Duo (не путать с Core 2 Duo). Если вы не знаете, какой процессор установлен на вашем компьютере и поддерживает ли он 64-разрядные операционные системы, воспользуйтесь бесплатной утилитой Intel Processor Identification Utility .

Периферийные устройства

Как и в случае с компьютерами, большинство периферийных устройств, выпущенных с момента релиза Windows Vista, совместимо с 64-разрядной версией Windows 7. А вот с устаревшей техникой это лотерея. Некоторые производители - в особенности поставщики сетевых карт и дисковых контроллеров - уже давно обеспечивают совместимость своих продуктов с 64-разрядными системами, поскольку им приходилось работать еще с 64-битными версиями Windows Server 2002-2003 годов выпуска. Старые устройства, не имеющие непосредственного отношения к дата-центрам (например, нестандартные устройства ввода, мультимедийную аппаратуру, некоторые принтеры), будет сложнее интегрировать, поскольку они разрабатывались в то время, когда 64-разрядные операционные системы для настольных компьютеров были редкостью. Лучше всего заранее проверить, выпустил ли производитель драйвер для 64-битной версии Windows 7, а если нет, существуют ли другие способы решения проблемы.

Можно ли использовать 32-битные драйверы в 64-разрядной версии Windows 7?

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

Доступен ли Режим Windows XP в 64-разрядной версии Windows 7?

Да, Режим Windows XP полностью поддерживается 64-битной версией Windows 7. Более того, применение монитора виртуальных машин (Virtual Machine Monitor, VMM) - в частности, такого продукта, как Windows Virtual PC 7, который лежит в основе Windows XP Mode - это один из немногих способов использования 32-разрядных драйверов устройств в 64-битной версии Windows. Единственная сложность заключается в том, что устройство должно обладать интерфейсом USB. Устаревшие приборы, требующие нестандартных карт расширения или ключей, скорее всего, не будут работать в Режиме Windows XP.

Что такое Режим Windows XP и как его запустить?

Проще всего сказать, что Режим Windows XP - это виртуальная машина под управлением Windows XP SP3, запущенная в Windows Virtual PC 7. Пользователи Windows 7 Professional (Профессиональная), Ultimate (Максимальная) и Enterprise (Корпоративная) могут загрузить ее бесплатно.

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

Важно отметить, что Режим Windows XP позволяет создавать только 32-разрядную виртуальную среду, несмотря на то, что Windows Virtual PC само по себе - 64-битное приложение, запущенное в 64-разрядной версии Windows 7. В среде Windows Virtual PC (которая, по сути, является универсальным инструментом виртуализации с дополнительными функциями для поддержки Режима Windows XP) можно устанавливать 32-разрядные версии Windows XP, Vista или даже Windows 7, но невозможно использовать 64-битные версии ни одной из этих систем.

Можно ли запускать 32-битные приложения в 64-разрядной версии Windows 7?

Да, практически любое 32-битное приложение, поддерживаемое в Windows XP, можно без дополнительных модификаций запустить в 64-разрядной версии Windows 7. Для этого используется технология под неофициальным названием «Win32 on Win64» (коротко WOW), которая преобразует обращения к 32-битному API от исполняемых файлов устаревших программ в обращения к 64-битному API для обработки нативными подсистемами 64-разрядной операционной системы. В результате 32-битные приложения без проблем работают в 64-разрядной версии Windows 7, а благодаря оптимизации нынешнего поколения процессоров Intel и AMD - еще и на полной или почти полной скорости. Редкое исключение из этого правила составляют приложения, использующие один или несколько 32-разрядных проприетарных драйверов устаревших устройств, не имеющие 64-битных эквивалентов.

Стоит отметить, что WOW - не новая концепция. Похожая технология применялась в самых первых версиях Windows NT для поддержки устаревших 16-битных приложений Windows 3.xx.

Почему при установке 32-битных приложений в 64-разрядной версии Windows 7 не появляются новые записи в реестре?

В 64-битных версиях Windows Vista и Windows 7 для запуска 32-разрядных приложений используется технология WOW (см. выше). Она не только преобразует обращения к API, но и изолирует изменения, вносимые 32-битными приложениями, в специальном подразделе реестра на соответствующем уровне.

К примеру, если 32-битное приложение создает подраздел в папке

«HKEY_LOCAL_MACHINESoftware»

этот подраздел автоматически переносится в папку «Wow6432Node» в основном разделе «Software». В этой папке можно найти все подразделы и параметры приложения, автоматически перенаправленные сюда средствами WOW.

Обеспечивает ли 64-разрядная версия Windows 7 выигрыш в производительности?

Все зависит от того, как используется система. Если вы работаете с большими файлами или приложениями, потребляющими много оперативной памяти, 64-разрядная версия Windows, как правило, обеспечивает небольшой прирост производительности по сравнению с 32-разрядной версией на идентичном оборудовании, причем даже при использовании 32-битных приложений. Это связано с тем, что операционная система и драйверы устройств получают доступ к 64-битным расширенным реестрам процессора Intel или AMD, работающего в 64-разрядном расширенном режиме. Кроме того, 64-битная версия Windows 7 поддерживает установку большего объема оперативной памяти, чем 32-битная: 192 Гбайт во всех вариантах, кроме Home, по сравнению с 4 Гбайт во всех изданиях 32-битной Windows 7. Это позволяет значительно расширить возможности компьютера.

Почему 64-разрядная версия Windows использует больше оперативной памяти, чем 32-разрядная?

Любая 64-разрядная операционная система потребляет больше памяти, чем ее 32-разрядный аналог. Это связано с природой 64-битного кода: он использует более крупные внутренние структуры, которые, естественно, занимают больше места и в памяти, и на жестком диске. Поэтому неудивительно, что ISO-образы 64-битных версий Windows Vista и Windows 7 на 50-70% больше, чем образы 32-разрядных версий, а потребление физической памяти после загрузки у них составляет на 20-30% больше.

Имеет ли 64-разрядная версия Windows преимущество перед 32-разрядной с точки зрения безопасности?

Да. Большинство широко рекламируемых инициатив Microsoft по «укреплению» ядра, реализованных в Windows Vista, - например, PatchGuard или аппаратный запрет на выполнение кода (Data Execution Prevention) - актуально только для 64-разрядной версии системы. Кроме того, 64-битные версии Windows Vista и Windows 7 используют только драйверы с цифровыми подписями, что затрудняет для злоумышленников маскировку руткитов и эксплойтов под драйверы уровня ядра.

Можно ли обновить 32-разрядную версию Windows до 64-разрядной Windows 7?

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

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

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

Что такое битность операционной системы и как ее определить

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

Центральный процессор и его разрядность

Центральный процессор – это главный элемент аппаратной части любого компьютерного устройства, представляющий собой интегральную микросхему. Его функцией является выполнение определенных машинных инструкций – программных кодов. Одной из главных характеристик процессора является его архитектура – внутренняя конструкция процессов и совместимость с определенным набором команд.

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

32-разрядная архитектура – история появления

Предыстория появления понятия 32-разрядной версии основана на архитектуре х86, которая впервые была реализована в ранних моделях процессоров компании Intel, устанавливаемых на первых компьютерах IBM PC. Их названия оканчивались на эти две цифры, например, процессоры 8086, 80186, 80286 и т.д. В дальнейшем данная 32-разрядная архитектура была осуществлена в процессорах других производителей и получила общее название Intel Architecture IA-32, т.е. 32-битная версия процессора.

64-разрядная версия – новое расширение 32-битной архитектуры

В 2002 году компанией AMD было разработано 64-битное расширение архитектуры х86 в процессорах семейства К8, которое называлось х86-64 или AMD64 и позволяло выполнять программы в 64-разрядном режиме. Компания Intel также предложила свое название 64-разрядной версии расширения - EM64T. В любом случае данная разработка удваивала разрядность основных внутренних регистров и увеличивала объем адресуемой процессором памяти. Таким образом, 64-разрядная архитектура имеет новые наборы программных кодов, может работать с большим объемом оперативной памяти, что дает значительный прирост производительности, а это, несомненно, прогресс.

Как определить разрядность установленной на компьютере операционной системы

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

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

  • зайти на иконку «Мой компьютер»;
  • правой кнопкой «мыши» выбрать из выпадающего меню вкладку «Свойства».

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

Другой вариант получения этих данных:

  • через кнопку «Пуск» зайти в «Панель управления»;
  • выбрать «Все элементы Панели управления»;
  • кликнуть на вкладке «Система»;
  • получить необходимые сведения.

Здесь же будет отображена информация об объеме оперативной памяти, которая также является определяющей при выборе разрядности ОС.

Разница в работе 32-разрядной и 64-разрядной ОС: преимущества и недостатки

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

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

Кроме того, 64-разрядная система имеет дополнительную защиту «DEP», реализованную на уровне жесткого диска, а не программного обеспечения как у обычных 32-битных. Это дает дополнительный уровень безопасности, но хорошее антивирусное ПО (какое бывает) никогда не помешает.

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

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

Операционную систему какой битности стоит установить на свой компьютер и почему

В розничной продаже сегодня можно найти версии операционной системы обеих типов разрядности. Выбор того или иного вида зависит от аппаратной комплектации компьютерного устройства: архитектуры процессора и объема оперативной памяти. Если на компьютере установлен процессор типа х86-64, а ОЗУ превышает 4 Гб, имеет смысл установить 64-битную ОС, что значительно повысит производительность работы: 64-битное программное обеспечение под управлением 64-разрядной ОС работает значительно быстрее. Это связано с тем, что 32-битная версия может обработать не более 3,2 Гб оперативной памяти, а 64-разрядная теоретически способна переадресовать объем до 4 ТБ. Такая система имеет больше «жизненного пространства» и позволяет управлять большим объемом данных, легко справляется с одновременно работающими программами и быстрее переключается между ними.

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

Инсталлировать 32-битную систему даже при имеющейся оперативке свыше 4 Гб стоит в том случае, если процессор имеет частоту от 1 до 2,4 ГГц: на 64-разрядной ОС он будет работать медленнее.

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

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

И еще один важный момент. Сменить разрядность операционной системы без ее полной переустановки невозможно (потребуется форматирование, вся информация с диска будет удалена). Но в некоторых случаях даже после такой процедуры часть данных с HDD можно восстановить . Если «железо» вашего компьютер позволяет использовать 64-разрядную ОС, и вы решились на ее установку, необходимо заранее позаботиться о драйверах, сделать копии нужных файлов, после чего загрузить расширенную 64-битную версию, а затем заново инсталлировать программы и восстановить файлы. Иногда самостоятельно сделать это сложно, и лучше обратиться к



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

В этой статье приводится обзор подсистемы Windows на Windows 64 (WOW64) и ее методов, которые позволяют Windows поддерживать 32-битные приложения на 64-битной системе.

Примечание : Первая попытка внедрить 64-разрядные системы была достаточно провальной. Жесткие ограничения и отсутствие реальных преимуществ давало о себе знать. На тот момент, даже драйвера под 64-разрядные системы было достаточно сложно найти. Не говоря уже о программах, на которых хоть как-либо была бы заметна разница. Снятие ограничения на 3Гб оперативной памяти, безусловно, сегодня сильное преимущество, но на тот момент это больше напоминало красивый слоган.

Устройство поддержки 32-битных приложений в 64-разрядной Windows

Windows 32 на Windows 64 (WOW64)

WOW64 эмулирует 32-битную Windows

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

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

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

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

Эмулятор WOW64 состоит из следующих 64-разрядных библиотек:

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

  • Wow64.dll - ядро инфраструктуры системы эмуляции. Линкует вызовы в точки входа Ntoskrnl.exe
  • Wow64Win.dll - линкует вызовы в точки входа Win32k.sys
  • Wow64Cpu.dll - переключает процессор между 32-битным и 64-битным режимом
  • Ntdll.dll - 64-битная версия Wow64.

Wow64.dll загружает 32-битную версию (x86) Ntdll.dll и все необходимые 32-битные библиотеки, которые в основном остались без изменений. Однако, некоторые их этих 32-разрядных библиотек все же были изменены, чтобы корректно исполняться в WOW64. Как правило, такие изменения были сделаны из-за того, что они используют оперативную память вместе 64-разрядными компонентами системы

Управление файлами и настройками реестра в WOW64

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

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

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

Файлы 32-разрядных приложений, по умолчанию, устанавливаются в:

  • C:\Program Files(x86)

32-разрядные системные файлы устанавливаются в:

  • C:\WINDOWS\SysWOW64

Для 64-разрядных приложений, файлы устанавливаются в:

  • C:\Program Files
  • C:\WINDOWS\SYSTEM32

Механизм перенаправления WOW64 гарантирует, что запросы от 32-разрядных приложений к каталогам "C:\Program Files" и "C:\WINDOWS\SYSTEM32" будут перенаправлены на соответствующие каталоги для 32-битных версий.

Однако, существует одна проблема с перенаправлением файлов. Пользователи и разработчики должны быть в курсе этой особенности.

Многие 64-разрядные приложения все еще используют 32-битный режим и процедуры. И не учитывают это при создании инсталлятора . Для того, чтобы приложение было установлено правильно. т.е. в "C:\Program Files", программа установки должна сделать системный вызов к операционной системе, чтоб система приостановила механизм перенаправления файлов Wow64. А после установки сделать другой системный вызов, чтобы снова включить перенаправление. Если производить установку без остановки перенаправления, то программа будет установлена в "C:\Program Files (x86)". Классическим примером данной ошибки является 64-разрядная версия FireFox 3.5 под кодовым названием "Shiretoko", которая устанавливается в "C:\Program Files(x86)\Shiretoko". Конечно, Firefox по-прежнему будет нормально функционировать. Единственное, что вы не сможете сделать, так это изменить иконку приложения .

Примечание : Возможно, сейчас эту ошибку в Shiretoko уже исправили. Тем не менее, в ранних версиях было именно так.

Перенаправление реестра

Ключи реестра, специфические для 32-разрядных приложений, будут перенаправлены из ветки:

  • HKEY_LOCAL_MACHINE\Software
  • HKEY_LOCAL_MACHINE\Software\WOW6432Node

Так же, иногда, можно встретить записи реестра в другой ветке (хотя это необычно):

  • HKEY_CURRENT_USER\Software\WOW6432Node

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

Дублирование реестра

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

  1. Установите 32-битное приложение, которое ассоциирует себя с расширением XYZ
  2. Установите 64-разрядную версию приложения, которая связывает себя с расширением файла XYZ
  3. Установите другое 32-битное приложение, которое ассоциирует расширение XYZ с собой

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

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

Существует ряд ограничений подсистемы WOW64

Некоторые, но не все, 64-битные функции доступны 32-разрядным приложениям

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

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

Нельзя смешивать между собой код (Code Injection) 32-битных и 64-битных приложений

В 64-битной ОС Windows нельзя запускать 32-битный код в 64-разрядном процессе, как и нельзя запускать 64-битный код в 32-разрядном процессе. Приложения, использующие инъекции кода (Code Injection) для добавления функциональности в существующие приложения, как правило, будут выдавать ошибки.

Этот факт объясняет, почему большинство 32-битных расширений оболочки Windows не запускаются под 64-разрядной Windows. Большинство таких расширений используют инъекцию кода (Code Injection) для встраивания в проводник Windows

WOW64 не поддерживает 16-разрядные инсталляторы

WOW64 обеспечивает поддержку 16-битных инсталляторов Microsoft, путем замены инсталлятора на совместимую 32-битную версию. Тем не менее, эта поддержка не распространяется на сторонние продукты. Так что, если вам нужно использовать старую программу, то, скорее всего, придется искать эмулятор или портативную версию.


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

Windows Virtual PC

Windows Virtual PC это бесплатное программное обеспечение, которое позволяет запускать несколько операционных систем на одном компьютере. Virtual PC обеспечивает специальную среду исполнения, которая поддерживает устаревшее оборудование и программное обеспечение, которое не будет определяться и запускаться в Windows 7. Все запущенные операционные системы под Virtual PC будут выполняться в виртуальной машине. Это означает, что запущенные операционные системы не будут знать о том, что они запущены в другой системе.

Системные требования и набор функциональности существенно различается между версиями Virtual PC и версиями Windows. Так что, прежде чем пытаться использовать Virtual PC, необходимо проверить, что программа поддерживает как вашу операционную систему, так и те ОС, которые будут на ней запущены. Например, одна из последних версий уже не поддерживает версии Windows ниже Windows XP SP3.

Режим Windows XP (XPM)

Режим Windows XP это конкретная и урезанная реализация Windows Virtual PC, которая поставляется с предустановленной копией Windows XP Professional SP3. Этот режим доступен только в версиях Enterprise, Ultimate и Professional Windows 7 64-бит.

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

Примечание : К некоторым более дательным настройкам режима совместимости все же можно обратиться. Более подробную информацию вы можете найти в обзоре Как запустить старые программы на Windows 7 / Vista? (см. Microsoft Application Compatibility Toolkit).

Мультизагрузка ОС Windows

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

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

Подытоживая сказанное о поддержке 32-бит в 64-разрядной Windows

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

  1. 32-разрядные драйверы устройств
  2. Приложения, которые не могут функционировать без 32-битных драйверов устройств, которые они используют. Яркими примерами являются антивирусы и другие программы для обеспечения безопасности.
  3. Расширения, которые используют инъекцию кода (Code injection). Например, оболочки для проводника Windows

Некоторые приложения смогут запускаться с ограничениями. Это так же касается деинсталляторов , программ для очистки реестра и программ для тюнинга , так как они имеют доступ только к той части реестра, которую им показывает Wow64.

Если вы никак не можете запустить 32-битное приложение, то рассмотрите вариант с виртуализацией или мультизагрузкой нескольких операционных систем.

Какие приложения быстрее 32-битные или 64-битные?

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

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

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

Рейтинг 5.00 (6 Голосов)


Современные компьютеры в большинстве случаев поставляются с установленной операционной системой Windows 10 64 bit. Даже бюджетные модели уже имеют 3 и более Гбайт оперативной памяти, что позволяет задействовать системе всю мощь 64-битной разрядности обработки данных.

Подробнее о преимуществах 64 bit над 32 bit Windows вы можете прочитать в нашей статье « ».

Но, как бы не была привлекательна 64-разрядная система, зачастую пользователь просто не имеет в своем распоряжении 64-битной программы, с которой он давно работает и которая его полностью устраивает, т.к. производитель ее просто не выпустил. Как правило, такие программы устанавливаются в Windows в отдельную папку \Program Files (x86) и их запуск осуществляется в 32-разрядном режиме.

Если в процессе запуска программа выдает ошибку или вообще не запускается, а в Windows 32 bit она работала без проблем, есть шанс запустить ее в специальном режиме, который разработчики назвали «Режим совместимости».

Для этого в Windows 7 щелкните правой кнопкой мыши на ярлыке нужной программы, а затем выберите в контекстном меню «Свойства». В открывшемся окне перейдите на вкладку «Совместимость» и установите флажок «Запустить программу в режиме совместимости с …» и в выпадающем списке укажите вариант системы для запуска.
Нажмите кнопку «OK». После этого попробуйте запустить вашу программу.

Кроме того, в контекстном меню Проводника также имеет смысл попытаться автоматически решить задачу, кликнув по строке «Исправление неполадок совместимости» - в Windows 7.

В Windows 10 при настройке запуска в совместимом режиме на вкладке «Совместимость» имеется отдельная кнопка «Запустить средство устранения проблем с совместимостью». После чего вам предложат либо использовать рекомендованные параметры, либо провести диагностику программы.

Если и после этого программа не запустилась, то стоит подойти к проблеме более основательно и попробовать варианты, указанные на официальном сайте Microsoft .

Более радикальным методом запуска программы является ее установка и использование в виртуальной машине с установленной Windows 7 32 bit. Подробнее, как установить и настроить виртуальную машину вы можете почитать в нашей статье « ».

Вскоре после выпуска Windows XP Professional x64 Edition компания Microsoft попыталась привлечь потребителей к новой версии, предлагая бесплатную программу замены Windows. Владельцы Windows XP Professional могут перейти на версию x64 совершенно бесплатно - только лицензия на 32-битную версию уже будет недействительна.

Но покупать кота в мешке не слишком удобно, поскольку 64-битные драйверы для ряда старых устройств и периферии так и не вышли. После перехода на x64 сканеры и мультимедийные устройства вроде web-камер могут просто не заработать, поскольку мелкие производители и так называемые "no-name" компании часто не торопятся переводить драйверы под Windows XP x64. Одна из причин - ограниченные ресурсы. Другая - побудить потребителя купить новый продукт с драйвером x64, если он этого желает.

Решив многие проблемы с запуском, Windows XP Professional x64 Edition поддерживает 64-битные процессоры. Система позволяет адресовать больше 4 Гбайт системной памяти, а увеличенная разрядность данных позволяет увеличить производительность приложений, перенесённых или написанных для 64-битной Windows.

Однако преимущество памяти может легко стать недостатком, если её у вас мало. Поскольку каждый элемент данных имеет длину 64 бита, 32-битные элементы для наследственных 32-битных приложений будут занимать в два раза больше памяти по сравнению с 32-битной ОС. С этой точки зрения, вряд ли имеет смысл переходить на Windows XP x64 с небольшим объёмом памяти. Если же вы хотите перейти на x64, то мы рекомендуем установить не меньше гигабайта ОЗУ.

Для нашего проекта мы взяли большую часть нашего стандартного тестового пакета (только 32-битные приложения) и сравнили производительность 32-битной Windows XP с Windows XP x64 Edition. Тестовая система Athlon 64 была оснащена двумя 512-Мбайт DIMM DDR400. Мы провели тесты как на самом быстром одноядерном процессоре Athlon 64 FX-57, так и на его двуядерном сопернике Athlon 64 X2 4800+.

Определить, готова ли ваша система для запуска 64-битной Windows, можно по процессору. Что касается AMD, то здесь необходим процессор с поддержкой AMD64 - вроде линейки Athlon 64 или новых Sempron. В случае Intel следует искать чип с включёнными расширениями EM64T (ранее известными как Yamhill или Clackamas) вроде линейки Pentium 4 600, Pentium D, Pentium Extreme Edition или Celeron D, если номер 300-й модели заканчивается на 1 или 6.

С точки зрения набора возможностей, никаких причин переходить на Windows XP Professional x64 Edition нет. Система по ощущениям и работе точно такая же, как и 32-битная Windows. Кроме того, x64 Edition сегодня продаётся, по большей части, в виде OEM-версии вместе с новыми компьютерами, так что купить её в рознице довольно проблематично.

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

Версия x64 может работать с памятью вплоть до 32 Гбайт и запускать одновременно и 64-битные, и 32-битные приложения. Windows x64 использует уровень трансляции под названием WOW64 (Windows on Windows 64), который преобразует 32-битные команды, параметры и данные для 64-битного ядра. Хотя традиционная Windows XP способна адресовать до 4 Гбайт памяти (2 32), для приложений доступно только 2 Гбайт. У версии x64 Edition ситуация иная: для 32-битных приложений доступны все 4 Гбайт памяти. Ещё большее преимущество достигается при использовании 64-битных приложений, поскольку объём адресуемой памяти здесь ограничивается только объёмом установленной ОЗУ.

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

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

На данный момент все процессоры AMD Athlon 64 и ряд настольных чипов Intel для Socket 775 поддерживают 64-битные вычисления. Они включают:

  • Pentium 4 от 630 до 670;
  • Pentium D 820, 830, 840;
  • Pentium Extreme Edition (двуядерный);
  • Celeron D 326, 331, 336, 341, 346, 351, 355.

Если только Mobile Sempron не поддерживает 64-битные вычисления, то Intel не планирует переводить мобильные процессоры на 64 бита в ближайшее время - попросту их архитектура ещё не готова. Как мы ожидаем, процессор Yonah - как одноядерная линейка 7x6, так и двуядерные процессоры, скорее всего, из линейки 800 - выйдет на рынок в начале первого квартала 2006, после чего должна последовать версия Merom с поддержкой 64-битных вычислений.

Режимы 64-битного процессора

AMD Athlon 64 работает с 32-битной Windows в наследственном режиме, при этом расширения x86 64 не используются. Если запустить 64-битную ОС, то процессор AMD64 будет работать в 64-битном Long Mode, а чипы Intel включат режим IA32e. Оба режима, конечно же, одинаковы, поскольку Intel использует технологию AMD64, благодаря лицензионному соглашению с AMD.

В режиме Long Mode процессор способен выполнять 64-битные "родные" инструкции, при этом доступны подрежимы совместимости, в которых процессор становится совместим по двоичному коду с 16-битными и 32-битными приложениями. Хотя сегодня разница и не ощутима, но физическое адресное пространство ограничено у AMD 52 битами, а у Intel - 40 битами. Впрочем, вряд ли это проявит себя в ближайшем будущем, поскольку 40 бит хватает для адресации 1 Тбайт (терабайта) или 1024 Гбайт памяти.

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

Тестовая конфигурация

Процессор
Одноядерный CPU AMD Athlon 64 FX-57 (2,8 ГГц, кэш L2 1 Мбайт)
Двуядерный CPU AMD Athlon 64 X2 4800+ (2,4 ГГц, 2x 1 Мбайт кэша L2)
Память
Платформа AMD (DDR400) 2x 512 Мбайт - DDR400 (200 МГц)
Corsair Pro Series CMX512-3200XL (XMS3208 V1.1)
(CL2,0-2-2-5-1T @ 200 МГц)
Материнская плата
Платформа AMD Asus A8N-SLI Deluxe (Rev. 1.02, BIOS 1007)
Чипсет nVidia nForce4 SLI
Системное аппаратное обеспечение
Графическая карта (PCIe) nVidia GeForce 6800 GT (эталонная плата)
GPU: nVidia GeForce 6800 GT (350 МГц)
Память: 256 Мбайт DDR SDRAM (500 МГц)
Жёсткий диск Western Digital WD740 Raptor
74 Гбайт, кэш 8 Мбайт, 10 000 об/мин
Сеть Встроенная nVidia GbE Ethernet
DVD-ROM Gigabyte GO-D1600C (16x)
Блок питания Tagan TG480-U01, ATX 2.0, 480 Вт
Программное обеспечение
Драйверы чипсета nVidia Forceware 6.53
Драйверы чипсета x64 nVidia Forceware 6.66
Драйвер процессора AMD CPU Driver 1.1.0.18
Графический драйвер nVidia Forceware 71.84
DirectX Версия: 9.0c (4.09.0000.0904)
32-битная ОС Windows XP Professional 5.20.3790,
Service Pack 2
64-битная ОС Windows XP Professional 5.10.2600,
Service Pack 2

Тесты и настройки

OpenGL
Doom III Version: 1.0.1262
1024x768 - 32 bit
Video Quality = High Quality
"custom timedemo"
Graphics detail = High Quality
Wolfenstein Version: 2.56 (Patch V 1.02)
Enemy Territory 1280x1024 - 32 bit
Timedemo 1 / demo demo4
Geometric detail = high
Texture detail = high
DirectX 8
Unreal Tournament 2004 Version: 3204
1280 x 1024 / 32 bit / Audio = off
THG8-assault-single
3DMark2003 Version 3.6.0
1024x768 - 32 bit
DirectX 9
FarCry Version 1.1 Build 1256
1280x1024 - 32 bit
Quality options = low
3DMark 2005 Version 1.0
1024x768 - 32 bit
Graphics and CPU Default Benchmark
Видео
Mainconcept MPEG Encoder Version: 1.4.2
1.2 GB DV to MPEG II
(720x576, Audio) converting
Pinnacle Studio 9 Plus Version: 9.1.2
From: 352x288 MPEG-2 41 MB
to: 720x576 MPEG-2 95 MB
Encoding and Transition Rendering to MPEG-2/DVD
no Audio
Auto Gordian Knot
DivX 5.2.1
XviD 1.0.2
Version: 1.95
Audio = AC3 6ch
Custom size = 100 MB
Resulution settings = Fixed width
Codec = XviD and DivX 5
Audio = CBR MP3, kbps 192
182 MB VOB MPEG2-source
Windows Media Encoder Version: 9.00.00.2980
720x480 DV to WMV
320x240 (29.97 fps)
282 kbps streaming
Windows Media Player 10 Version: 10.00.00.36.46
Аудио
Lame MP3 Version 3.96
Wave 17:14 minutes (182 MB) to mp3
32 - 320 kbit
VBR = level 3
Приложения
Winrar Version 3.42
283 MB, 246 Files
Compression = Best
Dictionary = 4096 kB
3D Studio Max 6.0
Discreet
Characters "Dragon_Charater_rig"
Pixel: 1024 x 768
Rendering Single
Синтетические тесты
PCMark 2004 Pro Version: 1.3.0
CPU and Memory Tests
SiSoftware Sandra Pro Version 2005, SR1
CPU Test = MultiMedia / CPU Arithmetic
Memory Test = Bandwidth Benchmark
Wstream Version: 5
100 Operations with 25 MB file
  • Подобные результаты сравнения между 32-битной и 64-битной версиями одинаковы и для одноядерных, и для двуядерных процессоров.
  • Учитывая отсутствие разницы в производительности 32-битных приложений, вряд ли имеет смысл переходить на Windows XP Professional x64 Edition, если вы, по большей части, работаете именно с ними. Конечно, если вы не желаете почувствовать себя первопроходцем. В принципе, уровень Microsoft WOW64 (Windows on Windows 64) работает хорошо и позволяет выполнять 32-битные приложения под Windows x64 без заметного падения производительности. Собственно, ситуация напоминает нам переход от Windows for Workgroups 3.11 к Windows 95: если в компьютере установлено достаточно памяти, то производительность проблемой не является.

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

     


    Читайте:



    Обновление Android Oreo для Samsung Galaxy (2018)

    Обновление Android Oreo для Samsung Galaxy (2018)

    21 августа 2017 года состоялась долгожданная презентация новой операционной системы компании Google. Платформа получила запоминающееся название -...

    Как узнать скрытый номер

    Как узнать скрытый номер

    Сейчас актуальным вопрос является вопрос со скрытыми номерами. Наверняка, Вам поступали звони от скрытых номеров. Неприятно, правда? Особенно,...

    Тарифный план maxi smart мтс

    Тарифный план maxi smart мтс

    С того момента как тариф «Смарт» стал доступен для активации, он претерпел множество изменений. Они касаются размера абонентской платы, количества...

    Автоматические настройки интернета "Мегафон": инструкция для пользователей

    Автоматические настройки интернета

    Чаще всего ручная регулировка интернета на современных сим-картах не требуется – достаточно включить передачу данных в настройках устройства и...

    feed-image RSS