Система не видит 4 гиг оперативки. Решения

B

berez

Вот столкнулся с такой проблемой.
купил новый комп:
материнка от гигабайта P35-sd3
процессор dual 2 core 4620 2,13 gh
памяти 2Х2 гиг
так вот память windows видит только 3, 25 гиг, прцедура POST видит все 4 гига..... эверест показывает что установлено 2 куска по 2 гига....пробовал ставить куски по одному показывает, что каждый 2 гига..
обновил Bios а проблема так и осталась....
мож кто знает что и почему?
 

zhugermek

Местный
Регистрация
22 Июн 2005
Сообщения
91
Реакции
21
Credits
126
лечится установкой 64-битной винды.
Обычная 32-х битная больше трех не увидит.
 

Vicci

ex-Team DUMPz
Местный
Регистрация
19 Апр 2004
Сообщения
5,110
Реакции
3,391
Credits
0
Все верно, zhugermek прав.
Об этом явлении обычно упоминается в описании на системную плату, в частности, для платы GA-P35-DS3/S3 Motherboard в мануале на странице 12 есть сноска (далее цитата):
"(Note 1) Due to Windows XP 32-bit operating system limitation, when more than 4 GB of physical memory is installed, the actual memory size displayed will be less than 4 GB."
 
B

berez

Vicci,
zhugermek,
ну СПАСИБО а я то уж было подумал
 

DJ-root

Местный
Регистрация
9 Янв 2005
Сообщения
969
Реакции
387
Credits
0
Есть еще один вариант решения:
в boot.ini после в строке, где прописана инициализация Винды дописать следующие 5 символов: " /PAE"
 

waldo

Местный
Регистрация
22 Фев 2004
Сообщения
210
Реакции
59
Credits
0
Есть еще один вариант решения:
в boot.ini после в строке, где прописана инициализация Винды дописать следующие 5 символов: " /PAE"

Насколько помню, это все равно не даст возможность использовать все 4 Гига на 32-битной винде.
Эта опция (PAE = Physical Address Extension) меняет максимальное количество памяти, доступное одной проге с двух гигов до трех.
 

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Насколько помню, это все равно не даст возможность использовать все 4 Гига на 32-битной винде.
Эта опция (PAE = Physical Address Extension) меняет максимальное количество памяти, доступное одной проге с двух гигов до трех.

Не совсем так, PAE позволяет использовать память за пределами 4Gb, не адресовать напрямую, а используя окно, задействовать до 16Gb оперативки, при этом для процесса как было доступно 2Gb, так и останется. Увеличить же доступное адресное пространство для процесса можно применением ключа "/3GB", до, соответственно 3Gb. Но это все сильно зависит от железа, поддержки этих режимов со стороны BIOS, и еще билл знает чего.
 

zhugermek

Местный
Регистрация
22 Июн 2005
Сообщения
91
Реакции
21
Credits
126
итог: на 32-х битной ОС максимум 3 Gb (полнокровно) остальное инсенуации
 

waldo

Местный
Регистрация
22 Фев 2004
Сообщения
210
Реакции
59
Credits
0
Не совсем так, PAE позволяет использовать память за пределами 4Gb, не адресовать напрямую, а используя окно, задействовать до 16Gb оперативки, при этом для процесса как было доступно 2Gb, так и останется. Увеличить же доступное адресное пространство для процесса можно применением ключа "/3GB", до, соответственно 3Gb. Но это все сильно зависит от железа, поддержки этих режимов со стороны BIOS, и еще билл знает чего.

Да, точно. Перепутал их...
 

Painted

Турист
Регистрация
13 Авг 2005
Сообщения
45
Реакции
1
Credits
74
Вообще-то, 32-битная операционка может напрямую адресовать 2^32 = 4 294 967 296Б = 4 ГБ. Это без всяких ухищрений типа PAE. Так говорил майкрософт.ком
А еще говорят, некоторые специализированные контролеры (RAID, SCSI) самовольно резервируют до полугига ОЗУ для своих нужд. Может в этом направлении поискать?
 

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Вообще-то, 32-битная операционка может напрямую адресовать 2^32 = 4 294 967 296Б = 4 ГБ. Это без всяких ухищрений типа PAE. Так говорил майкрософт.ком
А еще говорят, некоторые специализированные контролеры (RAID, SCSI) самовольно резервируют до полугига ОЗУ для своих нужд. Может в этом направлении поискать?

Система их и адресует, только резервирует 2Gb под ядро, а оставшиеся 2достаются приложениям пользовательского режима. А 2Gb, потому что старший бит адреса указывает на зарезервированную память, т.е. 2^31 = 2147483648. И, кстати, именно поэтому не рекомендуется, без острой необходимости, использовать ключ /3GB. В этом режиме менеджер памяти будет вынужден использовать атрибуты страниц памяти вместо сигнального бита, а это увеличивает время доступа, плюс снижается уровень защиты памяти ядра. Тут главное не путать виртуальную память и физическую. С контроллерами, и вообще железом, все проще, память для железок резервирует драйвер, и не сколько хочет, а сколько дадут, память выделяется из пространства ядра, и у пользовательского режима нет к ней доступа. Вот было бы весело, если бы упавший IE или какой-нибудь Неро, завалили бы с собой еще и драйвера того же рейда:)
 

Painted

Турист
Регистрация
13 Авг 2005
Сообщения
45
Реакции
1
Credits
74
Система их и адресует, только резервирует 2Gb под ядро, а оставшиеся 2достаются приложениям пользовательского режима. А 2Gb, потому что старший бит адреса указывает на зарезервированную память, т.е. 2^31 = 2147483648. И, кстати, именно поэтому не рекомендуется, без острой необходимости, использовать ключ /3GB. В этом режиме менеджер памяти будет вынужден использовать атрибуты страниц памяти вместо сигнального бита, а это увеличивает время доступа, плюс снижается уровень защиты памяти ядра. Тут главное не путать виртуальную память и физическую. С контроллерами, и вообще железом, все проще, память для железок резервирует драйвер, и не сколько хочет, а сколько дадут, память выделяется из пространства ядра, и у пользовательского режима нет к ней доступа. Вот было бы весело, если бы упавший IE или какой-нибудь Неро, завалили бы с собой еще и драйвера того же рейда:)
Чудится мне, что все не так просто. Пример, приходит к нам партии компьютеров со встроенными видеокартами и Виндоза показывала только 480М ОЗУ. С полноценными видеокартами - показывает свои родные 512М. А потому, что видеокарта без своей видеопамяти резервирует для себя часть основной памяти на уровне BIOS. Так, что винда их даже и не видит
Примерно такую же картину наблюдал и серверами. Если сервак напичкан контроллерами - 3.5Г ОЗУ в Винде. Попроще сервак показывает все 4Г. Вернее, 3.99Г почему-то.
 

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Painted, все верно, физическую память выделяет BIOS, я почему и оговорился, что речь идет о виртуальной памяти системы. Твоя видеокарта получает в свое распоряжение какое-то количество физической памяти, и система эту память уже не использует, тоже самое и с контроллерами и вообще с любым железом, но вот для работы драйверов/приложений память выделяется уже системой - это вот то самое виртуальное адресное пространство размером 2 гига. Мы просто немного о разных вещах говорим, но суть вроде ясна.
 

DubleAxe

Турист
Регистрация
29 Сен 2008
Сообщения
1
Реакции
0
Credits
2
У меня та же проблема, на ХР 32 бит поставил 4 гига две планки мать потдерживает все норм, но показывает 3.5 или 3.2, далбше больше после 15ти минут работы появился белый экран, перезагрузил и опять тоже самое, поставил висту 32 бит белых экранов нет но 4 гига не показывает...
 

bleem

Местный
Регистрация
30 Авг 2006
Сообщения
16
Реакции
11
Credits
24
У меня та же проблема, на ХР 32 бит поставил 4 гига две планки мать потдерживает все норм, но показывает 3.5 или 3.2, далбше больше после 15ти минут работы появился белый экран, перезагрузил и опять тоже самое, поставил висту 32 бит белых экранов нет но 4 гига не показывает...
Вот потому и не показывает... виста 32бит... а 64битная покажет и использовать будет ))