Why does Exchange recommend /3GB if you have more than 1GB of physical memory?
If you look through the
Knowledge Base,
you'll see an article that say that
Exchange 2000 requires the /3GB switch with more than 1
gigabyte of physical RAM.
Yet I've been writing all this time that /3GB has nothing to do
with physical RAM. What's the deal?
The title of the article could be a bit clearer.
It really should be something more like
"Exchange 2000 requires the /3GB switch to take advantage of
more than 1 gigabyte of physical RAM".
It appears that Exchange 2000 doesn't use
the bank-switching technique I described in an earlier entry.
(I don't blame them. It's extraordinarily cumbersome.)
Consequently, for Exchange 2000, virtual address space equals
virtual memory.
The capacity of a program is typically a combination of
multiple factors, the lowest of which sets the limit.
By analogy,
suppose you need two piece of bread, two pieces of
bologna, and a slice of cheese to make a bologna and cheese sandwich.
Whichever ingredient you run out of first determines how many sandwiches
you can make.
If you run out of cheese first, adding more bologna won't help any.
Okay, so what do bologna and cheese
sandwiches have to do with Exchange 2000?
From the description in the article, it appears that
the store.exe
program is RAM-constrained most of the time
(you run out of cheese first). But once you get the
memory on the machine up to one gigabyte, you have excess RAM
and address space becomes the new limiting factor.
(You added plenty of cheese and now you've run out of bologna.)
That's where the /3GB switch comes in.
It increases the user-mode address space, thereby relieving pressure
on the address space constraint.