Microsoft Windows will only run on PC Intel-type architectures, while Linux has grown up from that restriction and can even run on IBM p5 chips (to be released shortly) with dynamic logical partitioning and virtualization.
Many of the differences themselves relate to the overall approach taken by the vendors that support these products. Windows is developed and supported by Microsoft and if that works for you, and you don't mind having to install security updates eight times a day (and rebooting your servers almost as many times) that's fine. The Linux kernel is developed by the open source community and is then integrated into various distributions sold by Linux vendors such as Red Hat and Novell. With the release of the 2.6 kernel, Linux is now starting to play in arenas where only Unix has played previously. It now scales to levels close to high-end Unix systems, particulary with respect to IBM platforms where you can now micro-partition your CPUs on a server that offers dynamic and micro-logical partitioning (IBM p5 series), with the 2.6 kernel released by Novell/SuSE.
In my view, Windows works best in the desktop arena, while Linux is slowly pushing harder in that area. Unix still works best in mission-critical environments where one needs optimum reliability and scalability and vendor support. Linux is closing the gap on the desktop and server market, primarily because of its reliability, scalability and quality.
This was first published in August 2004