Install the app
How to install the app on iOS

Follow along with the video below to see how to install our site as a web app on your home screen.

Note: This feature may not be available in some browsers.

PC Memory

Status
Not open for further replies.
Although, currently my pride and joy is this fantastic lcd widescreen monitor I have....23.6" acer H233H. It is gorgeous. And I have this LG blu-Ray/HD-DVD drive...so I run hd movies on the TV or this monitor........I love my little setup :)
 
Not to get too much into a tech-fest here but what mobo are you running Dylan? I'm on a Gigabyte EP35-DS3R...been a great board so far.

Also, my local Fry's Electronics has the Corsair 750-TX on sale for $99. Think I'm gonna' have to pull the trigger on that one.
 
Last edited:
BB, a 32 bit system will recoginze 4gb of TOTAL memory. SO if you had 4gb ram and a 512mb gfx card, then windows will give of half a gig of ram to make space for the gfx card ram.

In a brief nutshell.


And Gwladys, I am almost on the same setup....E8400 oc'd to 3.6, 2 gig corsair dominator, G92 8800GTS and a Samsung Spinpoint 500Gb hdd (that is about to get replaced by a couple of fancy new 1tb drives in RAID)

45nm chips really rock!

And MG, the E6600 is a stellar cpu (even though it is a 65nm die......) :)

Yes, but you can't 'really' or shall we say 'legitimately' use what is taken away so to speak. :)

There's a bit of an article here which explains things in detail ( MG don't look lol :lol: ) :




Dude, Where's My 4 Gigabytes of RAM?


Due to fallout from a recent computer catastrophe at work, 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:
vista-system-information-4gb-installed.png

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:
( This is actually wrong...... ... the /virtual/ address space is limited to 32 bits. It's possible to have more /physical/ memory than this, and it's even useful if you want to run more than one large process at a time)

Code:
232 = 4,294,967,296
4,294,967,296 / (1,024 x 1,024) = 4,096

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:
In the absence of the /PAE switch, the Windows memory manager is limited to a 4 GB physical address space. Most of that address space is filled with RAM, but not all of it. Memory-mapped devices (such as your video card) will use some of that physical address space, as will the BIOS ROMs. After all the non-memory devices have had their say, there will be less than 4GB of address space available for RAM below the 4GB physical address boundary.
Ian Griffiths offers a more detailed explanation:
To address 4GB of memory you need 32 bits of address bus. (Assuming individual bytes are addressable.) This gives us a problem - the same problem that IBM faced when designing the original PC. You tend to want to have more than just memory in a computer - you need things like graphics cards and hard disks to be accessible to the computer in order for it to be able to use them. So just as the original PC had to carve up the 8086's 1MB addressing range into memory (640K) and 'other' (384K), the same problem exists today if you want to fit memory and devices into a 32-bit address range: not all of the available 4GB of address space can be given over to memory.
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:
intel-system-memory-map.png

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.
Code:
264 = 18,446,744,073,709,551,616
18,446,744,073,709,551,616 / (1,024 x 1,024) / 8 = 2 exabytes
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 blog post today. Here's one parting bit of advice: if, like me, 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.

Source : http://www.codinghorror.com/blog/archives/000811.html

When you've finished with it Dylan, perhaps you can translate it to us mere mortals lmao :lol:
 
Last edited:
BB, I dual boot Windows XP Pro 32-Bit and Windows 7 64-bit...I have 4GB of RAM. When I'm in XP I have 3.4 (because I have a 512Mb GFX card) and in Win7 I have the full 4 available. So yes, depending on how many RAM slots you have you might as well buy 4 (2 2GB sticks), even if you won't get the full amount in a 32-Bit OS...mainly for Dual Channel purposes.
 

Sorry if this bores some members btw, but I find this stuff interesting even if I don't understand it all. Maybe other folks will too. (y)
Here's another take on it linked from the above article.

3GB or 4GB - a 'Virtual' Memory Upgrade - Friday 5 August, 2005, 12:32 PM

This is a public service announcement.
I've recently had the good fortune to be reading The Best of Verity Stob. For those of you who have not enjoyed her work, Stob has for many years been writing satirical articles in various computing press magazines, including the dear departed .EXE, not to mention DDJ. They're great, and I highly recommend them. Particularly if you are British. Especially if you used computers in the late 1980s and early 1990s.
That's not what the public service announcement is about though, so please bear with me.

I've particularly enjoyed being reminded by Ms. Stob of my earliest computing experiences. The very first article was written in 1988, and while I was only 14 at the time, I first started playing with computer at around the age of 6. So Stob's references to the daily minor tragedies of D-type connectors and DIP switches warm my heart, reminding me of a time when the idea of a hard disk with a 1GB capacity was inconceivable, much less a laptop computer with twice that much RAM. (Actually come to think of it, the idea of owning any kind of hard disk was at the distinctly exotic end of the spectrum.)

Interestingly, one article from around that era happened to strike a surprisingly contemporary chord. In a glossary of terms I found the following:
Virtual Memory. Describes a new RAM card that, when fitted in your PC, remains unrecognised through all possible permutations of DIPswitch settings.
Plus ca change... This kind of thing is still happening today. It might not have affected you yet, hence this Public Service Announcement.
In this day and age, memory is pretty cheap. The cost of 4GB of memory is sufficiently low now that, what with Virtual PC and VMWare being all the rage, it seems positively foolish not to load up a new PC with as much RAM as it will hold. But if you do this, there's a good chance you'll hit a problem. It's a new variant of a very old nemesis.

Those of us who used PCs in the days so exquisitely chronicled by Verity Stob will remember that 640K is a number of some significance. Indeed, even if you didn't get to experience it in person, there's every chance you'll be familiar with the figure simply because it has been immortalised in computing folklore. There is a widely held but incorrect belief that Bill Gates once said something rather short sighted on the subject. In fact he never said 640K should be enough for anyone.

Due to design decisions made by IBM (not Microsoft) the IBM PC could only use 640 kilobytes of its 1 megabyte memory map to address main memory. The rest was taken up with video memory, BIOS ROM, and various devices. So a full 37.5% of the memory map was out of bounds, imposing the infamous 640K limit on how much RAM you could fit, before having to resort to all sorts of hacks that never really worked very satisfactorily.

Then 32-bit systems came along. A few years later, 32-bit the mainstream OS market caught up. The 640K limit was relegated to a painful footnote in the history of the PC. (Yes, I know I just ignored about half a decade of the horrors of not-quite-32-bit operating systems, where the ghost of the 16-bit machine could still haunt you. But I for one ran Linux on the first PC I owned back in 1993, and then installed Windows NT in 1994 and haven't looked back, so I was able to avoid most of that carnage.)

However, history is now repeating itself. Moore's law has doomed all successful computer architectures to die a death due to running out of address bits. And while Moore's law has been on the wane for a while now, it hasn't ground to a halt yet, and we've already gone past the point where 32 bits are enough.
Hence the problem which this blog entry is very gradually lumbering towards describing.

To address 4GB of memory you need 32 bits of address bus. (Assuming individual bytes are addressable.) This gives us a problem - the same problem that IBM faced when designing the original PC. You tend to want to have more than just memory in a computer - you need things like graphics cards and hard disks to be accessible to the computer in order for it to be able to use them. So just as the original PC had to carve up the 8086's 1MB addressing range into memory (640K) and 'other' (384K), the same problem exists today if you want to fit memory and devices into a 32-bit address range: not all of the available 4GB of address space can be given over to memory.

(Yes, I know the x86 architecture supports a separate IO address space, which should in theory avoid this problem. However, for reasons I won't go into, there are good reasons to map IO devices into memory address, so a lot of devices end up not living in IO space.)

This shouldn't be a problem. Contrary to popular belief, Intel's 32-bit CPUs have more than 32 address pins. They actually have 36, giving them the ability to address a 64GB physical address space. This means that you should in theory be able to fit 4GB of RAM, and still have plenty of space for memory mapped devices. In fact you can fit a whole lot more than 4GB. Of course programs won't be able to see it all at once. But that's not necessarily a problem - you could have 10 processes each using 2GB of memory each. That's a total memory usage of 20GB, but any individual process is still using only half of the virtual address map, leaving 2GB over for the OS and any memory mapped devices.
Unfortunately it's not always so simple.

Historically, the PCI bus in most ordinary PCs has shared the same physical address space as the CPU. This means that if a device on the PCI bus looks at physical address 0x12345678, it will see exactly the same thing as the CPU would if it looked at the same physical address. It doesn't have to be this way of course - the CPU bus and the PCI bus are physically separate, and are connected by a bridging chip of some kind. This bridge could in theory perform some kind of mapping between addresses on the two buses. But for a long time, this didn't happen in PCs.

Windows NT/2000/XP/2003 has always supported mapping between PCI buses and the main system bus. This was necessary because back in the day when NT supported RISC systems, most of those did actually perform such a mapping. I used to write device drivers for DEC Alpha systems, and with those, the physical address the CPU used to access a particular bit of memory was usually different from the address used on the PCI bus. So if you write a device driver and wish to access a memory-mapped device, or get the device to perform some DMA, you are required to use system calls to find out what addresses the device will use on the PCI bus, and what physical address this corresponds to on the system bus. (Which will of course be different again from the virtual address of the memory in question.)

Presumably the reason PC architecture machines didn't do this is that this mapping layer increases costs, and makes it harder to achieve performance goals. So for years, the address map of the PCI bus and the address map of the system bus have been one and the same thing in the PC. (So the mapping APIs ended up passing you back the same address you passed in. Doubtless there are loads of device drivers out there that take advantage of this, omitting this call as an 'optimization'.) 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.
If you're lucky, your PC will be able to do something clever. The usual solution is to make that last gigabyte appear further up in the memory map. So your memory map looks like this:

pc1.jpg


So your memory's all still available, it just happens not to be contiguous. The first 3GB are present where you'd expect to find them, then there's a 1GB hole, reserved for devices, and the 4th GB of memory appears in the 5th GB of address space. Since Pentiums can address 64GB of physical address space, there's no problem with this 32 bit processor addressing stuff that requires 33 bits to reach. (Unless you have a Pentium M of a certain age. Most of these only have 32 bits of physical address pins, in order to save power. However, the latest greatest ones appear to support extended address ranges. At least the Computer Properties panel on my new laptop claims to support it, and that's a Pentium M.)
(There is one tiny snag. The top 1GB may now be invisible to PCI devices, making it impossible to DMA into that memory. I say 'may' because I'm not sure if the latest PCs are able to do PCI/system bus address mapping like the old RISC systems could. If they can, that will solve the problem. So long as your device drivers are written properly. Do you feel lucky?)
So if you chose your motherboard wisely/flukily, all 4GB will be available to you. However, if you're unlucky you'll find your memory map looks like this:

pc2.jpg


Notice that only 3GB of the 4GB that you purchased made it into the memory map. So that last 1GB is unavailable to you. And don't think you can dust off that old copy of QEMM - this isn't memory which is hiding somewhere, and which you can coerce the OS into using, like in the good old days. Well...the old days. No, this memory is quite simply invisible to the CPU. If your motherboard is in this category, there is no physical way the CPU can get access to that memory. (In fact you'd probably find that the top 4 address bits of the processor aren't actually connected up to anything!)

What's particularly galling is that certain motherboards are advertised as accepting up to 4GB of memory, and yet won't let you use the last 1GB! ("Oh, you were expecting to use all 4GB. Sorry, we only guarantee that the motherboard will work when you put 4GB in.")

(NOTE: To all the people who are going to email me to tell me about the /3GB switch in Windows, please don't. It has absolutely nothing to do with this. The /3GB switch is all about how much virtual address space a program can have. The problems described in this article are all about physical address space, which is not the same thing at all. This is not a Windows problem - running Linux won't help. The fundamental problem is that the memory is inaccessible to the CPU. It's a hardware problem.)

How can you know which kind of motherboard to buy in order to avoid this? Right now it's not all that easy to tell actually, short of reading the datasheets for the chipset... If the mobo can take more than 4GB of memory, then you might be OK. Although they might just take the attitude of "If you can afford to fit 32GB of memory, you can afford for 1GB to go missing"...
In short, caveat emptor.
 
Last edited:
BB, I dual boot Windows XP Pro 32-Bit and Windows 7 64-bit...I have 4GB of RAM. When I'm in XP I have 3.4 (because I have a 512Mb GFX card) and in Win7 I have the full 4 available. So yes, depending on how many RAM slots you have you might as well buy 4 (2 2GB sticks), even if you won't get the full amount in a 32-Bit OS...mainly for Dual Channel purposes.

Cheers (y)

This was one of the first things that took me ages to get my head around when I had my first pc built, which is why I find it so interesting, and I'm still getting to grips with it ever since lol.

Sorry if my last 2 posts bored anyone, but they're good reading for those interested in that kind of thing.:lol:
 
I've never delved that deeply into it, to be honest, I just read up on the essentials of what I need to know to make the right buy. You get the feeling this was written by a hardware engineer because he doesn't appear to like the fact that a software tweak can get around a hardware flaw and that he's a little miffed that he's forced to buy a 64-Bit OS to access his RAM because of a hardware limitation that was never addressed. He's calling people out on being lazy, it would seem. Can't argue the point.
 
Gigabyte myself....solid state board:

Newegg.com - GIGABYTE GA-P35-DS3L LGA 775 Intel P35 ATX All Solid Capacitor Intel Motherboard - Intel Motherboards

GA-P35-DS3L

The Corsair PSU is top shelf. And I checked, I have Corsair XMS RAM, not the Dominator RAM. And I will need a new mobo to set up my forthcoming RAID array.

Heh, we have the same board, I just got the RAID version (DS3L vs. DS3R)...oh, and I guess the fact that mine's the 'E' version (EP35), which was supposed to mean it used less power. Of course, if you OC you gotta' turn off all that nonsense in the BIOS anyhow to be stable. I used to use either Corsair XMS or Mushkin but I've got Patriot Viper series in this one...no issues.

Well damnit, I've now gotten the itch talking about all this stuff and I think I'll go grab that 750-TX at Fry's...it'll still be $10 cheaper than NewEgg at that price, even with tax.

*rubs hands together* mwahahahaah
 
I've never delved that deeply into it, to be honest, I just read up on the essentials of what I need to know to make the right buy. You get the feeling this was written by a hardware engineer because he doesn't appear to like the fact that a software tweak can get around a hardware flaw and that he's a little miffed that he's forced to buy a 64-Bit OS to access his RAM because of a hardware limitation that was never addressed. He's calling people out on being lazy, it would seem. Can't argue the point.

Lol.
The articles are fairly old now, but they seem pretty passionate about it all.
I used to have the same problem with my friends Phil and yes, you guessed it ... Phil. ( Is it something about the name? ):lol:

Both are totally obsessed with computers and fair play to them, it's guys like them that make life easy for the rest of us I guess, but I'm talking OBSESSED with capital letters.
It would be like having a cuppa with guys from University challenge when I had the pleasure of their company. One built my first ever pc, and the other built the one I have now as a gift.

When the 2 of them were talking, it was like 'spot the sentence that you understand' time :lol:

Both make/made their respective livings from the evil boxes. One developed hardware and the other software , or something like that, and I developed earache and an inferiority complex when they cheerfully disagreed on whatever it was they were disagreeing on in their own language, indecipherable by a mere simple earthing like me. :lol:

I just like to press a few buttons, look at a few sites, and turn the damn thing off before it makes me like them lol. :lol:
 

All good advice from the boys. Looking at your setup, I would actually say you might as well get a 8800gtx off ebay for like 50 quid. Then just buy a whole new pc next year when all the new ddr3 [Poor language removed] is a reasonable price.
 
Gainward Bliss are a great company, but I would go better than a 9800GT.

The GT is a budget, cut down version of the GTS and GTX. Ok, if you just use the card for decoding HD media, but if you want some horsepower for games, go higher up the food chain.

And McBain, you read this and wet yourself. Admit it, it's ok.
 

Status
Not open for further replies.

Welcome

Join Grand Old Team to get involved in the Everton discussion. Signing up is quick, easy, and completely free.

Back
Top