It was an interesting situation. Someone called with a hard drive that was always reading 137gb in windows even though it was 250gb. My first thought was that perhaps it wasn’t partitioned completely, I recommended maybe using fdisk on windows or downloading the latest GParted live CD to look at the partition scheme.
After I hung up the phone I did a little surfing and found out this 137gb limit all had to do with Logical Block Addressing or LBA for short. Older computers were not equipped to handle drives with 48 bit LBA and Windows did not support it by default until SP1.
If your still hung up with this problem a BIOS update for your motherboard or upgrades for windows may solve it. However you still might end up with a drive that needs partitioning. The Gparted liveCD is perfect for this. With it you can create, destroy, shrink or grow partitions of all types and sizes. Best of all you can do it all without damaging the data on your hard drive. Though it is highly recommended that you backup your existing data in case anything goes wrong.
This particular problem doesn’t affect Linux by the way. Linux completely ignores the BIOS when it comes to hard drives and uses its own addressing scheme.