3

32-битная Windows XP имеет два хорошо известных ограничения памяти. Каждый процесс ограничен 2 ГБ памяти (или 3 ГБ, если вы меняете настройку). Максимальный объем памяти, который Windows XP будет использовать в общей сложности, составляет 3,25 ГБ.

В 32-разрядных операционных системах не существует принципиального ограничения в 4 ГБ для памяти - Windows Server 2003 может использовать более 4 ГБ. Предел ключа, который определяет 32-битную систему, является для каждого процесса (виртуальное адресное пространство для одного конкретного приложения). Это является причиной ограничения 2 ГБ /3 ГБ на процесс в Windows XP, которое также используется Windows 2003 Server.

У меня двойная загрузка, с 64-битным OpenSUSE 11.3 Linux и Windows XP. Linux все больше и больше становится моей основной операционной системой, но у меня слишком много приложений для Windows XP, которые я регулярно использую, чтобы просто отказаться от них.

То , что я хочу знать, следовательно, есть ли способ получить память выше 3.25GB в практическое использование в 32 разрядной Windows XP. Виды возможностей, которые я имею в виду ...

  • Способ заставить Windows XP вести себя больше как Windows 2003 Server.
  • Способ замены обработки кэша жесткого диска в Windows XP альтернативой, которая может использовать дополнительную память.
  • Диск RAM, который может использовать не-Windows память.

Две возможности, о которых стоит упомянуть, но которые я сейчас отвергну, это ...

  • Используйте Windows 2003 Server 32 бит - проблемы с лицензией.
  • Используйте Reactos - все еще альфа, со значительными проблемами, и я не уверен, что он все равно может использовать более 3,25 ГБ памяти.

РЕДАКТИРОВАТЬ

В ответе Джоэлса, последний абзац ...

Если у вас много оперативной памяти (6 ГБ или более), я также слышал рассказы о людях, устанавливающих программное обеспечение, которое устанавливает RAMDisk для неиспользуемой оперативной памяти, а затем размещает там файл подкачки.

Если кто-нибудь знает, где я могу найти подходящее программное обеспечение RAMDisk, я могу принять этот ответ. Обычный RAMDisk не подходит, потому что он будет использовать только ту память, которой управляет Windows, и, следовательно, с большей вероятностью снизит эффективность системы и все равно оставит дополнительную RAM неиспользованной.

7 ответов7

4

Ограничение в 2 ГБ /3 ГБ, которое вы упомянули ранее, относится к процессу. В Windows XP может быть гораздо больше оперативной памяти, но для каждого процесса доступно только столько. Фактический общесистемный лимит в XP составляет 4 ГБ, а не 3,25 ГБ. Вы можете легко превысить 3,25 ГБ ОЗУ в 32-битной XP, просто подключив видеокарту с меньшим объемом ОЗУ (вы, вероятно, сейчас используете карту 768 МБ). Поместите старый 64Mb PCI видеокарту и вы , вероятно , найдете вы получите гораздо ближе к максимуму 4GB.

Превышение 4 Гб кепки сложнее. Это требует отрабатывать приемы адресации, которые требовались во времена 16-битных систем. Я слышал истории о том, что в 32-битной XP можно преодолеть этот барьер, но для этого требуется гораздо больше, чем просто редактирование реестра. IIRC, предел компилируется в операционную систему напрямую. Чтобы обойти это, вы должны найти конкретный файл .dll на 32-битном компьютере с сервером 2003 и использовать его для замены эквивалентного файла на вашем компьютере с Windows XP. Чтобы это работало, файл должен быть изменен, чтобы XP не отклоняла его, и вы должны использовать теневую копию тома, чтобы заменить существующий файл. Я не помню и не могу найти ссылку для того, какой файл вам нужен или как его изменить. После того, как это будет выполнено, вы сможете установить те же настройки для 32-битной XP, что и для Server 2003, чтобы обеспечить более высокий предел памяти. Конечно, такое изменение не поддерживается и нарушает ваше лицензионное соглашение.

Если у вас много оперативной памяти (6 ГБ или более), я также слышал рассказы о людях, устанавливающих программное обеспечение, которое устанавливает RAMDisk для неиспользуемой оперативной памяти, а затем размещает там файл подкачки.

3

Хотя 3.25 не является официальным пределом, 4 ГБ есть. Топ 1 Гб или около того может пойти в видеопамяти и драйверов. Так что выход выше 3.25 возможен. Выше 4 не возможно в Windows XP по замыслу. Было обнаружено много проблем с драйверами PAE, которые привели к этому решению. Весь вопрос с памятью подробно обсуждается на Microsoft.com.

В принципе

Максимальный объем памяти, который может поддерживаться в Windows XP Professional и Windows Server 2003, также составляет 4 ГБ. Однако Windows Server 2003 Enterprise Edition поддерживает 32 ГБ физической ОЗУ и Windows Server 2003, Datacenter Edition поддерживает 64 ГБ физической ОЗУ с использованием функции PAE.

Виртуальное адресное пространство процессов и приложений по-прежнему ограничено 2 ГБ, если в файле Boot.ini не используется ключ /3GB. Если объем физической памяти в системе превышает 16 ГБ и используется ключ /3GB, операционная система будет игнорировать дополнительную память до тех пор, пока ключ /3GB не будет удален. Это связано с увеличением размера ядра, необходимого для поддержки большего количества записей в таблице страниц. Предполагается, что администратор предпочел бы не потерять функциональность /3GB в автоматическом режиме; следовательно, это требует от администратора явного изменения этого параметра.

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

3

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

RamDisk Plus 11 обладает самой уникальной особенностью. Наша запатентованная технология может получить доступ к памяти за пределами ограничений, наложенных 32-битной операционной системой Windows! Другими словами, RamDisk Plus 11 может использовать "неуправляемую" память Windows, например, более 4 ГБ. Он также может использовать упорно inaccessable памяти между 3.2 Гбайт и 4 Гбайт.

См. Файл справки продукта для подробного объяснения того, что такое "неуправляемая" память и как получить к ней доступ и использовать ее с RamDisk Plus 11.

3

Я использую XP Pro SP3 на 2,6-ГГц машине Core Duo с 4 ГБ ОЗУ.

Я использую эту дополнительную память, недоступную для XP для виртуального диска. Я использую продукт под названием VSuite Ramdisk от компании Romex Software. VSuite доступен в нескольких разных версиях. Бесплатная версия делает все, что мне нужно. VSuite Ramdisk находится здесь:http://www.romexsoftware.com/en-us/vsuite-ramdisk/index.html

Когда он активен, XP видит 763 МБ ОЗУ помимо 3,3 ГБ или около того, XP может получить прямой доступ как сжатый том NTFS, обозначенный как диск Z:

Я тестирую бета-версии Mozilla Firefox, SeaMonkey и Thunderbird и запускаю их с виртуального диска. Материал, запущенный с виртуального диска, хранится в виде zip-архива на жестком диске. Я написал командные файлы, чтобы разархивировать их на виртуальный диск и обновить zip-файлы на жестком диске после внесения любых изменений, что происходит ежедневно для таких вещей, как ночные сборки. (Оказалось, быстрее разархивировать и заархивировать в архивы, чем просто копировать файлы с жесткого диска на виртуальный диск и наоборот.) Я запускаю XP Pro, который включает в себя редактор групповой политики, и я использовал его, чтобы связать командные файлы как сценарии входа и выхода из системы.

RAM-диск заполняется автоматически при загрузке и входе в систему, а изменения сохраняются на жестком диске при выходе из системы, завершении работы или перезагрузке. Он работает довольно хорошо, и когда Firefox запускается с виртуального привода, а его профиль также находится на виртуальном приводе, все идет очень быстро. На моей машине Firefox 5/6/7 запускается примерно за 4 секунды с 85 загруженными расширениями. (Чем больше расширений вы установили, тем больше времени занимает FF, поскольку он должен перечислять и создавать экземпляры каждого установленного дополнения. Без загруженных расширений я бы ожидал, что время запуска будет порядка двух секунд.)

У меня также есть Firefox для хранения своего дискового кэша на виртуальном диске вне профиля, и я делаю это регулярно для любой версии, будь то запуск с HD или виртуального диска. Это быстрое ускорение. Я делаю нечто подобное в Linux, говоря Firefox, чтобы поместить кеш в /dev /shm. Это общая память POSIX, которая существует в оперативной памяти или в разделе подкачки, но не в файловой системе.

> Dennis

0

Посмотрите на ссылку здесь. Похоже, что ответ для Windows 7 (если он разблокирован и т.д.) Составляет 64 ГБ ОЗУ. Я не верю, что это так для WinXP.

0

Я не верю, что есть способ обратиться к более чем 3,25 ГБ в XP без каких-либо действий, которые значительно снизили бы стабильность.

Если вы используете OpenSUSE в качестве основной ОС, почему вы обеспокоены тем, что XP использует более 3,25 ГБ? Если вы используете приложения для Windows, почему бы не установить VirtualBox и не запустить XP поверх OpenSUSE, чтобы ваши программы Windows были доступны без перезагрузки. Вы можете установить для своей виртуальной памяти 1-3 ГБ (в зависимости от общего объема системной памяти), а затем выделить ее для программ, которые недоступны на стороне Linux ...

0

Вы ничего не можете сделать для Windows XP, чтобы использовать более 3,845 г памяти. Проблема не в том, что его 32-битная ОС, проблема в самой Win XP.

Windows 7 home может использовать до 12 г оперативной памяти, а Windows 7 Ultimate может использовать до 36 г памяти.

Есть ли определенные программы, которые вы используете, которые требуют 32-разрядной операционной системы Win XP? Если нет, вы рассматривали возможность обновления до Win 7?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .