Введение
Если посмотреть на историю персональных компьютеров, то оперативная память (ОЗУ, RAM) была ценным комплектующим, даже подчас роскошным. Всего несколько лет назад нельзя даже было себе подумать о достижении объёма 4 Гбайт под 32-битной операционной системой. Впрочем, были времена, когда и 640 кбайт было достаточно для каждого. Но времена меняются. Сегодня память DDR2 дешёвая, как никогда, и оснащение компьютера 8 Гбайт памяти обойдётся всего примерно в $200.
Преимущество от 8 Гбайт оперативной памяти заключается в менее частом доступе ОС к жёсткому диску, в результате чего Vista будет работать ощутимо быстрее. Однако в BIOS и операционной системе нужно сделать несколько настроек, только тогда система сможет использовать большой объём памяти. У Vista 64 по-прежнему есть некоторые сложности, и не все из них связаны с отсутствием драйверов. По крайней мере, самые стандартные приложения работают без проблем. С другой стороны, ни одна из современных программ и близко не приблизилась к тому, чтобы использовать подобный объём памяти.
Widows Vista распознаёт все 8 Гбайт ОЗУ. Нажмите на картинку для увеличения.
Большинство пользователей недоумевают, установив в систему 4 Гбайт памяти. Дело в том, что BIOS и Windows распознают только 3 Гбайт из них. Это не ошибка и не аппаратный сбой. Объяснение очень простое. 32-битные системы могут адресовать до 4 Гбайт памяти. Кроме того, память требуется для многих встроенных контроллеров и карт расширения. Она называется “Memory Mapped IO” (MMIO). Поскольку эта память должна лежать в пределах 4 Гбайт, она вычитается из установленной и доступной памяти.
8 Гбайт памяти можно купить за $200. Нажмите на картинку для увеличения.
Благодаря технологии перераспределения памяти можно перенести системную память таким образом, чтобы можно было воспользоваться полными 4 Гбайт. Но проблема в том, что эта функция была отключена в Windows Vista из-за проблем совместимости.
Чтобы использовать всю оперативную память, необходимо перейти на 64-битную версию Windows Vista. В нашей статье мы поговорим об использовании памяти под 32- и 64-битными версиями Windows Vista и проанализируем, как операционная система ведёт себя с разными объёмами памяти.
Аппаратная конфигурация
Для использования 8 Гбайт памяти, кроме 64-битной операционной системы, потребуется и соответствующее “железо”. Процессор и чипсет должны поддерживать 64-битные вычисления и адресовать не меньше 8 Гбайт памяти.
8 Гбайт памяти на материнской плате Gigabyte GA-X38-DQ6. Нажмите на картинку для увеличения.
Все чипсеты Intel, начиная с P965, удовлетворяют этому критерию, как и все процессоры Core 2, включая Pentium Dual Core и Celeron E1x00. Материнская плата должна поддерживать функцию “Memory remapping”. На некоторых материнских платах эта функция включается/выключается в BIOS. Однако подменю, где располагается эта функция, может меняться от одного BIOS к другому. В некоторых случаях функция активируется в подменю других опций CPU. В общем, по этому вопросу лучше обратиться к руководству материнской платы.
Функция “Memory Remapping” на материнской плате Asus X38.
BIOS распознала 8 Гбайт.
Что касается лагеря AMD, то все процессоры для Socket F, 939, 940, AM2 и AM2+ обеспечивают поддержку 64-битных вычислений и 64-битной адресации памяти. Здесь чипсет важной роли не играет, поскольку контроллер памяти встроен в процессор.
Поддерживаемый объём памяти: Windows Vista и Windows XP
Независимо от версии Windows, все 32-битные системы ограничены максимумом в 4 Гбайт ОЗУ. Единственным исключением являются версии Starter Edition, которые используются в странах третьего мира.
Ограничение памяти под Windows Vista | ||
32-битная | 64-битная | |
Ultimate | 4 Гбайт | 128 Гбайт |
Enterprise | 4 Гбайт | 128 Гбайт |
Business | 4 Гбайт | 128 Гбайт |
Home Premium | 4 Гбайт | 16 Гбайт |
Home Basic | 4 Гбайт | 8 Гбайт |
Starter | 1 Гбайт | – |
Есть только одна 64-битная версия Windows XP, которая по функциям идентична Windows XP Professional. С технической точки зрения, она построена на ядре Windows 2003 Server (Version 5.2).
Ограничение памяти под Windows XP | ||
32-битная | 64-битная | |
Professional | 4 Гбайт | 128 Гбайт |
Home | 4 Гбайт | – |
Starter | 512 Мбайт | – |
Поддерживаемый объём памяти: серверные ОС
Серверные операционные системы, построенные на технологии NT, уже многие годы могут поддерживать и больший объём памяти, чем 4 Гбайт, благодаря PAE (Physical Address Extension). Проблемы совместимости, от которых страдала Windows XP, в серверной сфере не существуют, поскольку ассортимент устройств и драйверов здесь намного меньше. Да и производители более трепетно относятся к валидации своих драйверов, чем в среде настольных ПК.
Ограничение памяти под Windows Server 2008 | ||
32-битная | 64-битная | |
Datacenter | 64 Гбайт | 2 Тбайт |
Enterprise | 64 Гбайт | 2 Тбайт |
Standard | 4 Гбайт | 32 Гбайт |
Web Server | 4 Гбайт | 32 Гбайт |
После начального выхода Windows Server 2003 была расширена до версии R2. Кроме того, для оригинальной версии доступен пакет обновления Service Pack 2, который увеличивает поддерживаемый объём памяти. Поэтому в следующей таблице приведены разные версии серверной ОС.
Ограничение памяти под Windows Server 2003 | ||
32-битная | 64-битная | |
Datacenter SP2 | 128 Гбайт | 2 Тбайт |
Datacenter R2 | 128 Гбайт | 1 Тбайт |
Enterprise SP2 | 64 Гбайт | 2 Тбайт |
Enterprise R2 | 64 Гбайт | 1 Тбайт |
Standard SP1 | 4 Гбайт | 32 Гбайт |
Standard R2 | 4 Гбайт | 32 Гбайт |
Web Edition | 4 Гбайт | – |
Small Business Edition | 4 Гбайт | 128 Гбайт |
Дополнительная память, используемая Windows
При резервировании памяти Windows Vista исходит из объёма ОЗУ, установленного на компьютере. В отличие от предыдущих версий, Vista автоматически использует больший объём памяти для системы, если она доступна. В итоге в файл подкачки на медленный жёсткий диск записывается меньше информации, а система работает ощутимо быстрее.
На следующей диаграмме показано, как Windows Vista резервирует больше памяти на системе, где установлен больший объём ОЗУ.
Мы можем видеть, что 64-битные версии используют заметно больше памяти. Опять же, объяснение очень простое. Все переменные теперь уже не 32-битные, а 64-битные. Обычно это увеличивает объём приложений на 20-40%, что приводит и к соответствующему росту объёма занимаемой памяти. На такие файловые форматы, как музыка или видео, это не влияет.
Итог таков, что устанавливать 64-битную версию Vista, чтобы лучше использовать 4 Гбайт памяти, смысла не имеет, пусть даже 32-битная версия распознаёт только 3,5 Гбайт. Проблема кроется в том, что вы получите отсутствующую память, однако сразу же её потеряете по той причине, что 64-битная версия требует для себя больше памяти. Так что переход на 64 бита актуален только при памяти большего объёма.
Как отключение файла подкачки влияет на производительность?
Поскольку подкачка файлов в область виртуальной памяти (файл подкачки, swap) на жёстком диске ощутимо влияет на производительность, нам было очень интересно посмотреть, что произойдёт, если мы полностью отключим файл подкачки Windows.
Microsoft не рекомендует это делать, что говорится в следующем сообщении.
Предупреждение, появляющееся при отключении файла подкачки.
Нас это сообщение не испугало. Что интересно, мы не смогли удалить файл pagefile.sys, даже когда Windows больше его не использовала. Чтобы на него не уходило место на жёстком диске, мы рекомендуем до отключения выставить минимально возможный размер (16 Мбайт).
Мы выполнили настройки…
…для отключения файла подкачки.
Опять же, мы провели тесты с памятью объёмом от 8 Гбайт до 512 Мбайт. Если на конфигурации с 8 Гбайт памяти мы без проблем смогли работать без файла подкачки, то с меньшими объёмами ситуация быстро становилась критической.
С 8 Гбайт памяти и без файла подкачки система чувствовала себя хорошо. Даже в некоторых “тяжёлых” сценариях, например, при редактировании файлов в Photoshop CS3 суммарным объёмом 3 Гбайт, система оставалась очень отзывчивой и быстрой, так ни разу и не обратившись к файлу подкачки.
Если объём памяти снижен до 2 Гбайт, то приложения начинают сразу же “вылетать”, как только память в системе кончается, и Windows не может сохранить информацию в виртуальную память в файле подкачки. Ситуация становится особенно критичной, если нехватка памяти затрагивает один из системных компонентов Windows. Это может быстро привести к отключению интерфейса Windows Aero из-за краха графического драйвера. Помогает только перезагрузка системы.
Крах при выключенном файле подкачки.
Если же вы отключите файл подкачки при установленных 512 Мбайт памяти, то не сможете открывать даже такие мелкие приложения Windows, как “Блокнот”. Да и через некоторое время система сама “вылетает”, даже если вы не будете ничего делать.
В общем, мы не рекомендуем отключать файл подкачки, если у вас установлено немного памяти.
Проблема с 32-битными приложениями
Даже при использовании 64-битной версии Windows избавиться от наследия прошлого не получится. На сегодняшний момент “родных” 64-битных приложений очень мало, то есть большинство современных программ – это по-прежнему 32-битные версии. Чтобы выполнять эти приложения, Microsoft реализовала подсистему Windows-on-Windows 64 bit, также известную как WoW64. По своей сути WoW64 – это эмулятор 32-битных приложений, который состоит из трёх DLL-файлов: WoW64.dll, WoW64win.dll и WoW64cpu.dll.
В “Диспетчере задач” видны 32-битные приложения. Нажмите на картинку для увеличения.
Process explorer различает 32-битные…
…и 64-битные приложения.
Поскольку приложения работают в эмулированном окружении, то их производительность сложно оценивать объективно. Многие приложения работают медленнее, чем под “родной” 32-битной системой. Microsoft указывает, что быстрее могут работать программы, нагружающие подсистему памяти. В любом случае, наши тесты показали незначительную разницу в производительности.
Ещё одна проблема 32-битных приложений заключается в максимальной области памяти, которую может адресовать каждый процесс, а именно, 2 Гбайт. Это ограничение можно поднять до 4 Гбайт, используя специальные настройки.
Photoshop может использовать только 3 Гбайт памяти, даже если система оснащена 8 Гбайт. Нажмите на картинку для увеличения.
В итоге, даже если у вас установлено 8 Гбайт памяти или больше, каждое 32-битное приложение сможет использовать, максимум, 4 Гбайт. Единственное преимущество в том, что приложения будут хранить свои процедуры, которые в данный момент не используются, в памяти, а не в файле подкачки на жёстком диске, что производительность особо не увеличит.
На приведённом скриншоте видно, что файлы подкачиваются напрямую в память до достижения порога в 3 Гбайт. После этого Photoshop приходится записывать файлы на жёсткий диск. В результате нагрузка на CPU тоже уменьшается, так как жёсткий диск намного медленнее оперативной памяти, и процессор просто ждёт поступления данных.
“Родные” 64-битные приложения ориентированы на будущее, поскольку каждый процесс может адресовать до 8 Тбайт памяти. В любом случае, разработчикам придётся обновлять свои приложения. Простой перекомпиляции 32-битных приложений в 64-битный код недостаточно, поскольку при этом каждый процесс будет всё ещё ограничен 2 Гбайт.
Проблемы с драйверами
Подсистема WoW64 ограничена так называемым пользовательским режимом, то есть приложениями, запускаемыми пользователем. Что же касается режима ядра, то там все программы должны быть в 64-битном формате.
Поскольку все драйверы устройств требуют работы на уровне ядра, то 32-битные драйверы использовать не получится, даже если они написаны специально для Windows Vista. Кроме того, далеко не все драйверы устройств, которые Microsoft предлагает через Windows Update, доступны в 64-битном виде. Это относится и к устройствам, которые вы привыкли быстро подключать через USB.
Проблемы с драйверами могут, в частности, возникнуть и с такими экзотическими устройствами, как старые сканеры или COM-адаптеры, которые вы вообще, возможно, не сможете использовать под 64-битной Windows.
CoreTemp не заработала в стандартной конфигурации Windows.
Без корректно работающего драйвера приложение не смогло отобразить какие-либо параметры.
В некоторых случаях драйверы требуются, даже если вы не устанавливаете дополнительное “железо”. Один из таких примеров – приложения, которые считывают данные CPU или памяти через SM-Bus. Хотя CPU-Z и Speedfan работали без проблем, нам пришлось отключить драйвер CoreTemp, несмотря на то, что у него был заявлен 64-битный компонент. Проблемы могут возникнуть и с драйверами защиты от копирования, которые используют старые игры. С другой стороны, игры с логотипом “Games for Windows” будут работать безупречно.
Отключение гибернации
Если в вашей системе установлен большой объём памяти, то мы рекомендуем проверить настройки гибернации Windows (Hibernate). При настройках по умолчанию на жёстком диске будет создан файл hiberfil.sys, в который будет сбрасываться содержимое всей оперативной памяти при активной гибернации и выключении компьютера. Другими словами, если ваша система оснащена 8 Гбайт памяти, вы будете терять определённую ёмкость на жёстком диске, даже если вы никогда не воспользуетесь этой функцией.
Функция гибернации отнимает 8 Гбайт места на жёстком диске. Нажмите на картинку для увеличения.
Наконец, по мере того, как современные компьютеры оснащаются всё большими объёмами памяти, польза от функции гибернации становится всё более сомнительна. В конце концов, время записи 8 Гбайт данных на жёсткий диск во время выключения и считывания их во время запуска может занять больше времени, чем простой перезапуск Windows. Конечно, зависит от объёма памяти, установленного в системе. Если объём ОЗУ составляет всего 1 Гбайт, то такой объём и будет записываться на жёсткий диск.
Windows Vista больше не предоставляет доступ через “Панель управления” для отключения функции гибернации, в отличие от Windows XP. Однако метод выключения всё же есть. Достаточно выполнить команду powercfg -H off для отключения гибернации, а для повторного включения – powercfg -H on. Для выполнения команды требуются административные привилегии.
Тестовая конфигурация
Для наших тестов мы использовали следующую конфигурацию.
Тестовая конфигурация | |
Процессор | Intel Core 2 Duo E6850, 3,00 ГГц, FSB1333, 4 Мбайт кэша L2 |
Материнская плата | Gigabyte GA-X38-DQ6, Rev: 1.0, BIOS: F7 (02.01.2008) |
Память | takeMS 8 Гбайт, 4x 2 Гбайт DDR2-800 CL5,0-5-5-15, TMS2GB264D082-805AP |
Видеокарта | Gigabyte GV-RX385512H, Radeon HD3850 (RV670), 512 Мбайт, 670 МГц, 1660 МГц (DDR) память |
Жёсткий диск | Western Digital WD5000AAKS, 500 Гбайт, 7200 об/мин, 16 Мбайт |
DVD-ROM | Samsung SH-D163 |
Блок питания | Cooler Master 850W, RS-850-EMBA |
Программное обеспечение и драйверы | |
ОС | Windows Vista Enterprise |
Драйвер чипсета | Intel Chipset Drivers, 8.3.1.1009 (24.09.2007) |
Графический драйвер | ATI Catalyst 8.1, 16.01.2008 |
Наша тестовая система на материнской плате Gigabyte GA-X38-DQ6. Нажмите на картинку для увеличения.
Видеокарта Gigabyte GV-RX385512H. Нажмите на картинку для увеличения.
Жёсткий диск Western Digital WD5000AAKS. Нажмите на картинку для увеличения.
Память TakeMS TMS2GB264D082-805AP. Нажмите на картинку для увеличения.
Где взять 64-битную версию Windows?
Если вы уже используете Windows Vista и планируете перейти на 64-битную версию, то сначала следует определить, придётся ли вам покупать ещё одну лицензию. Покупателям версии Windows Vista Ultimate расстраиваться не придётся, поскольку установочный диск содержит 32- и 64-битные версии ОС.
Для всех других версий вы можете заказать установочные диски 64-битной ОС напрямую от Microsoft, и заплатите минимальные деньги только за почтовые расходы. Но для этого вам необходимо обладать полной розничной (“коробочной”, retail) версией Vista.
Если вы используете OEM-версию, которая предустановлена на вашем компьютере, то вы не сможете воспользоваться этим предложением. То же самое касается версий для сборщиков систем (DSP/SB).
Таким образом, владельцы полных (“коробочных”) версий Vista без проблем получат модернизацию, а пользователям других вариантов ОС придётся остаться в стороне. В принципе, в таких случаях Microsoft рекомендует обращаться к OEM-поставщику. Если и это не поможет, то лицензию на ОС придётся покупать заново.
Что интересно, вам не потребуется новый ключ продукта для 64-битной версии. Тот, что поставляется с вашей копией Windows Vista, подходит как для 32-, так и 64-битных версий.
Заключение: 8 Гбайт улучшают эффективность и комфорт
Наши тесты привели к ясному заключению. Если вы часто одновременно запускаете приложения, которым требуются большие объёмы памяти, то обновлять систему до 8 Гбайт рекомендуется. Тогда работа и, особенно, переключение между приложениями будут выполняться намного быстрее, чем на типичной 2-Гбайт конфигурации. Кроме того, такая конфигурация будет полезна и для современных 3D-игр, которые сами по себе занимают больше 1 Гбайт памяти, если в фоне у вас работают какие-либо другие приложения. При этом долгое время запуска приложений Windows останется в прошлом, как и постоянная подкачка с жёсткого диска. Самое лучше, что сегодня такая модернизация обойдётся недорого – всего около $200.
Опытные пользователи могут дать своей системе ещё один прирост производительности, отключив файл подкачки совсем. Но тогда придётся постоянно следить за состоянием системы, чтобы не столкнуться с внезапным крахом из-за нехватки памяти.
Большие объёмы памяти особенно полезны при работе с такими виртуальными машинами, как VMware и Microsoft Virtual PC. Если они будут получать достаточный объём ОЗУ, то пользователю уже не придётся останавливать одну машину, чтобы запустить другую; достаточно будет просто переключиться между ними.
В любом случае, даже опытным пользователям следует подготовиться к трудностям перехода на 8 Гбайт ОЗУ. Будьте готовы встретиться с проблемами драйверов – и не только для экзотического “железа”. Некоторые системные утилиты тоже могут отказаться работать. С другой стороны, падение цен на память приведёт к быстрому распространению 64-битных систем, так что и проблема с драйверами должна остаться в прошлом.
Если у вас нет 64-битной версии ОС, вы можете заказать её напрямую от Microsoft и заплатить только за почтовые услуги. Увы, но владельцам OEM-версий Vista не так повезло: здесь всё зависит от доброй воли поставщика вашего ПК, поскольку Microsoft не поддерживает такие версии напрямую. В худшем случае придётся раскошелиться на ещё одну лицензию.