Some of the main feature additions to Linux involve support for a vastly wider diversity of platforms. Consequently, the release of 2.4 signifies an astoundingly quick maturation of Linux.
Just a few years ago, Linux was considered a PC operating system, mainly usable on x86 processors -- with fairly crude support for a few other architectures, such as Alpha and Sparc. With the release of 2.4, Linux has demonstrated its viability on an extremely diverse variety of platforms -- from handheld computers and other embedded devices at the low end, to mainframes and even multi-processor supercomputers at the high end. The official Linux kernel now has support for an impressive set of desktop and server 32- and 64-bit processor architectures besides the x86 -- Alpha, Sparc, MIPS, SuperH, PowerPC, ARM, and others.
Perhaps most impressive, is the support for Intel's IA-64 server-oriented architecture and for IBM's S/390 mainframe. Notably, the Linux IA-64 port appears to be well ahead of Microsoft's port of Windows to IA-64, and the Linux S/390 IBM mainframe port is nothing short of a testimonial to the flexibility of an operating system that most people think of only as a "competitor to Windows."
In addition, numerous less mainstream CPUs and hardware platforms are supported by unofficial Linux kernels (such as ports for some Linux handhelds and the uClinux project). Many of these ports can be expected to be merged into the official kernel as they mature. Importantly, it tends to be these lesser known processors that form the fabric of myriad future non-desktop "embedded devices" and pervasive computing systems.
Stunning diversity
From an industry point of view, this spread of Linux to diverse architectures is stunning. Never before has an operating system spread so quickly to so many architectures.
Windows took years to be ported to processors other than Intel x86. And its support for non-x86 architectures has actually waned in recent years. Unix became available on many platforms, but in the process became so fragmented that it could hardly be considered a single OS any longer. A number of specialized embedded operating systems have spread to many architectures; but they offer limited scalability and fewer features relative to Linux.
Linux, on the other hand, has diversified rapidly without fragmenting -- meanwhile adding the features needed by modern, interconnected computer systems of every conceivable size, shape, and purpose.
How did all this happen so fast?
Not bad for a bunch of software anarchists working overnight on caffeine, you say?
Several factors account for this success, many of which stem from the open source software model used in developing Linux.
The most obvious cause for the spread of Linux to new platforms is the crowd of microprocessor and computer manufacturers who have jumped onto the Linux bandwagon in the last two years. These include many of the leaders in the computer industry: IBM, Intel, Motorola, AMD, Hitachi, Toshiba, National Semiconductor, STMicroelectronics, Cirrus Logic -- and don't forget Linus Torvalds' current employer, startup chipmaker Transmeta.
Why support Linux on their hardware? Because they, like the rest of us, can essentially own the OS source code, which gives them complete control over the process and the result. They don't need to ask anyone's permission, sign any NDAs, or pay anyone for the privilege of porting Linux to their hardware. When finished, they are free to sell the operating system or, more commonly, give it away with their hardware.
By contrast, porting a proprietary OS is much messier -- and riskier. The hardware manufacturer and the proprietary OS vendor each have differing -- and sometimes conflicting -- agendas and priorities. These must be continually negotiated and reconciled. A CPU manufacturer can't even be sure that the OS developer will remain committed to their port in the face of ever-changing corporate priorities (ask Motorola about Microsoft's Windows NT support for PowerPC!).
No such danger exists with Linux. Originally, this was simply because it was controlled by a group of volunteers with few or no corporate loyalties. The "non-corporate" culture of Linux kernel development is still an important factor. Watch the Linux kernel mailing list for a while, and you'll see what happens to anyone who is perceived as representing a "corporate agenda."













