4 гигабайта оперативной памяти


Объем имеет значение? 4 ГБ, 8 ГБ, 16 ГБ — сколько нужно тебе?

Какой объем оперативной памяти подойдет для твоих задач? До сих пор в интернете встречаются мнения «экспертов», что больше 8 ГБ в устройство устанавливать глупо, и что этого объема хватает для всего на свете. Так ли это и для каких задач нужно больше памяти?

Принцип работы

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

Оперативная память содержит всю информацию, которую нужно принять центральному процессору компьютера. Хотя пользователи и недооценивают важность оперативного запоминающего устройства, оно — важнейшая составляющая компьютера. Именно от его объема и частоты зависит общая работоспособность системы, отсутствие зависаний и уровень производительности при многозадачности.

Так сколько нужно?

Действительно, в сборке персонального компьютера или ноутбуке достаточно 8 ГБ оперативной памяти. Этого вполне хватит для просмотра видео, одновременного использования нескольких программ, запуска браузера с десятком открытых вкладок.

То, что нужно от ноутбука для учебы, работы и развлечений.

С такими задачами превосходно справится лэптоп вроде Lenovo IdeaPad 510-15ISK. Если вы используете много приложений одновременно, есть смысл увеличить количество оперативной памяти. Некоторые современные игры и тяжелые приложения могут требовать больше 8 ГБ.

Не только объем оперативной памяти делает ноутбук игровым. В  линейке Lenovo Legion, созданной геймерами для геймеров, лэптопы оснащены производительными процессорами, игровыми видеокартами и улучшенной двухвентиляторной системой охлаждения. Поэтому Lenovo Legion Y520 и его «собратья-легионеры» способны запускать игры 2017 года с высокими настройками графики. Естественно, их производительность достаточна и для многих других  требовательных задач.

Хотите подарить ноутбук ребенку к началу нового учебного года для создания презентаций, рефератов и творчества? Будущему студенту-программисту требуется достойный лэптоп для работы, учебы и развлечений, на котором спокойно можно «кодить»? 8 ГБ хватает для офисных приложений вроде PowerPoint, Word и Excel, «посиделок» в социальных сетях, просмотра видео на YouTube и прочих повседневных активностей.

На ноутбуке с 8 ГБ оперативной памяти комфортно работать в Adobe Photoshop и Adobe Premier с простыми проектами. Ни о каком 3D-моделировании, понятное дело, не может быть и речи. Для работы с «тяжеловесной» компьютерной графикой понадобится 16 ГБ и более.

4 ГБ — объем, предназначенный для решения простых задач и офисных приложений. Этот объем уходит, а современные приложения запрашивают гораздо больше ресурсов оперативного запоминающего устройства. Если 8 ГБ — стандарт, то 4 ГБ — «абсолютный минимум». Такого объема памяти хватает для спокойного веб-серфинга в две-три вкладки, умиротворяющей сессии в игре десятилетней давности, а также просмотра видео.

Если ваш бюджет строго ограничен, а вам нужна полноценный лэптоп для работы, стоит рассмотреть такой вариант, как Lenovo IdeaPad 320-15IAP — с базовыми задачами такой ноутбук справится без проблем.

А что с 16 ГБ?

Заявить, что 16 ГБ оперативной памяти необходимы для рядового пользователя, нечестно. Если вы работаете с видеоредакторами, компьютерной графикой или вы — заядлый геймер, устройство с 16 ГБ ОЗУ будет рациональным решением. Конечно, для профессиональной деятельности понадобится даже больше памяти, но это исключительный случай.

Кстати, для архитекторов, инженеров и 3D-дизайнеров созданы настоящие «монстры» вроде ThinkPad P71 — работает ноутбук на базе серверного микропроцессора Xeon и профессиональной видеокарты Nvidia Quadro P5000M. Профессиональные видеокарты справляются с графикой и сложными вычислениями значительно лучше, чем даже самые мощные игровые видеокарты вроде Nvidia GeForce GTX 1080Ti.

Такие игры, как Mass Effect: Andromeda в разрешении 4K потребляют до 13 ГБ памяти. С нынешними темпами развития индустрии компьютерных развлечений системы, работающие на базе 8 ГБ оперативной памяти, скоро устареют и потребуют обновления. В сфере профессиональной все иначе: 16 ГБ — минимум, а для большинства задач пригодится 32 ГБ и больше.

Подведем итоги:

  • 4 ГБ — «абсолютный минимум» для работы системы при почти полном отсутствии многозадачности. Об играх на таком ПК/ноутбуке стоит забыть;
  • 8 ГБ — стандарт, которого хватает для большинства повседневных активностей, игр и работы в графических/ видеоредакторах;
  • 16 ГБ — объем памяти, нужный для работы с большими проектами, а также  для самых требовательных игр;
  • 32 ГБ и больше — топовый вариант для тех, кто хочет максимум производительности для сложнейших задач. Необходимо только для профессиональной деятельности.

Во многих ноутбуках Lenovo можно увеличить объем оперативной памяти. Узнать о возможностях твоей модели можно у консультантов shop.lenovo.ua. А саму замену планки рекомендуем доверить специалисту сервисного центра.

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

Если развитие и движение вперед — твой приоритет, будь на волне инноваций. Будь с Lenovo!

lenovo.ua

Как Сделать Апгрейд: Добавляем Оперативную Память

Апгрейд компьютера (т.е. обновление его характеристик, добавление мощности) – задача несложная и недорогая, а старый комп оживёт и вновь порадует скоростью и отзывчивостью.

Простейший способ «наворотить» (проапгрейдить) старый ПК своими руками – добавить оперативную память. Процедура займёт минут 10 у неподготовленного пользователя: добавить ОЗУ не сложнее вкручивания лампочки. Цена: от 400 рублей за 2 гигабайта, или около 1000 рублей за приличные 4 гига оперативки DDR 3. Более старая DDR 2 обойдётся ещё дешевле, да и актуальный стандарт DDR 4 стоит не слишком дорого. Цены взяты с мегапопулярной барахолки Авито конца 2019 года.

Оглавление:

  • Что даёт увеличение ОЗУ
  • Как выбрать и купить нужную оперативку
  • Можно ли добавить ОЗУ в ноутбук или компьютер
  • Совместимость DDR: что нужно знать
  • Перед покупкой ОЗУ
  • Как добавить / поменять оперативную память в ноутбук своими руками
  • Практические примеры апгрейда DDR

Что даёт увеличение ОЗУ

Большую ёмкость оперативной памяти можно сравнить с багажником автомобиля. Свободное пространство не увеличит скорость, но при перевозке грузов крупный объём попросту незаменим.

Оперативная память — как место в автомобиле. На скорость толком не влияет, но позволяет работать с гораздо более тяжёлыми и габаритными грузами.

В случае с ПК, добавление оперативной памяти означает возможность одновременно запускать больше программ. Десяток веб-страниц в 2-3 браузерах вместе с Вордом, при этом имея в фоне антивирус и пару мессенджеров – легко, когда оперативки хватает с запасом. По меркам 2020 года и далее, «мозги с запасом» исчисляются ёмкостью хотя бы в 6-8 гигабайт, а лучше побольше. 8-гигабайтовая ёмкость памяти у обычного компьютера заполняется довольно редко, но и программы не стоят на месте, отжирая всё больше и больше пространства под собственные нужды.

Будет ли компьютер работать быстрее? Да, и намного – но только когда запущено несколько приложений. Но не стоит ждать прироста скорости при паре открытых вкладок и небольшой нагрузке.

вверх

Как выбрать и купить нужную оперативку

Крохотная утилита CPU-Z размером всего в пару мегабайт – главный помощник в славном деле апгрейда всего компьютера, а не только ОЗУ. После установки программка расскажет всё об объёме и типе памяти, а ещё – о наличии свободных слотов (разъёмов) для добавления новой планки.

Рис. 1: Вкладка Memory утилиты CPU-Z

Вкладка Memory в программе CPU-Z указывает на тип (Type) и объём (Size) ОЗУ.

  • Если объём составляет 4 гигабайта и меньше, то апгрейд – по-настоящему нужная процедура.
  • 6 гигабайт – можно докупить чуток.
  • 8 и выше – почему бы и не обновить компьютер, хотя особой необходимости в этом нет (судя по программным требованиям 2019-2020 года).
  • Отдельная тема про 2 гига и ниже: срочно, прямо сейчас, докупайте ОЗУ.

Типы памяти:

  • Древняя DDR 1 (или просто DDR), начало 2000х. Типичный объём – 256 Мб – 1 гигабайт, и редко получится сделать больше. Вряд ли такой компьютер стоит «наворачивать»: разве что новая планка достаётся бесплатно, а поменять ПК нет возможности.
  • Старенькая, но ещё актуальная DDR 2: эпоха до сих пор неплохих процессоров Core 2 Duo. Такой компьютер вполне подлежит апгрейду, а при некотором старании способен потягаться в скорости с современными Core i Автор этой статьи вполне комфортно чувствует себя за таким компьютером, оснащённым серверным четырёхядерником Xeon с 4 безумно мощными ядрами и 6 гигами оперативки (хотя именно её порой не хватает).
  • DDR 3: совсем недавно была актуальной памятью, стоит очень недорого, а компьютер остаётся современным ещё на несколько лет.
  • Ультрасовременная DDR 4: более свежих типов в ближайшие годы не предвидится, а цены на «четвёрку» уже давно радуют глаз и не бьют по карману.
вверх

Можно ли добавить ОЗУ в ноутбук или компьютер

Обычно – да. Есть редкие ПК (и чаще это встречается в ноутбуках), когда свободных разъёмов-слотов нет вообще. Но даже в этом случае можно «выбросить» (а лучше – продать) старую ОЗУ небольшой ёмкости, прикупив и установив более объёмистую планку. Если в компе работает одна-единственная планка 2 гигабайта, а разъём всего один (да-да, это про ноуты, да и то про самые бюджетные), то её замена на 4-гиговую модель не просто ускорит ПК, а, скорее, вернёт его к нормальной вычислительной жизни.

Рис. 2: как проверить наличие слотов DDR

Как узнать наличие свободных слотов в компе? Вкладка SPD утилиты CPU-Z расскажет об этом всё. Для продвинутых ПК характерно наличие 4 слотов (обычно заняты 1 или 2), для ноутбуков – двух слотов (чаще занят лишь один). Взгляните на ниспадающий список Memory Slot Selection во вкладке SPD и просмотрите каждый слот: утилита отобразит модель и марку каждой планки, её частоту и объём. Если слот свободен, то вкладка будет пустой, как на скриншоте ниже:

Рис. 3: свободный слот для ОЗУ

вверх

Совместимость DDR: что нужно знать

В свободный слот можно установить любой объём ОЗУ соответствующего типа. Разумеется, DDR 2 не совместим с «тройкой» или «четвёркой» ни физически, ни программно. Чужие модули просто не влезут в разъём. Объём памяти увеличится на объём новой планки. Было 2 Гб, добавили 4 Гб – стало 6 Гб. Было 4, добавили 4 = стало 8. Исключение – стремительно устаревающие x32-версии Windows, которые способны работать с объёмом не более 4 Гб, да и то покажут лишь 3,2-3,5 гигов.

Будут ли работать вместе модули DDR разного объёма? Да.

Будут ли работать модули DDR разной частоты? Да, компьютер сам выставит нужные частоты, и результатом будет частота самого медленного модуля. Если добавить к DDR 3 стандарта 1333 МГц (333) планку частотой 1600 МГц (400), то результирующей частотой будет именно 1333. Частота ОЗУ не столь важна для быстродействия как её объём.

Можно ли купить для ПК ноутбучную память? Нет, они физически разные. Ноутбучные модули SO-Dimm категорически несовместимы с «десктопными».

Рис. 4: снизу – ноутбучный модуль SO-DIMM, сверху – десктопный DIMM. Хотя обе оперативки относятся к классу DDR 3, они несовместимы между собой.

Нужно ли обновлять драйверы или настраивать ОС после добавления ОЗУ? Нет, как правило. Если версия Windows – x64, то беспокоиться не о чем. В случае x86, при добавлении ОЗУ до 4 Гб и выше, придётся установить более продвинутую версию x64 – и да, делать это нужно будет с нуля. Стоит ли оно того? Разумеется, да.

вверх

Перед покупкой ОЗУ

Следует обязательно убедиться в:

  1. Поколении нужной DDR (1-4).
  2. Типе модуля (ноутбучный SO-Dimm или десктопный Dimm).
  3. Желаемом объёме: больше – лучше.

Покупать б/у планки ОЗУ практически безопасно. Оперативная память довольно редко подвержена сбоям. Проверить её на неполадки можно за несколько минут (отлично подойдёт утилита MemTest). С продавцом следует заранее договориться о возможности возврата в течение 1-2 дней в случае несовместимости. Иногда случается так, что полностью подходящая планка отказывается запускаться вместе с уже имеющейся. Случаи несовместимости достаточно редки. Но даже если производитель ОЗУ один и тот же, это такое всё-таки происходит время от времени. Подстраховка – честное слово продавца о возврате в случае проблем несовместимости.

Покупка новых модулей DDR 3 или 4 возможна, а более старые типы ОЗУ практически не встречаются на прилавках.

вверх

Как добавить / поменять оперативную память в ноутбук своими руками

Очень хорошая статья на нашем сайте про добавление ОЗУ своими руками.

Практические примеры апгрейда DDR

  1. Девушка Катя жаловалась на «постоянно тормозит ноутбук», особенно когда открывала по 5-10 вкладок. Быстрая диагностика показала: слабенький процессор Celeron вполне современного поколения Haswell (4 поколение Core) не загружался даже на 50% из-за радикального недостатка ОЗУ: всего-то 2 гигабайта. После того, как Катя (своими руками!) воткнула второй модуль DDR 3 ёмкостью 2 Гб, работать стало гораздо проще: пара браузеров, Ворд на пару с Excel, мессенджеры и прочие повседневные программки теперь не «едва работают», а летают – как и должно быть. Цена вопроса – 7 долларов.
  2. Программист Тимур, обладая весьма приличным Core i5 четвёртого поколения, склонялся к минимализму. «Зачем мне больше, если и так есть 8 Гб»? Восьми гигов ему, тем не менее, хватало далеко не всегда. Наконец, человек созрел для ещё +8 гигабайт = 16 Гб. Теперь экспериментирует и с виртуальными машинами, и с прочими прелестями IT-прогресса. Да и общая скорость компа чуток возросла за счёт появившейся двухканальности и некоторыми изменениями файла подкачки. Цена вопроса – 25 долларов за весьма современную модель DDR 3 ёмкостью 8 гигабайт.
  3. Учительница Анастасия, имея довольно старый ноут на базе i5 Sandy Bridge, жаловалась на те же тормоза. 6 гигабайт ОЗУ были забиты практически полностью уже после открытия пары программ. Замена одной двухгиговой планки на 4-гиговую решила все проблемы. Старую продали за 5 долларов, новую взяли за 10.
  4. Ребята сидели на древнем Core 2 Duo всего-то с одним гигабайтом. Компьютер толком не работал, а потому его едва включали. Ну правильно, то ещё издевательство над психикой. Выбросив старую память, прикупили 2 модуля DDR 2 по 2 Гб. Компьютер раскрылся полностью: до сих пор достаточно мощный процессор с лёгкостью тянет все базовые потребности, не отвлекаясь больше на тормоза, связанные с радикальным недостатком «мозгов». Сколько? Один модуль достался бесплатно, другой — за 10 баксов.

***

Как ещё можно проапгредить компьютер? Отзывчивее всего будет установка сверхскоростного диска SSD вместо постепенно устаревающих медленных винчестеров HDD. Для справки – накопитель типа HDD – едва ли не самое тормознутое устройство среди прочих компонентов ПК. Увеличив его скорость раз в 5-7 (покупкой SSD), можно надолго забыть о покупке более нового ноутбука или десктопа. Да и при такой покупке диск SSD можно и нужно перенести на новый девайс.

Замена видеокарты на более производительную – другая простейшая процедура, и не всегда этот апгрейд стоит дорого. Другой вопрос, нужно ли это при отсутствии интереса к играм…

Почти всегда, особенно в случае старых компьютеров (возрастом 5-10 лет) можно поменять процессор на значительно более быстрый – того же поколения, такого же разъёма. К примеру, сверхтоповый серверный Xeon 5460 для платформы LGA 775, некогда стоивший более 1200 долларов, обойдётся сегодня лишь в 30-40 баксов. Очень недорого будет и поменять слабенький Core i3 старых поколений на флагманский Core i7 или мощный середнячок i5.

В ближайшие недели на WooComp.ru ожидайте эти и другие инструкции по апгрейду ПК своими руками. Будет а) недорого, б) практично, в) легко и понятно.

woocomp.ru

Четыре гигабайта памяти - недостижимая цель?

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

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

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

А вот рядовые пользователи лишь недавно получили возможность приобрести по приемлемой цене компьютер с четырьмя гигабайтами ОЗУ или расширить до этого предела память в уже имеющемся компьютере. Поэтому количество вопросов «Почему Windows не видит все мои четыре гигабайта» в последнее время увеличивается даже не в арифметической, а в геометрической прогрессии.

Ответ на этот вопрос начнем с небольшого экскурса в теорию организации ЭВМ и в историю развития семейства этих машин, совместимого с IBM PC.

Оперативная память ЭВМ практически всегда работала на несколько порядков быстрее, чем устройства внешней памяти или ввода-вывода. Поэтому для разработчиков было вполне логичным разделить операции обращения к ОП и к другим устройствам. К памяти шло непосредственное обращение, а операции ввода-вывода и работа с внешними устройствами выполнялись через специальные регистры - порты. С другой стороны, такое разделение усложняло систему команд, и в ряде моделей для обращения к устройствам была выделена область адресов памяти, в которой и размещались регистры устройств. По второй модели, в частности, была спроектирована знаменитая PDP-11: ее шестьдесят четыре килобайта адресного пространства были разделены на две части - 56 для оперативной памяти и восемь для устройств. Установка модуля ОЗУ полного объема (64 КБ) приводила к тому, что одна восьмая его часть просто не могла быть использована.

Компания Intel с самого начала, с модели 4004 использовала первый подход: одно адресное пространство для ОЗУ и ПЗУ, а другое, отдельное пространство портов ввода-вывода - для остальных устройств. Такое решение, конечно, давало возможность полностью использовать все адресное пространство под память. Но оно имело и отрицательные стороны. Обращение к портам обычно занимает больше времени, к тому же оно не совместимо с технологией прямого доступа в память, заметно увеличивающей скорость обмена данными и разгружающей центральный процессор.

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

Если взять классический ПК, выпущенный в 1981 году, то его адресное пространство было поделено на две части в соотношении пять к трем. Первая часть отводилась для ОЗУ, а вторая - для ПЗУ самого компьютера (программа самотестирования - POST и базовая система ввода-вывода - BIOS) и для ПЗУ и ОЗУ устройств. Уже самый первый видеоадаптер MDA имел свою оперативную память, находящуюся в общем адресном пространстве памяти.

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

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

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

Впрочем, как оказалось, на самом деле решение вовсе не было опрометчивым: для работы видеоускорителей жизненно важна возможность прямого доступа драйвера к видеопамяти. Ведь альтернативой является пословная запись данных в порт, и тогда можно забыть, к примеру, о современной графике в играх. Чтобы получить примерное представление, как бы это выглядело, можете сравнить поведение дисковой системы в режиме прямого доступа в память (UDMA) и в режиме программного ввода-вывода (включите режим PIO 1 в настройках контроллера дисков, только не забудьте потом вернуть исходные настройки).

Итак, в IBM PC/386 и во всех последующих совместимых компьютерах (а именно эта архитектура господствует сейчас на рынке персональных компьютеров) ОЗУ в адресном пространстве занимало нижние области, а остальное оборудование - от верхней границы 4 Гб вниз. Причем долгое время никто всерьез не беспокоился об этом четвертом гигабайте - единицы или десятки килобайт буферов сетевого адаптера и контроллера дисков и считанные мегабайты памяти видеоадаптера погоды не делали. К тому же для домашних и рабочих компьютеров такой объем памяти был просто нереален, а для установки большого количества памяти в мощные рабочие станции и серверы было предложено другое решение, о котором будет рассказано ниже.

Первый серьезный скачок в «отжирании» у ОЗУ адресного пространства сделала технология AGP. С появлением видеоадаптеров с аппаратными ускорителями вывода трехмерных изображений резко увеличилась потребность в объеме оперативной памяти такого адаптера. Технология AGP дала возможность в случае необходимости (нехватки собственной памяти) использовать для нужд видеоадаптера часть основной памяти компьютера.

Необходимость быстрой работы с памятью видеоускорителя диктовала размещение всего объема этой памяти в физическом адресном пространстве. Поэтому оборудование AGP резервирует для своих нужд адресное пространство, которое до недавних пор было гораздо больше, чем размер видеоОЗУ. Обычно резервируется 256 Мб, причем не имеет значения, сколько памяти установлено в видеоадаптере. Появление PCI-E принципиальных изменений не принесло - изменился физический интерфейс, а организация использования видеопамяти осталась той же.

Чтобы наглядно показать, как количество доступного объема ОЗУ связано с использованием физического адресного пространства устройствами, приведем две картинки - окно свойств компьютера и окно диспетчера устройств с распределением ресурсов памяти. Использовался видеоадаптер со 128 Мб ОЗУ.

Свойства системы

Диспетчер устройств

Операционная система использует 3,25 Гб ОЗУ из четырех установленных, и эта величина в точности соответствует нижней границе адресного пространства, используемого видеоадаптером (портом PCI-E): шестнадцатеричное значение d0000000. Обратите внимание, что отведены для видеоадаптера адреса с d000000 по dfffffff, то есть 256 Мб.

Драйверы устройств не устанавливались (в значках устройств стоят вопросительные знаки) сознательно, чтобы продемонстрировать, что дело не в них.

Для ограничения доступного для ОЗУ адресного пространства достаточно физического присутствия устройства на шине, и не имеет значения, используется оно или нет.

Впрочем, установка всех драйверов картину не меняет.

В 32-разрядной Windows Vista дело обстоит точно так же - системе доступно 3,25 Гб ОЗУ.

Свойства системы в Windows Vista

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

Проверим, как влияет на доступный объем ОЗУ размер памяти видеоадаптера. Заменим плату со 128 Мб на такую же модель, но с 512 Мб.

Диспетчер устройств

Как видим, ничего не изменилось. Размер используемого адресного пространства задается не самим адаптером, а оборудованием шины AGP или PCI-E.

В рассмотренных примерах самый младший из адресов устройств был использован видеоадаптером. Правда, надо отметить, что количество устройств на системной плате было невелико и относительно стандартно для новых плат. Добавление каких-либо плат в гнезда системной платы (или интегрирование дополнительных устройств в плату ее изготовителем) может привести к тому, что добавленное устройство займет адреса младше, чем у других устройств. Тогда доступный ОС объем ОЗУ еще больше уменьшится. С другой стороны, адреса устройств могут распределиться так, что новое устройство займет свободные области между уже имеющимися устройствами, и тогда уменьшения доступного системе ОЗУ не произойдет.

Например, когда в компьютер автора были добавлены два ТВ-тюнера, они заняли адресное пространство выше, чем видеоадаптер, и уменьшения доступного системе ОЗУ не произошло.

Диспетчер устройствЩелкните чтобы увеличить

С другой стороны, когда те же два тюнера стояли в старом компьютере автора с системной платой на базе i865, они занимали адресное пространство ниже видеоадаптера (и уменьшали бы доступный объем ОЗУ, если бы памяти на том компьютере было больше 3 Гб).

Например, установка четырех видеоадаптеров может заметно ограничить размер используемого ОЗУ (показанная таблица распределения ресурсов была приведена на форуме 3Dnews участником HarfulL).

Диспетчер устройствЩелкните чтобы увеличить

Как видно, видеоадаптеры заняли четыре области адресного пространства по 256 Мб каждая, начинающиеся на границах 2,5, 2,75, 3,0 и 3,25 Гб. (В данном примере был установлен только один гигабайт ОЗУ).

У любопытного читателя уже наготове вопросы: а каким образом адреса распределяются между устройствами? Можно ли каким-нибудь способом «сдвинуть» все адреса в одну сплошную кучу и освободить для ОЗУ дополнительно десятки или даже сотни мегабайт адресного пространства?

Адреса (а также порты ввода-вывода, а на шине ISA - еще и прерывания) определяются дешифратором устройства. Настройки этого дешифратора обычно можно менять в некоторых пределах, заданных изготовителем. До середины девяностых годов такая настройка выполнялась установкой или удалением специальных перемычек на устройстве. И задача конфигурирования компьютера с несколькими дополнительными устройствами была не слишком простым делом. Поэтому была предложена технология plug-and-play. В то время она была у всех на слуху, а сейчас стала совершенно обыденным явлением. Суть этой технологии в том, что используемые устройством адреса памяти, порты ввода-вывода и линии прерываний могут конфигурироваться программно. Это делает либо BIOS на этапе подготовки компьютера к загрузке, либо операционная система в ходе своей загрузки. Программа конфигурирования опрашивает устройства, определяет, какие ресурсы могут использоваться каждым из них, а затем распределяет эти ресурсы между устройствами.

Границы конфигурирования каждого устройства задает его изготовитель. Причем для упрощения дешифраторов адресов ступени конфигурирования обычно кратны размеру ресурсов, используемых устройством. Например, если некая «железка» имеет ОЗУ размером 32 Кб, то и начальный адрес, как правило, можно установить только кратным этому размеру или даже большей величине.

В результате сдвигать адреса разных устройств «вплотную» не оказывается возможным, хотя теоретически эта задача и реализуема.

Вывод 1. Хотя 32-разрядные версии Windows XP и Windows Vista могут использовать четыре гигабайта ОЗУ, из-за ограничений, накладываемых архитектурой используемого оборудования, эта величина обычно оказывается в пределах 3-3,5 Гб.

Вывод 2. Добавление устройств, использующих шины PCI или PCI-E, может уменьшить количество доступного системе ОЗУ. В таких случаях можно рекомендовать рассмотреть замену внутренних модулей на устройства с аналогичной функциональностью, подключаемые к интерфейсу USB.

Возможно, читатель уже обратил внимание, что про серверные варианты ОС пока не было сказано ни слова. И этому есть свои причины - в серверных версиях дело обстоит несколько по-другому. Например, на том же самом компьютере с тем же самым оборудованием 32-разрядный Windows Server 2003 Standard Edition «видит» практически все четыре гигабайта, хотя устройства занимают в четвертом гигабайте те же самые адреса.

Свойства системы

Диспетчер устройств

Как такое может быть? Вернемся в середину девяностых годов. В то время для серверов верхнего уровня (разговор пойдет только о серверах с архитектурой IBM PC) стала актуальной задача увеличения объема памяти сверх четырех гигабайт. Никакой Америки для этого открывать не понадобилось - «всё уже украдено до нас». Технология расширения объема памяти была неоднократно использована в самых разных ЭВМ.

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

Новую (для платформы PC/386) технологию назвали расширением физических адресов (PAE - Physical Address Extention) и воплотили ее в процессорах Pentium Pro. Компьютеры на этих и всех последующих процессорах могут (при наличии соответствующей системной платы, конечно) использовать не 32-х, а 36-разрядную шину адреса, что дает возможность установить до 64 Гб ОЗУ.

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

Чтобы дать возможность программам использовать большее количество памяти, в Windows была добавлена еще одна технология - AWE (Address Windowing Extension – оконное расширение адресов). В адресном пространстве программы выделялось окно, в которое отображался участок выделенной программе памяти. Например, программа запрашивает и получает для своих нужд 16 Гб, но может обращаться к ним только через окно размером один гигабайт. Чтобы получить доступ к нужному участку памяти, следует переместить окно в требуемое положение, при этом остальные 15 гигабайт оказываются недоступными. Если нужно обратиться к другому участку памяти - еще раз перемещаем окно и так далее. Программу при этом приходится усложнять, причем на обычных компьютерах, не серверах, такое усложнение оказывается практически бесполезным. Поэтому неудивительно, что поддержку AWE можно увидеть только в серьезных серверных приложениях, количество которых, говоря фигурально, позволяет пересчитать их по пальцам.

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

Следует подчеркнуть, что для этого необходимо наличие двух обязательных условий:

  • системная плата должна поддерживать расширение физических адресов;
  • в операционной системе должен быть включен режим PAE.

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

Выполнение первого условия можно проверить по документации к системной плате. Правда, далеко не всегда в описании платы можно найти «волшебное» слово PAE. Чаще используется (в описании платы или настройках BIOS) выражение memory remap или близкие к нему.

Выполнение второго условия в последнее время часто обеспечивается автоматически. Если процессор поддерживает аппаратную защиту от исполнения данных (Data Execution Prevention - DEP), то Windows XP со вторым пакетом исправлений, Windows Server 2003 с первым и более поздними пакетами исправлений и, конечно, Windows Vista по умолчанию включают эту защиту, а вместе с ней и PAE. К таким процессорам относятся все семейство 64-разрядных процессоров АМД, все процессоры Intel с поддержкой технологии EM64T и некоторые чисто 32-разрядные процессоры семейства Pentium 4.

Если процессор более старый либо если используются более старые версии Windows, можно включить режим расширения физических адресов принудительно. Для этого надо добавить в строку запуска данной ОС в файле boot.ini параметр /PAE.

Если режим расширения физических адресов включен, то в окне свойств компьютера появляется строчка «Расширение физических адресов» (последнее слово временами не помещается в отведенное для надписи место и обрезается). Посмотрите еще раз на окно свойств компьютера с установленным WS2003. Расширение физических адресов включено, и система видит практически все четыре гигабайта.

Внимательный читатель, конечно же, уже дергает меня за рукав: но ведь в окне свойств XP SP2 тоже есть такая надпись. Значит, эта система тоже работает в режиме расширения физических адресов? Но почему же тогда ей доступно лишь три с небольшим гигабайта?

Да, Windows XP SP2 в данном случае по умолчанию включила режим PAE для обеспечения поддержки DEP. Но, в отличие от Windows Server 2003, в Windows XP расширение физических адресов реализовано лишь частично. Эта система не поддерживает 36-разрядную адресацию памяти, Даже с включенным PAE она имеет то же самое 32-разрядное адресное пространство, что и без этого режима.

Так что даже принудительное включение РАЕ не добавит в распоряжение системы ни одного байта.

Впрочем, если установить Windows XP с первым пакетом исправлений или исходную версию вообще без пакетов (что автор по некоторым причинам категорически не рекомендует делать на современных компьютерах), то расширение физических адресов даст системе возможность увидеть все четыре гигабайта. Но стоит только добавить SP2, как количество памяти сразу уменьшится.

Причина в том, что в 32-разрядных Windows XP SP2 (а также будущем SP3) и Windows Vista расширение физических адресов есть, но в то же время его как бы и нету. Причина проста и банальна – обеспечение совместимости с драйверами, написанными без учета возможного включения РАЕ. Остановимся на этом чуть подробнее.

Все программы и сама ОС работают в виртуальных адресных пространствах. Пересчет (трансляция) виртуального адреса в физический происходит не в один этап, а в два без режима расширения физических адресов и в три этапа при включении этого режима. После того, как в ходе разработки второго пакета исправлений режим РАЕ был включен по умолчанию, оказалось, что не все драйверы умеют работать в этом режиме. Расширение физических адресов испокон веков (фигурально выражаясь, конечно) было особенностью серверных систем. Поскольку драйверы работают с физическими адресами, они должны понимать усложненный процесс трансляции адресов при включенном РАЕ. И разработчики драйверов для серверных версий это учитывали.

Разработчики же драйверов, предназначенных для обычных рабочих и, тем более, домашних компьютеров могли и упростить себе работу - зачем предусматривать алгоритм работы с включенным РАЕ, если он не используется? Ведь без него и программировать меньше надо, и работы по тестированию меньше делать. Но если такой драйвер оказывался в системе с включенным расширением физических адресов, то с достаточно высокой вероятностью он мог «порушить» управление памятью системы, что привело бы в лучшем случае к неработоспособности устройства, а в худшем – повреждению данных или сбою в работе системы (синему экрану).

А ведь для повышения безопасности системы надо было включать в процессоре защиту от исполнения данных и, как следствие, режим расширения адресов. Поэтому для совместимости со всеми ранее написанными для Windows XP драйверами было принято компромиссное решение - чтобы режим РАЕ включался, добавлял третий этап в процесс транслирования адреса, но ничего на этом третьем этапе не изменял. Фактически это означает, что расширения адресного пространства не происходит и система имеет те же четыре гигабайта физических адресов. А часть этих адресов, как мы помним, заняты устройствами.

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

Замечание. Время от времени можно увидеть совет по увеличению памяти, доступной системе: добавить в файл boot.ini параметр /3GB. На самом деле этот совет, как говорится, не из той оперы. Этот параметр обеспечивает перераспределение виртуального адресного пространства приложений между ними и системой, но никак не влияет на работу с физической памятью.

Так стоит ли покупать для компьютера с 32-разрядной Windows четыре гигабайта памяти, если это не сервер? В общем случае ответ зависит от того, планируете ли вы вскоре переходить на 64-разрядную версию (под «вскоре» в данном случае понимается время до замены компьютера на новый или до достаточно серьезной его модернизации). Если переход не планируется, то часть из этих четырех гигабайт окажется неиспользуемой. Сколько именно не будет использоваться, зависит от конфигурации оборудования, но обычно эта величина составляет 0,75–1 Гб.

Поскольку в современные компьютеры модули памяти обычно вставляются парами, то альтернативой четырем гигабайтам являются конфигурации 2х1 Гб или 2х1 Гб + 2х512 Мб, причем первый вариант оставляет (как правило) возможность расширения, а второй дает больше памяти.

Но ведь, как известно, адресное пространство (виртуальное), выделяемое процессу на его нужды, составляет 2 Гб. То есть подавляющее большинство программ не смогут использовать больше двух Гб ОЗУ. Так есть ли смысл ставить третий гигабайт? Вполне может быть, что есть. Все зависит от того, сколько памяти требуется запускаемым одновременно задачам. Даже если «тяжелая» задача больше двух гигабайт получить и не сможет, она, тем не менее, сможет использовать все свои два гигабайта, если система и другие запущенные задачи возьмут свою долю памяти из третьего гигабайта. Да и дисковый кэш не будет конкурировать за память с этой «тяжелой» задачей.

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

При написании статьи использовалось оборудование, предоставленное компанией «Элмер», за что автор выражает ей свою признательность.

Часть 2: Еще раз про Windows и четыре гигабайта.

www.ixbt.com

Еще раз про Windows и четыре гигабайта

Прошло несколько лет с тех пор, как была написана статья «Четыре гигабайта памяти — недостижимая цель?», а вопросов, почему Windows не видит все четыре гигабайта, меньше не стало. К числу вопрошающих добавились и обладатели 64-разрядных систем, которых эта проблема, казалось бы, не должна была коснуться. И стало ясно, что пора писать новую статью на эту же тему. Как и раньше, речь пойдет только об операционных системах Windows, причем в основном клиентских, то есть Windows XP, Windows Vista, Windows 7 и грядущей Windows 8. В некоторых случаях намеренно будут использоваться несколько упрощенные описания тех или иных аспектов. Это даст возможность сосредоточиться на предмете данной статьи, не вдаваясь в излишние подробности, в частности, внутреннего устройства процессоров и наборов микросхем (чипсетов) для системных плат. Рекомендуем предварительно прочитать указанную выше статью, так как не всё, сказанное в ней, будет повторено здесь.

Хотя теоретически 32-разрядной системе доступны (без дополнительных ухищрений) до 4 ГБ физической памяти, 32-разрядные клиентские версии Windows не могут использовать весь этот объем из-за того, что часть адресов используется устройствами компьютера. Ту часть ОЗУ, адреса которой совпадают с адресами устройств, необходимо отключать, чтобы избежать конфликта между ОЗУ и памятью соответствующего устройства — например, видеоадаптера.

Рис. 1. Если оперативная память в адресах, используемых устройствами, не отключена, возникает конфликт

Оперативная память заполняет адреса, начиная с нулевого, а устройствам, как правило, отводятся адреса в четвертом гигабайте. Пока размер ОЗУ не превышает двух-трех гигабайт, конфликты не возникают. Как только верхняя граница установленной памяти входит в ту зону, где находятся адреса устройств, возникает проблема: по одному и тому же адресу находятся и ячейка оперативной памяти, и ячейка памяти устройства (того же видеоадаптера). В этом случае запись данных в память приведет к искажению изображения на мониторе и наоборот: изменение изображения — к искажению содержания памяти, то есть программного кода или данных (скажем, текста в документе). Чтобы конфликты не возникали, операционной системе приходится отказываться от использования той части ОЗУ, которая перекрывается с адресами устройств.

В середине девяностых годов прошлого века для расширения доступного объема ОЗУ была разработана технология PAE (Physical Address Extension), увеличивающая число линий адреса с 32 до 36 — тем самым максимальный объем ОЗУ вырастал с 4 до 64 ГБ. Эта технология первоначально предназначалась для серверов, однако позже появилась и в клиентской Windows XP. Некоторые особенности реализации этой технологии в современных контроллерах памяти дают возможность не только использовать PAE по ее прямому назначению, но и «перекидывать» память в другие адреса. Таким образом, часть памяти, которая ради предотвращения конфликтов не используется, может быть перемещена в старшие адреса, например в пятый гигабайт — и снова стать доступной системе.

В обсуждении первой статьи было высказано замечание, что некорректно отождествлять наличие в контроллере памяти системной платы поддержки PAE — и способность платы переадресовывать память; что это вполне могут быть вещи, друг с другом не связанные. Однако практика показывает, что в «железе» для настольных систем это понятия взаимозаменяемые. К примеру, Intel в документации к своему набору микросхем G35 ни слова не говорит о возможности (реально существующей) переадресации памяти, зато подчеркивает поддержку РАЕ. А не поддерживающий PAE набор i945 не имеет и переадресации памяти. С процессорами AMD64 и последними моделями процессоров Intel дело обстоит еще проще: в них контроллер памяти встроен в процессор, и поддержка PAE (и ОЗУ размером более 4 ГБ) автоматически подразумевает поддержку переадресации.

Рис. 2. Переадресация

Рисунок достаточно условный, переадресация совсем не обязательно выполняется блоками именно по одному гигабайту, дискретность может быть другой и определяется контроллером памяти (который, напомним, является либо частью оборудования системной платы, либо частью процессора). В программе BIOS Setup компьютера обычно бывает настройка, разрешающая или запрещающая переадресацию. Она может иметь различные наименования — например, Memory remap, Memory hole, 64-bit OS и тому подобное. Ее название лучше всего выяснить в руководстве к системной плате. Необходимо отметить, что если используется 32-разрядная система, то на некоторых системных платах, преимущественно достаточно старых, переадресацию необходимо отключать — в противном случае объем доступного системе ОЗУ может уменьшиться.

По умолчанию в Windows XP режим РАЕ был отключен, поскольку реальной надобности в нем не было (напомним, что в 2001 году типичный объем памяти настольного компьютера составлял 128—256 МБ). Тем не менее, если его включить, то ХР могла бы использовать все четыре гигабайта памяти — при условии, конечно, что системная плата поддерживала бы РАЕ. Но, повторим, реальной надобности включать этот режим в те годы не было. При желании читатель может для пробы установить на современный компьютер Windows XP или Windows XP SP1 (делать это для работы, конечно, не стоит), включить режим PAE и своими глазами убедиться, что системе доступны четыре гигабайта ОЗУ.

В 2003 году «Майкрософт» начала разрабатывать второй пакет исправлений для Windows XP (вышедший в 2004 году), поскольку столкнулась с необходимостью существенно снизить число уязвимостей в компонентах ОС. Одним из путей было использование предотвращения выполнения данных (Data Execution Prevention, DEP) — набора программных и аппаратных технологий, позволяющих выполнять дополнительные проверки содержимого памяти и в ряде случаев предотвращать запуск вредоносного кода. Эти проверки выполняются как на программном уровне, так и на аппаратном (при наличии соответствующего процессора). AMD назвала эту функцию процессора «защита страниц от выполнения» (no-execute page-protection, NX), а Intel использовала термин «запрет на выполнение» (Execute Disable bit, XD).

Однако использование такой аппаратной защиты требует перевода процессора в режим PAE, поэтому Windows XP SP2 при обнаружении подходящего процессора стала включать этот режим по умолчанию. И вот тут «Майкрософт» столкнулась с довольно серьезной проблемой: оказалось, что не все драйверы могут работать в режиме PAE. Попробуем пояснить эту особенность, не слишком углубляясь в устройство процессоров и механизмы адресации.

В Windows используется так называемая плоская модель памяти. Тридцать два разряда адреса обеспечивают обращение к пространству размером четыре гигабайта. Таким образом, каждой ячейке ОЗУ или ячейке памяти другого устройства соответствует определенный адрес, и никаких двусмысленностей тут быть не может. Включенный режим PAE дает возможность использовать 36 разрядов адреса и увеличить количество ячеек памяти в 16 раз. Но ведь система команд процессора остается той же самой и может адресовать только 4 миллиарда (двоичных) байтов! И вот, чтобы обеспечить возможность доступа к любому из 64 миллиардов байтов, указав только 32 разряда адреса, в процессоре включается дополнительный этап трансляции адресов (те, кого интересуют подробности, могут обратиться к специальной литературе — например, книге Руссиновича и Соломона «Внутреннее устройство Windows»). В результате 32-разрядный адрес в программе может указывать на любой из байтов в 36-разрядном пространстве.

Прикладных программ эта особенность никак не касается, они работают в своих собственных виртуальных адресах. А вот драйверам, которые должны обращаться к реальным адресам конкретных устройств, приходится решать дополнительные задачи. Ведь сформированный этим драйвером 32-разрядный адрес может после дополнительного этапа трансляции оказаться совсем другим, и выданная драйвером команда может, например, вместо вывода значка на экран изменить значение в одной из ячеек таблицы Excel. А если окажутся запорченными какие-либо системные данные, то тут и до аварийного завершения работы с выводом синего экрана рукой подать. Поэтому для успешной работы в режиме PAE драйверы должны быть написаны с учетом особенностей этого режима.

Однако поскольку исторически сложилось так, что до того времени в клиентских компьютерах PAE не использовался, некоторые компании не считали нужным поддерживать этот режим в написанных ими драйверах. Ведь оборудование, которое они выпускали (звуковые платы, к примеру), не предназначалось для серверов, и драйверы не имели серверной версии — так зачем без необходимости эти драйверы усложнять? Тем более, что для тестирования работы в режиме PAE раньше требовалось устанавливать серверную ОС и использовать серверное оборудование (системные платы для настольных компьютеров лишь относительно недавно стали поддерживать PAE). Так что разработчикам драйверов проще и выгоднее было просто забыть про этот PAE и обеспечить работоспособность на обычных клиентских компьютерах с обычными персональными, а не серверными ОС.

И вот с такими драйверами и возникли проблемы в XP SP2. Хотя количество фирм, драйверы которых переставали работать или даже вызывали крах системы, оказалось невелико, количество выпущенных этими фирмами устройств исчислялось миллионами. Соответственно, и количество пользователей, которые могли бы после установки SP2 получить неприятный сюрприз, оказывалось весьма значительным. В результате многие пользователи и сами отказались бы устанавливать этот пакет, и разнесли бы о нем дурную славу, что повлияло бы и на других пользователей. Они, хоть и без каких-либо веских причин, тоже отказались бы его устанавливать.

А необходимость повышения безопасности ХР компания «Майкрософт» ощущала очень остро. Впрочем, рассуждения на тему, почему мы увидели Windows XP SP2 и не увидели чего-то наподобие Windows XP Second Edition, выходят за рамки данной статьи.

Главное, что нас интересует, это то, что для обеспечения совместимости с плохо написанными драйверами функциональность PAE в SP2 для Windows XP была обрезана. И хотя сам этот режим существует и, более того, на компьютерах с современными процессорами включается по умолчанию, никакого расширения адресного пространства он не дает, просто передавая на выход те же адреса, которые были поданы на вход. Фактически система ведет себя как обычная 32-разрядная без PAE.

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

Иногда можно услышать вопрос: если именно этот обрезанный режим PAE мешает системе видеть все четыре гигабайта — так, может, отключить его вовсе, чтобы не мешал, и, вуаля, системе станут доступны 4 ГБ? Увы, не станут: для этого требуется как раз наличие PAE, притом полноценного. Другой не так уж редко задаваемый вопрос звучит так: если устройства действительно мешают системе использовать всю память и резервируют ее часть под свои нужды, то почему же они ничего не резервировали, когда в компьютере стояло два гигабайта ОЗУ?

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

Размер адресного пространства никак не зависит от объема ОЗУ. Даже если вытащить из компьютера всю оперативную память, размер адресного пространства не изменится ни на йоту.

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

Рассмотрим, как же в компьютере используется адресное пространство. Сразу подчеркнем, что его распределение выполняется оборудованием компьютера («железом») и операционная система в общем случае не может на это повлиять. Есть только один способ: изменить настройки оборудования с помощью технологии Plug&Play. О ней много говорили в середине 90-х годов прошлого века, но теперь она воспринимается как что-то само собой разумеющееся, и всё увеличивается число людей, которые о ней даже не слышали.

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

Базовая программа в системной плате, часто обобщенно называемая BIOS (хотя на самом деле BIOS (базовой системой ввода-вывода) она не является) при включении компьютера опрашивает устройства. Она определяет, какие диапазоны адресов каждое устройство может использовать, потом старается распределить память так, чтобы ни одно устройство не мешало другому, а затем сообщает устройствам свое решение. Устройства настраивают свои параметры согласно этим указаниям, и можно начинать загрузку ОС.

Раз уж об этом зашла речь, заметим, что в ряде системных плат есть настройка под названием «P&P OS». Если эта настройка выключена (No), то системная плата выполняет распределение адресов для всех устройств. Если включена (Yes), то распределение памяти выполняется только для устройств, необходимых для загрузки, а настройкой остальных устройств будет заниматься операционная система. В случае Windows XP и более новых ОС этого семейства данную настройку рекомендуется включать, поскольку в большинстве случаев Windows выполнит требуемую настройку по крайней мере не хуже, чем BIOS.

Поскольку при таком самоконфигурировании распределяются адреса памяти, не имеет никакого значения, сколько ОЗУ установлено в компьютере — процесс все равно будет протекать одинаково.

Когда в компьютер вставлено некоторое количество ОЗУ, то адресное пространство для него выделяется снизу вверх, начиная с нулевого адреса и дальше в сторону увеличения адресов. Адреса устройств, наоборот, выделяются в верхней области (в четвертом гигабайте) в сторону уменьшения адресов, но не обязательно смежными блоками — чаще, наоборот, несмежными. Как только зоны адресов, выделяемых для ОЗУ (с одной стороны) и для устройств (с другой стороны), соприкоснутся, становится возможным конфликт адресов, и объем используемого ОЗУ приходится ограничивать.

Поскольку изменение адреса при настройке устройств выполняется с некоторым шагом, определяемым характеристиками устройства, заданными изготовителем, то сплошной участок адресов для устройств получить невозможно — между адресами отдельных устройств появляются неиспользуемые промежутки. Теоретически эти промежутки можно было бы использовать для обращения к оперативной памяти, но это усложнило бы работу диспетчера памяти операционной системы. По этой и по другим причинам Windows использует ОЗУ до первого адреса памяти, занятого устройством. ОЗУ, находящееся от этого адреса и выше, останется неиспользуемым. Если, конечно, контроллер памяти не организует переадресацию.

Иногда задают вопрос: а можно ли повлиять на распределение адресов, чтобы сдвинуть все устройства в адресном пространстве как можно выше и сделать как можно больше памяти доступной системе. В общем случае без вмешательства в конструкцию или микропрограммы самих устройств это сделать невозможно. Если же руки все-таки чешутся, а времени не жалко, можно попробовать следующий метод: в BIOS Setup включить настройку «PnP OS» (она может или вовсе отсутствовать или называться по-другому), чтобы адреса для большинства устройств распределяла Windows, а затем переустанавливать драйверы, используя отредактированные файлы inf с удаленными областями памяти, которые, на ваш взгляд, расположены слишком низко.

В интернете можно найти разные советы, которые, якобы, должны дать системе возможность использовать все четыре гигабайта, основанные на принудительном включении PAE. Как легко понять из изложенного, никакого выигрыша это дать не может, поскольку не имеет значения, включен ли PAE автоматически или принудительно — работает этот режим в обоих случаях одинаково.

Может возникнуть также вопрос: а что будет, если установить видеоадаптер с четырьмя гигабайтами памяти. Ведь тогда получается, что система останется совсем без ОЗУ и работать не сможет. На самом деле ничего страшного не произойдет: видеоадаптеры уже довольно давно используют участок адресного пространства размером 256 МБ, и доступ ко всему объему памяти видеоускорителя осуществляется через окно такого размера. Так что больше 256 мегабайт видеоадаптер не отнимет. Возможно, в каких-то моделях размер этого окна увеличен вдвое или даже вчетверо, но автору в руки они пока не попадали.

64 разряда

Итак, с 32-разрядными системами мы разобрались. Теперь перейдем к 64-разрядным.

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

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

Не поддерживают переадресацию системные платы на наборах микросхем Intel до 945 включительно. Новыми их, конечно, не назовешь, но компьютеры на их базе еще существуют и используются. Так вот, на таких платах и 64-разрядная, и 32-разрядная системы смогут увидеть одинаковое количество памяти, и оно будет меньше 4 ГБ. Почему меньше — описано выше.

С 64-разрядными процессорами AMD дело обстоит проще: у них контроллер памяти уже довольно давно встроен в процессор, и переадресация отсутствует только в устаревших моделях. Все процессоры для 939-контактного гнезда и более новые поддерживают больше 4 ГБ и, соответственно, умеют выполнять переадресацию памяти. То же самое относится к процессорам Intel семейств Core i3, i5, i7.

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

И здесь нас поджидает сюрприз, подобный тому, с которым мы сталкиваемся в 32-разрядной системе: использование адресного пространства для работы устройств может ограничить объем памяти, доступный Windows.

Например, если системная плата поддерживает до 8 ГБ ОЗУ (скажем, использующая набор микросхем G35), и установить все эти 8 ГБ, то использоваться будут только ≈7—7,25 ГБ. Причина заключается в следующем: на такой системной плате разведены 33 линии адреса, что, с точки зрения изготовителя, вполне логично — зачем усложнять конструкцию, если больше 8 ГБ плата все равно не поддерживает? Поэтому даже если контроллер памяти сможет перекинуть неиспользуемый участок ОЗУ в девятый гигабайт, обратиться к нему все равно будет невозможно. Для этого потребуется 34-разрядный адрес, который физически нельзя сформировать на 33-разрядной системной шине. Точно так же на платах, поддерживающих 16 ГБ, Windows сможет использовать ≈15—15,25 ГБ и так далее.

С переадресацией связан еще один малоизвестный нюанс. Ограничение размера памяти, выполняемое в программе msconfig (или соответствующими настройками конфигурации загрузки) относится не к собственно величине памяти, а к верхней границе адресов используемой памяти.

Рис. 3. Эта настройка ограничивает верхнюю границу адресов, а не размер памяти

То есть если задать эту величину равной 4096 МБ, то память, расположенная выше этой границы (переадресованная в пятый гигабайт, например), использоваться не будет, и фактически объем памяти будет ограничен примерно тремя гигабайтами. Эту особенность в некоторых случаях удается использовать для диагностики того, работает переадресация или нет. Например, автору встретился случай, когда на ноутбуке Windows использовала 3,75 ГБ из четырех, и было неясно: то ли не работает переадресация, то ли память используется на какие-то нужды. Установка флажка и ограничение размера памяти четырьмя гигабайтами привели к тому, что стали использоваться только 3,25 ГБ. Из этого можно сделать вывод, что переадресация работала, а четверть гигабайта, следовательно, использовалась для видеоадаптера или каких-то других целей.

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

Автор статьи является MS MVP — Windows Expert-IT Pro

www.ixbt.com

4 гигабайта памяти и Windows 32 или 64

Совсем недавно, а точнее сказать, пару недель назад, я зашел в компьютерный магазин, по причине приобретения новой видеокарты. После покупки девайса, оставшиеся деньги нужно было куда-то девать. Моментально было принято решение, докупить два гигабайта оперативной памяти. Сразу оговорюсь, у меня дома, на компе уже было установлено два гига памяти, а рулила им Windows XP SP2 (32).

Да, да, да… Я знаю, что 32-х битные системы не поддерживают больше четырех гигабайт памяти, но… Но, в момент покупки, я про это совершенно забыл.

Ладно, обо всем по порядку.

Придя домой, я сразу же установил память в «машину». При первой же загрузке, зашел в BIOS, посмотрел, 4 gb, ну думаю, все в порядке (в тот момент, я еще не вспомнил, про 32-йки + много RAMa). Гружу винду и сразу же в свойства компьютера, 3,25 гигабайта доступно. Вот, тут память ко мне и вернулась, в смысле моя память, та, что в голове у меня установлена. Расстроился, конечно, но проблему нужно решать…

Для начала, я зашел на сайт Microsoft, посмотреть, что пишут про это отцы-создатели. А писали они, русским и английским по белому, а именно: - 32-х битные операционные системы, семейства Microsoft Windows поддерживают до четырех гигабайт оперативной памяти! Значит все должно работать… Возможна моя винда уже не совсем свежая… Для решения, первое, что пришло в голову, это установить 3-й сервиспак. Пока пакет обновлений ставился, я начал издеваться над Google.com. Гугл ответил многозначительно и однообразно… Но, вывод один! - У всех, кто ставил на 32-х битную винду, 4 и более гига памяти, последняя была видна не полностью! У кого-то место 4 гб. было 2,7… у кого-то 2,2… у кого-то 3… и т.д. Короче, вывод такой, Майкрософт нам брешет! Но об этом потом… А сейчас, все советовали ставить 64-х битную систему. И еще, были замечены пару мнений: - 32-х битные Windows, не работают, больше чем с двумя гигабайтами памяти, т.е. показывать могут и три с половиной, и все четыре, а работают реально только с двумя! - Windows 7, даже 32-х битная, должна поддерживать 4 гб. памяти, на 100%, т.е. не обрезать ее, а поддерживать и работать со всеми четырьмя гигабайтами!

Установка третьего сервиспака ничего путного не дала, кроме различных гадостей, типа: - восстановила, ранее выключенный фаервол и одарила меня, задолбавшим всю душу сообщением, вылетающем при копировании файлов по сети. Ну еще, так, пара-тройка различных пакостей и все.

Проблема не решена!

Не долго думая, я запустил Acronis, чтобы создать образ своей системы (так, на всякий случай), а сам метнулся к товарищу, по поводу: - дать мне не на долго диск с Windows 7 (на диске была и 32-х и 64-х битная система).

Примчавшись домой, я тут же сунул DVD’шник в привод. Началось!.. Сначала было решено установить Windows 7 – 32. Решено, сделано.

Установка прошла успешно, без глюков и заморочек… При первом же запуске, было определено, что система видит те же 3,25 гигабайта памяти. При дальнейшем копании, и прогоне различных утилит, выяснилось, что система реально работает только с двумя гигабайтами памяти. Обидно… Придется ставить 64-х битную.

Но, тут же пришло желание протестировать систему, погонять ее в разных режимах… Что бы было с чем сравнивать. Я не люблю всякие «тестовые программы» и мне плевать на все цифры и значения, которые они выдают, мне нужно, что бы я визуально ощущал скорость работы системы и мощь железа. Поэтому тестировал играми, редакторами видео, 3D-Max’ом и Photoshop’ом и т.д.

С самого начала, 32-х битная «семерка» работала почти так же как «XP» (интерфейс я не отключал). После ковыряния и игр, в течении трех дней, могу сказать, все почти так же как в XP, что-то быстрее, что-то медленнее, но в общем, одно на одно. (Все нужные мне программы работали на 100%)

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

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

Пока Windows устанавливалась, я опять занялся издевательством над гуглом. На этот раз выпытав у него: - Что оказывается, 64-битная система, использует в два раза больше памяти!!! И что, 64-х битная, с 4-мя гигами, будет работать (по скорости) как 32-х битная с 2-мя!!! И что, 64-х битная система рассчитана на количество памяти, больше четырех гигабайт (что на 4 гб. нет смысла ее ставить). И что 64-х битная система рассчитана только на профессиональную работу, что в ней не пойдет большая часть игр… Что в ней, 32-х битные программы (которых на сегодняшний день большинство) будут очень сильно тормозить. Что к 64-х битной системе не найти драйверов. И еще, что-то, чего я уже и не помню…

Короче, попал…

Овчинка выделки не стоит… Сменял, шило на мыло… Но, что сделано то сделано! Предстоит «гемморой»…

Первый запуск… О чудо!!! Все мои четыре гигабайта видны!!! Запустил тест памяти… И все четыре работают!!! Радости нет предела!!! (если не вспоминать, что она сейчас жрет в два раза больше памяти).

Первые ощущения: - Система работает гораздо быстрее!!! Вынимаю две планки памяти, все равно быстрее. Возвращаю память обратно.

Тест по программам: - Игры пошли все! Начиная от первого «Half-Life» и «Героев 3» и заканчивая последней версией «S.T.A.L.K.E.R – зов Припяти». И что самое интересное, пошли гораздо быстрее!!! В Сталкере, я смог поставить все параметры на максимум (половину из которых я даже не знаю, для чего они), и не было ощущения, хоть малейшего торможения.

Тест по программам: - Установил два Адобовских пакета, CS2 и CS4. Хоть на сайте Adobe и написано, что их продукты предназначены как для 32-х битной, так и для 64-х битной версии Windows, из обоих пакетов, 64-х битными оказались только «Adobe Photoshop Lightroom» и «Adobe Photoshop CS4». (только не надо говорить, что я не те пакеты брал… других просто нет в природе)

Теперь по пунктам:

Adobe CS2

Adobe After Effects 7.0

Работает так же как в XP

Adobe Bridge

Немного быстрее

Adobe Encore DVD 2.0

Работает так же как в XP

Adobe Photoshop CS2

Работает так же как в XP

Adobe Premiere Pro 2.0

Работает так же как в XP, просчитал тестовый проект с эффектом «Radial Blur» на 2 минуты дольше

Adobe CS4

Adobe After Effects CS4

Немного медленнее, чем в XP

Adobe Bridge CS4

Заметно быстрее, чем в XP

Adobe Encore CS4

Работает так же как в XP

Adobe Photoshop Lightroom 2.6 64-bit

Заметно быстрее, чем в XP

Adobe Premiere Pro CS4

Заметно быстрее, чем в XP

Adobe Dreamweaver CS4

Работает так же как в XP

Adobe Photoshop CS4 (64 Bit)

Заметно быстрее, чем в XP

3D-Max работает заметно быстрее, AutoCAD – почти так же, ну может чуть-чуть полегче. Все остальные программы, блокнотики, записные книжки, напоминалки, офисы, записывалки дисков и т.д. работают, так же как и в Windows XP. А некоторые даже быстрее. На сегодняшний день, я не нашел ни одной программы, которая бы не работала в Windows 7 – 64 Bit.

Теперь по памяти, про которую я упоминал раньше, и которой Win 7x64 требуется в два раза больше.

Это так и есть. Да, действительно, «семерка» кушает в 2 раза больше памяти, но… Кушает только сама винда! Остальные программы, сколько кушали, столько и кушают.

Windows 7 – 32 Bit – потребляет около 500 мб. (+/- 10%) оперативной памяти Windows 7 – 64 Bit – потребляет около 1000 мб. (+/- 10%) оперативной памяти Но, это не значит, что все остальные программы начнут ее безбожно выжирать. Если например фотошоп в Win7x32 потреблял около 300 мб. оперативки, то и в Win7x64 он будет потреблять столько же. (и это относится ко всем программам и играм)

Отсюда вывод: В 32-х битной системе, у меня было 2 гигабайта, Windows забирала 500 мб. следовательно, оставалось на все, про все 1,5 гб. В 64-х битной системе, у меня 4 гигабайта, Windows забирает 1 гб. следовательно, оставалось 3 гб. Три гигабайта, свободной памяти, в два раза больше чем полтора!!! А если еще учесть, что 64-х битная система, в два, а то и в три раза быстрее работает чем 32-х битная, то…

В принципе, я доволен. Система работает нормально, стабильно. В Win7, порешали массу проблем присутствующих в WinXP. Но при этом понаделали новых (ИМХО)… И что самое главное, это то, что 64-х битная система, в разы быстрее 32-х битной! А всякие доводы, мысли вслух, и переписывания чьих-то мнений с одного форума на другой, при этом, зачастую не имеющих своего реального опыта… я считаю полная лажа!!!

Ну и в завершении, про брехню от Microsoft…

На сайте, одной из крупнейших и богатейших компаний в мире, написано: - 32-х битные операционные системы, семейства Microsoft Windows поддерживают до четырех гигабайт оперативной памяти. Это значит до четырех! А не до 3,25 и тем более не до 2-х!!! Да, конечно, можно сказать, что и 3,25, и 2 гигабайта, это все до четырех… Но извините… До каких четырех, если максимально, что может работать это 2,0!!! До четырех это 3,99!!! А то, что я вижу, это до двух! И никаким образом не до четырех!!!

Хотя, возможно это «хитрый» ход, по переводу нас на системы следующего поколения. Прочли вы, что ваши винда поддерживает до четырех гигов памяти, закупились… Аннет… Будьте так любезны, обновите систему… И господам производителям копеечка в карман, и внедрение разработок в массы. А тут еще и железку какую новую потребуется вставить… Будем развивать производителей железа… С которыми, вышеупомянутая контора в крепких дружеских отношениях… Да таких крепких, что купив новую железку, вам придется и систему под нее обновить… Круговая порука! Прогресс!

P.S.

Что-то типа такого, было уже проделано, во времена перехода с 16-ти битной системы на 32-х битную… Общественность тогда тоже сопротивлялась и недоумевала… Это все, чем-то напоминает историю, когда фильмы стали озвучивать, основная масса кинолюбителей орала во все горло, что: - «кино со звуком обречено на смерть»! Но, мы видим, чем это все закончилось…

P.S.S.

Продолжение следует... (смотрите новые статьи, возможно оно уже написано)

__ Продолжение... 4 гигабайта памяти и Windows 64 — Продолжение Дневники Windows 7 Год на Windows 7

lessons-on-computer.blogspot.com

Можно ли ставить ОЗУ разного объема: 4Гб с 8Гб и 2Gb с 4Gb?

Приветствую, дорогие читатели моего блога! Помните момент из старого советского фильма про Шурика, когда красноречивый кавказец задвинут тост: «Есть желание купить автомобиль, но нет возможности. Есть возможность купить козу, но нет желания. Так выпьем же за то, чтобы наши желания всегда совпадали с нашими возможностями!».

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

А еще можно получить наследство от преждевременно сломавшегося компа дальнего родственника в виде комплектующих. Или найти на работе, копаясь в груде бесхозного хлама. Чего детали пылится без дела?

Итак, сегодня мы с вами выясним, можно ли ставить оперативную память разного объема вместе и как это отражается на работоспособности компьютера. Обсудим здесь именно две планки разного объема. Можно ли ставить планки ОЗУ с разной частотой – тема отдельной публикации.

Как надо

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

Однако ничто не препятствует установить модули разного объема: например, 2 и 4 Гб, 2 и 8 ГБ, 4 и 8 Гб, 1 и 2 Гб, 4 и 16 Гб иди 1 и 4 Гб соответственно. Вопреки сложившемуся стереотипу, в большинстве случаев такая сборка работает, правда, не всегда стабильно. Как себя поведет система, сказать заранее невозможно – проверяется это экспериментальным путем.Возможны и более экзотические варианты – три или даже четыре планки разного объема и разных брендов. Подробнее о совместимости ОЗУ разных производителей можно узнать в следующей статье.

Правда, шансы получить стабильную сборку в этом случае уже ниже – вероятно, «методом тыка» придется искать уже планку, работа которой приводит к непредсказуемой работе Windows. Но опять же, это не аксиома – тут уже как повезет.

И если вы не собираете компьютер из разношерстных модулей, а только собираетесь приобрести комплектующие для апгрейда, лучше все‐таки установить утилиту CPU‐Z и узнать все рабочие характеристики используемой ОЗУ.

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

Как не надо

Не нужно выбирать модуль DDR4, если на компе используется DDR3 – слоты подключения физически несовместимы. При переходе на оперативку четвертого поколения придется менять материнскую плату (а скорее всего, и процессор, так как мать со слотом под используемый и на памяти нового типа вы скорее всего не найдете).

Что делать, если у вас уже есть разные модули ОЗУ ДДР3 и ДДР4? Продать лишний. Или, как вариант, подарить кому‐нибудь.

Рекомендация

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

Если считаете что оптимальный объем для вас 8 Гб и тип Озу нужен DDR4 , то рекомендую взять – Kingston HyperX Fury Black 8Gb (2x4Gb) DDR4 DIMM (HX421C14FBK2/8) и гарантия 10 лет и производитель серьезный.

А на сегодня у меня все. Спасибо за внимание и не забывайте поделиться публикацией в социальных сетях.

С уважением Андрей Андреев

infotechnica.ru


Смотрите также