The X Window System is
a graphics system used as the typical primary
graphical infrastructure on Unix
systems and notably Linux.
- Table of
Contents
- 1. Introduction
to X
- 2. Frequently
Asked Questions
- 3. X
Servers
- 4. Desktop
Components
- 5. Window
Managers
- 6. Program/File
Managers
- 7. GNOME -
GNU Network Object Model
Environment
- 8. K Desktop
Environment - KDE
- 9.
The KDE/GNOME Controversy
- 10. KDE
and GNOME: Neither Is A Standard
- 11. X
Desktop Configuration
- 12. X
Applications (Clients)
- 13. X Font
Tools
- 14. X
Development Tools
- 15. GGI -
General Graphical Interface
- 16. On the
Thesis that X is Big/Bloated/Obsolete and Should Be
Replaced
- 17. My
Overall View Of X
- 18.
Network Computing
- 19. My
Xterm/Network Computing Experiences
- 20. X11R6.4
Sample Implementation Changes and
Concerns
- 21. XWindows
- 22. User
Interface Discussions
- 23. RDP -
Remote Desktop Protocol
- 24. CURSES
and other Text-based User
Interfacing
The X Window System
is a graphics system primarily used on Unix systems
(and, less commonly, on VMS, MVS, and MS-Windows systems)
that provides an inherently client/server oriented base for
displaying windowed graphics. It provides a public protocol
by which client programs can query and update information
on X servers.
The representation of
"client" and "server" appears a little bit backwards from
most client/server systems. Usually, people expect the
"local" programs to be called a
"client," and for the
"server" to be something off in
the back room. Which nicely represents the way database
applications usually work, with many "clients" connecting to a central database
"server."
X reverses these
roles, which, as the locations of the hosts are reversed,
is quite appropriate:
-
An X server is a program that
manages a video system (and possibly other
"interactive" I/O
devices such as mice, keyboards, and some more
unusual devices).
The X server thus typically runs
on a user's desktop, typically a relatively
non-powerful host that would commonly be termed
a "client system."
It is, in this context, nonetheless acting as a
server as it provides graphics
services.
-
On the other hand, an
X client is
typically an application program which must
connect to an X Server in order to display
things.
The client will often
run on another host, often a powerful
Unix box that would commonly be known as a
"server."
The X
client might itself also be a "server process" from some other point of
view; there is no contradiction here. (Although calling it
such may be unwise as it will naturally result in further
confusion.)
X nomenclature treats anything that
provides display
services as an X
server. Which is not particularly different from
someone saying that a program that provides database
services is a database server. Or that a
"transaction processor" is a
"transaction server."
The upshot (and the point) of all
this is that this allows use of the X system that allows processes on various
computers on a network to display stuff on display devices
elsewhere on the network.
Microsoft is in the process of
buying infrastructure to provide this to their customers
using proprietary protocols; X has been providing this for
over ten years now.
-
X11R6.3 Xlib
documentation
-
The Motif
Zone
An online
"magazine" about X
and Motif..
-
The MGR
Window System HOWTO
MGR is an alternative
windowing system that is rather lighter weight than
X. It's not a "high
performance" system, and seems to be rarely
used these days. But it's worth looking at for
ideas.
-
Recco -
Vendor of a MGR lookalike
-
The Joy of X : An Overview of the
X Window System; Niall Mansfield;
Paperback
-
The X Window
System: Programming and Applications with XT,
OSF/Motif
-
The Shell
Hacker's Guide to X and Motif: Custom Power
Tools and Windows Manager Tricks
-
Xlib
Programming Manual
The history of X has
involved a fair bit of politics. In the "ancient" past, X was developed at MIT as
one of the components of Project Athena. It was then
managed by the X Consortium. When various Unix things
started shifting in various directions, management of the X
standard was taken over by The Open Group.
The active ongoing
development of X, particularly on free OS platforms, took
place through the XFree86
Project, from about the mid '90s until 2003.
In 2003, there were
some disputes amongst developers, as well as a
controversial change of licensing. Many of the developers
have reformed behind a reformed X.org .
The publicly stated concerns have typically surrounded the
questions: "Why did you change the
license, and what exactly does it mean?" It is,
however, more realistic to regard this as a controversy
over the increasingly closed "governance" of The XFree86 Project Inc. In
effect, the concern isn't so much over the details of the
license, but rather over the fact that the organization
surrounding the software has become way less transparent,
and, by their reluctance to explain what
they intended by the license changes, have introduced
what are really organizational risks that others
are choosing to reject.
In 2004, most major
Linux distributions opted not to distribute XFree86 4.4,
including Red Hat ,
Mandriva
, Debian,
and Gentoo
, as well as OpenBSD
. In 2005, the X.org
release of X11 became X server "of
choice", as most Linux and
BSD
switched over in their respective release
cycles.
The situation with
Debian
was fairly typical; their "X Strike
Force" group kept XFree86 4.3 functional through
2004 and much of 2005 whilst putting new efforts into
X.org
.
-
The Open
Group - X
-
X.org
New organization to
replace the X committee as part of
The Open Group. Membership for smaller
organizations is $3000...
Note that this is one
of the very few permissible domain names with
just one letter. IANA doesn't permit them
anymore.
-
The XFree86
Project
-
xwin.org
- xwin is just a website
After being kicked out
of the XFree86 project, Keith Packard and a
number of GNOME
developers have started this site to explore
extensions to X, and were looking for a new
governance system.
-
Xouvert
Headquarters!
This group was creating
an XFree86 "fork"
with a view to providing an experimental
platform for innovative enhancements, in much
the way the EGCS project forked from
GCC . What results proved useful have gone
back to xwin.org and x.org.
-
Tungsten
Graphics, Inc.
This company, founded
by some people previously with Precision
Insight, is working on additional device
drivers for X11.
-
Debian X Strike
Force
-
Cards
supporting XGL
XGL is a somewhat new
thing; X running atop OpenGL.