Чи є можливість включити більше 4 ГБ оперативної пам’яті в 32-бітну ОС Windows?


22

Я модернізував свій ПК до 4 ГБ оперативної пам’яті і отримав лише 3 ГБ. 32-розрядні Windows 7 вважають, що у мене є 4 Гб оперативної пам’яті, але я не використовував більше 3 ГБ.

Хтось сказав мені, що 32-розрядна програма MS Windows не підтримує оперативну пам’ять розміром більше 3 Гб.

Тож будь ласка, чи є спосіб зробити мою ОС "Windows 7 32-бітною" підтримкою більше 3 ГБ оперативної пам’яті?

* `Примітка. Я не можу перейти до 64-розрядної, тому що у мене багато програм не працює з 64-розрядною ОС.

Редагувати ::

Я спробував те, що мені порадив містер Вонсунгі, але коли я перевіряю цей варіант:

Enable support for 4 GB of RAM

Я отримую таку помилку:

'Cannot access to the registry key HKEY_CLASSES_ROOT\CLSID\{E88DCCE0-11d1-A9F0-00AA0060FA31}.'

У моєму реєстрі немає "CLSID", я не знаю чому !.


23
"багато програм не працюють з 64-бітовою ОС" насправді не є вагомою причиною в еру віртуальних комп'ютерів. за допомогою VirtualBox (який, можливо, є безкоштовним), ви можете запускати свої 32-розрядні програми на 32-бітній віртуальній машині Windows у безшовному режимі (інтегрованому в хост ОС) і навряд чи відчуєте різницю (якщо вам не потрібна вся потужність графіки карта доступна для цих додатків)

Я згоден з Моллі. А для 16-бітних програм ви можете використовувати емулятор на зразок DOSBox. dosbox.com
Саша Чедигов

1
Якщо у вас є Windows 7 Professional, Enterprise або Ultimate, подумайте про те, щоб перевірити режим Windows XP: microsoft.com/windows/virtual-pc
alex

Я використовую багато 32-бітних програм на Win7 64bit. Вони датуються з 1998 по 2001 рік. Більшість потребує режимів сумісності для роботи. Ви робите припущення, що це не спрацює, або хтось сказав, що він не працюватиме? Ви насправді намагалися?
kmarsh

ad Edit1: Я зрозумів, що ви ще не оновили до 4 Гб ... так що ви ще не знаєте, працює він чи ні, правда? Щоб переконатися, що вона працює, вам потрібно оновити b / c, існує не лише Win, але й обмеження HW. Зробіть оновлення, а потім дайте нам детальніше - детальніше - про ваші налаштування, якщо це не працює.
Герд Кліма

Відповіді:


11

Ви можете використовувати PAE, але це не так добре, як просто 64-бітове. Перевірте цю сторінку MSDN.

Увімкнення PAE

Windows автоматично вмикає PAE, якщо DEP увімкнено на комп’ютері, що підтримує DEP з підтримкою апаратного забезпечення, або якщо комп'ютер налаштований на пристрої пам'яті гарячого додавання в діапазоні пам'яті понад 4 Гб. Якщо комп'ютер не підтримує апаратний DEP або не налаштований на пристрої пам'яті гарячого додавання в діапазоні пам’яті понад 4 Гб, PAE має бути явно ввімкнено.

Щоб явно ввімкнути PAE, використовуйте таку команду BCDEdit / set для встановлення параметра введення завантажувача pae:

bcdedit /set [{ID}] pae ForceEnable

Якщо DEP увімкнено, PAE не можна відключити. Використовуйте наступні команди BCDEdit / set для відключення і DEP, і PAE:

bcdedit /set [{ID}] nx AlwaysOff
bcdedit /set [{ID}] pae ForceDisable

Windows Server 2003 та Windows XP : Щоб увімкнути PAE, використовуйте перемикач / PAE у файлі boot.ini . Щоб відключити PAE, використовуйте перемикач / NOPAE . Щоб відключити DEP, використовуйте перемикач / EXECUTE .


1
Я знайшов це To explicitly enable PAE, use the following BCDEdit /set command to set the pae boot entry option: bcdedit /set [{ID}] pae ForceEnable на сторінці MSDN, яку ви надали. Але я не знаю, як і де написати цю команду. Не можете мені допомогти, будь ласка?
Вахід Бітар

5
Якщо ви не знаєте, як це зробити, настійно рекомендую взагалі цього не робити , якщо щось піде не так, знадобиться ці знання для порятунку вашої системи.
Фоші

4
перемикач PAE - це не якесь приховане диво, і, звичайно, не святий грааль для 32 ГБ 32-бітних систем (інакше всі користувалися б ним, правда?). це може спричинити нестабільність системи.

2
Перемикач PAE все ще не дозволить використовувати весь 4 ГБ оперативної пам’яті. Дивіться мою відповідь нижче щодо рішення, яке долає це питання.
Прорив

2
"Деякі 32-бітні версії Windows Server, що працюють на системах на базі x86, можуть використовувати PAE для доступу до 64 ГБ або 128 ГБ фізичної пам'яті." Ця публікація ТОЛЬКО стосується Windows Server - 32-бітні версії для настільних ПК Windows розміщуватимуться лише 4 Гб Це питання ліцензування, а не апаратне чи програмне забезпечення, запуск цієї команди не змінить цього факту - msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx .
Наталі Адамс

13

Прочитайте це: Чувак, де мої 4 гігабайти оперативної пам’яті?

Для загальної інформації, також існує цей огляд обмежень пам’яті для видання Windows:

Обмеження пам’яті для випусків Windows


Кажуть, це проблема X86. Чи можете ви пояснити мені, чому 32-бітний OSX не має жодних проблем при зверненні до 16 Gb в MacPro?
bert

До речі, у 8 та 16 бітових землях дуже часто зустрічалася оперативна пам'ять, що перевищує 2 ^ бітні байти.
Берт

4
Запис у вікіпедії для PAE (Physical Adress Extension) зазначає: Mac OS X Mac OS X для Intel Macs підтримує PAE і NX біт на всіх процесорах, підтримуваних Apple (з 10.4.4 - перший реліз Intel - далі). Системи Mac Pro та Xserve в даний час можуть підтримувати 32 ГБ оперативної пам’яті, хоча ядро ​​Mac OS X 10.5 Leopard залишається 32-бітним. Ядро Mac OS X 10.6 Snow Leopard необов'язково може працювати в 64-розрядному режимі на певних системах en.wikipedia.org/wiki/Physical_Address_Extension
Герд Кліма

1
OSX 32 і Linux Kernel 2.6 32, по суті, є 32/64 байтовими операційними системами, використовуючи в основному 32-бітні інструкції, але використовуючи деякі 64-бітові адреси пам'яті, особливо для файлової системи та розподілу пам'яті O / S. Програми, що працюють на них, як і раніше мають деякі 32-бітні обмеження.
kmarsh

5
Це неправильно. 32-бітні версії ядра Linux - це не якась дивна 32/64 байт [sic] операційна система. Це 32-бітні операційні системи, які, якщо обрані правильні параметри, можуть використовувати PAE для адреси 2 ^ 36 байтів пам'яті, хоча менше ніж 2 ^ 32 за процес. Якщо ядро ​​64-бітове, воно використовує 64-бітну адресацію.
ChrisInEdmonton

11

Нещодавно група програмістів випустила патч ядра для Windows 7, щоб дозволити використовувати більше 4 Гб оперативної пам’яті під Windows 7. Клацніть тут, щоб завантажити патч або переглянути більше інформації про нього . Патч в основному модифікує ядро ​​Windows 7, щоб більше нагадувати Windows Data 2003 Datacenter Edition, сумісний з до 8 ГБ оперативної пам’яті в 32-бітному режимі.

Патч дозволяє добре розширити PAE на 8 ГБ оперативної пам’яті під 32-бітною версією Windows 7. Для отримання додаткової інформації про те, чому Microsoft застосувала це технічне обмеження, див. Цю статтю .

Зауважте, що окремі процеси все ще обмежуватимуться 4 ГБ, навіть якщо система може отримати доступ до більшої кількості ... Хоча якби у вас було 8 ГБ оперативної пам’яті, то принаймні у вас ще залишилися б ще 4 ГБ для інших процесів;)


1
Я використовую цей патч вже місяці, і не відчував жодних проблем. Деякі програми (особливо Photoshop) не мають проблем при використанні великої кількості оперативної пам’яті. :)
Прорив

1
Пам’ятайте, що зміна ваших системних файлів порушує вашу ліцензію продукту і анулює вашу гарантію.
kinokijuf

Я хочу задзвонити і сказати, що хак, певно, буде працювати деякий час. Але оновлення вашої системи, ймовірно, буде грою в російську рулетку - Microsoft, ймовірно, не збирається навмисно підключати отвір ядра, але оновлення може залишити вашу систему непрацездатною.
Наталі Адамс

@NathanAdams це не «дірка», це результат ліцензованої пам’яті (див. Статтю, до якої я посилався вище). Цей патч також копіює наявне ядро ​​перед виправленням його, тому, якщо ви переживаєте, ви можете просто завантажитися в Windows без патча, щоб запустити оновлення Windows.
Прорив

8

Наскільки я знаю, 32-бітний Window може використовувати пам'ять об'ємом до 64 ГБ, і його можна "зламати" для цього.
Цей хак повністю описаний тут: Ліцензована пам'ять у Windows Vista .
(Примітка. Я не раджу нікому насправді спробувати.)
Це також цікаве читання, оскільки воно дуже добре пояснює всі задіяні концепції.
Я відтворюю нижче його доказовий образ.

Те, що 32-бітні випуски Windows Vista обмежені 4 Гб, не є фізичним чи технічним обмеженням для 32-бітних операційних систем. У 32-бітних випусках Windows Vista всі містять код для використання фізичної пам'яті понад 4 Гб. Microsoft просто не дає ліцензії на використання цього коду.

зображення


Будь ласка, дивіться мій коментар вище, Vista і вище повідомлять ВСЕ ФІЗИЧНУ пам'ять у цьому вікні. Це НЕ загальна сума, яку використовуватиме ОС. Для одного я впевнений, що хак застарілий і, ймовірно, не працюватиме у Vista SP2. Крім того, 64-бітові процесори є нормою, тому немає ніяких причин не використовувати 64-бітну ОС.
Наталі Адамс

@Nathan: Стаття, яку я цитував, робить дуже переконливим читання. З того, що мені відомо про архітектуру Intel, 32-бітну чи ні, єдиний реальний ліміт повинен становити 4 Гб на додаток .
harrymc


Я майже впевнений, що це порушує EULA. Отже, я б не рекомендував встановлювати цей патч.
Наталі Адамс

@Nathan Adams: Я також не рекомендував це.
harrymc

7

Відповідь на це питання дійсно "залежить від того, кого ви запитуєте".

Деякі кажуть, що використовувати PAE, що дозволить вам звертатися до 4 Гб, але Microsoft НЕ дозволить вам використовувати для багатьох 32-бітних версій Windows.

http://msdn.microsoft.com/en-gb/library/aa366778(VS.85).aspx
У наступній таблиці вказані обмеження на фізичну пам'ять для Windows 7.

Фізичний ліміт 4 Гб, період. Це питання ліцензування. Можливо, навіть "хак" плаває навколо, щоб ви могли використовувати більше 4 Гб, але я не пам'ятаю.

Зверніть увагу: Vista та Windows 7 на 32-бітній повідомлять ВСІЙ ФІЗИЧНУ ОЗУ, яку ви маєте в системі, але вона буде використовувати лише 4 ГБ її. Отже, засуваючи 16 Гб на комп'ютер з 32-бітовою Windows, буде використано лише 4 ГБ ЗА МІКРОСОФТ, навіть якщо на панелі керування "Система" буде показано 16 ГБ. Windows 7, Vista та XP 32bit будуть використовувати лише 4 Гб оперативної пам’яті, це факт. Однак деякі версії Windows Server будуть використовувати більше 4 Гб із включеним PAE.

Для тих, хто переходить "ваш неправильний PAE дозволить вам використовувати більше 4 ГБ", так, я погоджуюся, однак, Microsoft каже, що ви можете використовувати лише 4 Гб на більшості 32-бітних настільних ОС, тому якщо ви вважаєте, що ця сторінка помиляється, надішліть їх електронний лист або зателефонуйте їм, щоб скаржитися.


4 Гб - це штучний ліміт. Апаратне забезпечення Intel може працювати набагато більше. Навіть 32-бітна операційна система, що розподіляє пам'ять на сторінках 4K і припускаючи, що вона зберігає номер сторінки в 32-бітному цілому цілому, може легко обробити 4 ГБ х 4 К = 16 ТБ. За додаток межа обмеження байтової адреси для 32-бітового регістру становить 4 Гб. Отже, якщо MS каже 4 Гб для ОС, це просто маркетинговий ажіотаж, підкріплений простим обмеженням, що стаття, цитована у моїй відповіді, локалізується на дуже небагато інструкцій з обладнання в ядрі.
harrymc

2
Перечитайте ще раз, будь ласка, Microsoft має цей ліміт через ліцензування. Я ніколи не говорив, що ви не можете використовувати більше 4 ГБ в 32-бітній ОС, просто не можете в настільних версіях Windows, період. Це факти. "Виправити" це не просте виправлення реєстру. Вам потрібен розбирач, шестигранний редактор, знання складання та трохи удачі.
Наталі Адамс

5

Хтось сказав мені, що 32-розрядний MS Windows 7 не підтримує оперативну пам’ять розміром більше 3 Гб.

Хтось помиляється. 32-бітні операційні системи Windows підтримують до 4 Гб фізичної пам'яті. Однак через обмеженість обладнанням архітектури x86, лише 3,5 ~ ГБ доступні для ОС, якщо встановлено 4 ГБ.


2
Це неправильно. 32-бітний Linux, наприклад, не має проблем із підтримкою 4 ГБ оперативної пам’яті. Або, скажімо, 64 ГБ оперативної пам’яті, хоча з обмеженнями на кожен процес. Чорт, деякі версії 32-розрядних Windows підтримують більше 4 ГБ оперативної пам’яті. Дивіться en.wikipedia.org/wiki/…
ChrisInEdmonton

2
що неправильно ??? 32-розрядні вікна підтримують фізичну пам'ять об'ємом до 4 Гб, кінець історії (якщо не обмежено іншими факторами, тобто виданнями "стартер"), у цій таблиці ви посилаєтесь на ВКЛЮЧЕННЯ 64-бітних версій Windows, таких як ранні вікна 2000 просунуті сервер і центр обробки даних.

1
"Microsoft Windows 2000 Advanced Server Limited Edition та Windows 2000 Datacenter Server Limited Edition були розроблені для 64-розрядних мікропроцесорів Intel Itanium."

1
Windows 2000 Advanced Server використовує PAE у 32-бітних системах для доступу до 8 ГБ оперативної пам’яті. Існує також версія IA-64, але про це я не говорю.
ChrisInEdmonton

1
ну, я не дуже переймаюся цією аргументацією чи порівнянням з екзотичним / застарілим сервером або * nix операційними системами, ОП заявив, що Windows 7 32-бітний не підтримує більше 3 ГБ оперативної пам’яті, що WRONG, він підтримує до 4 Гб, отримаєте? але щоб порадувати вас, я відповідно відредагую свою відповідь.

3

Цікаво, чи можете ви навести кілька прикладів програм, які не працюють на 64-бітних Windows? 64-розрядна Windows, оскільки Windows XP має чудову зворотну сумісність з 32-бітними програмами. Перевірте 5-те запитання на цій сторінці: h ttp: //windows.microsoft.com/en-US/windows-vista/32-bit-and-64-bit-Windows-frequently-asked- questions . Візьмемо для прикладу Microsoft Office, він все 32-розрядний, але відмінно працює у 64-розрядних Windows.

Єдиний раз, коли ви не хочете переходити на 64-розрядні, це якщо у вас апаратне забезпечення, яке не має 64-бітних драйверів. Драйвери для обладнання повинні відповідати платформі ОС.


Програмне забезпечення Juniper VPN, яке використовує мій роботодавець, не працює на 64-бітної ОС.
Джефф Шатток

2
Програмне забезпечення VPN більше підпадає під категорію "драйвери".
churnd

У мене багато «арабських» програм не працює з 64-бітними. Крім того, у мене є якесь "старе" обладнання не має 64-бітних драйверів.
Вахід Бітар


-4

Посилання нижче визначає спосіб

  • візьміть копію ядра
  • зламати його використовувати 4 Гб і вище оперативної пам'яті (редагувати шестигранні рядки 7C 11 8B 45 FC 85 C0 74 0Aі 7C 10 8B 45 FC 85 C0 74 09до 7C 10 B8 00 00 02 00 90 90і , 7C 10 B8 00 00 02 00 90 90відповідно)
  • підпишіть його makecert -r -ss my -n "CN=My Cert"іsigntool sign -s my -n "My Cert" ntkl64g.exe
  • і додайте його як додатковий варіант завантаження за допомогою bcdedit

дуже чітко і прямо вперед

http://www.evga.com/forums/tm.aspx?m=960087&mpage=1&print=true

Який працював на мене.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.