Максимально возможный объем оперативной памяти. Сколько оперативной памяти максимально видит разная версия Windows. Как узнать количество оперативной памяти

Добрый день.

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

Как узнать количество оперативной памяти?

1) Самый простой способ это сделать - зайти в «мой компьютер» и нажать правой кнопкой мышки в любом месте окна. Далее выбрать в контекстном меню проводника «свойства». Так же можно открыть панель управления, в поисковую строку ввести «система». См. скриншот ниже.

Количество оперативной памяти указано рядом с индексом производительности, под информацией о процессоре.

4GB - объем оперативной памяти. Чем больше - тем лучше. Но не забывайте, что если процессор в системе не такой мощный - то ставить большой объем ОЗУ нет никакого смысла. Вообще, планки могут быть совершенно разного объема: от 1гб до 32 и более. Об объеме см. ниже.

1600Mhz PC3-12800 - Рабочая частота (пропускная способность). Разобраться с данным показателем поможет вот эта табличка:

Модули DDR3

Название

Частота шины

Пропускная способность

Как видно из таблицы пропускная способность такого ОЗУ равна 12800 мб/с. Не самая быстрая на сегодняшний день, но как показывает практика, для быстродействия компьютера куда важнее объем этой самой памяти.

Количество оперативной памяти на компьютере

1 ГБ - 2 ГБ

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

Кстати, с таким объемом можно установить и Windows 7, она будет нормально работать. Правда, если вы откроете пяток документов - система может начать «задумываться»: будет не так резко и рьяно реагировать на ваши команды, картинка на экране может начать «дергаться» (особенно, это касается игр).

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

4 ГБ

Самое популярное количество ОЗУ в последнее время. На многие современные ПК и ноутбуки под управлением Windows 7/8 ставят 4 гб памяти. Этого объема достаточно для нормальной работы и с офисными приложениями, позволит запускать почти все современные игры (пусть и не на максимальных настройках), просматривать HD видео.

8 ГБ

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

Однако, стоит сразу отметить. Что такой объем памяти будет оправдан в том случае, если у вас в системе установлен мощный процессор: Core i7 или Phenom II X4. Тогда он сможет использовать память на все сто - и файл подкачки использовать вообще не придется, тем самым скорость работы повышается в разы. К тому же уменьшается нагрузка на жесткий диск, снижается энергопотребление (актуально для ноутбука).

Кстати, здесь действует и обратное правило: если процессор у вас бюджетного варианта - то ставить 8 гб памяти нет никакого смысла. Просто процессор будет обрабатывать некоторый объем оперативной памяти, скажем 3-4 гб, а остальная память не добавит абсолютно никакой скорости вашему компьютеру.

Сколько памяти может использовать 32 битная операционная система

Сначала немного теории.
Простейший элемент информации – бит. Он является минимальной единицей информации и может принимать значение 0 или 1. За ним идет байт, он состоит из 8 бит. Так как бит может принимать 2 значения, то всего получается 2 8 =256 значений байта.

Теперь рассмотрим адресацию памяти. У любого компьютера имеется оперативная память (ОЗУ) — адресное пространство, необходимое для хранения данных, используемых в данный момент. Для получения информации из ОЗУ вначале процессор должен выбрать адрес нужного бита, который храниться в одной из микросхем памяти, а уже потом его прочитать. Этот процесс и называется адресацией памяти. Одним из свойств архитектуры компьютера является количество битов, используемых при адресации памяти.

32 битные ОС для адресации памяти используют 2 32 бит, что составляет 4294967296 бит или 4 Гигабайт (Гб). Это значит, что максимальный объем памяти, к которому может обращаться 32 битная операционная система, составляет 4 Гб. Однако даже этот объем использовать в полной мере нам не удасться, поскольку компоненты операционной системы и устройства требуют выделенного адресного пространства в пределах первых 32 бит (4 Гбайт) оперативной памяти. Например, видеокарта с 512 Мбайт памяти потребует синхронизации этой памяти с оперативной, что снизит доступную ёмкость на 512 Мбайт.

Таким образом, общий объем памяти, доступной в 32 – битной ОС Windows обычно составляет 3.25-3.75 Гб в зависимости от используемого железа.

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

Согласно официальной информации Microsoft, режим PAE можно использовать в следующих 32-битных операционных системах:

  • Microsoft Windows Server 2000 Enterprise/Datacenter Edition
  • Microsoft Windows Server 2003 Enterprise/Datacenter Edition
  • Microsoft Windows Server 2008 Enterprise/Datacenter Edition

В Server 2008 PAE включен по умолчанию, если на сервере на хардварном уровне включена технология DEP (Data Execution Prevention), либо сервер имеет возможность горячего добавления памяти (hot-add memory). В противном случае PAE необходимо включить принудительно с помощью BCDEdit, следующей командой:

BCDEdit /set [{ID}] pae ForceEnabled

Чтобы включить PAE в Server 2000\2003, необходимо указать в файле Boot.ini ключ /PAE . Вот пример файла Boot.ini, содержащего ключ PAE:


timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS=″Windows Server 2003, Enterprise″ /fastdetect /PAE

Стоит заметить, что возможность использовать режим PAE для клиентских ОС была реализована во втором сервис-паке к Windows XP. Однако в процессе тестирования выяснилось, что при использовании этого режима происходит большое количество сбоев. Дело в том, что драйверы некоторых устройств, в основном таких как аудио- и видео, жестко запрограммированы на работу с адресами памяти в пределах 4ГБ. Они обрезают все адреса выше этого объема, что приводит к повреждению содержимого памяти со всеми сопутствующими последствиями. Поскольку, как правило, сервера не используют подобные устройства, то с серверными системами подобных проблем не возникало.

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

Подводя итог скажу, что если есть необходимость в объеме памяти больше 4Гб, то наилучший вариант — это использовать 64 битную ОС, ведь в ней ограничение на размер памяти составляет до 192 Гб для настольных и 2 Тб для серверных ОС.

Максимальный объем оперативной памяти для Windows 7 x86 (32 битная):Windows 7 Ultimate — 4 GB

Windows 7 Enterprise — 4 GB
Windows 7 Professional — 4 GB
Windows 7 Home Premium — 4 GB
Windows 7 Home Basic — 4 GB
Windows 7 Starter — 2 GB

Максимальный объем оперативной памяти для Windows 7 x64: Windows 7 Ultimate — 192 GB
Windows 7 Enterprise — 192 GB
Windows 7 Professional — 192 GB
Windows 7 Home Premium — 16 GB
Windows 7 Home Basic — 8 GB
Windows 7 Starter — 2 GBДругими словами — максимальный объем оперативной памяти зависит от разрядности и от версии.максимальный объем оперативной памяти для других версий Windows можно посмотреть здесь:
http://msdn.microsoft.com/en-us/library/aa366778.aspxПочему системе доступно меньше памяти, чем реально установлено в системном блоке? Это связано с тем, что часть адресного пространства (начиная с конца 4-го гигабайта в обратном направлении и небольшая часть с начала 1-го гигабайта) зарезервирована для адресации памяти видеокарты и других устройств. Поэтому при наличии более 3 GB оперативной памяти, не вся она может использоваться операционной системой. В свойствах системы это будет выглядеть так: Как позволить системе использовать всю установленную память?

Это можно сделать с помощью функции перераспределения памяти (Memory Remapping). Включить ее позволяют большинство BIOS’ов. В этом случае адреса устройств переносятся из первых 4-х гигабайт за пределы установленного в системе объема оперативной памяти.

Как оптимизировать оперативную память для максимального объема оперативной памяти в windoiws ?

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

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

Так каков максимальный объем оперативной памяти в современных операционных системах? Ответ не прост — свободная память отводится под кэш. Это происходит преимущественно благодаря функции SuperFetch. Благодаря кэшу программы запускаются быстрее, так как вместо обращения к жесткому диску данные загружаются из оперативной памяти (см. картинку выше, разница в скорости работы жесткого диска и ОЗУ написана жирным шрифтом). Если какой-то программе понадобиться больше оперативной памяти - кэш моментально сократит свой размер, уступив ей место.

Максимальный объем оперативной памяти в Windows.

Интернет буквально завален рассуждениями пользователей о том, почему в битной Windows доступно 3,5 Гб оперативно памяти вместо, например, установленных 4 Гб. Было придумано множество теорий, мифов, легенд. Например, считают, что это ограничение, сделанное Microsoft, которое можно снять. На самом деле это отчасти правда - принудительные ограничения действительно есть. Только снять их никак нельзя. Это обусловлено тем, что в 32-разрядных системах драйвера и программы могут нестабильно работать при использовании системой больше четырех гигабайт оперативной памяти. Для 64-битных Windows драйвера очень тщательно тестируют, чтобы такой нестабильности не было, поэтому вышеупомянутого ограничения там нет.

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

Что такое оперативная память

По сути, оперативная память является «посредником» между жестким диском и процессором. Для обеспечения быстродействия в «оперативку» откладываются те процессы и задачи, которые нужны ЦП для обработки в данный момент. Именно этим и занимается оперативная память. Максимальная оперативная память, которую возможно установить на компьютер, будет справляться с этими задачами в разы быстрее.

У ОП есть свои характеристики. Частота шины, объем, энергопотребление и многое другое. Все эти параметры мы разберем чуть ниже. А пока перейдем к типам оперативной памяти.

Типы «оперативки»

В незапамятные времена были такие типы оперативной памяти как SIMM и DIMM. На них сейчас останавливаться не стоит, поскольку они уже давно не выпускаются, и найти их стало невозможно. Начнем сразу с DDR. Самая первая память типа DDR была выпущена в далеком 2001 году. Она не могла похвастаться высокой производительностью и объемом. Максимальная частота работы первого DDR составляла 133 МГц. Получалась не очень «шустрая» оперативная память. Максимальная оперативная память в то время составляла около 2 Гбайт на одну «планку».

С развитием технологий появился новый тип «оперативки». Назвали его DDR2. Главное отличие от обычного DDR состояло в рабочей частоте. Теперь она составляла 1066 МГц. Очень недурной прирост производительности. А через пару лет был выпущен DDR3 - самый популярный тип оперативной памяти в настоящее время. 2400 МГц - именно такая максимальная частота оперативной памяти. Процессора, способного поддерживать такие частоты на тот момент еще не было. Поэтому Intel и AMD пришлось срочно выпускать что-то, способное работать с такой «оперативкой».

Максимальный объем

Объем «оперативки» играет немаловажную роль в ее быстродействии. Чем выше объем «планки», тем большее количество информации она может вместить. Сейчас размер «оперативки» измеряется в гигабайтах. Он играет решающую роль в том «потянет» ли компьютер мощные программные комплекты и игры. Но есть ограничения объема со стороны системы. В качестве примера возьмем ОС от Microsoft Windows 7. Максимальная оперативная память, с которой может работать эта система, должна составлять 16 Гбайт и не больше. Windows 10, к примеру, способна корректно работать с «оперативкой» объемом 128 Гбайт. Стоит также отметить, что 32-битные ОС не способны взаимодействовать с объемом оперативной памяти более 3 Гбайт. Если ваша «оперативка» составляет 4 Гб и больше, то вам определенно рекомендуется 64-битная ОС.

В наше время оптимальным объемом ОП для среднего компьютера можно назвать 8-16 Гбайт. Однако если вам нужна мощная геймерская машина, то здесь не обойтись без оперативки объемом в 32 Гбайта. Если вы решили заняться видеомонтажом, то нужна очень объемная оперативная память. Максимальная оперативная память должна составлять от 32 до 128 Гбайт. Следует учесть, что это довольно дорогое удовольствие.

Что касается ноутбуков, то здесь увеличивать объем «оперативки» до бесконечности не получится. Обычно ноутбуки и нетбуки оснащаются всего двумя слотами под оперативную память. Поэтому увеличить «оперативку» для них довольно сложно. Во многом максимальный объем зависит от материнской платы и процессора, использовавшихся для сборки лэптопа. Обычно материнские платы рассчитаны на 8-16 Гбайт ОП и увеличить этот предел нет никакой возможности.

Частота оперативной памяти

Модули оперативной памяти DDR3 способны работать на частотах 1333-2100 МГц. Чтобы выбрать оптимальный вариант для своего компьютера требуется знать, какие частоты поддерживаются материнской платой и процессором. Большинство материнских плат запросто работают с частотами 1333-1600 МГц. Если выбрать частоту 2100 МГц, то прирост производительности будет не особо заметен на фоне крайне высокой цены «оперативки» и материнской платы, поддерживающей эти частоты. Это вариант для совсем уж сумасшедших геймеров.

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

Заключение

Теперь мы знаем, что такое оперативная память, максимальная оперативная память и ее частота. Можно спокойно самим выбирать ОП для своего компьютера. Базовых знаний хватит для того, чтобы укомплектовать ПК самой продвинутой «оперативкой».

Не секрет, что наличие большого объема оперативной памяти благотворно сказывается на скорости работы многих приложений. В этом материале мы поговорим о взаимодействии ОЗУ и системы Windows, а так же ответим на многие распространенные вопросы по этой теме.

Вступление

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

Не обошла эта тенденция и оперативную память, которая в последнее время очень сильно подешевела. Лет 15 назад, модуль памяти объемом четыре мегабайта (только вдумайтесь!) стоил около 100 долларов, а на сегодняшний день стоимость четырех гигабайт ОЗУ (ОЗУ - оперативное запоминающее устройство или оперативная память) составляет всего около 700 рублей. Не секрет, что наличие большого объема оперативной памяти благотворно сказывается на скорости работы многих приложений, поэтому именно этот объем является минимальным для большинства современных компьютеров даже начального уровня. Более же продвинутые системы содержат 8, 16 и более гигабайт «оперативки».

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

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

Адресное пространство

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

Один байт может хранить одно из 256 значений (2 8), которые в зависимости от их интерпретации могут быть как числами, так символами или буквами. Например, значение 56, может обозначать как обычное число, так и букву «V» в кодировке ASCII. В нескольких байтах, можно хранить гораздо большие значения. Например, три байта могут принимать уже 16 777 216 значений (256 3), в которых может быть закодировано целиком короткое слово.

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

Физическая и виртуальная память

В первых ЭВМ, размер адресного пространства был тождественно равен размеру установленной оперативной памяти. То есть, если в компьютере было установлено 128 Кб памяти, то и максимальный объем памяти, который могла использовать программа при работе, равнялся 128 Кб. При этом адрес какого-либо объекта приложения равнялся адресу физической ячейки запоминающего устройства.

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

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

Таким образом, адресное пространство ЭВМ наших дней, больше не ограничено размером ее физической (оперативной) памяти и имеет свой максимальный возможный размер, зависящий от рабочей среды, которой является операционная система.

На сегодняшний день операционная система Windows имеет как 32-разрядную, так и 64-разрядную версии. В первой, исходя из названия, для адресации используется 32-битное адресное пространство, максимальный размер которого равен 2 32 = 4 294 967 296 байт или 4 Гб (гигабайт). 64-битная версия операционной системы увеличивает размер адресного пространства до невероятных 2 64 = 18 446 744 073 709 551 616 байт - более 18 квинтиллионов байт или 16 Эб (эксабайт). Правда стоит отметить, что современные клиентские операционные системы Windows 7 x64 в силу объективных причин поддерживают максимальное адресное пространство размером 16 Тб (2 44).

При этом объемы в 4 Гб и 16 Тб, в зависимости от системы, выделяются каждому работающему приложению! То есть любая запущенная программа получает свое собственное адресное пространство, которое не пересекается с другими.

Влияние объема оперативной памяти на скорость работы системы

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

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

Чем больше реальный объем оперативной памяти, тем реже идет обращение к винчестеру, а вследствие этого возрастает и общая производительность компьютера. Именно поэтому, увеличение размера ОЗУ практически всегда положительно сказывается на скорости работы системы, а с учетом нынешних цен на память, многим пользователям вполне доступна установка 8, 16 или даже 32 Гб «оперативки». Особенно благоприятно большой объем памяти сказывается при работе с графическими приложениями (включая современные трехмерные игры) и программами видеомонтажа.

Стоит знать, что разные версии 64-битной операционной системы Windows могут поддерживать разный максимальный объем оперативной памяти. И если пользователям старших редакций Vista или 7 (Professional, Enterprise, Ultimate), поддерживающих до 192 Гб памяти, волноваться особо нечего, так как на домашних компьютерах такой объем практически не достижим, то тем, у кого установлены версии Home Basic и Home Premium есть над чем задуматься. Возможности этих редакций сильно урезаны, и если Premium поддерживает до 16 Гб «оперативки», то Basic только 8 Гб. Максимально доступный объем оперативной памяти, поддерживаемый уже устаревшей Windows XP (64-битной версии) составляет 16 Гб.

Почему 32-битная система Windows не видит 4 Гб ОЗУ

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

Как мы уже знаем, чисто теоретически 32-х разрядной системе без каких-либо дополнительных ухищрений доступны до 4 гигабайт оперативной памяти (2 32), но Windows не может использовать весь этот объем, так как часть его отводится под устройства компьютера.

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

Все изменилось, когда в 1985 году компания Intel выпустила на рынок процессор 80386. Тогда были приняты сразу два решения об изменении распределения физической памяти в компьютерах, основанных на новых чипах. Распределение адресов в первом мегабайте памяти было принято оставить неизменным для совместимости со старым программным обеспечением и предыдущими моделями ЭВМ. Для компьютерных же устройств, нуждающихся в использовании памяти, теперь выделялся четвертый гигабайт. Все остальное пространство отводилось под ОЗУ.

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

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

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

Как мы уже говорили ранее, под установленную оперативную память адресное пространство выделяется снизу вверх - от нуля и далее. Таким образом, после загрузки системы физическая память «проецируется» на адресное пространство (от 0 до 2 Гб) и Windows не видя никаких конфликтов с адресами, зарезервированными под устройства, показывает вам весь установленный объем оперативной памяти.

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

После установки 4 Гб физической памяти, теоретически ее адреса займут все доступное адресное пространство для 32-битных систем. Но доступными останутся только те, которые попадут в незарезервированную устройствами область. В нашем примере, Windows будет считать, что объем установленной оперативной памяти равен 3,5 Гб.

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

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

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

В некоторых случаях, правда, довольно редких, объем адресного пространства, отведённого под устройства, может достигать и двух гигабайт. В большинстве же случаев, заблокированным оказывается пространство от 500 Мб до 1 Гб.

Технология PAE

Так можно все-таки увидеть все 4 Гб памяти в 32-разрядной Windows? Да, если у вас установлена серверная ОС, например Windows Server 2003 или Server 2008.

В середине 90-х годов была разработана технология расширения доступного объема ОЗУ, получившая название PAE (Physical Address Extension). Впервые она была воплощена в процессорах Intel Pentium Pro, в результате чего они смогли использовать не 32-х, а 36-битную шину адреса, что теоретически позволяло использовать максимально не 4, а 64 Гб оперативной памяти.

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

Первое - процессор должен быть установлен в системную плату, оснащенную специальным диспетчером памяти, осуществляющим поддержку расширения физических адресов. Как правило, в микропрограмме BIOS Setup (БИОС), запускающейся сразу же после включения компьютера, существует специальная настройка, запрещающая или разрешающая переадресацию. В разных моделях материнских плат ее наименование может быть различным, например: Memory Remap, 64-bit OS, Memory Hole и другое. Точное название этой опции можно выяснить из руководства конкретной системной платы. Кстати, старые материнские платы могут вообще не поддерживать режим расширения адресов (это так же можно выяснить из инструкции).

Второе - в операционной системе должен быть включен режим PAE. Так вот в серверных системах он задействован по умолчанию. Поэтому, если у вас установлена 32-битная Windows подобного типа и не слишком старый компьютер (нет вышеуказанных ограничений по железу), то благодаря использованию технологии PAE, будут доступны все 4 Гб оперативной памяти.

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

Изначально, в первой версии Windows XP данный режим был отключен, так как в 2001 году средний объем ОЗУ в персональных компьютерах составлял 128 - 256 Мб, и никакой необходимости в его включении не было. Возможно, положение дел оставалось бы таким еще довольно долго, но в 2003 году компания Microsoftприступила к разработке второго пакета исправлений для XP, призванного существенно снизить количество уязвимостей в системе. Одним из нововведений, принесенным вторым сервис паком, стало использование аппаратных и программных технологий, предотвращающих запуск вредоносного кода путем дополнительной проверки содержимого памяти. На аппаратном уровне эту проверку выполняет процессор. При этом в компании Intel данная функция носит названия Execute Disable bit (запрет на выполнение), а в AMD - No-execute page-protection (защита страниц от выполнения).

Однако, что бы такая аппаратная защита стала возможна, необходим перевод процессора в режим PAE. Именно поэтому, начиная с Windows XP SP2, данный режим, при наличии подходящего процессора, включается автоматически. Но самое основное, что в 32-разрядных Windows XP с пакетами обновлений SP2 и SP3, а так же последующих Windows Vista и Windows 7, расширение физических адресов реализовано только частично. Эти системы не поддерживают 36-битную адресацию памяти и включенный режим PAE, не добавляет в их распоряжение ни байта адресного пространства, что делает невозможным переброску в верхние участки заблокированных адресов ОЗУ. Причина такой реализации - обеспечение совместимости с драйверами устройств.

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

Разработчики драйверов, предназначенных для серверных систем это принимали в расчет, а вот драйвера для клиентских Windows, устанавливаемых на обычные домашние ПК, во многих случаях были написаны без учета алгоритма работы с включенным PAE. Ведь так было проще - меньше времени уходило на программирование и тестирование, да и сам драйвер занимал меньше места. Тем более к тому моменту, до выхода Windows XP SP2, режим PAE в настольных системах не использовался, а оборудование, которое выпускалось для «персоналок», во многих случаев не было предназначено для серверов (например, звуковые платы). Так что никакой острой необходимости усложнять драйвера, и выпускать их серверные версии у производителей не было.

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

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

Как уже упоминалось выше, такой обрезанный режим PAE унаследовали все современные 32-разрядные системы, включая Windows 7 и Windows 8. А вот если вы установите ради эксперимента на свой компьютер оригинальную Windows XP или XP SP1 и включите режим PAE (там он по умолчанию отключен), то увидите собственными глазами, что системе будет доступно все 4 Гб ОЗУ.

ОЗУ и 64-битные системы Windows

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

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

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

Еще один «сюрприз» вас может ожидать, если в материнскую плату будет установлен максимальный поддерживаемый объем памяти. Например, еще недавно популярный чипсет для бюджетных решений Intel G41 позволяет устанавливать до 8 Гб оперативной памяти. Как правило, в этом случае, на системной плате разведены 33 адресные линии (2 33 = 8 589 934 592 байт = 8 Гб). С точки зрения производителя это вполне объяснимо - зачем делать шину более высокой разрядности, если набор системной логики все равно не поддерживает большие объемы памяти? Но из-за этого, даже если контроллер памяти и может перекинуть заблокированный участок ОЗУ в девятый гигабайт, сделать это у него не получиться, так как для этого потребуется 34-разрядная шина, а не 33-х, как в нашем случае. В итоге пользователю будет доступно только семь с небольшим гигабайт ОЗУ. Тоже самое касается плат поддерживающих 16 и 32 Гб.

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

Заключение

В заключение давайте сделаем несколько основополагающих выводов, исходя из всего вышесказанного.

Хотя 32-битные системы Windows чисто теоретически могут использовать до 4 Гб оперативной памяти, некоторый ее объем всегда оказывается зарезервированным под нужды устройств, после чего в доступности оказывается обычно не более 3-3,5 Гб.

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

В клиентских 32-разрядных версиях Windowsрежим PAE был урезан для обеспечения совместимости с драйверами устройств из-за чего в WindowsXP SP2/SP3, Windows Vista, Windows 7, а так же Windows 8 увидеть все максимально допустимые четыре гигабайта ОЗУ невозможно и исправить это нельзя.

Таким образом, если вы собираетесь установить в компьютер более трех гигабайт оперативной памяти, то необходимо использовать 64-битные версии операционных систем, которые позволяют видеть до 192 Гб ОЗУ и имеют неурезанный режим PAE. В противном случае весь остальной объем памяти будет недоступен для использования.

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



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: