Войти

Показать полную графическую версию : 32 разрядные версии Windows и память свыше 4GB


Страниц : [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

Ment69
09-09-2008, 15:24
Аксиома номер раз: В 32 разрядных клиентских операционных системах невозможно использовать память объемом более 3,5GB (в некоторых 3,25, это зависит от особенностей биоса системных плат)
Это объясняется 32 разрядной архитектурой и тем что пространство от 3,5 до 4Gb занято под адресацию устройств PCI, в частности если у вас установлено много PCI устройств, то вы "увидите" меньше оперативной памяти, чем у вас есть.
Аксиома номер два: От названия операционной системы это не зависит :) Поэтому не важно Vista у вас или Linux - если они 32 битные не видать вам больше 4Gb памяти! Невозможно из-за 32-разрядной архитектуры ОС!!
Если вам хочется "увидеть" все 8Gb (например) памяти, что поддерживает системная плата, устанавливайте 64-разрядные ОС. К старым устройствам может не найтись 64-разрядных драйверов.

Данный вопрос неоднократно поднимался на форуме, поэтому ссылок не даю, рекомендую пользоваться поиском. Объяснять подробно почему и как тоже не буду, просто советую принять все что здесь написано как незыблемое правило! Если хотите узнать подробности советую посетить сайт компании Microsoft и поиском найти необходимые статьи.

Преодолевая ограничения Windows: физическая память (http://www.thevista.ru/page.php?id=10542) Статья Марка Руссиновича
Куда пропадает память? (http://www.xakep.ru/post/45815/default.asp) Статья из журнала Хакер

Переход на 64-битную систему: преимущества, проблемы, советы (http://www.thg.ru/software/windows_64-bit_faq/index.html) и Тесты игр в 64-битной среде: стоит ли переходить? (http://www.thg.ru/game/64-bit_gaming/64-bit_gaming-03.html#) Спасибо zeroua!!

Вопросы "Почему у меня не видит больше 3 гигабайт в данной теме будут удалятся!

Приветствуются посты с указанием ссылок на статьи посвященные данному вопросу.

Blast
09-09-2008, 15:39
Приветствуются посты с указанием ссылок на статьи посвященные данному вопросу. » такие подойдут?

Physical Address Extension - PAE Design (http://www.microsoft.com/whdc/system/platform/server/pae/default.mspx) + ссылки внутри конечно же

Описание различий между 32-разрядными и 64-разрядными версиями Windows Vista (http://www.oszone.net/4335/#5)

В диалоговом окне "Сведения о системе" в Windows Vista показывается объем системной памяти меньше ожидаемого, если на компьютере установлено 4 ГБ ОЗУ (http://support.microsoft.com/kb/929605/ru)

Windows Vista с пакетом обновления 1 (SP1) выводит сведения об объеме системной памяти (ОЗУ) 4 ГБ в системах с установленным объемом памяти 4 ГБ (http://support.microsoft.com/kb/946003/ru)

Keper
09-09-2008, 15:41
Не совсем согласен с "аксиомами":
1. нельзя говорить о числе 3.5ГБ. Корректнее говорить просто о том, что все 4ГБ получить нельзя, да и существует одно из типичных значений 3.75 ГБ. К тому же адресация устройств начинается с 2ГБ, а не с 3.5ГБ.
2. А как же PAE? С ним можно получить куда больше. Конечно поддерживают его только серверные Windows, а обычные (некотрые) лишь неофициально и всегда криво. Но те же линуксы вполне держат, надо лишь ядро пересобрать.

Подробнее (но вкратце :) ) со ссылками http://forum.3dnews.ru/showthread.php?threadid=81382&pagenumber=all#1402967
Вставлю ка это и сюда:

Q: Установил в систему 4 ГБ памяти, но в свойствах системы Windows XP SP2 показывается только 3 ГБ, в чём причина?

A: У 32-битных ОС (Windows ХР SP2/SP3, Windows Vista) адресное пространство составляет 4 ГБ, часть его адресов используется для работы с устройствами ввода-вывода (видеокарта, контроллеры и пр.), а то, что остаётся - для адресации оперативной памяти. Поэтому фактически доступный объем оперативной памяти всегда будет меньше 4 ГБ, а насколько меньше, зависит от используемого оборудования, но обычно около 3 ГБ - 3.5 ГБ.
Воспользоваться всеми установленными 4ГБ можно при использовании x64 версий Windows или старших версий серверных систем.
При использовании x64 версии Windows может потребоваться включение ремапа в BIOS, параметр может называться Memory Remap Feature, Memory Hole Remapping и т.п.
При использовании серверных x86 систем может потребоваться включить PAE (Расширение физических адресов), для этого надо отредактировать системный файл boot.ini, добавив ключ /pae в строку загрузки ОС наряду с /fastdetect и прочими. Определить, включен ли PAE можно, посмотрев в свойствах системы. В привычной Win XP SP2/SP3 PAE также присутствует, но используется для DEP (Предотвращение выполнения данных).
В Windows XP SP2/SP3 получить все 4 ГБ невозможно, возможно лишь увеличить значение доступной памяти, отключив неиспользуемые устройства.

Полезные ссылки:
1. Memory Limits for Windows Releases (http://msdn2.microsoft.com/en-us/library/Aa366778.aspx)
2. В диалоговом окне "Сведения о системе" в Windows Vista показывается объем системной памяти меньше ожидаемого, если на компьютере установлено 4 ГБ ОЗУ (http://support.microsoft.com/kb/929605)
3. Четыре гигабайта памяти - недостижимая цель? (http://www.ixbt.com/soft/windows-4gb.shtml)
4. Windows не видит всю установленную память объёмом 4Гб или более (http://www.nix.ru/support/faq/show_articles.php?number=644)
5. Physical Address Extension - PAE Memory and Windows (http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx)
6. Operating Systems and PAE Support (http://www.microsoft.com/whdc/system/platform/server/PAE/pae_os.mspx)

Приложения:
Свойства системы MS Windows 2003 Ent. SP2 с 4ГБ установленной памяти. (http://img0.liveinternet.ru/images/attach/b/3/10/845/10845133_Win2003ent_x86.png)
Свойства системы MS Windows XP PRO SP2 с 4ГБ установленной памяти. (http://img0.liveinternet.ru/images/attach/b/3/10/845/10845581_WinXP_x86_1.png)
Свойства системы MS Windows XP PRO SP2 с 4ГБ установленной памяти + отключены лишние устройства. (http://img0.liveinternet.ru/images/attach/b/3/10/845/10845976_WinXP_x86_2.png)
Свойства системы MS Windows Vista Ult. с 4ГБ установленной памяти. (http://img0.liveinternet.ru/images/attach/b/3/10/890/10890365_Win_Vista_x86.png)
Свойства системы MS Windows Vista Ult. x64 с 4ГБ установленной памяти. (http://img1.liveinternet.ru/images/attach/b/3/10/890/10890322_WinVista_x64.png)

Bonus: Свойства системы Linux Ubuntu 7.10 64bit с 4ГБ установленной памяти. (http://img0.liveinternet.ru/images/attach/b/3/10/846/10846828_Ubuntu_64bit.png)

Примечания:
1. Речь идёт только об ОС Microsoft Windows.
2. Не рассматриваются вопросы ограничений со стороны оборудования (ограничения чипсета - поддержка лишь 4 ГБ памяти и менее, несовместимость и пр.).
3. Не рассматриваются случаи применения старых версий Windows (например, WinXP без SP2), где возможно получить в доступ все 4 ГБ, но что чревато нестабильной работой системы.
4. MS Vista SP1 x86 отображает в свойствах системы не доступную память, а физически установленную, что может ввести в заблуждение, когда система якобы видит 4 ГБ памяти.
5. Если ОС видит только 2ГБ, в первую очередь нужно проверить, не включён ли ремап.

P.S. тему бы переименовать. ".. и память 4 ГБ и выше"

SanCho
09-09-2008, 16:24
Выжимаем максимум из оперативной памяти объемом 4 Гб в среде Windows (http://www.xard.ru/post/10474/default.asp). Как, сколько и где можно сделать с объёмом 4гб на 32-битных системах

Игорь Лейко
09-09-2008, 16:28
Аксиома номер два: От названия операционной системы это не зависит »
Это может зависеть даже от номера установленного (или неустановленного) пакета исправлений.
В порядке саморекламы: Четыре гигабайта памяти - недостижимая цель? (http://www.ixbt.com/soft/windows-4gb.shtml)

SanCho
09-09-2008, 17:25
Очень познавательный материал, ставящий все точки над "i".:up:

Ment69
10-09-2008, 17:28
Это может зависеть даже от номера установленного (или неустановленного) пакета исправлений. » Но насколько понятно из вашей статьи все равно предел в 4 гигабайта в 32 разрядных системах (не серверных) преодолеть нельзя.

Keper
10-09-2008, 17:36
Но насколько понятно из вашей статьи все равно предел в 4 гигабайта в 32 разрядных системах (не серверных) преодолеть нельзя.можно. И наверняка об этом Игорь Лейко написал.

Игорь Лейко
10-09-2008, 18:06
можно. И наверняка об этом Игорь Лейко написал. »
В несерверных 32-разрядных - нельзя. WinXP и WinXP SP1 могут использовать 4 Гб (с включенным РАЕ), XP SP2 и SP3, а также виста - только меньше четырех. Но это если речь идет о Windows.
Другие ОС вполне могут использовать больше 4 Гб и в клиентских версиях, если их разработчики об этом позаботились.

В принципе, WinXP и XP SP1 могли бы использовать до 64 Гб, если бы по соображениям сегментирования рынка им не была ограничена память до 4 Гб.

Ment69
10-09-2008, 19:50
Keper, Вы кстати не правильно поняли что такое Physical Address Extension - эта технология не позволяет "видеть" остальную память, а позволяет работать с ней, и кроме этой технологии надо чтобы и приложения с данной технологией могли работать, SQL может, а вот ваша любимая игрушка так и будет работать с 3,25Gb. Если я ошибаюсь то наши Гуру меня поправят :)

Keper
10-09-2008, 21:23
WinXP и WinXP SP1 могут использовать 4 Гб (с включенным РАЕ), XP SP2 и SP3, а также виста - только меньше четырех. Но это если речь идет о Windows.
Другие ОС вполне могут использовать больше 4 Гб и в клиентских версиях, если их разработчики об этом позаботились.

В принципе, WinXP и XP SP1 могли бы использовать до 64 Гб, если бы по соображениям сегментирования рынка им не была ограничена память до 4 Гб. одним словом - можно. И примерно то же самое я писал и выше.

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

вот ваша любимая игрушка так и будет работать с 3,25Gbигрушка будет работать только с 2 ГБ. В лучшем случаем максимум с 3 ГБ.

Coutty
10-09-2008, 21:35
В лучшем случаем максимум с 3 ГБ. »
Что это ещё за лучший случай? Насколько мне известно, ни одно 32-битное приложение не может получить в своё распоряжение больше 2 ГБ памяти. Просто ОС не выделит. Хоть даже ОС 64-битная, 32-битное приложение больше 2 ГБ не получит.

Keper
10-09-2008, 22:33
Coutty, для этого есть 4-Gigabyte Tuning. Читайте мелкомягких.
Хоть даже ОС 64-битная »до 8 ТВ на x64 процесс.

P.S. ссылки я давно давал, если что.
P.S. не исключаю, что где-то я могу и заблуждаться, т.к. всё это известно мне лишь в теории. Игорь Лейко поправит, если что :).

Ment69
11-09-2008, 06:15
для этого есть 4-Gigabyte Tuning. Читайте мелкомягких. » Почитал :) Tuning переводится как "настройка" и речь идет опять про PAE. ссылка (http://support.microsoft.com/kb/291988/en) Вот ещё интересная цитата:
Архитектура стандартной версии Windows NT Server позволяет выделять каждому процессу не более 2 Гбайт виртуального адресного пространства. На мощных серверах с объемом физической памяти более 2 Гбайт появляется возможность выделить приложению больший объем памяти. Именно такое расширение стандартной архитектуры и сделано в Windows NT Server, Enterprise Edition. Специальный механизм перераспределения доступного системе адресного пространства (4 Gigabyte Tuning — 4GT) позволяет приложению оперировать памятью объемом до 3 Гбайт. 4 Gigabyte Tuning включен в состав Windows NT Server Enterprise Edition для платформы Intel. В настоящее время Microsoft разрабатывает новую технологию сверхбольшой памяти (Very Large Memory — VLM) для 64-разрядных процессоров, таких как Digital Alpha и Intel Merced; эта технология будет включена в Windows 2000 Server. Средства VLM и 4GT являются взаимоисключающими, поскольку основаны на разных алгоритмах.

Отметим, что функция 4GT действует только на 32-разрядных процессорах и потому не может увеличить размер адресуемой памяти Windows NT Server сверх предела 4 Гбайт, который обусловлен архитектурой микропроцессоров. В свою очередь, VLM будет опираться на архитектуру 64-разрядных процессоров и поддерживать до 32 Гбайт адресуемой памяти.

Для поддержки 4GT не требуется никаких дополнительных API-интерфейсов. Однако автоматически предоставлять в распоряжение каждого приложения 3гигабайтное адресное пространство было бы слишком расточительным. Программы, которым потребуется адресное пространство до 3 Гбайт, должны иметь в заголовке исполняемого модуля значение бита IMAGE_FILE_LARGE_ADDRESS_AWARE, равное единице. Это можно сделать с помощью функции Imagecfg, включенной в каталог \Support на компакт-диске Windows NT Server, Enterprise Edition.

Coutty
11-09-2008, 11:11
Хоть даже ОС 64-битная »
до 8 ТВ на x64 процесс. »
Не вырывайте из контекста, я про 32-битные процессы на 64-битной ОС говорил.

Что ж, получается, что действительно можно 3ГБ на процесс. Но как-то слишком извращённо: "Этому дала, этому не дала, потому что расточительно, а этому не дала, потому что единички в заголовке нет"...

Keper
11-09-2008, 11:16
Не вырывайте из контекста, я про 32-битные процессы на 64-битной ОС говорил. »
кто же вырывает. Просто делюсь, делюсь и не спрашиваю. :) Может вы и этого не знаете.

Игорь Лейко
11-09-2008, 13:00
Physical Address Extension - эта технология не позволяет "видеть" остальную память, а позволяет работать с ней, и кроме этой технологии надо чтобы и приложения с данной технологией могли работать, SQL может »
Не может. MS SQL использует AWE.

Kelman
09-11-2008, 00:13
Ment69, Спасибо за разъяснения!

Keper
09-11-2008, 00:29
Хм, и до сих пор в шапке темы остались многочисленные ошибки? Печально.

Ment69
09-11-2008, 07:51
многочисленные ошибки? » Где?




© OSzone.net 2001-2012