NEXT UP previous
Next: Distributions

Hardware

In order to run Linux on a PC or clone, the machine must support a minimum hardware configuration. However, the hardware requirements are very modest, the only real restrictions being that the CPU must be at least a 386, and that the size of the main memory should be at least 4 Mb (or 8 Mb to run X-Windows.

In fact, the processor can be any flavor of 386, 486, or above, including SX, DX, SL, DX2, DX4, etc., varieties, produced by any of the leading CPU manufacturers including AMD, Cyrix and Intel. If the main CPU includes a floating point co-processor, then Linux will use it for any floating point calculations. If there is no coprocessor present (386SX and 486SX for example) then the Linux kernel can be configured to include a software floating point coprocessor emulator, which will automatically be used instead.

The Linux kernel can drive main motherboards which use any of the standard bus architectures from the list: ISA, EISA, VESA local bus (VLB) or PCI. In addition, the motherboard should be fitted with at least 4 Mb of main memory for a single user machine, or 8 Mb for a single user configuration including X-windows. And 16 Mb, or even more, should be considered as a minimum for a machine which is also network connected and provides multiple user logins or some other network services. In addition to the physical RAM plugged into the motherboard, Linux is also able to treat part of your hard disk as though it is an extension of main memory. This virtual RAM on disk is traditionally known as swap space.

Apart from the processor and the memory requirements of a Linux system, the list of supported interface cards for such devices as CD-ROMs, disks, networks, graphics, modems, mice and sound is large and continually growing larger. Any list of supported cards I might give here is bound to be out of date by the time you read this. However, as part of the Linux documentation set, a group of files is provided called the Linux HOWTO documents. These documents give specific information on various aspects of hardware and software configuration for the Linux system, and one of them is particularly relevant at this point the Hardware HOWTO. The latest version of this document will provide a reasonably up-to~date list of all the hardware supported by Linux and, if necessary, it will tell you how to get hold of any extra driver software you may need to use a particular interface card, though the drivers for most supported cards are supplied with the kernel source code.

Looking in general at the interface cards supported by Linux, the list is quite comprehensive. In terms of disk drives, Linux will support all the common disk controllers, including: MFM, RLL, IDE, most ESDI and many SCSI. The amount of disk space required for any particular installation will depend, to a large extent, upon which Linux distribution and which packages you choose to install. In general, however a minimal installation will take up about 20 Mb of your hard disk space. Beyond that, you may well want to add some of the larger application programs, a more complete set of software development tools, system documentation and facilities for networking. These will take your installation up to around the 50 Mb to 70 Mb mark. Above that still, you may wish to add X-windows, EMACS, TeX and LaTeX, more programming languages and tools. Altogether, you would now be looking at a disk space requirement in the 110 to 150 Mb range, and maybe even more. In addition to these sizes you would also need to add the amount of disk space you want to use for virtual RAM (i.e. for swapping) and the amount of space you want to allocate to the users of your machine, for their home directories and working storage.

Most modern PCs have Super VGA video cards and monitors. If you just want to display text on the screen, Linux can support any of these cards, as well as ordinary VGA, EGA, and various CGA and mono cards. However, if you want to be able to use graphics via the super VGA library or X-windows, then the choice is slightly more limited, but still includes the standard SVGA chipsets from Tseng, Western Digital, Trident, ATI, Cirrus Logic and more. Sadly, some SVGA cards are not supported, mainly because their manufacturers will not release details of how to drive them, which means that device drivers for these cards cannot officially be written. For an up-to-date list of the cards supported for graphics applications you should refer to another of the HOWTO documents XFree86-HOWTO.

Setting up a Linux machine to operate on an Ethernet network is very straight-forward - the kernel provides drivers for most inexpensive network cards, including those by 3com, Novell, Western Digital, Hewlett Packard and their clones. Again, for an up-to-date list, there is a HOWTO document available, which should be consulted - the Ethernet HOWTO.

For CD-ROM storage, Linux supports the standard ISO-9660 filesystem. Some CD-ROM drives use either an IDE or a SCSI interface. As long as you have a supported IDE or SCSI interface card, then these should work with no problems. In addition, several CD-ROM drives are supported which have proprietary interface cards, including several Mitsumi, Panasonic, Sony and Philips drives. Look in the CD-ROM HOWTO document for the latest list.

Finally, Linux supports a complete range of parallel printers, serial modems and serial and bus mice.


NEXT UP previous
Next: Distributions