XFree86

From Academic Kids

XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms. It is free and open source software. The current release is version 4.5.0.

For most of the 1990s and early 2000s, the project was the source of most innovation in X and was the de facto steward of X development. Until early 2004, it was almost universal on Linux and the BSDs. It lost much popularity and most of its developers when it adopted an unpopular license for version 4.4.0.

Contents

Architecture

XFree86 consists of client libraries used to write X applications ("clients"), and an X server responsible for the display. Client and server communicate via the X protocol, which allows to run clients and server on different computers.

The XFree86 server communicates with the host operating system's kernel to drive input and output devices, with the exception of graphics cards. These are generally managed directly by XFree86, so it includes its own drivers for all graphic cards a user might have. Some cards are supported by vendors themselves via binary-only drivers.

Since version 4.0, XFree86 has supported (some) accelerated 3D graphics cards via the GLX and DRI extensions.

Because the server usually needs low level access to graphics hardware, on many configurations it needs to run as the superuser, or a user with UID 0. However, on some systems and configurations it is possible to run the server as a normal user.

It is also possible to use XFree86 in a framebuffer device, which in turn uses a kernel graphics card driver.

On a typical POSIX-system, the directory /etc/X11 includes the configuration files. The basic configuration file is /etc/x11/XF86Config (or XF86Config-4) that includes variables about the screen (monitor), keyboard and graphics card. The program xf86config is often used, although xf86cfg also comes with the XFree86 server and is certainly friendlier. Many Linux distributions include a configuration tool that is easier to use (such as Debian's debconf) or autodetects most (if not all) settings (Red Hat Linux and Fedora Core's Anaconda, SuSE's YaST and Mandrake Linux chose this path).

History

Early history and naming

The project began in 1992 when David Wexelblat, Glenn Lai, David Dawes and Jim Tsillas joined forces addressing bugs in the X11 X386 source code (written by Thomas Roell), as contributed to X11R6. This version was initially called X386 1.2E. As newer versions of the (originally freeware) X386 was being sold commercially by SGCS (of which Roell was a partner), confusion existed between the projects. After discussion, the project was renamed XFree86, as a pun, (compare X-three-eighty-six to X-free-eighty-six). Roell has continued to sell commercial X servers, most recently under the name Accelerated-X

Rise with Linux

As Linux grew in popularity, XFree86 rose with it, as the main X project with drivers for PC video cards.

By the late 1990s, official X development was moribund [1] (http://www.computerworld.com/softwaretopics/software/appdev/story/0,10801,67861,00.html). Most technical advancement was happening in the XFree86 project. In 1999, XFree86 was sponsored onto X.Org (the official industry consortium) by various hardware companies [2] (http://slashdot.org/article.pl?sid=99/12/01/1342251&tid=104) interested in its use with Linux and its status as the most popular version of X.

2003: dissent within the project

By 2003, while Linux's popularity, and hence the installed base of X, surged, X.Org was all but inactive [3] (http://xfree86.org/pipermail/forum/2003-April/003127.html) and active development was largely carried out by XFree86. However, there was considerable dissent within XFree86. It was perceived as far too cathedral-like in its development model; developers were unable to get CVS commit access [4] (http://www.xfree86.org/pipermail/forum/2003-March/002018.html) and vendors had to maintain extensive patches [5] (http://www.advogato.org/person/mharris/diary.html?start=5). In March, long-term contributor Keith Packard was ejected from the Core Team with considerable ill-feeling [6] (http://www.xfree86.org/pipermail/forum/2003-March/001997.html) [7] (http://www.xfree86.org/pipermail/forum/2003-March/002165.html) [8] (http://www.xfree86.org/pipermail/forum/2003-April/003016.html). The Core Team claimed this was for conspiracy: Keith had been trying to fork the XFree86 project, working inside the project, while trying to attract core developers to a new X Server project of his own making. Packard denied this had been his aim.

Disbanding of the Core Team

XFree86 used to have a Core Team which was made up of experienced developers, selected for their merits. Due to limited innovation capacity the XFree86 Core Team voted to disband itself, on December 30, 2003, effective the following day.

Licensing controversy

XFree86 4.4 was released in February 2004 with a change to the license: the addition of an advertising clause, similar to that in the old version of the BSD license. Many projects relying on X found the new license unacceptable [9] (http://yro.slashdot.org/article.pl?sid=04/02/18/131223), particularly as it was held to be incompatible with the GNU General Public License [10] (http://www.dwheeler.com/essays/gpl-compatible.html#xfree86). Some projects, such as OpenBSD, forked XFree86 from version 4.4 RC2, the last version under the old license. (OpenBSD later adopted the X.Org Server [11] (http://marc.theaimsgroup.com/?l=openbsd-tech&m=109945283014871&w=2).)

Forks of XFree86

Xouvert

An experimental branch of the XFree86 server code, Xouvert, was announced in late 2003, but showed no activity after early 2004.

The XOrg Foundation Open Source Public Implementation of X11

The X.Org Server is the official reference implementation of X11, produced by X.Org. The first version, X11R6.7.0, was a fork from XFree86 version 4.4 RC2, with X11R6.6 changes merged in. Version X11R6.8 added many new extensions, drivers and fixes. It is not encumbered by the XFree86 license changes. It is hosted by and works closely with freedesktop.org.

Most of the open-source Unix-like operating systems have adopted the Xorg Server in place of XFree86, and most of the XFree86 developers moved to Xorg [12] (http://www.dwheeler.com/essays/gpl-compatible.html#xfree86).

Release history

Version Release date Most important changes
X386 1.1 1990? First version by Thomas Roell, ported from X11R4.
X386 1.2 August 29, 1991 Included with X11R5.
X386 1.2e 0.0 May 7, 1992 First pre-XFree86 code by eventual team members.
XFree86 1.0m September 2, 1992 First version named "XFree86".
XFree86 2.0 October 1993
XFree86 2.1 March 11, 1994
XFree86 2.1.1 May 4, 1994 Last version based on X11R5.
XFree86 3.0 August 26, 1994 Release for X11R6.
XFree86 3.1 September 29, 1994
XFree86 3.2 October 26, 1996
XFree86 3.2.1 1996
XFree86 3.3
XFree86 3.3.1
XFree86 3.3.2
XFree86 3.3.3
XFree86 3.3.3.1
XFree86 3.3.4
XFree86 3.3.5
XFree86 3.3.6 December 31, 1999 Last 3.x version.
XFree86 4.0 March 8, 2000 Complete new architecture. X11R6.4 included.
XFree86 4.0.1 June 30, 2000
XFree86 4.0.2 December 18, 2000
XFree86 4.0.3 March 16, 2001
XFree86 4.0.4 2001
XFree86 4.1.0 June 2, 2001
XFree86 4.2.0 January 18, 2002
XFree86 4.2.1 September 3, 2002
XFree86 4.3.0 February 26, 2003
XFree86 4.4.0 February 29, 2004 First version under XFree86 License 1.1.
XFree86 4.5.0 March 16, 2005

Installation and Configuration

  • Usually, it is auto. install in linux system, such as debian
  • after installed, type "XFree86 -configure" in command prompt, it will scan your hardware and auto. generate a configuration file matching to your hardware.
    • however, FOR PS/2 MOUSE, i usually need to modify this config file mannual from ""Device" "/dev/mouse"" to ""Device" "/dev/psaux""

Chungyan5 07:20, 16 Jun 2005 (UTC)

See also

References

External links

es:XFree86 fr:XFree86 it:XFree86 ja:XFree86 pl:XFree86 sv:XFree86

Navigation

Academic Kids Menu

  • Art and Cultures
    • Art (http://www.academickids.com/encyclopedia/index.php/Art)
    • Architecture (http://www.academickids.com/encyclopedia/index.php/Architecture)
    • Cultures (http://www.academickids.com/encyclopedia/index.php/Cultures)
    • Music (http://www.academickids.com/encyclopedia/index.php/Music)
    • Musical Instruments (http://academickids.com/encyclopedia/index.php/List_of_musical_instruments)
  • Biographies (http://www.academickids.com/encyclopedia/index.php/Biographies)
  • Clipart (http://www.academickids.com/encyclopedia/index.php/Clipart)
  • Geography (http://www.academickids.com/encyclopedia/index.php/Geography)
    • Countries of the World (http://www.academickids.com/encyclopedia/index.php/Countries)
    • Maps (http://www.academickids.com/encyclopedia/index.php/Maps)
    • Flags (http://www.academickids.com/encyclopedia/index.php/Flags)
    • Continents (http://www.academickids.com/encyclopedia/index.php/Continents)
  • History (http://www.academickids.com/encyclopedia/index.php/History)
    • Ancient Civilizations (http://www.academickids.com/encyclopedia/index.php/Ancient_Civilizations)
    • Industrial Revolution (http://www.academickids.com/encyclopedia/index.php/Industrial_Revolution)
    • Middle Ages (http://www.academickids.com/encyclopedia/index.php/Middle_Ages)
    • Prehistory (http://www.academickids.com/encyclopedia/index.php/Prehistory)
    • Renaissance (http://www.academickids.com/encyclopedia/index.php/Renaissance)
    • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
    • United States (http://www.academickids.com/encyclopedia/index.php/United_States)
    • Wars (http://www.academickids.com/encyclopedia/index.php/Wars)
    • World History (http://www.academickids.com/encyclopedia/index.php/History_of_the_world)
  • Human Body (http://www.academickids.com/encyclopedia/index.php/Human_Body)
  • Mathematics (http://www.academickids.com/encyclopedia/index.php/Mathematics)
  • Reference (http://www.academickids.com/encyclopedia/index.php/Reference)
  • Science (http://www.academickids.com/encyclopedia/index.php/Science)
    • Animals (http://www.academickids.com/encyclopedia/index.php/Animals)
    • Aviation (http://www.academickids.com/encyclopedia/index.php/Aviation)
    • Dinosaurs (http://www.academickids.com/encyclopedia/index.php/Dinosaurs)
    • Earth (http://www.academickids.com/encyclopedia/index.php/Earth)
    • Inventions (http://www.academickids.com/encyclopedia/index.php/Inventions)
    • Physical Science (http://www.academickids.com/encyclopedia/index.php/Physical_Science)
    • Plants (http://www.academickids.com/encyclopedia/index.php/Plants)
    • Scientists (http://www.academickids.com/encyclopedia/index.php/Scientists)
  • Social Studies (http://www.academickids.com/encyclopedia/index.php/Social_Studies)
    • Anthropology (http://www.academickids.com/encyclopedia/index.php/Anthropology)
    • Economics (http://www.academickids.com/encyclopedia/index.php/Economics)
    • Government (http://www.academickids.com/encyclopedia/index.php/Government)
    • Religion (http://www.academickids.com/encyclopedia/index.php/Religion)
    • Holidays (http://www.academickids.com/encyclopedia/index.php/Holidays)
  • Space and Astronomy
    • Solar System (http://www.academickids.com/encyclopedia/index.php/Solar_System)
    • Planets (http://www.academickids.com/encyclopedia/index.php/Planets)
  • Sports (http://www.academickids.com/encyclopedia/index.php/Sports)
  • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
  • Weather (http://www.academickids.com/encyclopedia/index.php/Weather)
  • US States (http://www.academickids.com/encyclopedia/index.php/US_States)

Information

  • Home Page (http://academickids.com/encyclopedia/index.php)
  • Contact Us (http://www.academickids.com/encyclopedia/index.php/Contactus)

  • Clip Art (http://classroomclipart.com)
Toolbox
Personal tools