Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

So I'm a programmer and I'm not a complete idiot so I know exactly why you can't access memory where you can't have pointers. But I've never tried this and I don't think I ever will because it seems like a big waste of money/time.

I'm just wondering if there are any tools that let me access my himem (You'd think we'd have gotten around this issue by now).

share|improve this question
Check out this alternative way of phrasing the same question: – therefromhere Jul 27 '09 at 13:22
Thanks, here's a good answer too, I may just have to close this question.… – Peter Turner Jul 27 '09 at 13:26
up vote 18 down vote accepted

If you have a a processor with the Physical Address Extension (which you probably do) and the correct OS (e.g. not a consumer version of Windows, it uses PAE but is capped at 4GB) then the memory can be mapped and used normally. Otherwise the memory will simply not be addressed, the OS will tell that you that you have however many chips of however big they are but they just won't be added to the amount of memory you can access.

share|improve this answer
Why don't normal versions of Windows support PAE? Just another reason to use Linux... – Zifre Jul 27 '09 at 14:09
Because 64bit / server versions cost more. – Martin Beckett Jul 27 '09 at 14:14
Even consumer versions of Windows support PAE - they're capped to 4 GB though (for compatibility and marketing reasons). (PAE is still used for the "Data Execution Prevention" feature.) – grawity Jul 27 '09 at 14:56
@Zifre, many consumer-targeted drivers can't cope with PAE and >4G of RAM on windows. As such, enabling PAE often results in mysterious crashes, and it's thus only used for the server editions, where presumably you'll install higher quality drivers designed for large amounts of memory. – bdonlan Jul 27 '09 at 17:28
bdonlan: PAE is enabled in consumer versions too, they just have the artificial 4 GB limit because of that. – grawity Jul 28 '09 at 6:59

Things would work nicely as 4GB is the limit for a 32bit processor. Here's as article that goes more in depth and actually shows that you can install and use much more than 4GB on a 32bit OS.

share|improve this answer
Except that not all real address space is necessarily dedicated to physical memory. – Jason S Jul 27 '09 at 13:22
Sorry I meant more than 4GB, just something in the more than 2^32 range. – Peter Turner Jul 27 '09 at 13:24

I suppose technically if the operating-system were well-designed, you could use more than 4GB. There's no reason I can think of that an OS with virtual memory capabilities could not use 32-bit virtual addresses with 64-bit real addresses.

share|improve this answer

Depends what 32bit OS you mean!

Of course on modern operating systems, you can pretty much plug in as much as your motherboard can take without issue (though you may not be able to use it all), but that wasn't always the case, at least with Windows:

A bug in Windows 95, 98, SE, and ME crops up if you have more than 512MB of memory installed.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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