The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    Dude, Where's My 4 Gigabytes of RAM?

    Discussion in 'Hardware Components and Aftermarket Upgrades' started by Crimson Roses, Aug 11, 2008.

  1. Crimson Roses

    Crimson Roses Notebook Evangelist

    Reputations:
    916
    Messages:
    571
    Likes Received:
    0
    Trophy Points:
    30
    Due to fallout from a recent computer catastrophe, I had the opportunity to salvage 2 GB of memory. I installed the memory in my work box, which brings it up to 4 gigabytes of RAM-- 4,096 megabytes in total. But that's not what I saw in System Information:
    [​IMG]
    Vista System Information, 4 GB installed, 32-bit operating system
    Only 3,454 megabytes. Dude, where's my 4 gigabytes of RAM?

    The screenshot itself provides a fairly obvious hint why this is happening: 32-bit Operating System. In any 32-bit operating system, the virtual address space is limited, by definition, to the size of a 32-bit value:

    As far as 32-bit Vista is concerned, the world ends at 4,096 megabytes. That's it. That's all there is. No más.

    Addressing more than 4 GB of memory is possible in a 32-bit operating system, but it takes nasty hardware hacks like 36-bit PAE extensions in the CPU, together with nasty software hacks like the AWE API. Unless the application is specifically coded to be take advantage of these hacks, it's confined to 4 GB. Well, actually, it's stuck with even less-- 2 GB or 3 GB of virtual address space, at least on Windows.

    OK, so we're limited to 4,096 megabytes of virtual address space on a 32-bit operating system. Could be worse. We could be back in 16-bit land, where the world ended at 64 kilobytes. Brr. I'm getting the shakes just thinking about segments, and pointers of the near and far variety. Let us never speak of this again.

    But back to our mystery. Where, exactly, did the other 642 megabytes of my memory go? Raymond Chen provides this clue:

    Ian Griffiths offers a more detailed explanation:

    For a long time this wasn't a problem, because there was a whole 4GB of address space, so devices typically lurk up in the top 1GB of physical address space, leaving the bottom 3GB for memory. And 3GB should be enough for anyone, right?

    So what actually happens if you go out and buy 4GB of memory for your PC? Well, it's just like the DOS days - there's a hole in your memory map for the IO. (Now it's only 25% of the total address space, but it's still a big hole.) So the bottom 3GB of your memory will be available, but there's an issue with that last 1GB.

    And if you think devices can't possibly need that much memory-mapped IO, I have some sobering news for you: by this summer, you'll be able to buy video cards with 1 GB of video memory.

    To be perfectly clear, this isn't a Windows problem-- it's an x86 hardware problem. The memory hole is quite literally invisible to the CPU, no matter what 32-bit operating system you choose. The following diagram from Intel illustrates just where the memory hole is:
    [​IMG]
    The proper solution to this whole conundrum is to use a 64-bit operating system. However, even with a 64-bit OS, you'll still be at the mercy of your motherboard's chipset and BIOS; make sure your motherboard supports using 4 GB or more of memory, as outlined in this MSKB article.

    In case you're wondering, the progression is giga, tera, peta, exa.

    Although the performance benefits of 64-bit are somewhat dubious on the desktop, a 64-bit OS absolutely essential if you run applications that need to use more than 2 GB of memory. It's not common, but we're getting there.

    The memory hole for IO still exists in the 64-bit world, but most modern BIOSes allow you to banish the IO memory hole (pdf) to some (for now) ridiculously high limit when you're running a 64-bit OS. Don't get too excited, though. The user-mode virtual address space in 64-bit Windows is a mere 8 terabytes. Suffice it to say that we won't be running out of physical or virtual address space on 64-bit operating systems for the forseeable future. It's the final solution, at least for the lifetime of everyone reading this post today.

    Here's one parting bit of advice: if you're planning to stick with a 32-bit operating system for the next few years, don't waste your money on 4 GB of RAM. You won't be able to use it all. Buy 3 GB instead. Every motherboard I'm aware of will happily accept 2 x 1 GB and 2 x 512 MB DIMMs

    original article: http://www.codinghorror.com/blog/archives/000811.html
     
    Last edited by a moderator: May 8, 2015
  2. sonoritygenius

    sonoritygenius Goddess of Laptops

    Reputations:
    162
    Messages:
    2,092
    Likes Received:
    0
    Trophy Points:
    55
    Thanks for the.. information?

    But this has been common knowledge that 32bit only will support upto 3.0-3.5gb RAM....
     
  3. jonhapimp

    jonhapimp Notebook Virtuoso

    Reputations:
    353
    Messages:
    2,115
    Likes Received:
    0
    Trophy Points:
    0
    nice job on finding out all this info and he/she show's were it goes and that it's better to get 3gbs if you have a 32bit system instead of the extra 512 in 4gbs.
     
  4. Crimson Roses

    Crimson Roses Notebook Evangelist

    Reputations:
    916
    Messages:
    571
    Likes Received:
    0
    Trophy Points:
    30
    I know, but I've always been curious WHY there's that 3ish GB limit. I found the answer, and thought I'd share it with ya'll. :) ;)
     
  5. Meemat

    Meemat Notebook Evangelist

    Reputations:
    127
    Messages:
    462
    Likes Received:
    0
    Trophy Points:
    30
    This really should be under dummy guide articles or whatever; it's well-written, informative, and an answer to a commonly asked question.
     
  6. hankaaron57

    hankaaron57 Go BIG or go HOME

    Reputations:
    534
    Messages:
    1,642
    Likes Received:
    2
    Trophy Points:
    56
    Agreed. I will link to it in my sig when I have room. Well-written!
     
  7. Mikelx215

    Mikelx215 Notebook Evangelist

    Reputations:
    132
    Messages:
    474
    Likes Received:
    0
    Trophy Points:
    30
  8. powerpack

    powerpack Notebook Prophet

    Reputations:
    7,101
    Messages:
    5,757
    Likes Received:
    0
    Trophy Points:
    0
    Crim I think a good informative post. To those who say it is a well known fact? Why am I still answering the same question. I like the thoughtful presentation and walk through. But yea I did know.
     
  9. Crimson Roses

    Crimson Roses Notebook Evangelist

    Reputations:
    916
    Messages:
    571
    Likes Received:
    0
    Trophy Points:
    30
    Ohhh, thanks man. :eek: That makes me feel really good. I'm still kind of new here though, how would I go about getting it put in the dummy guide section?
     
  10. Andy

    Andy Notebook Prophet

    Reputations:
    2,133
    Messages:
    6,399
    Likes Received:
    1
    Trophy Points:
    206
    Request/PM a Mod to shift it to the Notebook Dummy Guide Articles Section.
     
  11. Y3llowbeard

    Y3llowbeard Notebook Enthusiast

    Reputations:
    0
    Messages:
    18
    Likes Received:
    0
    Trophy Points:
    5