How to increase free RAM?

G

Guest

I have windows Vista 32 bit installed, and have put 4 GBs of RAM on my
motherboard. I know that 32 bit OS can not use all 4 GBs for apps, but is
there a way to increase the amount? Right now I only have around 2.7~2.8 GB,
and that is with 4 RAMs installed.

I have 2HDDs, a DVD drive and a Floopy drive. It is possible to increase
available RAM by disabling some unused hardware like the Floopy drive? And is
there also other methods I can use?

On an other note, I also want to make sure I've got the RAMs installed
correctly. I've had times where the comp won't boot when having 4 RAMs, so
now that it does I think I got it in right. And when I use the tool CPU-Z, I
am able to see four submenus under SPD, so I think the OS did detect four
RAMs.
 
H

Harold Blankenship

You can only see about 2.7+ gig. The remainder of the RAM is taken up by
the system. I have 4GB on my system so what you are seeing is normal.

Is there something you are running where it is hitting the limit?
 
A

Andrew McLaren

">I have windows Vista 32 bit installed, and have put 4 GBs of RAM on my
motherboard. I know that 32 bit OS can not use all 4 GBs for apps, but is
there a way to increase the amount? Right now I only have around 2.7~2.8
GB,
and that is with 4 RAMs installed.

To see all 4GB, you would need to run 64-bit Vista, . See this Microsoft
KnowledgeBase article:

http://support.microsoft.com/kb/929605

Hope it helps,
 
S

Spirit

Don't worry about Free Ram with Vista. Vista is extremely efficient in
using RAM and will free up more RAM as it becomes needed. With
2 Gig or more it would be a rare program that would need more RAM
than Vista allocates.
 
B

Bruce Chambers

Semaj said:
I have windows Vista 32 bit installed, and have put 4 GBs of RAM on my
motherboard. I know that 32 bit OS can not use all 4 GBs for apps, but is
there a way to increase the amount? Right now I only have around 2.7~2.8 GB,
and that is with 4 RAMs installed.


Why? Free RAM is wasted RAM. It's there to be used; you already seem
to haver more RAM than your system needs.




--

Bruce Chambers

Help us help you:



They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety. -Benjamin Franklin

Many people would rather die than think; in fact, most do. -Bertrand Russell
 
G

Guest

Bruce Chambers said:
Why? Free RAM is wasted RAM. It's there to be used; you already seem
to haver more RAM than your system needs.

Maybe I worded that wrong, I think I meant available RAM, like what is shown
when you go into the details section of your System properties.

Thanks for the replies, I don't have any problems with the amount of RAM I
have right now since I haven't really done much yet, the comp was just built.
I was just curious since some people on this board are able to get around
3~3.2 GB (with 4 GB installed) on 32 bit OS and I didn't, so I wanted to know
what the issues is.
 
A

Adam Albright

Maybe I worded that wrong, I think I meant available RAM, like what is shown
when you go into the details section of your System properties.

Thanks for the replies, I don't have any problems with the amount of RAM I
have right now since I haven't really done much yet, the comp was just built.
I was just curious since some people on this board are able to get around
3~3.2 GB (with 4 GB installed) on 32 bit OS and I didn't, so I wanted to know
what the issues is.

How much do you get and do you have a video card that uses part of the
system's RAM?
 
A

Andrew McLaren

I was just curious since some people on this board are able to get around
3~3.2 GB (with 4 GB installed) on 32 bit OS and I didn't, so I wanted to
know
what the issues is.

It depends on the hardware. The reason you can't see the full 4GB is that
hardware devices must reserve some memory ranges for their own use.

For example, if your graphics card has 512 MB of RAM, how can the operating
system address that 512MB? It has to use part of the 32-bit address space.
So there's 512MB of your 4GB which cannot be used for general system
memory. And so on. Depending on the specific devices you have installed, and
what memory ranges they are going to reserve, you will see between 2.7 and
3.2GB of memory. There's not much you can do to change this, apart from
changing your hardware. Or by going to a 64 bit operating system, which can
address more than 4GB of memory space (so not everything has to be crammed
into that 4GB).

To see what memory addresses are being reserved by hardware, go to Computer,
Properties, Device Manager. From the View menu, select Resource by Type. Now
expand the Memory branch of the tree. You will see hardware devices listed,
such as motherboard, PCI bus, graphics card etc, along with the memory
ranges they have reserved.
 
R

ray

I have windows Vista 32 bit installed, and have put 4 GBs of RAM on my
motherboard. I know that 32 bit OS can not use all 4 GBs for apps, but is
there a way to increase the amount? Right now I only have around 2.7~2.8 GB,
and that is with 4 RAMs installed.

Not quite true. Linux can handle 16-64gb of RAM with a 32 bit kernel.
 
A

Andrew McLaren

I have windows Vista 32 bit installed, and have put 4 GBs of RAM on my
Not quite true. Linux can handle 16-64gb of RAM with a 32 bit kernel.

By default, most 32-bit Linux kernels address 4GB of memory. You can
configure the kernel to use Intel PAE (Page Address Extensions) to get 36
bit addresses; and hence access up to 64GB of memory. However it's not a
free gift. Executing code can't see any of the memory above 4GB, even if the
OS can address it. So application code must live below 4GB. Also, to be
directly addresses by code, data needs to be moved from the High Zone back
down into the Normal zone, with a kmap() or similar call. The memory above
4GB is mainly useful as cache, for example if you have a database
application.

For the sake of completeness, it's worth noting that Windows Server 2003 has
the same facility, by booting with with the "/PAE" switch; and by using AWE
memory APIs in your Windows applications (eg the 32 bit SQL Server). The
limitations of 36-bit addressing on Windows are similar to those on Linux.
The 32-bit Windows Server 2003 Enterprise edition can address 32 GB of
memory (via PAE). In SP1 this was increased to 64GB. Windows automatically
enables PAE on CPUs with the DEP feature.

Since nearly all new CPUs are 64-bit anyway, all this memory jiggery-pokery
is fortunately going away ...
 
G

Guest

Andrew McLaren said:
To see what memory addresses are being reserved by hardware, go to Computer,
Properties, Device Manager. From the View menu, select Resource by Type. Now
expand the Memory branch of the tree. You will see hardware devices listed,
such as motherboard, PCI bus, graphics card etc, along with the memory
ranges they have reserved.

Thanks for the tip, it looks useful.

So basically the last thing I want to ask is that if I deactivate some
hardware I don't normally use a lot (like my Firewire port) I should be able
to free up the memory address that was being used before right?
 
I

Ian Betts

Andrew McLaren said:
By default, most 32-bit Linux kernels address 4GB of memory. You can
configure the kernel to use Intel PAE (Page Address Extensions) to get 36
bit addresses; and hence access up to 64GB of memory. However it's not a
free gift. Executing code can't see any of the memory above 4GB, even if
the OS can address it. So application code must live below 4GB. Also, to
be directly addresses by code, data needs to be moved from the High Zone
back down into the Normal zone, with a kmap() or similar call. The memory
above 4GB is mainly useful as cache, for example if you have a database
application.

For the sake of completeness, it's worth noting that Windows Server 2003
has the same facility, by booting with with the "/PAE" switch; and by
using AWE memory APIs in your Windows applications (eg the 32 bit SQL
Server). The limitations of 36-bit addressing on Windows are similar to
those on Linux. The 32-bit Windows Server 2003 Enterprise edition can
address 32 GB of memory (via PAE). In SP1 this was increased to 64GB.
Windows automatically enables PAE on CPUs with the DEP feature.

Since nearly all new CPUs are 64-bit anyway, all this memory
jiggery-pokery is fortunately going away ...
Andrew, as a rule of thumb, I always had it that XP pro 32bit could address
up to 4gb while 64bit could 128gb. Although you have that level of memory
not many software applications need more that 2gb to run satisfactorily.
 
J

Jim

ray said:
Not quite true. Linux can handle 16-64gb of RAM with a 32 bit kernel.
Well, perhaps you had better explain how any OS can handle more memory than
the hardware supports.
If you load Linux on a 64 bit computer, it could certainly handle the above
RAM because Linux uses the PAE
instruction. XP server editions can also for the same reason.
Jim
 
A

Andrew McLaren

Ian Betts said:
Andrew, as a rule of thumb, I always had it that XP pro 32bit could
address up to 4gb while 64bit could 128gb. Although you have that level of
memory not many software applications need more that 2gb to run
satisfactorily.

Hi Ian,

In broad terms, that's correct. On a 32 bit processor, memory addresses are
generally 32 bits long, so the memory address space is 2^32 == 4GB.

PAE is a proprietary address extension scheme used on Intel IA-32 processors
to add an extra 4 bits to memory addresses. This allows physical memory
addresses to be 36 bits long. 2^36 = 64GB. The virtual address space for any
process is still only 32 bits - hence, individual applications can only
"see" 4GB (except via special APIs, such as AWE on Windows). But the system
as a whole can exploit up to 64 GB of physical memory.

Obviously it gets a bit confusing when the memory address size is different
to the general register/word size of the CPU; but historically, this
difference has been common enough in computer architectures.

I believe the AMD Opteron 32 bit CPU can actually form addresses up to 40
bits long; although I don't know of any OS which exploits this feature.

The types of productivity and entertainment applications which are typically
discussed in this forum would rarely ever need more than 2GB of memory. The
main types of application which would benefit are (a) database applications
which need to cache large amounts of data in memory for rapid access; and
(b) applications which operate on enormous datasets, such as scientific and
image processing applications, or high-end 3D CAD apps.

Fortunately with 64 bit processors now standard across the board, we can
forget about all that funny stuff and enjoy a nice, flat 64-bit memory
address space. Until we start hitting that 16 Exabyte memory barrier :)
 
R

ray

Well, perhaps you had better explain how any OS can handle more memory than
the hardware supports.
If you load Linux on a 64 bit computer, it could certainly handle the above
RAM because Linux uses the PAE
instruction. XP server editions can also for the same reason.
Jim

Sure. As you'll see via another poster, Linux can use a 36 bit address
extension in the case of 32 bit processor. Suggest you check wiki-pedia
for more details if you're really interested.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top