BookRags.com Literature Guides Literature
Guides
Criticism & Essays Criticism &
Essays
Questions & Answers Questions &
Answers
Lesson Plans Lesson
Plans
My Bibliography Periodic Table U.S. Presidents Shakespeare Sonnet Shake-Up
Research Anything:        
History | Encyclopedias | Films | News | Create a Bibliography | More... Login | Register | Help

Not What You Meant?  There are 56 definitions for X.  Also try: Window or Server or Windows or X10.

X Windows

Print-Friendly  Order the PDF version  Order the RTF version
About 2 pages (647 words)
X Window System Summary

Bookmark and Share Questions on this topic? Just ask!

X Windows

X Windows is a system providing for the display and management of graphical information, in much in the same way as Microsoft's Windows Graphic Device Interface (GDI) and IBM's Presentation Manager.

The "X Org," a non-profit consortium comprising several members, developed the X Protocol in the mid-1980s to offer a graphical user interface that is transparent to the network, chiefly for the UNIX operating system. It is often said in the UNIX world that "the network is the computer," and the X protocol personifies this.

The chief difference between X and other graphical environments is the way the X Protocol has been designed as a true client-server system, meaning that it comprises two separate parts or processes that communicate in some way. Microsoft Windows and IBM's Presentation Manager merely display graphical information on the machine on which they are running, but the X Protocol breaks this binding by allowing applications to run in a more distributed fashion. It does this by creating a true client-server relationship at the program level.

The part of the application that decides what should be displayed is called the "X client." The X client is logically and, typically, physically separated from the part of the application that actually does the drawing, or the display.

The display is the "X server." X clients usually run on a machine that has spare computing power and displays the results on a slower machine using an X server. This is a real client-server relationship between an application and its display, and gives all the advantages of this kind of relationship.

To realize this separation, the application (running or incorporating the X client) is logically and often physically detached from the display (running the X server), and the two entities exchange data using a socket-based asynchronous protocol that works transparently over the network. A socket is merely a number or "handle" that describes a "logical channel" into the computer. It is rather like a telephone number in that information meant for that channel will be associated with that number. The protocol being "asynchronous" means that the X clients and servers exchange items of information or "packets" when the need arises rather than on a strict timed basis.

One of the quirks in some "flavors" of UNIX is that sometimes it is actually faster to use a deliberate physical separation of the X clients and X servers than to use both on the same machine, and it is not unknown for colleagues sitting next to one another to each run their X clients on the other's computer, and their X servers on their own computers. The reason this configuration is sometimes faster is that some computers treat network data with a higher priority than normal data, meaning that the network stuff is considered more important.

X also provides a "common windowing system" by specifying both device-dependent and device-independent layers. What this means is that the X Protocol theoretically hides the quirks and anomalies of the operating system (and the hardware underneath it all) from the applications using them. This is counted as a good thing because different hardware sets will present a common software interface yet have very different construction; this is the intention, at any rate.

Theoretically this would make the X Protocol the ideal windowing solution. In practice, however, the actual function library, called the "XLib API" (written in C), is very complicated indeed, and X programming is generally considered by most programmers as something best left to someone else.

Various layers have been written on top of XLib over the years to attempt to simplify X programming, but these attempts, most conspicuously Motif and its free counterpart, LessTif, are only partly successful because the API is still very complicated.

Much more recently developments like GTK++, wxWindows, and TrollTech's Qt have gone a long way to providing very much improved APIs on top of XLib, making the X windowing system a much less painful proposition.

This is the complete article, containing 647 words (approx. 2 pages at 300 words per page).

More Information
  • View X Windows Study Pack
  • 56 Alternative Definitions
  • Search Results for "X Windows"
  • Add This to Your Bibliography
  • More Products on This Subject
    X Terminal
    An X terminal is a computer that lacks a disk. Accordingly, X terminals do not have (house) residen... more

    X Window System
    In computing, the X Window System (commonly X11 or X) is a display protocol which provides windowing... more


     
    Ask any question on X Window System and get it answered FAST!
    Answer questions in BookRags Q&A and earn points toward
    discounted or even FREE Study Guides and other BookRags products!
    Learn more about BookRags Q&A
    Copyrights
    X Windows from World of Computer Science. ©2005-2006 Thomson Gale, a part of the Thomson Corporation. All rights reserved.

    Join BookRagslearn moreJoin BookRags




    About BookRags | Customer Service | Report an Error | Terms of Use | Privacy Policy