5

Я использую 64-разрядную версию Windows 7 на ноутбуке Lenovo 530 с 4 ГБ оперативной памяти.

Однако мой диспетчер задач показывает, что объем оперативной памяти составляет всего 2,6 ГБ, а монитор ресурсов показывает, что 1,4 ГБ "используется аппаратно":

Скриншот монитора ресурсов

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

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

Сначала я попробовал 64-битный Linux Live ISO (grml64), чтобы исключить любые проблемы с драйверами, и там с памятью то же самое (также только 2,6 ГБ можно использовать в /proc/meminfo). Другие предполагают, что msconfig возможно, установил лимит памяти, но он не установлен (и если я установлю один, например, 3,5 ГБ, доступная память уменьшится на 0,5 ГБ).

Затем я попытался meminfo -r который выводит это:

MemInfo v2.10 - Show PFN database information
C:\Users\Michi\Desktop>meminfo -r
Copyright (C) 2007-2009 Alex Ionescu
www.alex-ionescu.com

Physical Memory Range: 0000000000001000 to 000000000009D000 (156 pages, 624 KB)
Physical Memory Range: 0000000000100000 to 0000000020000000 (130816 pages, 523264 KB)
Physical Memory Range: 0000000020200000 to 0000000040004000 (130564 pages, 522256 KB)
Physical Memory Range: 0000000040005000 to 00000000871F2000 (291309 pages, 1165236 KB)
Physical Memory Range: 0000000100000000 to 000000011F600000 (128512 pages, 514048 KB)
MmHighestPhysicalPage: 1177088

Поэтому память от 0x871F2000 до 0x100000000 непригодна для использования, что составляет около 1,8 ГБ, но диапазон используемой памяти выше 4 ГБ составляет всего около 500 МБ, разница составляет около 1,4 ГБ, на которые я "охотюсь".

Как правило, я ожидаю (от старых компьютеров также из времен DOS), что когда аппаратное обеспечение "отображает" некоторый диапазон памяти, оно сопоставляет его со своей (виртуальной или реальной) памятью, и объем памяти "появляется" в конце диапазона памяти (как это происходит с около 500 МБ выше 4 ГБ).

Карта памяти в диспетчере устройств выглядит следующим образом, ничего в 0x871F ... либо:

            [00000000000A0000 - 00000000000BFFFF]  Intel(R) HD Graphics 4000
            [00000000000A0000 - 00000000000BFFFF]  PCI bus
            [00000000DFA00000 - 00000000FEAFFFFF]  PCI bus
            [00000000E0000000 - 00000000EFFFFFFF]  Intel(R) HD Graphics 4000
            [00000000F0000000 - 00000000F03FFFFF]  Intel(R) HD Graphics 4000
            [00000000F0400000 - 00000000F0BFFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 1 - 1E10
            [00000000F0C00000 - 00000000F13FFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 3 - 1E14
            [00000000F1400000 - 00000000F1403FFF]  Realtek PCIe GBE Family Controller
            [00000000F1400000 - 00000000F14FFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 4 - 1E16
            [00000000F1404000 - 00000000F1404FFF]  Realtek PCIe GBE Family Controller
            [00000000F1500000 - 00000000F1CFFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 3 - 1E14
            [00000000F1D00000 - 00000000F1D03FFF]  1x1 11b/g/n Wireless LAN PCI Express Half Mini Card Adapter
            [00000000F1D00000 - 00000000F1DFFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 2 - 1E12
            [00000000F1E00000 - 00000000F25FFFFF]  Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 1 - 1E10
            [00000000F2600000 - 00000000F260FFFF]  Intel(R) USB 3.0 eXtensible-Hostcontroller
            [00000000F2610000 - 00000000F2613FFF]  High Definition Audio-Controller
            [00000000F2614000 - 00000000F26140FF]  Intel(R) 7 Series/C216 Chipset Family SMBus Host Controller - 1E22
            [00000000F2615000 - 00000000F261500F]  Intel(R) Management Engine Interface 
            [00000000F2618000 - 00000000F26187FF]  Intel(R) 7 Series Chipset Family SATA AHCI Controller
            [00000000F2619000 - 00000000F26193FF]  Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E26
            [00000000F261A000 - 00000000F261A3FF]  Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E2D
            [00000000F8000000 - 00000000FBFFFFFF]  Hauptplatinenressourcen
            [00000000FE800000 - 00000000FE80FFFF]  Hauptplatinenressourcen
            [00000000FED00000 - 00000000FED003FF]  Hochpräzisionsereigniszeitgeber
            [00000000FED10000 - 00000000FED17FFF]  Hauptplatinenressourcen
            [00000000FED18000 - 00000000FED18FFF]  Hauptplatinenressourcen
            [00000000FED19000 - 00000000FED19FFF]  Hauptplatinenressourcen
            [00000000FED1C000 - 00000000FED1FFFF]  Hauptplatinenressourcen
            [00000000FED20000 - 00000000FED3FFFF]  Hauptplatinenressourcen
            [00000000FED40000 - 00000000FED44FFF]  Trusted Platform Module 1.2
            [00000000FED45000 - 00000000FED8FFFF]  Hauptplatinenressourcen
            [00000000FED90000 - 00000000FED93FFF]  Hauptplatinenressourcen
            [00000000FEE00000 - 00000000FEEFFFFF]  Hauptplatinenressourcen
            [00000000FF000000 - 00000000FFFFFFFF]  Hauptplatinenressourcen
            [00000000FF000000 - 00000000FFFFFFFF]  Intel(R) 82802 Firmwarehub
            [00000000FFFFF000 - 00000000FFFFFFFF]  Hauptplatinenressourcen

И поскольку Intel HD Graphics использует общую память, я проверил, и на данный момент она использует только 83 МБ:

HD Graphics Control Center

Есть идеи, как вернуть мою память?

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

Ноутбук поставляется с этой конфигурацией ОЗУ (используется 1 банк 4 ГБ), а также с Windows 7. Я переустановил Windows 7 полгода назад (и установил все драйверы с помощью Lenovo Update Wizard), когда я также установил BIOS/ обновление прошивки, но никогда не смотрел на монитор ресурсов, так как мне просто не требовалась дополнительная оперативная память вообще, поэтому я не могу сказать, был ли этот эффект уже там, когда я его получил.

EDIT2:

Видимо, @ A32167 прав. Я нашел небольшой пример того, как загрузить текстуры в WebGL, модифицировал его , чтобы загрузить 8192x8192 текстуру (см http://jsfiddle.net/q4SAS/), открыв ее в Google Chrome, и в то время как "Память видеоадаптера в использовании" увеличился до 918 МБ, аппаратная резервная память не изменилась:

Монитор ресурсов и Центр управления после запуска примера WebGL

Хотя это отвечает на мой вопрос, вопрос, который, конечно, остается, заключается в том, почему Lenovo рекламирует с динамическим распределением графической памяти и есть ли способ уменьшить выделенную память ...

EDIT3:

К сожалению, это еще не конец истории - см. Здесь:какое аппаратное устройство раньше потребляло 1,4 ГБ моей 4 ГБ оперативной памяти, а теперь, внезапно, без каких-либо аппаратных изменений, расходует 2,2 ГБ?

4 ответа4

5

Разве не возможно, что на приведенном выше экране, где у вас есть конфигурация вашей видеокарты, "максимальная" память 1138 зарезервирована для карты, хотя в данный момент используется только 83?

0

Возможно ли, что это не поддерживаемая конфигурация? Предложенный этим постом, возможно дубликат:

Почему вся моя дополнительная оперативная память помечена как "аппаратная зарезервированная" в Windows 7?

0

Возможно, в BIOS есть исправление для этого. Ищите настройки Подъема памяти или Отверстия памяти.

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

Причина этого параметра заключается в том, что размещение ОЗУ свыше 4 ГБ делает ее недоступной для 32-разрядных операционных систем.

0

Наконец-то нашел правильный ответ и восстановил мою память.

Как подробно описано в https://superuser.com/a/762821/1724 (ответ на дополнительный вопрос этого вопроса), функция реализации UEFI позволяет обновлять карту памяти (постоянно хранимую в переменных UEFI) перед каждым загрузиться в случае каких-либо изменений. Очевидно, он не принимает во внимание, что перед загрузкой может произойти сбой другой загрузочной записи UEFI, которая не очищает используемую память (в зависимости от загрузчика), что приводит к уменьшению доступной памяти после каждого сбоя загрузки UEFI.

Ручное исправление карты памяти (хранящейся в переменной UEFI MemoryTypeInformation) устраняет проблему - хотя эталонная реализация TianoCore предполагает, что удаление переменной также должно работать, я не хотел рисковать.

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