1

I have an old MacBookPro (2011) (4GB RAM, Graphics NVIDIA GeForce 320M). I have installed Win 7 ultimate (32-bit) using bootcamp. I have a problem with amount of RAM in Windows.

In OS X it utilized all the RAM capacity: enter image description here

But in Windows it assigns 1290 MB for "Hardware Reserved": enter image description here

After doing some searches, I believe the major part of the "Harware Reserved" is for "shared memory" for Graphics. The following is taken from NVIDIA Control Panel in Windows: enter image description here

So my question is: If in fact the reason "hardware reserved" is so big, is because of shared memory for graphics, then what can I do to decrease this shared amount in Windows and have more RAM? Apparently OS X is operating without this amount reserved for shared memory, so it seems it should be possible to decrease this amount and still everything work fine.

  • Running a 32-bit version of Windows perhaps? – mtak Feb 15 '18 at 13:04
1

In short: you need to upgrade to 64-bit Windows.

A bit longer: The system can use a 32 bit number to address memory. Those 32 bits can only address 4GB of memory. The graphics card uses a mechanism called Direct Memory Access (DMA) to move data between the RAM, the CPU and the graphics card. DMA works by making PCI devices look like RAM to the system.

This mechanism has to use addresses out of the 32 bits that are available for memory. That will replace addresses used for RAM, so you are effectively losing it. It is not possible to only have a part of the graphics card memory assigned for DMA (at least I've never heard of it) as this would cause incompatibility between the driver and the hardware.

It's not only the graphics card that does this, but all PCI devices. That explains why the graphics card has 1083MB shared system memory, but there is 1290MB reserved. Other devices that use DMA could be a network card, wifi card, sound card, USB controller etc.

It works fine in MacOS X, because that's a 64 bit operating system. It has the same amount of "hardware reserved memory", but because there is a much larger address space, it can assign it to addresses that are not overlapping with RAM.

Yes, I know I've skipped over a lot of details and there are some things that are debatable, but I don't think it would be useful for the OP to go into even more details.

  • Thanks. Actually my OS X's kernel seems to be 32-bit. Output of uname -a: Darwin Mac.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386. Am I missing something? – LoMaPh Feb 15 '18 at 21:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.