LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Debian (https://www.linuxquestions.org/questions/debian-26/)
-   -   Wrong amount of physical memory (https://www.linuxquestions.org/questions/debian-26/wrong-amount-of-physical-memory-789430/)

Zolex 02-16-2010 04:27 AM

Wrong amount of physical memory
 
I just reinstall a Debian Lenny and my computer is very slow when I am running more than 1 application.

I have checked my physical memory and here is what the "free" command gave me:

Code:

            total      used      free    shared    buffers    cached
Mem:        906284    897068      9216          0      1996    584380
-/+ buffers/cache:    310692    595592
Swap:      4882812        940    4881872

I have 4 Go of memory on this computer, so why does it show me only 900 Mb?

Could you help me?

jim_p 02-16-2010 08:19 AM

Does POST show you the correct amount of ram that you have? Are you on 64bits? Give us some more details.

Zolex 02-16-2010 11:00 AM

Thanks for your reply.

I am quite new in Debian, so I do not really know which details are important.

I do not know POST command. Which option should I add to it?

GrapefruiTgirl 02-16-2010 11:06 AM

jim was, I believe, referring to the BIOS POST screen that you see just after turning the computer on. The POST screen should do a quick check and/or run-through of the installed memory and give a summary.
So, when you turn on the machine (and on some machines or setups you may need to hit DELETE or some other key to force the POST screen to appear) do you see all the memory you have?

Sasha

Zolex 02-16-2010 11:12 AM

I was thinking that you were talking about the command POST.

Of course the boot of my PC is showing that I have 4Go of memory.

jim_p 02-16-2010 02:12 PM

Are you on 64bits? Do you use some particular kernel loading parameter?
Give us some more specifications.

johnsfine 02-16-2010 02:34 PM

Most likely you have the wrong build of 32 bit kernel.

The common 32 bit kernel supports up to about 3.5GB. But there are kernel build time options that limit support to around the much smaller amount you are seeing. So that is probably the problem.

There is also a 32 bit PAE kernel that will support all the memory your BIOS lets Linux use.

You may want to check how much ram the BIOS lets Linux use. Type
dmesg | less
and look for a table similar to this (which is from one of my systems)
Code:

BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000bfe8ac00 (usable)
 BIOS-e820: 00000000bfe8ac00 - 00000000bfe8cc00 (ACPI NVS)
 BIOS-e820: 00000000bfe8cc00 - 00000000bfe8ec00 (ACPI data)
 BIOS-e820: 00000000bfe8ec00 - 00000000c0000000 (reserved)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fed00400 (reserved)
 BIOS-e820: 00000000fed20000 - 00000000feda0000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
 BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 000000013c000000 (usable)

Notice the big chunk of "usable" memory
100000 - 00000000bfe8ac00
That means that with the common 32 bit kernel this system could use about 3070MiB of ram.
Notice the extra chunk of usable at the end where it says
13c000000
That means that a 64 bit Linux or a 32 bit PAE kernel could use an extra 960MiB on this system that an ordinary 32 bit kernel cannot use.

You can switch to a different 32 bit kernel build just by installing the right Debian package for that kernel. Switching to 64 bit requires reinstalling Linux.

You should post the results of
uname -a
To verify that you do have a 32 bit kernel (rather than some stranger problem) and to give us some idea which 32 bit kernel.

I'm not certain the command to grep the kernel config would be the same in Debian. I just did
Code:

grep HIGHMEM /boot/config-2.6.9-42.0.10.ELsmp
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_DEBUG_HIGHMEM=y

That is I did grep HIGHMEM followed by the name of the config file. I got the 2.6.9-42.0.10.ELsmp part of that name from the output of uname.

Post your version of that if you can. Notice in mine that HIGHMEM64G=y means I have a PAE kernel (that can use that last chunk of memory) and HIGHMEM=y means it can use most of that big chunk.

I'm guessing you have neither of those set, so you can only use about 900MB. So you should install a different kernel package.

AlucardZero 02-16-2010 02:44 PM

Exactly what kernel version are you running?

lugoteehalt 02-16-2010 04:41 PM

Might as well throw in the output of lshw, list hardware, if it's installed.


All times are GMT -5. The time now is 04:39 AM.