old-www/HOWTO/XWindow-Overview-HOWTO/introduction.html

183 lines
4.6 KiB
HTML

<HTML
><HEAD
><TITLE
>Introduction</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
"><LINK
REL="HOME"
TITLE="X Window System Architecture Overview HOWTO"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="Preface"
HREF="preface.html"><LINK
REL="NEXT"
TITLE="The X Window System Architecture: overview"
HREF="arch-overview.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>X Window System Architecture Overview HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="preface.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="arch-overview.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="INTRODUCTION"
>2. Introduction</A
></H1
><P
>Back when UNIX was a new thing, around 1970, graphical user
interfaces were only a weird thing being played with in a laboratory
(Xerox's PARC to be precise). Nowadays, however, any operating system
in hopes of being competitive needs to have a GUI subsystem. GUIs are
supposed to be easier to use. This is not much of a concern under
UNIX, which has traditionally been, to some extent, pretty
user-hostile, preferring versatility over ease of use. However, there
are several reasons why a GUI is desirable even on a UNIX system. For
instance, given UNIX's multitasking nature, it's natural to have a lot
of programs running at any given time. A GUI gives more control over
how things are displayed on-screen, thus providing with better
facilities for having a lot of programs on-screen at the same time.
Also, some kinds of information are better displayed in graphical form
(some, even, can only be displayed in graphical form; like pr0n and
other inherently graphical data).</P
><P
>Historically, UNIX has had a lot of improvements done by
academic types. A good example is the BSD networking code added to it
in the late 1970's, which was, of course, the product of work at
the University of California at
Berkeley. As it turns out, the X Window System (also called X, but
never X Windows), which is the foundation for most GUI subsystems
found in modern UNIX (unices?), Linux and the BSD's included, was also
the result of an academic project, namely the Athena project at the Massachusetts Institute of Technology (MIT).</P
><P
>Unix has been a multiuser, multitasking, timesharing operating
system since its beginnings. Also, since the incorporation of
networking technologies, it's had the ability to allow a user to
connect remotely and perform work on the system. Previously this was
accomplished either via dumb serial terminals, or network connections
(the legendary telnet).</P
><P
>When the time came to develop a GUI system that could run
primarily under Unix, these concepts were kept in mind and
incorporated into the design. Actually, X has a pretty complex design,
which has often been mentioned as a disadvantage. However, because of
its design, it's also a really versatile system, and this will become
quite clear as we explain how all the parts comprising a GUI under
Unix fit together.</P
><P
>Before taking a look at X's architecture, a really brief tour of
its history, and how it ended up on your Linux system, is in order.</P
><P
>X was developed by the Athena project, and released in 1984. In
1988 an entity called the "X Consortium" took over X, and to this day
handles its development and distribution. The X specification is
freely available, this was a smart move as it has made X almost
ubiquitous. This is how XFree86 came to be. XFree86 is the
implementation of X we use on our Linux computers. XFree86 also works
on other operating systems, like the *BSD lineage, OS/2 and maybe
others. Also, despite its name, XFree86 is also available for other
CPU architectures. </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="preface.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="arch-overview.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Preface</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>The X Window System Architecture: overview</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>