НовостиНовости
 

Ноутбуки, КПК и аксессуары

Цифровые фотоаппараты, камеры и аксессуары

Системные платы, процессоры, чипсеты

Носители информации (HDD, Flash-накопители, DDR)

Мониторы, видеокарты, TV-тюнеры и карты видеообработки

Принтеры, сканеры и копировальная техника

Корпуса, блоки питания, системы охлаждения

Контроллеры (FireWare 1394, Bluetooth, IDE, SATA, COM, LPT, электронные комутаторы)

Сети Ethernet и Wi-Fi, модемы Dial-up и ADSL, инструменты

Телефония (АТС, факсы, телефоны и радиотелефоны)

Источники питания (ИБП, аккумуляторы, стабилизаторы)

Акустические системы, звуковые карты

Манипуляторы (клавиатуры, мыши, джойстики, рули)

Программное обеспечение

Максимум из оперативной памяти объемом 4 Гб в среде Windows

Вироусология - наука о вирусах

Краткий обзор и сравнение версий Windows Vista

Новые особенности в операционной системе Windows Vista

Поддержка в Windows памяти более 4Гб

DirectX 10

Kaspersky Internet Security 7.0

AVerTV 6 — новый программный продукт от компании AverMedia

ABBYY FineReader 8.0 Professional Edition

Антивирусная защита nod32

Отличия Windows XP Professional и Windows XP Home

Системные требования Windows Vista

Приводы CD-DVD, картридеры

DVD и MP3-плееры

Боксы и Mobile Rack

Бумага и аксессуары для чистки ПК

Гарнитура

Максимум из оперативной памяти объемом 4 Гб в среде Windows 

«640 Кб должно хватить всем!» – снова и снова нам приходится вспоминать это знаменитое и теперь уже звучащее так наивно изречение Билла Гейтса...

Установка четырех и более гигов памяти в систему может быть чревата проблемами – далеко не весь ее объем будет виден и, тем более, доступен приложениям. Причина этих неудобств – 32-битные операционки попросту не могут адресовать более четырех гигабайт памяти (2^32=4294967296 – вот предел адресного пространства для такой среды) без дополнительных ухищрений. 64-битные редакции, как правило, работают с предоставленным им объемом без проблем – их, слава богу, такие проблемы не затрагивают за счет куда большего адресного пространства. Итак, проблема касается объемов более четырех гигабайт, но как же быть тем, кто установил, скажем, четыре планки по 1 Гб, а получает в лучшем случае 3.5-гигабайтный «огрызок»?

Начнем мы с проблем, которые могут настигнуть еще до загрузки операционки.

BIOS

Итак, первая напасть, которая часто одолевает пользователей, установивших 4 Гб памяти в систему, – это неправильное определение ее объема в BIOS’е. Как правило, в этом случае отображается от чуть менее 3 Гб до примерно 3.8 Гб – в зависимости от системы и ее конфигурации. В этом случае первое, с чего стоит начать, – это проверка материнской платы на совместимость. В руководстве к плате объем поддерживаемой памяти должен составлять не менее 4 Гб. Для серверных мамок этот показатель, само собой, может быть гораздо больше, но в данном материале мы будем говорить именно о desktop-решениях, равно как и о 32-битных операционных системах.

Теперь поясним, куда же деваются «лишние» мегабайты. Дело в том, что все 32-битное адресное пространство невозможно отдать только лишь под приложения. Ресурсы системы, будь то чипсет, PCI-устройства и особенно видеокарта, также нуждаются в «месте под солнцем», то есть им необходимо присвоить определенный диапазон адресов. И если масштаб, в котором может действовать BIOS, составляет всего 4 Гб, то объем памяти, зарезервированный под оборудование, приходится отделять от оперативки. В противном случае неизбежно могут возникнуть конфликты между приложениями и системными устройствами.

Современные материнские платы решают эту проблему несколькими способами. Некоторые модели изначально правильно определяют объем памяти без каких-либо ухищрений – считайте, повезло :). Другие решения требуют нашего вмешательства – как правило, в их BIOS’ах присутствует настройка «Memory Remap Feature» (название может варьироваться). Эта функция переназначает сегмент памяти, выделяемый устройствам, за пределы четырех гигабайт – таким образом, система начинает видеть твою память целиком уже на этапе загрузки. Если же подобной функции или ее вариантов в BIOS’е нет, а система упорно не желает видеть всю память, нам остается только посочувствовать – в этом случае «медицина бессильна». Впрочем, всегда остается возможность обновить прошивку материнской платы до последней версии – вполне вероятно, что это исправит проблему или хотя бы добавит в BIOS вожделенный пункт. Заметим, что в случае с Windows XP SP2 включение данной опции не только не принесет пользы, но и усугубит ситуацию, хотя об этом мы поведаем чуть ниже.

Если матплата не имеет в настройках BIOS Memory Remap Feature, это еще не значит, что она не работает с увеличенным объемом памяти. К примеру, когда мы установили четыре планки по 1 Гб в Gigabyte GA-965P-S3, плата сразу определила ровно 4 гигабайта, при этом в BIOS’е никаких настроек по перемещению выделяемого под устройства диапазона адресов не было.

Итак, когда система определила всю доступную ей память, наступает момент перейти к следующему пункту – поддержке на уровне операционных систем. Но сначала еще одно лирическое отступление…

PAE и AWE – красивый «обман»

Теперь вы знаете, что адресное пространство для 32-битной операционки ограничено четырьмя гигабайтами. Спешим обрадовать – эта проблема во многих случаях решаема и без использования 64-битных осей. Более того, о ее решении позаботились задолго до того, как вы впервые подумали о возможности установки в систему четырех гигов – в 1995 году. Именно тогда на арену вышел процессор Intel Pentium Pro с поддержкой технологии PAEPhysical Address Extension

Что же означает эта загадочная аббревиатура? Если вкратце, то данная технология позволяет процессору работать не с 32-битной, а с 36-битной адресацией, теоретически расширяя доступные ему адреса до 2^36 = 68719476736 байт (64 Гб). При этом само адресное пространство остается 32-битным, то есть равным 4 Гб, но за счет измененного отображения на него физической памяти становится возможным использование куда большего ее объема.

Разумеется, поддержка PAE имеется и в Windows – в этом и содержится ключ к детектированию полного объема оперативной памяти. Проблема в том, что не всегда технология включена по умолчанию – для ее использования должна загружаться специальная версия ядра. На данный момент поддержка PAE имеется у следующих операционок:

  • Windows 2000 Advanced Server
  • Windows 2000 Datacenter Server
  • Windows XP (все версии)
  • Windows Server 2003 (and SP1), Standard Edition
  • Windows Server 2003, Enterprise Edition
  • Windows Server 2003, Datacenter Edition
  • Windows Server 2003 SP1, Enterprise Edition
  • Windows Server 2003 SP1, Datacenter Edition
  • Windows Vista (все версии, кроме Starter Edition – у нее поддержка памяти ограничена 1 Гб)

Заметим, что если процессор поддерживает аппаратную антивирусную защиту NX-bit, то, вполне вероятно, что PAE в системе уже включена. Дело в том, что поддержка NX-bit со стороны Windows может работать только при включении данной опции, причем Windows XP SP2 и 2003 Server SP1 в большинстве случаев сами определяют наличие этого бита и устанавливают, какое ядро необходимо загружать. Если же PAE отключена (об этом можно узнать в окне «Свойства системы» или же с помощью утилиты вроде Everest), то ее необходимо активировать. Как это сделать, мы поясним ниже на примере различных операционок.

Теперь о плохом: даже если Windows определит всю доступную память, то это не принесёт много пользы. Причина в том, что область памяти за пределами 4 Гб в 32-битной среде может быть доступна только приложениям, написанным с использованием интерфейса AWE (Address Windowing Extension). Проще говоря, если PAE – это поддержка большого объема памяти со стороны железа и операционки, то AWE – это ее поддержка со стороны софта. И вся проблема в том, что такой поддержкой обладает разве что софт, оперирующий огромными объемами данных – к примеру, СУБД или программы, выполняющие сложные научные расчеты. Играм или офисному софту это попросту не нужно, соответственно, и прироста производительности в них не видно. А вот какой-нибудь Microsoft SQL Server получит очень даже ощутимую пользу!

Есть и еще один способ «хака» памяти, доступной приложениям. Далеко не все знают, что виртуальное адресное пространство, которое составляет 4 Гб, делится системой ровно пополам: 2 Гб на приложения и 2 Гб под системное ядро. Фактически, ни один процесс не может заполучить в свое распоряжение более 2 Гб памяти – еще одно доказательство того, что рядовому пользователю большой объем оперативки попросту ни к чему. Впрочем, есть способ обойти и это ограничение. Если добавить в файл C:\boot.ini к параметрам загрузки команду /3GB, то память перераспределится следующим образом: объем, выделяемый под ядро, ужмется до 1 Гб, а на процесс станет выделяться уже три гигабайта! Но и здесь мы натыкаемся на пресловутую поддержку со стороны софта – большинство приложений предоставленной им радости попросту не поймет. А поймет ее только софт, скомпилированный со специальным ключом /LARGEADDRESSAWARE – это, опять же, далеко не игры, и даже не любимый «Фотошоп». Заметим, что при использовании операционной системы с поддержкой большого количества памяти (к примеру, до 32 Гб) ключ /3GB сократит количество доступной памяти до 16 гигов. То есть, если в твоем сервере отображается 16 Гб, а установлено гораздо больше – ищите проблему в boot.ini и безжалостно удаляйте.

Теперь давайте посмотрим, что могут предложить нам текущие операционки от Microsoft…

Windows 2000

С этой операционной системой не все гладко: старовата она для работы с большими объемами памяти, и с PAE работают только две версии: Advanced Server и Datacenter Server. Они, впрочем, поддерживают до 8 и 32 Гб памяти соответственно, а это весьма неплохая перспектива для 32-битной среды! Итак, чтобы увидеть четыре и более гига в данной системе (при условии того, что BIOS видит весь объем), достаточно добавить в boot.ini ключ «/PAE» (без кавычек) – после этого ОС должна увидеть всю имеющуюся память. Использовать ее она, разумеется, будет только при наличии соответствующего софта, но ведь если вы используете такие операционки, то и софт найдется, правда?

Windows XP

Самое интересное в нашем рассказе то, что наиболее популярная ОС от Microsoft хуже всего оснащена поддержкой большого количества памяти. Если не сказать большего – вообще не оснащена. А обиднее всего, что так было не всегда, а лишь до появления пакета обновлений Service Pack 2 – именно в нем возможности PAE были значительно урезаны. Если быть точнее, то во избежание конфликтов доступное адресное пространство было ужато с 36 бит до стандартных 32 бит, а сама PAE стала использоваться разве что для поддержки NX-бита. В результате это приводит к забавным казусам – при включении опции «Memory Remap Feature» BIOS начинает видеть больше памяти, а Windows, наоборот, меньше! К примеру, если до включения опции BIOS определял 3.5 Гб, то после он видит уже 4 Гб, в то время как в Windows определяется всего 3 Гб! А дело все в том, что Memory Remap Feature переносит память за пределы четырех гигабайт блоками по гигабайту. То есть если после выделения памяти под железо BIOS определял 3.5 Гб, то после «выноса» этой памяти за пределы адресного пространства остается всего 3 Гб. Соответственно, если первоначально было видно, к примеру, 2.8 Гб, то «передислоцировалось» уже 2 Гб, и столько же оставалось Windows, которая без нормальной поддержки PAE попросту не могла видеть то, что находилось за пределами ее восприятия.

Отсюда неутешительный вывод: Memory Remap Feature для Windows XP SP2 применять бесполезно – это принесет лишь вред. Только два варианта могут заставить XP видеть 4 Гб памяти – использование версии Service Pack 1 (на что вряд ли кто-то пойдет), либо же установка 64-битной версии операционки.

Windows Server 2003

В сравнении с Windows XP, это детище Microsoft гораздо лучше обучено использованию больших объемов памяти. Единственный представитель линейки, у которого, насколько нам известно, имеются проблемы с режимом PAE – это Windows Server 2003 Standard Edition SP1, причем он не только «болен» той же проблемой, что и XP, но и «заразился» ей точно так же – с выходом последнего сервис-пака. Соответственно, на всех остальных версиях 4 Гб памяти должны определяться элементарно – сразу после включения Memory Remap Feature в BIOS и добавления параметра «/PAE» в boot.ini (последний, возможно, уже будет выставлен).

Windows Vista

Пользователей Vista проблема поддержки 32-битной версией 4 Гб памяти беспокоит особенно сильно – ведь, по сути, такой объем дорогущей оперативки приобретается именно ради нее. Но здесь мы наблюдаем все то же самое: от 2 до 3.5 Гб видимой памяти вместо четырех, как того требует справедливость. Есть ли решение у данной проблемы? В отличие от Windows XP, действительно есть, и довольно тривиальное!

Файла boot.ini в Vista нет – вместо него конфигурацию загрузки можно редактировать специальной утилитой BCDEdit.exe. Итак, все, что требуется сделать, это войти в командную строку (cmd) и набрать там следующее:

BCDEdit /set PAE forceenable

BCDEdit /set nolowmem on

Первый пункт здесь форсирует поддержку PAE, ну а второй загружает системные файлы и драйвера в область за пределами 4 Гб, высвобождая место в адресном пространстве. После перезагрузки ОС должна увидеть все 4 Гб памяти, ну а стоило ли это затраченных усилий, решайте сами. А заодно и протестируй систему на стабильность – вполне возможно, что теперь ее поубавится.

Выводы

Как ты уже понял, установка большого объема памяти в систему – не такая уж тривиальная задача, особенно в случае с использованием «домашних» операционок XP и Vista. И на наш взгляд, наиболее правильный способ задействовать весь объем оперативки – установка 64-битной операционной системы. Все остальные методы, рассмотренные в статье, можно воспринимать лишь как «хаки», и не удивляйтесь, если научившись использовать всю доступную память, винда вдруг начнет нещадно глючить. В любом случае мы не будем советовать, какую версию ОС использовать, – это решать вам, в зависимости от потребностей и целей.

Редактирование boot.ini, файла с конфигурацией загрузки Windows, осуществляется так:

1) Включите отображение скрытых файлов и папок.

2) Найдите boot.ini в корневом каталоге системного диска (обычно C:\) и снимите атрибут «только чтение».

3) Открыв файл, вы увидите примерно следующее (в зависимости от ОС):

[boot loader]

;timeout=3

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect

4) Изменения вносятся в пункт, касающийся необходимой операционки (в данном случае она одна). Если необходимо внести параметр /3GB, то результат должен выглядеть так:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect /3GB

5) Сохраните файл и выставьте параметр «только чтение» обратно.

У ключа /3GB есть аналог и в Windows Vista. Более того, ты можешь гораздо более гибко регулировать, сколько памяти выделять пользовательским процессам, а сколько оставлять ядру. Для этого используй команду «BCDEdit /set IncreaseUserVa МБ», где МБ – число, лежащее в пределах от 2048 до 3072 и составляющее количество памяти, выделяемой на процесс. 4096 минус это число – столько мегабайт будет выделено ядру операционной системы.

Источник: http://www.xard.ru

Автор: Дмитрий Окунев

Прайс-лист: программное обеспечение и оперативная память

Написать нам письмо Карта сайта В начало сайта
Статьи   Программное обеспечение   Максимум из оперативной памяти объемом 4 Гб в среде Windows

Rambler's Top100