I was following the other thread about memory hungry linux and I have some more questions.
I removed tmpfs from my /etc/fstab and it help a bit, but I notice if I come up in single user mode top still shows that about 80MB of memory is still being used.
What is taking up all the memory? Is this normal? Is this the kernel in memory? How big is the default arch kernel?
Do you recommend custom compiling the kernal to lower its memory usage, by eliminating uneeded functions?
linux uses memory in a different way to what you might be used to with windows. Basically, when you load a file in window, it uses a file cache to keep that in memory. You dont normally see that. So when you look at the amount of memory in use, you only really see what your applications are taking up.
In top however, you are seeing your applications as well as the file cache (although linux keeps applications in memory differently than windows does). Generally speaking in windows, if you open 3 copies of notepad, you have 3 copies in memory. In linux, if you open 3 copies of a notepad equivilent you only have 1 in memory, but it is used 3 times. In top you can see this in the VIRT, RES and SHR columns. For more information on that, I suggest you look at the top man page.
To really see what memory is in use, use the free command, eg:
# free total used free shared buffers cached Mem: 254044 225012 29032 0 61676 77384 -/+ buffers/cache: 85952 168092 Swap: 262576 0 262576
you basically want to look at the second line for -/+ buffers/cache:. This tells me that I currently have 85mb in use, and 168mb free.
But if I looked in top, it would tell me I had 29mb free. Its a little misleading, because really there is 168mb sitting there available for use if needed.
Sorry to show this post up, as I want to thank cjdj for explaining that the clear way !
Great little explanation
PGP Key: 1C2A554EFF0157D9
Core i3 @3.30GHz | 4GB RAM | Arch linux-ck
Atom N450 2 gig RAM, Arch linux 4.6.0rc3 i686 (5+H battery ) | ARM Tegra K1 4 gig RAM, Chrome OS
Atom Z520 2 gig RAM, OMV (Debian 7) kernel 3.16.0-0.bpo.4-586 on SDHC