Chapter 4: What's the X Window System?
What X is not
What X does
Some X heritage
What X is Not:
What X does:
X is the layer between the hardware on your system (your graphics card, and so on) and the GUI that sits on top of X. Have a look at the following diagram to get the general idea:
Without X in the equation, the GUI that you use, or properly termed: the Window Manager couldn't do anything.
X Is also a server. We usually refer to it as XFree86 or just as X, but indeed it's proper title is an X Window Server. When you run X on your own linux box, X has to determine whether you want to display it on a local machine and on a local monitor, or on a remote monitor. You can also have more than one X session running on your linux box at the same time. If you have 2 monitors, and a dual headed graphics card (ie: Matrox G400 DH), you can get X to display Jane's X session on monitor 1 and Bob's X Session on monitor 2, all running on one computer, at the same time. Show me Windows 98 do that, please :)
Some X Heritage
If you're interested in knowing how X came to be, this chapter is for you.
X was an idea concieved by many: In 1984, Apple had released it's first graphical user interface. If you were either too young, or never saw it. I reckon you should definitely take a look at the 1984 TV advertisment of the first Macintosh. It's a wonderful piece of art. You can see this great piece in computing history HERE, alhthough be weary- it's around a 13MB quicktime movie-- you'll need a fast connection if you want to see it in the next hour!
Even prior to this, a group of real boffins with some way far-out ideas (circa 1978) had been stroking their beards, drinking lots of hi-caffeine coffee/jolt and creating the very *VERY* first GUI. It was made by the researchers in Xerox's PARC (Paulo Alto Research Center), where they designed a GUI called Exlir, and terminal systems to go with it (called the Star). Unfortunately, it was not a commercial sucess, mainly due to high pricing.
The Xerox Star Computer, Running Elixir
The last main demonstration of the Star and the Elixir Desktop os was around 1981, to see what I'm jabbering on about, check out Bruce Damer's Personal Histories of the Desktop User Interface. Which is a compelling insight into the very first moments of the Graphical User Interface. There are some pretty zany pictures of bearded people in bell bottoms as well, so you have been warned!
Anyways... After Elixir, a few GUIs appeared (amongst others): GEM, TOS and the Mac System OS, in 1984. Less than two years later in 1986, a consortium of UNIX developers including Sun Microsystems , Silcon Graphics and AT&T created X. Originally it shipped with the window manager called TWM. The source of this product and who created it, are still unknown.
TWM (or, as most know it today; "THE Window Manager"), was the interface that sat ontop of X, and allowed you to open up Xterms, resize windows and do basic window manipulation. It was pretty darn basic to say the least. Then came FVWM, which was a major improvement. For Linux geeks and for people who want a really light window manager, you'll find twm and fvwm still in use today. It still ships with all the latest distros. FVWM2 came out years later, along with other window managers such as NeXt/NeXtStep, AfterStep, IceWM, QvWM (which is supposed to look identical to Windows 98 btw), KDE, Gnome and many others. In 1990, Microsoft Windows 3.0 was released (Versions 1.0 and 2.0/286 of Windows was actually text based -- essentially).
If you read the next 2 chapters, on Gnome and KDE, Linux's top 2 Window Managers, you'll soon see what all the fuss is about. Originally, like MS-DOS and UNIX et al, Linux was essentially a command line driven operating system and it excelled at that, it's now got multiple point and click GUIs, and well, obviously, it excels at that too!