There are some scenarios where serial consoles are useful. These are:
Clusters of personal computers can outperform mainframe computers and form competitive supercomputers for some applications. See the Cluster-HOWTO for more information on clustering.
These clusters are typically assembled into 19 inch telecommunications equipment racks and the system unit of each computer is typically one rack unit (or 1.75 inches) tall. It is not desirable to put a keyboard and monitor on each computer, as a small cathode ray tube monitor would consume the space used by sixteen rack units.
A first glance it seems that a monitor and keyboard switch is the best solution. However the VGA signal to the monitor is small, so even with the switch the monitor cannot be placed very far away from the rack of computers.
It is desirable to allow the consoles to be monitored in the operators' room of the computer center, rather than in the very expensive space of the machine room. Although monitor switches with remote control and fiber optical extensions are available, this solution can be expensive.
A standard RS-232 cable can be 15 meters in length. Longer distances are easily possible. The cabling is cheap. Terminal servers can be used to allow one terminal to be access up to 90 serial consoles.
This is useful in two very different cases.
Kernel programmers are often faced with a kernel error message that is displayed a split second before the computer reboots. A serial console can be used to record that message. Another Linux machine can be used as the serial terminal.
Some secure installations require all security events to be unalterably logged. A way to meet this requirement is to print all console messages. Connecting the serial console to a serial printer can achieve this.[1]
Linux is increasingly being as the operating system in embedded applications. These computers do not have keyboards or screens.
A serial port is a cheap way to allow software developers to directly access the embedded computer. This is invaluable for debugging. Most chip sets designed for embedded computers have a serial port precisely for this purpose.
The shipping product need not present the RS-232 port on an external connector. Alternatively the RS-232 port is often used for downloading software updates.
Linux is increasingly being used as the operating system inside telecommunications equipment. The Carrier Grade Linux consortia hopes to accelerate and coordinate this trend.
Most telecommunications equipment is remotely managed from a distant computer. However, site technicans (called craft personnel in telco-speak) need to access the equipment to test installation changes, check the status of reported faults, and so on. The terminal used by the craft personnel is called the craft terminal. The craft terminal plugs into the craft interface on the equipment.[2]
It is common, but not universal, industry practice for craft terminals to be a DEC VT100 terminal (or an emulator). The craft interface is commonly assumed to be an RS-232 DCE interface, running at 9600bps with 8 data bits, no parity, one stop bit, no handshaking and no status lines. An RJ45 connector is sometimes used in place of RS-232's standard 25-pin D connector. The DCE interface allows the craft terminal to be connected without a special null modem cable.
Unlike minicomputer systems, the IBM PC was not designed to use a serial console. This has two consequences.
Firstly, Power On Self-Test messages and Basic Input/Output System (BIOS) messages are sent to the screen and received from the keyboard. This makes it difficult to reconfigure the BIOS and makes it impossible to see Power On Self-Test errors.
An increasing number of manufacturers of rackable server equipment are altering their BIOSs to optionally use the RS-232 port for the BIOS's messages and configuration. If you are buying a machine specifically for use with serial console you should seek this feature. If you have an existing machine that definitely requires access to the BIOS from the serial port then there are hardware solutions such as PC Weasel 2000.
Secondly, the RS-232 port on the IBM PC is designed for connecting to a modem. Thus a null modem cable is needed when connecting the PC's serial port to a terminal.
[1] | The Linux 2.4 kernel also supports the output of console messages to Centronics or IEEE 1284-2000 parallel printer interfaces. |
[2] | The craft interface was originally specified in Telcordia's LATA Switching Systems Generic Requirements. The wide variation in craft interfaces can be attributed to this document costing US$17,500 (in April 2002). |