Memory Limitations

Lee HLee H Member Posts: 1,135
Hi Guys

How do i get Vista Business 32 Bit to show all 4GB of RAM, i use OCZ platinum edition and they cost a fortune so ide like to know i havent wasted my money and see it show 4GB instead of 3GB. I have read all about how BIOS allocates it to hardware address's but still i would like Vista to recognise all 4GB.

Thanks

Lee
.

Comments

  • JDMurrayJDMurray Admin Posts: 13,023 Admin
    Memory size recognition starts with the motherboard, its BIOS, and the type of memory you have installed. Make sure that the mobo can support 4GB of RAM, you have compatible memory installed, and the latest BIOS update. Checking the mobo manufacturer's Web site may show that a BIOS update is needed for Vista to recognize 4GB.
  • royalroyal Member Posts: 3,352 ■■■■□□□□□□
    The jist of it, is you won't actually get Windows to show 4GB of memory. Why? You need 64-bit for Windows to effectively show all your RAM. Windows x86 (32-bit) has a 4GB limitation. This limitation is not RAM limitation. It is the memory architecture allowing only 4GB for memory address space. Because of this, Windows will not show all your RAM as other devices need to use that memory address space. Since Windows has a 4GB limitation, part of this 4GB memory address space is used for hardware, ROMs, etc. in addition to RAM. Windows uses part of its memory management to address these devices in its memory address space and uses what is left over for RAM. Because of this, you will effectively see less RAM than what you actually have in your box. You can use a switch in your boot.ini /PAE (not sure about Vista since it doesn't natively use boot.ini anymore) that will allow Windows x86 to have a physical address space that exceeds 4GB. The only problem with doing this on an x86 machine, is the architecture still isn't designed for above 4GB so your ROM, hardware, etc. is only pushed up in the address space a bit so you still won't see all your RAM. PAE stands for Physical Address Extension. So basically with 4GB of memory and without /PAE, you will see less RAM available than if you used /PAE which would allow Windows to provide you with more RAM, but still not all 4GB. With an x64 architecture, it will show all 4GB of memory and use the ROM, hardware, etc. in a different address space than RAM.

    Hope this is helpful.
    “For success, attitude is equally as important as ability.” - Harry F. Banks
  • JDMurrayJDMurray Admin Posts: 13,023 Admin
    Yes, icroyal is correct. Apparently, 32-bit Windows can only report up to 3.5GB of installed RAM because with 4GB installed, the upper 500MB of address space is used by hardware devices. Only by enabling PAE can memory-mapped I/O devices be assigned to addresses above 4GB, leaving a full 4GB of RAM for use by applications and the Windows OS. However, not all device drivers support memory mapping above the 4GB boundary.

    Have a look at the following pages:

    Why can't I see all of the 4GB of RAM in my machine?

    Configuring Physical Address Extension (PAE)
  • royalroyal Member Posts: 3,352 ■■■■□□□□□□
    jdmurray wrote:
    However, not all device drivers support memory mapping above the 4GB boundary.

    Yep. Precisely what I meant that even with the /PAE, the architecture still isn't designed for showing you the 4GB of RAM. With the x64 architecture, you need x64 device drivers and software which is specifically designed to use the different address space (mapping above the 4GB boundary as JD stated).
    “For success, attitude is equally as important as ability.” - Harry F. Banks
  • Lee HLee H Member Posts: 1,135
    Thanks guys

    I have one more question, is it beneficial to have 4GB with this memory limitation. The memory in this particular PC cost £360. If i was asked to build a PC in the future with 4GB, shall i say "No way hosay".

    Thanks again for the info

    Lee
    .
  • royalroyal Member Posts: 3,352 ■■■■□□□□□□
    Well, in addition to Windows not seeing that extra RAM, it won't use it either. It all depends on the type of memory system you are using. For example, if you were using dual ddr. I would still go with 4 1GB memory modules. If you're not using dual ddr, I would just go with 3 1GB memory modules. Or you could always go x64 and be able to use all your memory.
    “For success, attitude is equally as important as ability.” - Harry F. Banks
  • Lee HLee H Member Posts: 1,135
    Motherboard in question is definately Dual Channel, will look into 64 Bit Vista as i only have Vista Business 32 Bit courtesy of MS Action Pack
    .
  • JDMurrayJDMurray Admin Posts: 13,023 Admin
    Lee H wrote:
    Motherboard in question is definitely Dual Channel, will look into 64 Bit Vista as i only have Vista Business 32 Bit courtesy of MS Action Pack
    Make sure there are 64-bit drivers for your motherboard and all your computer's peripherals, otherwise forget 64-bit Vista for that machine. At this point, I can only recommend the move to a 64-bit systems for people that really need to address larger amounts of memory. I've read that, in some respects, 64-bit Vista actually runs slower than 32-bit Vista. This probably depends largely on the hardware and the drivers used.

    EDIT: A performance difference can also be detected between a 32-bit program running on a 64-bit system and running a 64-bit version of that same program on the same system. This reminds me of a similar situation with running 16-bit programs on an 80386 with Windows 386. What's old is new again.
  • RussSRussS Member Posts: 2,068 ■■■□□□□□□□
    jdmurray is on the money there. The other thing to remember is that many applications can not run on a 64 bit system.
    www.supercross.com
    FIM website of the year 2007
  • royalroyal Member Posts: 3,352 ■■■■□□□□□□
    I just happened to stumble on a blog which had a link to the KB article which addresses this. Check it out if you are interested:
    http://support.microsoft.com/kb/929605/en-us
    “For success, attitude is equally as important as ability.” - Harry F. Banks
Sign In or Register to comment.