Peripherals and Other Hardware
Linux supports a large variety of hardware devices such as mice,
printers, scanners, PCMCIA and USB devices. However, most of these
devices are not required while installing the system.
USB hardware generally works fine, only some
USB keyboards may require additional configuration
Again, see the
Linux Hardware Compatibility HOWTO
to determine whether your specific hardware is supported by Linux.
Package installations from XPRAM and tape are not supported by this
system. All packages that you want to install need to be available on a
DASD or over the network using NFS, HTTP or FTP.
Purchasing Hardware Specifically for GNU/Linux
There are several vendors, who ship systems with Debian or other
distributions of GNU/Linux
pre-installed. You might pay more
for the privilege, but it does buy a level of peace of mind, since you can
be sure that the hardware is well-supported by GNU/Linux.
Unfortunately, it's quite rare to find any vendor shipping
new &arch-title; machines at all.
If you do have to buy a machine with Windows bundled, carefully read
the software license that comes with Windows; you may be able to
reject the license and obtain a rebate from your vendor. See
for complete details.
Whether or not you are purchasing a system with Linux bundled, or even
a used system, it is still important to check that your hardware is
supported by the Linux kernel. Check if your hardware is listed in
the references found above. Let your salesperson (if any) know that
you're shopping for a Linux system. Support Linux-friendly hardware
Avoid Proprietary or Closed Hardware
Some hardware manufacturers simply won't tell us how to write drivers
for their hardware. Others won't allow us access to the documentation
without a non-disclosure agreement that would prevent us from
releasing the Linux source code.
Another example is the proprietary hardware in the older
Macintosh line. In fact, no specifications or documentation have ever
been released for any Macintosh hardware, most notably the ADB
controller (used by the mouse and keyboard), the floppy controller,
and all acceleration and CLUT manipulation of the video hardware
(though we do now support CLUT manipulation on nearly all internal
video chips). In a nutshell, this explains why the Macintosh Linux
port lags behind other Linux ports.
Since we haven't been granted access to the documentation on these
devices, they simply won't work under Linux. You can help by asking
the manufacturers of such hardware to release the documentation. If
enough people ask, they will realize that the free software community
is an important market.
A disturbing trend is the proliferation of Windows-specific modems and
printers. In some cases these are specially designed to be operated by
the Microsoft Windows operating system and bear the legend
``WinModem'' or ``Made especially for Windows-based computers''. This
is generally done by removing the embedded processors of the hardware
and shifting the work they do over to a Windows driver that is run by
your computer's main CPU. This strategy makes the hardware less
expensive, but the savings are often not passed on to the
user and this hardware may even be more expensive than equivalent
devices that retain their embedded intelligence.
You should avoid Windows-specific hardware for two reasons. The first
is that the manufacturers do not generally make the resources
available to write a Linux driver. Generally, the hardware and
software interface to the device is proprietary, and documentation is
not available without a non-disclosure agreement, if it is available
at all. This precludes its being used for free software, since free
software writers disclose the source code of their programs. The
second reason is that when devices like these have had their embedded
processors removed, the operating system must perform the work of the
embedded processors, often at real-time priority,
and thus the CPU is not available to run your programs while it is
driving these devices. Since the typical Windows user does not
multi-process as intensively as a Linux user, the manufacturers hope
that the Windows user simply won't notice the burden this hardware
places on their CPU. However, any multi-processing operating system,
even Windows 2000 or XP, suffers from degraded performance when
peripheral manufacturers skimp on the embedded processing power of
You can help this situation by encouraging these manufacturers to
release the documentation and other resources necessary for us to
program their hardware, but the best strategy is simply to avoid this
sort of hardware until it is listed as working in the
Linux Hardware Compatibility HOWTO.
Virtual Parity RAM
If you ask for Parity RAM in a computer store, you'll probably get
virtual parity memory modules instead of
true parity ones. Virtual parity SIMMs can often
(but not always) be distinguished because they only have one more chip
than an equivalent non-parity SIMM, and that one extra chip is smaller
than all the others. Virtual-parity SIMMs work exactly like non-parity
memory. They can't tell you when you have a single-bit RAM error the
way true-parity SIMMs do in a motherboard that implements
parity. Don't ever pay more for a virtual-parity SIMM than a
non-parity one. Do expect to pay a little more for true-parity SIMMs,
because you are actually buying one extra bit of memory for every 8
If you want complete information on &arch-title; RAM issues, and what
is the best RAM to buy, see the
PC Hardware FAQ.
Most, if not all, Alpha systems require true-parity RAM.