United States (change)
Shortcuts: Downloads Fedora Red Hat Network
Issue #14 December 2005
Think about the language of computer interfaces for a moment. You refer to your computer screen as a desktop; you refer to the background as wallpaper upon which you open windows. At the beginning of the graphical computing age, it was important to create terminology that would enable office workers to feel comfortable as they exchanged ledger books for database applications. But as important as that was, there was also the connotation of size: that 800x600, 15-inch screen was just like your desktop. (You may decide for yourself how effective that suggestion was.)
Thankfully, hardware is cheaper now, so you may be reading this on a 19-inch monitor (or larger) at 1280x1024 (or higher). But as great an improvement as this is, it is still a long way from providing you with the space of your real desktop—and that is something of a problem.
According to an article in Signal vs. Noise, a test found that a person's performance on a 42-inch monitor was 10% to 44% faster than on a 15-inch monitor. Surprisingly, these results included tests of cognition—such as memorizing phone numbers. Apparently the clutter of a small screen affected how well the person coped with all intellectual demands—not just tasks on the computer.
But although a 42-inch monitor is probably unobtainable, you can have the next best thing: a system that has a second monitor (which is know as a dual-headed system).

The two components of interest are the graphics card(s) that drive the monitors and the monitors themselves.
Your graphics card may have a single output or multiple outputs.
If your card has multiple outputs, you may want to go directly to Configuring the system for the second monitor.
If your card has a single output and you have an available PCI slot, you could buy a second graphics card for that spare slot, or you could buy a dual-output card. For performance reasons, you should buy a dual-output graphics card that connects to your system's motherboard, not to a PCI slot. If your motherboard offers a PCI-X, PCI-E, or similar connector, buy a card that exploits the full potential of that hardware.
There are two general categories of dual-output graphics cards:
Which type of graphics card you buy will depend both on the cost of the card and the type of monitors you want to hook up:
To configure the system for the second monitor, select Main Menu => System Settings => Display, or at a shell prompt, enter the command system-config-display as root.
Click on the Dual head tab, as shown in Figure 1. "Dual-Head Display Settings".
Figure 1. Dual-Head Display Settings
To enable the second monitor, check Use dual head.
To configure the second monitor's settings, click Configure.
To enable both monitors to use an enlarged single workspace, set the Desktop layout option to Spanning Desktops. To create a pair of independent workspaces, set the Desktop layout option to Individual Desktops. With "spanned desktops" you can drag windows from one monitor to another; with individual desktops only the mouse cursor can move between desktops.
After changing the settings, log out of the graphical desktop then log back in to see the changes.
If there are particular programs you want to start automatically when you log in, do the following:
In startup.sh, set the first display and type in the applications you want to start there. Then, set the second display and type in the applications you want to start on that monitor. You may want to put the "intrusive" applications (email, IRC) on the secondary monitor.
Here is an example start-up script for a dual-independent display (that is, on in which you specify either DISPLAY=:0.0 or DISPLAY=:0.1):
# Applications on the left monitor export DISPLAY=:0.1 evolution& xchat& # Applications on the right monitor export DISPLAY=:0.0 firefox& gnome-terminal& gaim&
chmod 744 startup.sh
Select Main Menu => Preferences => More Preferences => Sessions => Startup Programs.
env DISPLAY=:0.0 xterm -geometry -0+0This will start an xterm window in the upper-right corner of the rightmost monitor.
Type man X for more information about placing windows in particular locations on the desktop.

If space on your physical desktop is not a limitation, you can buy graphics cards to set up a triple-headed system. However, this configuration is quite a bit more difficult to set up. Basically, you have to edit your /etc/X11/xorg.conf file (which replaces the /etc/X11/XF86config file of older Linux distributions.)
The sample xorg.conf file that follows may assist you in setting up a three-headed system, but as you will see, you are required to specify the operation of the video cards and the monitors in detail. One way to get this information is to set up your system for a dual-headed display with one pair of cards, save a copy of the /etc/X11/xorg.conf file, replace one of the cards and save a copy of xorg.conf again, then merge the two files using the example below as a template.
# Xorg configuration created by system-config-display
Section "ServerLayout"
Identifier "Multihead layout"
Screen "Screen0" LeftOf "Screen1"
Screen "Screen1" LeftOf "Screen2"
Screen "Screen2" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
Option "Xinerama" "on"
Option "Clone" "off"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "yes"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "ViewSonic P815"
HorizSync 30.0 - 115.0
VertRefresh 50.0 - 160.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "ViewSonic P815"
HorizSync 30.0 - 115.0
VertRefresh 50.0 - 160.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "Monitor2"
VendorName "Monitor Vendor"
ModelName "Nokia 447Xi"
HorizSync 30.0 - 91.0
VertRefresh 50.0 - 150.0
Option "dpms"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium II"
VideoRam 8192
BusID "PCI:2:1:0"
EndSection
Section "Device"
Identifier "Videocard1"
Driver "r128"
VendorName "Videocard Vendor"
BoardName "ATI Rage 128"
BusID "PCI:1:0:0"
# Screen 1
EndSection
Section "Device"
Identifier "Videocard2"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium II"
VideoRam 8192
BusID "PCI:2:12:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 16
SubSection "Display"
Viewport 0 0
Depth 16
Modes "1600x1200"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Videocard1"
Monitor "Monitor1"
DefaultDepth 16
SubSection "Display"
Viewport 0 0
Depth 16
Modes "1600x1200"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen2"
Device "Videocard2"
Monitor "Monitor2"
DefaultDepth 16
SubSection "Display"
Viewport 0 0
Depth 16
Modes "1280x1024"
EndSubSection
EndSection
Michael Behm is a technical writer at Red Hat.