I have exactly same problem, but:
1. I have 64bit processor and 64bit version of Linux Mandriva 2008.1 with kernel 18.104.22.168-laptop-1mnt, so there is no option like HIGHMEM in my menuconfig and in /boot/config.
2. I have laptop Toshiba Equium A100 series and BIOS is really basic. There is nothing like "memory hole remapping" but in BIOS I see 4GB RAM. Here is specification
3. I tried to install kernel-server. No changes.
I still have 3015 MB in my system. I know, that 32bit systems should see max 3GB, but why my 64bit Linux see only three gigs?
Is there some way to find those 1GB of RAM?
With best regards