I've heard about similar probems been caused by other old operating systems like Windows 95/98 when they're run in emulators like MS Virtual PC and VMWare. It's caused because old operating systems like DOS don't use the idle instruction, I can't remember what it's called off the top of my head, it's a no operation instruction that's used in program loops so the CPU doesn't use as much power.
You could check out FreeDOS, it should be better as it's still being updated and is open source so if you know what you're doing you can fix it yourself. There again whatever OS you use once your program is running your CPU will go into overdrive anyway since it doesn't put the put it to sleep when it's idle.
If it annoys so much you then get an old PC and install DOS and Turbo C++ on it. The chances are you can pick up an old 500MHz machine with 64MB of RAM for nothing.