Полезная информация по Windows х32\x64

Важно! Под выражением "64-битная ОС" имеются ввиду все 64-битные ОС, т.е. Windows XP \ Vista \ 7 (Seven). Всё написанное ниже относится в одинаковой степени к ним всем. WinXP упоминается чаще лишь потому, что на момент создания темы она была основной ОС у пользователей.

Будут ли игры быстрее работать в 64-битной ОС?
Думаю, проще всего будет дать ссылки на тесты 32-битных и 64-битных систем:
1) Тесты в популярных бенчмарках и играх (видеокарта ASUS GTX260TOP)
2) Тесты только в играх (видеокарта Gainward HD4850; Single & CrossFire)

Чем 64-битная версия отличается от 32-битной?
Это специальная 64-разрядная версия, разработанная для процессоров с технологиями EM64T (Pentium D, Core 2 Duo) и AMD64 (Opteron, Athlon 64) от фирм Intel и AMD соответственно. Основным достоинством системы является полноценная поддержка 4Гб RAM, а также быстрая работа с большими числами (Long Integer и Double Float). Таким образом, WinXP x64 очень эффективна при выполнении вычислений, использующих числа с плавающей запятой, необходимых в таких областях, как создание спецэффектов для кинофильмов и трёхмерной анимации или разработка технических и научных приложений. Соответственно, для реализации всего потенциала WinXP x64 потребуются 64-битные редакции программ, но даже в наше время их количество крайне невелико.

Будут ли работать старые программы и игры в WinXP x64?
Да, будут. В 64-битной системе есть поддержка работы как 32-битных, так и 64-битных приложений (но помните, все драйверы должны быть в 64-разрядном исполнении!). Это означает, что большинство привычных вам 32-разрядных приложений будут работать и в этой системе. Исключение могут составить лишь те приложения, которые сильно зависят от аппаратного обеспечения компьютера, например, некоторые антивирусы и дефрагментаторы.

Для 32-битных систем официально заявлена поддержка 4Гб RAM, однако видно только ~3,25Гб. Почему?
Данный вопрос, пожалуй, волнует пользователей больше всего, поэтому придётся остановится на нём подробно. Всё дело в неверной формулировке. На самом деле официальное утверждение про поддержку Windows памяти до 4Гб должно звучать так: 32-битная ОС способна адресовать (указывать на ячейку памяти, к которой производится доступ) только в пределах 4Гб.

Теперь проясним ситуацию, когда в свойствах системы отображается лишь около трёх гигабайт памяти. Все устройства на компьютере адресуют память (видеокарта, звуковая карта и т.д.), потому что для разработчиков легче настроить обращение к адресу в памяти, к которому "привязано" устройство, чем возиться со специальными регистрами (портами) для обращения к этому устройству. Кроме того, обращение к памяти происходит значительно быстрее, потому что если обращаться к порту устройства, то для этого придётся ещё задействовать и центральный процессор, что в итоге приводит к серьёзным тормозам (те пользователи, у которых контроллер жёсткого диска сваливался из DMA-режима в PIO-режим, поймут, о каких тормозах идёт речь). Поэтому в своё время (1985 год, компания Intel выпускает свой знаменитый процессор 80386) было принято решение разделить доступные адреса (адресное пространство) на две части: под оперативку и под устройства, если они нуждались в адресах. Адреса для устройств тогда поместили в конце доступного адресного пространства, отсчёт начинался с конца четвёртого гигабайта, ведь в 1985-ом году и в голову никому не могло прийти, что у кого-то будет аж четыре гига памяти!

Как мы видим, системе доступно уже не 4Гб, а меньше из-за того, что часть адресов отведена под различные устройства. Как правило, конкретное число доступной оперативки варьируется из-за различных конфигураций компьютера. Иными словами, чем больше устройств в нём, тем меньше вы увидите доступной памяти в свойствах системы, однако чаще всего получается 3,25Гб. Соответственно, при установке WinXP x64 память начинает адресоваться нормально, т.е. устройства начинают размещаться за пределами первых 4Гб и поэтому видно все четыре гигабайта, ведь 64-битная система поддерживает 128Гб RAM.

Для тех, кто так ничего и не понял, привожу скриншот(Это интересно) Диспетчера устройств. Видите адреса слева от устройств? Так вот, в 32-битной ОС именно этих адресов и не хватает. Часть из них забирают устройства. Поэтому какой-то объём RAM недоступен - система тупо не знает как туда обращаться, т.к. у какой-то доли оперативки нет адресов.

Часто встречается упоминание про ключ \PAE в boot.ini и про функцию memory remap в BIOS'е материнской платы, которые якобы могут помочь 32-битной ОС увидеть все 4Гб. Это правда?
Объяснить про это вкратце очень сложно, поэтому я лучше приведу заключение из статьи на ixbt.com:

Windows XP + SP2 и Windows Vista увидеть все четыре гигабайта ОЗУ (если они установлены) просто не в состоянии, и изменить это нельзя. Тем, кто уже потратил свои кровные денежки на четыре гигабайтных модуля остается либо смириться, что часть их окажется неиспользованной, либо переходить на 64-разрядные версии ОС.