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.

    Enable 4GB of memory in Vista

    Discussion in 'Windows OS and Software' started by SideSwipe, Oct 17, 2007.

  1. SideSwipe

    SideSwipe Notebook Virtuoso

    Reputations:
    756
    Messages:
    2,578
    Likes Received:
    0
    Trophy Points:
    55
  2. Jalf

    Jalf Comrade Santa

    Reputations:
    2,883
    Messages:
    3,468
    Likes Received:
    0
    Trophy Points:
    105
    Interesting. It hadn't occurred to me that enabling PAE would help too, but it does make sense... But still depends on a lot of semi-random factors. As they say, the sanest, and most reliable way is to just upgrade to a 64-bit OS.

    But what they don't mention is that even then, 32-bit apps will be limited to 2GB, unless they set a special flag in the .exe file's header. (Although in some cases, this can be set manually by editing the file)
    I don't know how common it is for this flag to be present.
     
  3. KnightUnit

    KnightUnit Notebook Evangelist

    Reputations:
    42
    Messages:
    500
    Likes Received:
    0
    Trophy Points:
    30
    Is it really not worth going above 2gig for vista 32 bit then? As I have been thinking about going to 3 or 4 gig but not sure.
     
  4. Jalf

    Jalf Comrade Santa

    Reputations:
    2,883
    Messages:
    3,468
    Likes Received:
    0
    Trophy Points:
    105
    Sure it's worth it. It's not that the remaining 2GB won't get used.

    I think I've described this before, but it boils down to this:

    On a 32-bit system, all memory addresses are 32 bits long. That means they can address 2^32 bytes of memory, which is exactly 4GB. So that's an absolute limit.
    Now, your OS has to accept this limitation too. Windows can only "see" 4 GB of memory addresses. If you installed 16GB and ran a 32-bit OS, you'd still only see 4GB.
    So Windows gets 4 GB of memory into which it has to fit *all* running processes.

    At the same time, each individual process has a similar limit. That process uses 32-bit addresses too, so it can only understand up to 4GB of memory too (if you ran the same app on a 64-bit OS, it'd still be limited to 4GB, even if Windows had more memory available)

    Now, since Windows has 4GB *total*, it obviously can't give it all to the application.
    Some is used for Windows itself, and some is used to memory-map hardware.
    Windows makes the simple decision to split 50/50. 2GB are reserved for the OS, and 2GB are available for the application.

    So running under 32-bit Windows, no application can normally use more than 2GB of RAM. Not because the last 2GB aren't used, but because they're used by Windows. (If you only have 2GB total, then that has to be shared between Windows and application)

    So yes, you'll benefit from having more than 2GB of RAM.

    And in extension, if Windows, though enabling PAE as the article suggests, can be coaxed into using 36-bit addresses, that means Windows gets more memory available, but again, the application is still limited to 4GB (since that still uses 32-bit addresses). But now, if you're lucky, it'll be able to use the full 4GB instead of being limited to 2GB, because Windows can just move its data somewhere else
     
  5. KnightUnit

    KnightUnit Notebook Evangelist

    Reputations:
    42
    Messages:
    500
    Likes Received:
    0
    Trophy Points:
    30
    Thanks Jalf, very informative
     
  6. ViciousXUSMC

    ViciousXUSMC Master Viking NBR Reviewer

    Reputations:
    11,461
    Messages:
    16,824
    Likes Received:
    76
    Trophy Points:
    466
    I have known this but suggest against it. Your bound to run into problems with some hardware and possibly even software when in this mode.
     
  7. Silas Awaketh

    Silas Awaketh Notebook Deity

    Reputations:
    891
    Messages:
    1,676
    Likes Received:
    0
    Trophy Points:
    0
    I have 4 GB of RAM, should I try it? Vista only recognises/sees 3.5 GB.
     
  8. orev

    orev Notebook Virtuoso

    Reputations:
    809
    Messages:
    2,829
    Likes Received:
    1
    Trophy Points:
    56
    The problem with PAE mode in 32bit Windows are the drivers. Drivers may not be written to handle this mode, and could cause system instability. If you enable this and see crashing, don't blame Vista, blame the 32bit drivers. This is why it's recommended to go to 64 bit. 64bit drivers are written to handle the changes that are made to the system.
     
  9. Jalf

    Jalf Comrade Santa

    Reputations:
    2,883
    Messages:
    3,468
    Likes Received:
    0
    Trophy Points:
    105
    yup, 64-bit should be preferable, but if that's not an option, and you absolutely need your system recognize all 4GB, you might want to experiment with PAE.
     
  10. LIVEFRMNYC

    LIVEFRMNYC Blah Blah Blah!!!

    Reputations:
    3,741
    Messages:
    2,382
    Likes Received:
    0
    Trophy Points:
    55
    So does this make your 32bit OS into a 36bit?

     
  11. Pitabred

    Pitabred Linux geek con rat flail!

    Reputations:
    3,300
    Messages:
    7,115
    Likes Received:
    3
    Trophy Points:
    206
    PAE is not always safe for all applications. (search for PAE on that page). Use a 64bit version of the system instead. It's like using an egg to patch your radiator holes... sure it works, but it's not the right solution, and quite probably will cause more problems than it solves. It'll also slow down your memory accesses, which is probably not worth the extra 512MB of memory you might access with it.
     
  12. Greg

    Greg Notebook Nobel Laureate

    Reputations:
    7,857
    Messages:
    16,212
    Likes Received:
    58
    Trophy Points:
    466
    One possible idea if you have 32bit software that cannot run properly within x64 Vista.

    Use a Virtual Machine. Run 32bit XP within a VM, and you'll be good to go!
     
  13. SideSwipe

    SideSwipe Notebook Virtuoso

    Reputations:
    756
    Messages:
    2,578
    Likes Received:
    0
    Trophy Points:
    55
    except if its a game and VMware for example emulates a cheap S3 card which cannot handle anything remotely 3D i would presume.
     
  14. Greg

    Greg Notebook Nobel Laureate

    Reputations:
    7,857
    Messages:
    16,212
    Likes Received:
    58
    Trophy Points:
    466
    True...but I hear they are working on that too...some day in the future we might have virtualizable GPUs. But I have no idea if that will ever actually happen, or when.