I agree with Chagrin. The BDI's are very standardized to work with as many different combinations as possible, the programmers nightmare.
In Redhat the problem is not the hardware support itself, it's the detection of the hardware and the knowledge what to use instead to get it work or to upgrade later. It has been a mess, I now, and the 6.x distributions from DeadReat wasn't the best either. Some hardware not found by RedHat has easily been found by Mandrake. But since 7.x the installations have detected all my hardware including RAID-cards and backup units that MS-systems left outside with question marks tagged as "not working"...
Now back to the main question. The big advantage with Linux is the architecture and hardware usage. I'm hosting a web server which is a Pentium 200MHz with 128MB RAM and it serves between 10,000 and 15,000 hits each month, last week it delivered more than 80GB of data to the Internet (roadracing movies). I tried to co-host it together with a 1GHz MS-server for load balancing - after the third overload on that server I removed it.
A couple of years ago I was in a team developing a GPRS/3G-network emulator for a big Telecom company, it's still on the move and serves about 80 test centers around the globe. Guess what it's based on. A single PIII 300 or 400Mhz PC and RedHat 6.x simulating the behaviour of a complete GPRS network (well, not that hard though, just unplug the network cable

).
So, I believe that if you're supposed to run a PC for CNC only, almost anything will do. I have an old PIII I think is a 300 that I will use together with my absolute favourite graphical desktop Fluxbox (
http://www.fluxbox.org), very nice, easy to use, small memory footprint and any KDE or Gnome-based application will work.
I can't tell you how nice it works yet, I've just got my servo's. But, I'll be back with a report...
Regards,
Sven