Технологии

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 на чистый диск, а затем перенести в новую операционную систему все свои данные и приложения.


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

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

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

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

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

Существуют различия WoW64 в зависимости от архитектуры процессора. Например, 64-битная версия Windows разработанная для процессора Intel Itanium 2 использует WoW64 для эмуляции инструкций. Такая эмуляция весьма ресурсоемка по сравнению с WoW64 для архитектуры , так как происходит переключение с 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.

Вскоре после выпуска 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-битных приложений, по мере того, как они будут появляться на рынке..

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

    Прежде 64-битные системы были уделом профессионалов и использовались для программ, требующих огромных ресурсов. Домашние пользователи обходились 32-битной версией Windows. И хотя 64-разрядные процессоры появились на рынке уже в 2003 году, (в 2005 году появилась 64-битная Windows XP), на новых компьютерах 64-битная система стала устанавливаться только с выходом Windows 7.

    Итак, чем же хороша 64-битная архитектура? Какие преимущества мы получаем и работает ли она быстрее? С какими проблемами нам, простым пользователям, придётся столкнуться?

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

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

    2. Доступно больше оперативной памяти. 32-битная версия Windows максимально использует только 3,5 Гб памяти, при этом она не полностью доступна программам. К примеру, операционная система занимает 1 Гб памяти, плюс до 1 Гб может быть зарезервировано для видеопамяти, и для программ останется всего 1,5 Гб. А если программы особо «прожорливы», памяти не хватит.

    У 64-битных версий Windows этих проблем нет. Windows 7 Home Premium использует максимум 16 Гб рабочей памяти и благодаря этому Windows реже использует файл подкачки (используется системой для размещения данных, не помещающихся в оперативной памяти), а компьютер работает значительно быстрее.

    Требования 64-разрядной системы к компьютеру

    1. Процессор . Как Вы уже догадались, одно из необходимых условий для работы 64-битной ОС – это 64-битная архитектура процессора. У Intel эта технология называется EM64T, а у одного из крупнейших производителя процессоров AMD она называет AMD64.

    2. Оперативная память . 64-битная Windows требуется не менее 4 Гб оперативной памяти. И в отличие от 32-битных операционных систем 64-битные ОС других особых требований к комплектации компьютера не имеют.

    Чтобы проверить версию Вашей операционной системы, нажмите «Пуск» –> кликните правой кнопкой мыши по “Компьютер” и в выпадающем меню выберите «Свойства» –> в открывшемся окне, с правой стороны, отображена версия Вашей операционной системы.

    Недостатки 64-разрядной системы

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

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

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

    С появлением семейства 64-разрядных процессоров «Pineview» (N450 и выше) у нетбуков появилась возможность использовать 64-битное программное обеспечение. Однако, камнем преткновения может стать оперативная память. Большинство нетбуков оснащено 1 Гб памяти. И если даже сделать апгрейд до 2 Гб, то это едва будет дотягивать до минимальных требований 64-битной Windows 7. Так что, Друзья, об эффективном использовании 64-разрядной системы на нетбуках, речь пока не идет (требуется не менее 4 Гб оперативной памяти).

    Возможно ли использовать 32-битные программы для 64-битной ОС?

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

    • Программы для резервного копирования . При создании бэкапов программы напрямую обращаются к системными папкам Windows, а WoW64 в некоторых случаях перенаправляет доступ 32-битного программного обеспечения в другие папки. Т.е. если не перенастроить программы резервирования, то результат их работы может оказаться неполными и ошибочным.
    • Программы для оптимизации Windows . Программы, созданные для оптимизации 32-битной Windows, ни в коем случае нельзя использовать на 64-битной Windows 7, вреда от их работы будет гораздо больше чем помощи.
    • Программы для защиты ПК . Если Вам нужна отличная защита компьютера, то для 64-битной Windows используйте только 64-битные версии антивирусных программ. Старое 32-битное программное обеспечение не в состоянии обеспечить надёжную защиту и пропустит вирусные атаки, разработанные для 64-битной ОС.
    • Скорость работы . Устаревшее 32-битное ПО на 64-битной Windows работает медленнее, чем в родной 32-битной среде. Причиной тому лишние временные затраты на преобразования подсистемой WoW64.

    Чтобы посмотреть какие 32-битные программы работают в 64-битной системе, достаточно запустить Диспетчере Задач (нажимаем клавиши Ctrl+Shift+Esc), и найти программы, помеченное значком *32.

    Итак, Дорогие Друзья, подведем итог

    При переходе на работу с 64-битной Windows 7 следует обратить внимание на несколько значимых факторов.

    1. Требования к комплектации компьютера:

    • 64-битная архитектура процессора;
    • 4 ГБ оперативной памяти.

    2. Совместимость программного обеспечения:

    • наличие необходимых новых драйверов для Ваших устройств;
    • доступность обновления ПО до новейших 64-битных программ.

    1. Проверить совместимость программного обеспечения Ваших устройств с 64 битной ОС можно в «Центре совместимости Windows 7».

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

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

    Microsoft начала выпускать 64-битные системы вскоре после запуска любимой многими Windows XP. Она имела самый продолжительный срок службы - около 14 лет.

    Историческая справка подтверждает тот факт, что самой первой реализацией 64-битных систем была UNICOS - Unix-подобная система, созданная в 1985 году суперкомпьютером Cray Inc. Сегодня многие ОС - Mac OS X, Windows, Solaris и свеженькая Android от Google - созданы на основе 64-битной версии.

    32-х и 64-разрядные операционки поддерживают определенный тип архитектуры процессора и названы так соответственно. 32-разрядная ОС использует ресурсы, поддерживаемые 32-разрядным процессором (например, Intel x86). То же самое относится к 64-разрядной системе.

    Что означает «бит»? Самая маленькая часть данных известна как бит или двоичный код. Именно его понимает компьютер, поэтому каждый бит может иметь только одно значение - 0 или 1. Устройство хранит данные в виде наборов таких битов, называемых байтами. 8 бит составляют один байт или октет.

    Кое-что о 32-х и 64-битных процессорах

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

    • количество значений, которое ЦП хранит в регистрах, равно 2 32. Эти значения используются для сопоставления адреса ячеек памяти, присутствующих в физической памяти. Итак, 2 32 = 4 гигабайта - это объем оперативки, к которой может получить доступ 32-битный процессор;
    • 64-битный регистр хранит значения 2 64. Они соответствуют 16 ЕБ (ексабайтам) ОП. В сравнении с 4 ГБ памяти это намного больше.

    Более того, 32-разрядный процессор может обрабатывать 4 байта данных за один цикл, поскольку 8 бит равны 1 байту. Таким образом, если размер обрабатываемых данных превышает 4 байта, для перехода к оставшимся данным ЦП должен начать другой цикл.

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

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

    Отличия 64-битной от 32-битной Windows

    Теперь вы знаете, что 64-разрядные ОС предназначены для поддержки большего объема оперативной памяти, поэтому 32-разрядные им в этом значительно уступают. Тяжелые приложения, такие как программы для редактирования изображений, AutoCAD и игры, будут намного лучше работать на компьютере с 16 ексабайтами ОП, по крайней мере теоретически. Предел физической памяти, доступ к которой может получить система, также зависит от разновидности материнской платы и ее функциональных ограничений. На самом деле, вам не нужны сотни гигов ОЗУ, чтобы играть в игры.

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

    Компьютер должен иметь ОП не менее 4 ГБ, если вы хотите, чтобы на нем работала 64-битная Windows. Домашняя версия десятки поддерживает память до 128 ГБ, в то время как Pro - до 2048 ГБ! Таким образом, вы можете увеличить виртуальную память до максимума. Пользователям Windows 10 корпорация Microsoft рекомендует не менее 8 ГБ оперативной памяти.

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

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

    Windows для 64-разрядного процессора имеет функцию Kernel Patch Protection, которая блокирует неподдерживаемые изменения в ядре, а также предотвращает обработку данных на аппаратном уровне. Для всех драйверов является обязательной цифровая подпись. Так система блокирует установку модифицированных версий, которые могут быть использованы для встраивания вредоносных программ.

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

    Mozilla реализовала 64-разрядную версию браузера Firefox еще в декабре 2015 года. Частота внедрения более производительной Windows значительно увеличилась за последнее десятилетие.

    Как проверить, является ли моя ОС 32-х или 64-битной?

    Вы легко можете это узнать.


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

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

    Преимущества и недостатки

    Преимущества 64-битных систем:

    • возможность использовать больше оперативной памяти;
    • улучшенная эффективность. Когда установлена дополнительная ОП, 32-разрядные системы не могут ею воспользоваться из-за ограничений адресуемого пространства. Но 64-битные системы на это способны, что часто приводит к значительному повышению производительности компьютера;
    • больше виртуальной памяти. 64-разрядная архитектура Windows теоретически может предложить 8 ТБ виртуальной памяти для одного приложения. 32-разрядная ограничена 2 ГБ. Современные программы, особенно игры, видео и редакторы фотографий, требуют больше ОП. Благодаря более эффективному распределению памяти при наличии 64-разрядного процессора, оптимизированные под эту архитектуру приложения могут использовать новое пространство в полной мере;
    • дополнительные функции безопасности. 64-битная версия обеспечивает дополнительную безопасность в виде аппаратного обеспечения D.E.P, функции защиты ядра и улучшенных драйверов.

    Важно учитывать недостатки, к которым относятся следующие:

    • возможная несовместимость драйверов. Несмотря на то, что 64-разрядная ОС поддерживает все больше программ, для тех, кто все еще использует старые, надежные и часто функциональные аппаратные средства, переезд на новую архитектуру может оказаться весьма болезненным. Маловероятно, что 64-разрядные драйверы доступны для более старых систем и оборудования;
    • некоторые ограничения ОП материнской платы. Чаще всего последняя поддерживает ранние 64-разрядные процессоры, но не предлагает использовать больше 4 ГБ ОП. Вы можете испытать некоторые преимущества 64-битного процессора, хотя и без доступа к большему количеству оперативной памяти. Возможно, пришло время обновить ОС;
    • проблемы со старыми приложениями. Программное обеспечение, скорее всего, не сделает переход на 64-битную архитектуру. Старые средства, включая 16-разрядные, требуют виртуализации. В противном случае, на их обновление вам понадобится время.

    Почему была разработана 64-разрядная архитектура?

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

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

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

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

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

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

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

    Видео — Какой Windows установить 32 или 64 битной и в чем разница