The Linux kernel and the open-source software components that surround it have progressed to a point where Linux on the desktop has become attractive for certain enterprise deployments. However, several challenges remain for desktop Linux, many of which relate to supporting the galaxy of hardware devices that exist for desktop and laptop computers.
An impressive number of hardware drivers ship as part of the Linux kernel. In fact, its not unusual to experience better hardware support out of the box with Linux than with Windows, which, in eWEEK Labs experience, usually requires a set of driver downloads upon installation.
However, although Windows may require some driver downloads after installation, its almost always a safe bet that the drivers you need at least exist for Windows. Linux delivers a good experience with drivers that ship with the kernel, but things can get quite a bit tougher with drivers that are not included.
This is a particularly sticky issue when it comes to notebook computers, which tend to sport hardware thats more obscure than that found on desktop counterparts.
For example, its been some time since notebooks began shipping with Intel Corp.s Centrino Wi-Fi functionality, but Linux drivers for it still arent available. Intel is trying to rectify this situation by starting up a free- software project that provides drivers for its 802.11b/g radio. This project is at an early state, however, and there are other hardware vendors, such as Broadcom Corp., that do not provide Linux drivers for all of their Wi-Fi radios. Without the proper drivers, Linux users must resort to workarounds. Weve had success enabling unsupported Wi-Fi radios under Linux using code from a free- software project called NdisWrapper, which makes Windows drivers usable under Linux.
Whats more, notebook computers rely much more heavily on hardware-tied features, such as effective power management. Notebook users running Windows can rely on their machines ability to hibernate quickly and come back to life just as promptly. However, weve had to perform kernel and system configuration tweaks on all of the Linux distributions weve tested to enable the same performance level.
Part of the problem stems from the great diversity of kernel versions in the Linux world. When drivers are available under open-source licenses, users or distributors can recompile the drivers as modules for a specific Linux kernel. There is less variation on the Windows side, so hardware vendors can make available a single binary driver that they know will work for most users.
Things will get even more complicated for desktop Linux once 64-bit machines, such as those powered by Advanced Micro Devices Inc.s Opteron processors, begin to assume a larger share of the market. Hardware vendors that insist on providing their own, binary-only drivers will have to track two architectures, not to mention the various Linux distribution and kernel versions.
Hardware vendors often are hesitant to make their code or other documentation public—to allow users or distributors to recompile drivers themselves—so theres frequently a lag between the release of a new Linux distribution or kernel version and the availability of new drivers to support the changes. The Wi-Fi driver project mentioned earlier was started by Intel, and yet the Intel Web site notes that one of the projects working constraints is that theres no hardware documentation available.
As the Linux client market continues to expand, we expect these driver issues to work themselves out. The last few years have already seen progress on this front as vendors have moved to make their offerings attractive to new groups of customers.
Senior Analyst Jason Brooks can be reached at [email protected]