-->
Previous | Table of Contents | Next |
For the not-so-faint-of-heart, XFree86 also includes programming libraries and files for programmers who want to develop their own applications under XFree86. While the topic of programming or any of the caveats involved in creating X Windows applications is beyond the scope of this book, ample documentation is available on any number of Internet distribution sites such as prep.ai.mit.edu, and on many CD-ROM distributions to help you gain the foothold necessary to create applications for XFree86.
X Windows is a client/server system controlled by two individual pieces of software with one piece running on the client and the other running on the server. The client and server pieces of this puzzle can be on different systems or, as is the case with most personal computers, both pieces can reside on the same machine.
Client/server is one of the major buzzwords used in the computer industry today. Like most basic concepts in the industry, client/server has been overplayed and overused to the point of confusing the average computer user. In the traditional sense, a server is a machine that just provides resourcesdisk drive space, printers, modems, and so onto other computers over a network. A client is the consumer of these servicesin other words, a client uses the disk space, printer, or modems provided by a server.
Now that you understand what a client is and what a server is, its time to reverse it all. In the world of X Windows, the client/server relationship is the opposite of what youve come to know in the PC world. The accepted or common notion of a server is that it provides services to a client who uses them. In the most basic form, a client displays the application thats running on the server.
Under X Windows, the server displays the application thats running on the client. This may seem a bit confusing at first, but itll make sense when you become more intimate with the X Windows system.
In X Windows, a client is the resource that provides the programs and resources necessary to run an applicationwhat in the traditional sense would be called a server. The resources reside on the client system (remember that the client and server systems can be on the same machine), whereas the application is displayed and interacted with on the server system.
The capability of an X Windows application, which is the client, to run under a server located on either the same computer or on another computer is called network transparency. Thus, an X application doesnt care whether it runs on a local or remote machine. This capability can be used to run time-consuming tasks on another server, leaving the local client unencumbered to perform other tasks.
The base window system provides X Windows with plenty of bitmapped graphical operations. X Windows and X Windows applications use these operations to present information graphically to the users. XFree86 offers overlapping windows, immediate graphics drawings, high-resolution bitmapped graphics and images, and high-quality text. Whereas early X Windows systems were mostly monochrome-based, today X Windows and XFree86 support a wide range of color systems.
X Windows also supports the multiprocessing capabilities of UNIX; thus, XFree86 supports the multiprocessing capabilities of Linux. Each window displayed under X Windows can be a separate task running under Linux.
The X Consortium left out the standard rules for user interfaces. Although this seems somewhat shortsighted today, at the time very little research had been done on user interface technology, so no clear interface was considered the best. In fact, even today, unilaterally declaring one interface the best can alienate many people. The preferred look and feel presented by the user interface is a very personal decision.
The X Consortium wanted to make X Windows a standard across UNIX workstations, which is one reason X Windows is available freely on the Internet. By making X Windows freely available, it fosters interoperability, which is the cornerstone of open systems. Had the X Consortium dictated a user interface, X Windows may not have gained its current level of popularity.
Systems running X Windows typically have some form of pointing device, usually a mouse. XFree86 requires a mouse or a device, such as a trackball, that emulates a mouse. If you dont have such a device, you cant use the XFree86 system with Linux. X Windows converts signals from the pointing device and from the keyboard into events. X Windows then responds to these events, performing appropriate actions.
CAUTION:
If your mouse or other hardware pointing device isnt among those supported by Linux, youll have problems using XFree86 and the selection program.
See Making Selections, p. 107
Hopefully, you installed the XFree86 system while installing the entire Linux Slackware package from the accompanying CD-ROM. The X Windows system is contained in the x and xap distribution packages. If you didnt install the X Windows system at that time, you can use Slackwares pkgtool program to install X Windows.
NOTE: The Red Hat distribution also installs X as part of the installation process.
Under Slackware, pkgtool is the easiest way to install XFree86, and the upcoming section Installing the X System with pkgtool for Slackware contains instructions for installing X using pkgtool. But if you need to install the files manually (when upgrading to a newer system, for example), you need to know that the files are located on the Slackware CD-ROM in the /slakware/x# directories: /slakware/x1 through x16.
X consists of several large archived files. The current version of XFree86 for Linux is 3.1.1, which is located on the CD-ROM. Table 21.1 shows the main files. You should log in as the superuser (root) and copy the necessary files to /usr/x386. If this directory doesnt exist, create it with the mkdir command, as shown here:
opus#: mkdir /usr/x386 opus#: cd /usr/x386 opus#: cp -r /cdrom/slakware/x1.
Previous | Table of Contents | Next |