Как работают программы 32 и 64 бит. Windows XP x64: обещания и реальность

Современные компьютеры в большинстве случаев поставляются с установленной операционной системой 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 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-битной ОС , которой оснащена большая часть современных компьютеров с операционной системой 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-битной системе помогает обновление ПО до новой версии, которую обычно можно найти на сайте производителя.

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

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

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

Так называемые 32-битные процессоры имеют 8 регистров общего назначения, объем которых составляет 32 бита. А 64-битные процессоры имеют в двое больше таких регистров, а объем их составляет 64 бита. Вот это и есть основное различие между 32-битными и 64-битными процессорами. Стоит сказать о том, что почти все современные процессоры являются 64-битными.

А теперь расскажем о том, для чего на практике нужны эти регистры. Если сказать обобщенно, то процессор на 64-бит в нормальном 64-битном режиме сможет работать с 64-битными числами не используя какие-либо ухищрения, как например, разбивку одной сложной операции на две. Кроме того таким образом могут быть объединены 2 простые операции над 32-битными числами в 1 сложную. Тем не менее не каждую операцию можно объединить с другой, но и это не мало.

Важно: производительность можно увеличить лишь работая с 64-битным наборам инструкций х86-64. Также следует сказать о том, что помимо блока вычислений с целыми числами ALU, процессор также имеет блок вычислений чисел с плавающей точкой или FPU. В нем содержатся более объемные 80-битные регистры и используются инструкции х87. Помимо этого процессор имеет другие блоки и регистры. Например, SSE-регистры. Их длина составляет 128 бит.

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

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

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

Но у разрядности регистров есть и более актуальная проблема. Дело в том, что ограничено адресное пространство для памяти. А попросту говоря, процессор способен адресовать лишь 4 Гб адресного пространства. Так ведь ноутбук и имеет 4Гб оперативной памяти, и системе должно быть видно все эти 4Гб. Но помимо оперативной памяти, есть и память видеокарты, буферы разных устройств и BIOS может для этого же видеоядра выделить еще какую-то память. В результате память, которая была доступна пользователю уменьшится 2.5 — 3.5 Гб. И это ограничение не зависит от операционной системы. Перейдем к более детальному рассмотрению этой проблемы.

Тут нет ничего сложного. Регистры хранят как данные, так и указатели адресов. В 32-битном процессоре объем этого регистра составляет 32 бита. Вот откуда появилось это ограничение в 4 Гб или 232 байт.

Подводя итог всего изложенного выше, стоит сказать, что любая 32-битная ОС не может работать используя все 4 Гб ОЗУ по той причине, что большинству системных устройств для работы требуется часть адресного пространства, а оно ограничено 4Гб. Поэтому системе приходится отбирать его у оперативной памяти. Неиспользованная оперативная память может быть использована в качестве временного диска, для этого потребуется утилита RAM Disk.

Важно: для 32-битных ОС создан механизм, позволяющий использовать адресное пространство более 4Гб. Это т.н. PAE (Physical Address Extension), в этом случае ОС может адресовать до 64 Гб памяти. Эту технологию с самого начала разрабатывали для серверных систем. Для того, чтобы она могла нормально работать требуются соответствующие исправленные драйвера. Так как таких рабочих драйверов почти нет, то эта технология даже на серверных ОС по умолчанию отключена. В обычных редакциях ОС Windows она также была отключена по умолчанию. И по той же причине. Сегодня есть специалисты, которые научились ее включать, система может видеть всю оперативную память, которая доступна ей, но происходят ошибки в самых разных местах. А их диагностика не так проста. Поэтому если вы хотите использовать более 3 — 4 Гб ОЗУ, то вам нужно установить 64-битную ОС.

Как можно видеть, в 64-битном режиме работы имеются следующие преимущества и недостатки:

  • 64-битная ОС работает со всем объемом ОЗУ;
  • Некоторые из операций на 64-битном процессоре могут быть выполнены намного быстрее;
  • Для 64-битных указателей требуется больше памяти, что делает объем занимаемой приложениями ОЗУ больше.

Как видите, не все так однозначно. Рассмотрим теперь как же это проявляется на практике.

Сравнение производительности 32-bit и 64-bit версий Windows

Сначала расскажем о том какая методика тестирования использовалась.

Измерения были проведены на ноутбуке Asus N61Vn имеющим четырехьядерный процессор Intel Core 2 Quad Q9000, использовалась видеокарта nVidia GeForce GT 240M с 1 Гб выделенной памяти. Важно заметить, что ноутбук имел 4 Гб ОЗУ DDR3-1066. При сравнении были использованы 32- и 64-битные версии Windows Vista SP2 с установленными последними обновлениями. Драйвера имели одинаковые версии, что позволило нивелировать разницу в производительности между различными версиями. По указанным выше причинам 32-битная версия Windows имела приблизительно 3Гб доступной оперативной памяти, а 64-битная редакция — примерно 4 Гб.

Важно также заметить то, что этот тест был проведен на Windows XP и Windows 7 на ноутбуке Acer Timeline 3810T с одноядерным процессором Intel Core 2 Duo SU3500 и 4Гб оперативной памяти, у которого были более ограниченные возможности. Результаты и в этих случаях не изменились и были приблизительно такие же.

Сравнение производительности для удобства мы разделили на 2 части:

  • 1. Сначала мы исследовали производительность обычных 32-битных программ на 32-битной и 64-битной версиях систем;
  • 2. Затем мы измеряли скорости работы 32-битной и 64-битной версий программ на соответствующих редакциях Windows.

Тестирование производительности прикладных 32-битных программ

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

Сравнить производительность помогли следующие приложения:

  • 3DMark03 3.6;
  • 3DMark05 1.3;
  • 3DMark06 1.1;
  • PCMark05 1.2.

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

Приложения были настроены по умолчанию. Разрешение экрана 1024 х768:

Приложения были настроены по умолчанию. Разрешение экрана 1280 х720:

4. Результаты сравнения производительности в PCMark05

В этом тесте были проведены отдельные дополнительные тесты. Ниже представлены результаты каждого.

Виден результат полученный благодаря дополнительному гигабайту ОЗУ у 64-битной системы.

Итоги сравнения производительности обычных приложений

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

В результате этого сравнения производительности также было выявлено, что реальную пользу 4 гигабайта ОЗУ в этом наборе приложений не приносят. Здесь необходимо подчеркнуть, что в действительности для тяжелых приложений, к которым относятся графические редакторы, системы автоматизированного проектирования (CAD) и другие, объем ОЗУ очень важен. В них дополнительные гигабайты ОЗУ действительно полезны.

Сравнение производительности 32- и 64-битных программ

Цель данного исследования — измерить увеличение производительности во время использования оптимизированных 64-битных приложений на 64-битной ОС.

Для сравнения производительности были также использованы программы:

  • Архиватор 7-Zip версии 4.65;
  • Тестовый пакет PCMark Vantage.

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

А теперь посмотрим на результаты:

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

2. Тестирование при помощи тестового пакета PCMark Vantage

Существует как 32-битная, так и 64-битная версии тестового пакета PCMark Vantage. В этом тестовом пакете имеются разные тесты. Рассмотрим каждый из них.

Как и 7-Zip, в целом 64-битный тестовый пакет PCMark Vantage показал большую производительность чем 32-битный на 32-битной ОС. Здесь важным моментом оказались оптимизации под 64-битные процессоры, и больше объема доступной памяти: 4 Гб у 64-битной системы и 3 у ее 32-битной версии.

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

Пришло время подвести итог данного теста:

  • Наибольшее увеличение производительности в 64-битных версиях Windows XP, Vista, 7 наблюдалось в случае, когда были использованы оптимизированные 64-битные версии приложений и игр. Во время работы с обычными приложениями, без оптимизации под 64-битную версию производительность не увеличивается;
  • Многие программы и игры не смогли показать заметного роста производительности когда был увеличен объем доступной ОЗУ больше 3 Гб. Исключением можно назвать сложные программы, которые позволяют работать с видео, изображениями, системы проектирования и прочие. В дальнейшем этих приложений будет больше. Для таких программ использовать 64-битную систему будет весьма обоснованно.
  • Некоторые из приложений на 64-битной ОС показали нестабильную работу по разным причинам. Но этих приложений не так много.

В конце хочется отметить то, что вы сами выбираете версию Windows для своих нужд. И если это исследование смогло вам помочь, то мы будем только рады.

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

Разница между 32- и 64-битными системами

Когда мы говорим о 64-битных или 64-разрядных операционных системах, нам нужно различать 64-битные вычисления, которые важны для высокой производительности, а также 64-битную адресацию для поддержки больших объёмов памяти. У 64-битной операционной системы используются регистры шириной 64 бита, 64-битные типы данных, и система внутри себя может адресовать данные с помощью 64-битной адресации (что даёт поддержку максимального объёма памяти 16 экзабайт вместо 4 гигабайт). Впрочем, внешняя адресация и шины могут отличаться. В качестве примера можно привести адресацию памяти, которая обычно ограничена 40 или 48 битами.

64-битная ОС для своей работы требует использование 64-битного процессора. Большинство 64-битных систем могут выполнять 32-битное программное обеспечение в так называемом "режиме совместимости", который важен по причине того факта, что "родные" 64-битные приложения всё ещё встречаются довольно редко. Процессор при необходимости переключается в 32-битный режим. Запуск же 32-битной ОС на 64-битном CPU обычно приводит к тому, что процессор всё время работает в наследственном режиме. Если 64-битное программное обеспечение может на 64-битной ОС работать быстрее (если оно должным образом оптимизировано), то 32-битные приложения на 64-битных ОС обычно дают прежний уровень производительности.

Преимущества 64 бит

У 64-битных операционных систем есть несколько преимуществ. Во-первых, 32-битная версия Windows ограничена поддержкой максимум 4 Гбайт памяти, и даже при этом она не будет отдавать весь объём вашим приложениям - система Windows будет использовать часть памяти для собственных нужд, в результате вы получите 3 Гбайт или чуть больше. Поэтому максимальный объём памяти 32-битной Windows на самом деле ограничен 3+ Гбайт. 64-битная версия Windows будет поддерживать любой объём памяти, доступный сегодня.

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

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

Недостатки 64 бит

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

Детали и проблемы операционных систем

Розничные версии Windows обычно доступны как в 32-, так и в 64-битных версиях. Есть специальные диски для разработчиков, которые содержат обе версии системы: например, Vista DVD для подписчиков Microsoft MSDN. Однако при установке уделите внимание тому, правильную ли версию Windows вы устанавливаете, поскольку после установки изменить версию не получится.

Сколько памяти вам нужно?

Переход на 64-битную операционную систему и большой объём памяти даст не только дополнительное "жизненное пространство", но и позволит операционным системам, таким как Windows Vista, работать более эффективно. Во-первых, операционная система будет реже записывать данные в медленный файл подкачки на жёстком диске, что она выполняет при нехватке оперативной памяти. Во-вторых, Vista может использовать дополнительную память с помощью функции SuperFetch, предварительно загружающей данные приложений в порядке значимости: то есть самые популярные приложения уже будут буферизованы в памяти после загрузки ОС. В итоге приложения будут запускаться практически мгновенно. Комплекты памяти на 4 или даже 8 гигабайт сегодня стоят вполне доступно, поэтому мы рекомендуем оснастить компьютер, по крайней мере, 4 Гбайт памяти. Опытным пользователям и энтузиастам сегодня можно рекомендовать уже 8 Гбайт памяти для 64-битной системы. 2 Гбайт памяти - тоже популярный объём, но при этом вы не получите особого выигрыша от возможностей адресации 64-битной системы (фактически, 64-битная ОС занимает чуть больше места в памяти, чем 32-битная, поэтому ставить 64-битную ОС на компьютер с памятью 3, 2 или 1 Гбайт можно только с точки зрения будущего апгрейда).

32-битные проблемы Windows

Как мы уже упоминали выше, 32-битная версия Windows не даст вам полный объём 4 Гбайт памяти, которую вы установили в систему, поскольку компоненты и устройства Windows требуют выделенного адресного пространства в пределах первых 32 бит (4 Гбайт) оперативной памяти. Видеокарта с 512 Мбайт памяти требует привязки этой памяти к оперативной, что снижает доступную ёмкость на 512 Мбайт. Windows Vista обычно ограничивает доступную память 3,12 Гбайт, но, в зависимости от "железа", эффективный доступный объём может быть ещё ниже. Добавления, такие как оснастка Microsoft .NET, могут потреблять 200 Мбайт или больше. Linux делает всё несколько по-иному, поскольку ядро никогда не требует больше 1 Гбайт; поэтому процессам можно отводить до 3 Гбайт памяти.

Physical Address Extension вместо 64-битной Windows?

Некоторые версии Windows поддерживают функцию под названием Physical Address Extension (PAE), позволяющую использовать больше 4 Гбайт памяти благодаря специальной технологии переадресации. Но Windows при этом использует систему переадресации с тремя уровнями страниц, а не с двумя. Технология PAE успешно зарекомендовала себя в серверах, но в настольных системах её поддержка сталкивалась с проблемами совместимости драйверов из-за недостаточной стандартизации.

Проблемы с драйверами

Поскольку драйверы работают между "железом" и операционной системой, вы не сможете установить 32-битные драйверы на 64-битную операционную систему, пусть даже почти все 32-битные приложения будут работать под вашей 64-битной Windows. Поэтому первым шагом при подготовке перехода на 64-битную версию является тщательная проверка доступности драйверов в 64-битных вариантах. Если вы просто хотите познакомиться и поработать с версией x64 Windows, то можете временно установить её на компьютер - Microsoft даёт 30-дневный ознакомительный период, который позволяет поработать с системой, протестировать её и проверить появление проблем с драйверами. А уже потом активируйте вашу копию Windows.

XP и Vista

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

Некритичные драйверы

Вам не потребуются драйверы чипсета или видеокарты, если им насчитывается несколько лет. В таком случае Windows Vista x64 сможет поддержать вашу систему благодаря встроенным драйверам, пусть даже их производительность будет чуть хуже. AMD и Intel обычно быстро выпускают драйверы платформы для важных операционных систем, да и AMD/ATI и Nvidia вовремя предоставляют драйверы для актуальных видеокарт Radeon и GeForce. Причём сегодня они поддерживают концепцию унифицированного драйвера, когда в одном комплекте вы получаете набор всех необходимых драйверов, то есть искать и скачивать драйверы по отдельности не нужно.

Критичные драйверы

Намного сложнее найти драйверы для нестандартных компонентов, особенно периферии. Каждый принтер, сканер, "картовод", мышь, клавиатура и сетевая карта несут потенциальный риск несовместимости, если им исполнилось больше полутора-двух лет. Поэтому проверьте наличие драйверов для вашей старой периферии, пусть даже она выпущена такими крупными игроками, как Brother, Canon, HP, Samsung и другими. Даже популярные марки просто не гарантируют наличие 64-битных драйверов.

64-битная операционная система на ноутбуках

Хотя ноутбуки выглядят иначе, чем обычные настольные ПК, да и стоят дороже, технологически они недалеко от них ушли. Они используют меньшие по размеру 2,5" или 1,8" жёсткие диски, более эффективные процессоры и видеокарты, да и все комплектующие сделаны компактными, лёгкими и эффективными. Но принцип построения компьютера такой же, что и у ПК.

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

Некоторые ноутбуки, базирующие на чипсете Intel GM45, например, многие модели Lenovo, поддерживают до 8 Гбайт памяти. Но большинство ноутбуков такой поддержкой не обладают.

Много памяти на ноутбуке

Большой объём памяти необходим для настольного ПК если вы хотите выжать из него максимальную производительность, и у ноутбуков ситуация сравнимая, пусть и немного иная. В данном случае дополнительная память тоже не помешает, но если вы хотите избежать лишних падений производительности. Помните, что жёсткие диски для ноутбуков по-прежнему примерно на 50% медленнее настольных моделей, то есть нужно как можно реже обращаться к винчестеру за данными. Конечно, можно купить быстрый твёрдотельный накопитель (SSD) на флэш-памяти, но такой апгрейд обойдётся существенно дороже, чем добавление памяти.

Ноутбуки тоже страдают из-за ограничения 3+ Гбайт в 32-битной версии Windows, но никто не мешает установить 64-битную версию Windows Vista для поддержки полного объёма 4 Гбайт. Некоторые ноутбуки позволяют установить даже 8 Гбайт памяти, но большинство ограничивают память 4 Гбайт. Подобный объём памяти позволяет снизить использование файла подкачки, да и функция SuperFetch будет работать более эффективно. Единственный недостаток при этом кроется во времени гибернации - чем больше объём памяти, тем дольше будет выполняться этот процесс.

64-битные проблемы ноутбуков

Все проблемы с драйверами, которые мы упоминали выше, также можно отнести и к ноутбукам. Причём в данном случае проблемы будут более острыми, поскольку ноутбуки обычно содержат больше встроенной периферии по сравнению с настольным ПК, и каждому устройству требуется драйвер. Каждый ноутбук содержит тач-пад, который программируемый, но драйвер ему тоже нужен. Встроенные компоненты, такие как модуль Bluetooth, чип TPM, датчик отпечатка пальцев и другие тоже требуют драйверы.

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

Потенциальные проблемы с накопителями

Мы уже обсудили некоторые проблемы, но есть ещё один фактор, который станет всё более значимым в будущем: накопители. Здесь есть два "подводных камня", из которых только второй связан с 32 битами против 64. Но мы рассмотрим оба.

GPT вместо MBR позволяет создавать разделы больше 2 Тбайт. Однако для загрузки с такого раздела требуется расширенная версия EFI вместо обычного BIOS.

В ожидании EFI

Возможно, вы уже знаете об ограничениях записи Master Boot Record (MBR), являющейся частью тома жёсткого диска. Из неё BIOS берёт код загрузки для запуска операционной системы. К сожалению, MBR ограничивается ёмкостью в 2 Тбайт, и, как все мы знаем, жёсткие диски уже достигли подобного объёма. Проблему можно решить, установив последний пакет обновления (Service Pack) на Windows XP и Windows Server 2003, либо перейдя на Windows Vista или Server 2008. Во всех случаях MBR будет заменена так называемой GPT, GUID Partition Table, для разделов размером больше 2 Тбайт. В отличие от MBR, GUID поддерживает разделы до 256 Тбайт, чего на данный момент вполне достаточно.

Однако если GPT поддерживает создание крупных разделов для чтения и записи, загружаться с такого раздела вы сможете только если ваша платформа основана на Extensible Firmware Interface (EFI) или Unified EFI (UEFI, также известный как EFI 2.0) вместо классического BIOS. Рано или поздно этот интерфейс станет стандартом общения между операционной системой и "железом". К сожалению, EFI медленно распространяется в мире ПК; только Apple достаточно умно сразу же перешла на EFI для компьютеров Mac на процессорах Intel. Поэтому если вы хотите загружаться с раздела больше 2 Тбайт, то приготовьтесь к апгрейду платформы. Ситуация осложняется тем, что MBR нельзя конвертировать в GPT, поэтому с RAID-массивами могут возникнуть проблемы: если вы превысите ёмкость массива 2 Тбайт, то можете потерять возможность загрузки с него.

Список функций, которые добавляет EFI, включает DRM, поддержку сетевых функций администрирования, поддержку видеокарты до загрузки ОС, оболочку для запуска приложений EFI, а также драйверы, которые работают как модули EFI. В результате разработка драйверов будет идти на уровне, более близком к "железу", то есть они могут стать независимы от ОС. Windows 7 на системах EFI не придётся запускать драйверы; они будут активироваться в момент загрузки ПК.

Проблемы с драйвером

Наконец, могут возникнуть проблемы с накопителями ёмкостью больше 2 Тбайт и под 64-битной операционной системой, несмотря на наличие драйверов для 64-битных окружений. Некоторые драйверы, которые заявлены для 64-битных окружений и подписаны соответствующим образом, могут внутри использовать 32-битную адресацию секторов - в результате Windows будет неправильно отображать ёмкость. Когда мы тестировали накопитель LaCie 4big Quadra , то обнаружили, что на одной тестовой системе он распознался с ёмкостью около 800 Гбайт, хотя суммарная ёмкость должна была составлять 2800 Гбайт (2,8 Гбайт, то есть 3-Гбайт конфигурация RAID 5 с четвёртым 1-Тбайт жёстким диском внутри LaCie). Вероятно, первые 32 бита адресации не работали, в результате чего операционная система смогла адресовать только ёмкость за пределами 2 Гбайт.

Всё это может привести к печальным результатам: представьте себе конфигурацию, в которой вы создаёте массив RAID 0 с полной ёмкостью 4 Тбайт. Вы форматируете раздел и начинаете с ним работать. Когда вы достигнете 2 Тбайт, то Windows не сможет использовать оставшийся объём, из-за сбойного драйвера Windows начнёт повторную запись с первых секторов, уничтожая записанные там данные. Вряд ли с восстановлением такого кошмара легко справятся даже соответствующие компании.

Поэтому перед использованием накопителя с ёмкостью больше 2 Тбайт мы рекомендуем тщательно проверить его ёмкость с помощью Diskpart. Или даже провести тесты с ёмкостью больше 2 Тбайт, чтобы убедиться, что всё в порядке.

Заключение

Некоторые проблемы, рассмотренные в нашей статье, разочаровывают, особенно если учесть небольшой прирост производительности при переходе на 64-битную версию Windows (а потенциально и отсутствие прироста). Однако есть несколько ключевых моментов, которые следует принимать во внимание:

  • 64-битная версия ОС даёт больше преимуществ, чем недостатков, особенно поддержку конфигураций с памятью больше 3 Гбайт, которые в свете недорогих 8-Гбайт наборов смотрятся всё привлекательнее;
  • 64-битная ОС работает примерно так же, как и 32-битные системы за исключением некоторых high-end приложений;
  • Ситуация с драйверами за последние месяцы улучшилась, но будьте готовы столкнуться с проблемами поиска 64-битного драйвера для некоторого "железа";
  • Поиск драйвера для ноутбука может быть по-прежнему проблематичным;
  • Нет ничего страшного в использовании 32-битной версии Windows, но учтите тот факт, что 64-битная версия потребует полной переустановки (в том числе и приложений);
  • Любая конфигурация с системным разделом больше 2 Тбайт требует использования EFI вместо привычного BIOS для загрузки операционной системы;

Настало время перейти к выводам:

  • Комплекты памяти на 4 или даже 8 Гбайт сегодня стоят очень доступно, при этом подобный объём заметно ускоряет работу системы из-за снижения обращений к файлу подкачки и работы функции SuperFetch под Windows Vista;
  • Энтузиастам настоятельно рекомендуется переходить на 64-битную систему, пусть даже при этом придётся заменить старую периферию или "железо";
  • 64-битное окружение на ноутбуке имеет меньше смысла, поскольку платформа обычно ограничивает память объёмом 4 Гбайт. Впрочем, если есть все необходимые драйверы, мы рекомендуем сделать подобный переход в целях повышения производительности;
  • Сегодня использовать 64-битную систему вполне безопасно, если вы покупаете новый ПК или ноутбук, особенно если она уже входит в комплект;
  • Перенос существующей системы на 64-битное окружение требует предварительной работы по поиску совместимых драйверов, также следует обратить внимание и на другие проблемы, описанные выше.