On Mon, 24 Oct 2005 00:13:44 +0100, Jon Masters wrote: > On 10/23/05, J.A. Magallon wrote: > > > BTW, any simple method to get the real mem of the box ? > > This is a typical example of using a hammer to crack a nut aka > modifying the kernel before giving up on userspace. > Ejem. Who talks about modifying anything ? > Several ways of looking up a solution: > > * google Well, perhaps I buy this, but as this looks like a strange/buggy thing, as I will explain later... > * man -k memory > > Leading to: > > * free(1): > ``free displays the total amount of free and used physical and swap'' > > * Or /proc/meminfo (both the same thing) - which you can trivially > parse using sed: > > cat /proc/meminfo | sed -n -e "s/^MemTotal:[ ]*\([0-9]*\) kB\$/\1/p" > Do your homework. free gives the free amount of memory _available for the user_, ie, the full memory of the box minus the kernel reserved part. From dmesg: BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009f800 (usable) BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved) BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 000000003fee0000 (usable) BIOS-e820: 000000003fee0000 - 000000003fee3000 (ACPI NVS) BIOS-e820: 000000003fee3000 - 000000003fef0000 (ACPI data) BIOS-e820: 000000003fef0000 - 000000003ff00000 (reserved) BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved) 1022MB LOWMEM available. ... Memory: 1034744k/1047424k available (1858k kernel code, 12208k reserved, 634k da ta, 184k init, 0k highmem) werewolf:~> echo $((1047424 / 1024)) 1022 werewolf:~> free total used free shared buffers cached Mem: 1035012 1000660 34352 0 98348 649284 werewolf:~> cat /proc/meminfo | grep MemTotal MemTotal: 1035012 kB werewolf:~> echo $((1035012 / 1024)) 1010 So free/proc give the available memory, not the total: - free: 1010 Mb - kcore: 1022 Mb I expected /proc/kcore to give the size of your installed memory, with the reserved BIOS areas just not accesible, but it looks like it already has them discounted, so gives 1022 Mb. It looks really silly to have a motd say "wellcome to this box, it has 2 xeons and 1022 Mb of RAM". -- J.A. Magallon \ Software is like sex: werewolf!able!es \ It's better when it's free Mandriva Linux release 2006.1 (Cooker) for i586 Linux 2.6.13-jam9 (gcc 4.0.1 (4.0.1-5mdk for Mandriva Linux release 2006.0))