Could you attach your dmesg output from a clean boot. Specifically we are interested in the e820 section of that output which shows how the hardware/BIOS has layed out the memory in your systems.
Here is an example from a 4GB machine which is showing 4GB of ram within the OS too:
$ head -1 /proc/meminfo
MemTotal: 4013952 kB
[...]
Could you attach your dmesg output from a clean boot. Specifically we are interested in the e820 section of that output which shows how the hardware/BIOS has layed out the memory in your systems.
Here is an example from a 4GB machine which is showing 4GB of ram within the OS too:
$ head -1 /proc/meminfo
MemTotal: 4013952 kB
[...]
] BIOS-e820: 0000000000000000 - 000000000009c400 (usable)
] BIOS-e820: 000000000009c400 - 00000000000a0000 (reserved)
] BIOS-e820: 00000000000d2000 - 00000000000d4000 (reserved)
] BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
] BIOS-e820: 0000000000100000 - 00000000bd4a1000 (usable)
] BIOS-e820: 00000000bd4a1000 - 00000000bd4a7000 (reserved)
] BIOS-e820: 00000000bd4a7000 - 00000000bd5ba000 (usable)
] BIOS-e820: 00000000bd5ba000 - 00000000bd60f000 (reserved)
] BIOS-e820: 00000000bd60f000 - 00000000bd708000 (usable)
] BIOS-e820: 00000000bd708000 - 00000000bd90f000 (reserved)
] BIOS-e820: 00000000bd90f000 - 00000000bd918000 (usable)
] BIOS-e820: 00000000bd918000 - 00000000bd91f000 (reserved)
] BIOS-e820: 00000000bd91f000 - 00000000bd963000 (usable)
] BIOS-e820: 00000000bd963000 - 00000000bd99f000 (ACPI NVS)
] BIOS-e820: 00000000bd99f000 - 00000000bd9e4000 (usable)
] BIOS-e820: 00000000bd9e4000 - 00000000bd9ff000 (ACPI data)
] BIOS-e820: 00000000bd9ff000 - 00000000bda00000 (usable)
] BIOS-e820: 0000000100000000 - 0000000140000000 (usable)
Note that although I have 4GB of ram, the last GB is actually mapped at 4-5GB physical.