X.Org server

from Wikipedia, the free encyclopedia
X.Org server

X.Org Logo.svg
Basic data

developer X.Org Foundation
Publishing year April 6, 2004
Current  version 1.20.7
(January 13, 2020)
operating system Cross-platform Unix / BSD incl. OS X , Linux , Cygwin  (Windows)
programming language C.
category Display server
License various free licenses
German speaking No
www.x.org

The X.Org server is the display server of the X Window System (X11 for short) of the X.Org Foundation . This took over the further development after the spin-off from XFree86 and has since created the official X11 reference implementation . Immediately after the spin-off, the structure was converted into a modular form, the components of X.Org-X11 are therefore broken down into individual, more or less independent individual parts, of which the X.Org server is the main component. However, the display server depends on other modules such as input device drivers and graphics drivers. X.Org-X11 is published in its entirety as free software including source code ( open source ).

The X.Org Foundation administers the standards for the reference implementation of this X Window System.

history

After disputes broke out within the XFree86 project about a new license for the upcoming release of version XFree86-4.4 around 2003 , many developers left the project to further develop the server based on the old license. Since the new license was also rejected by many Linux distributions as being incompatible with the GPL , the developers, together with employees from various distributions and the old X.Org organization, formed the new X.Org foundation to manage the X server and also to further develop and manage the X standards. The work was closely linked to that of the freedesktop.org project.

Versions

The pre-release (XFree86-4.4RC2) of XFree86, which was the last release based entirely on the old license, served as the basis for X.Org. On this basis, X.Org published a version on April 7, 2004 with its first own server under the name X11R6.7.0. This contained less new in-house developments than last patches, as it was already a release candidate . The second version X11R6.8.0 was published on September 8, 2004 and contained significantly more innovations. The newly added Damage function enables X clients to recognize which parts of windows have been changed. Thus, the clients only redraw parts that have changed, which is especially important for the network transfer of graphical outputs. Likewise were Composite Extensions experimentally implemented, which enable true transparency and shadow effects of the window.

Versions 6.9 and 7.0 are identical in terms of functionality, but the structure of the 7 series is modular. The aim of this modularization is a code that is easier to maintain and change. Since the release of version 7.1, the 6 series has not been further developed, but only maintained with security updates.

With the introduction of modularization, many components also got their own version numbers. This should make it possible to use certain modules such as B. publish the server kernel itself in stable versions independently of the overall package (known as katamari ).

Version 7.3 enabled output devices to be hotplugged for the first time , which brings significant improvements, especially for notebooks (e.g. for presentations).

A reduction in the speed of development has been observed since 2008.

In 2015 the X.Org server 1.18 and in 2016 the server 1.19 were released.

Server architecture

X.Org-Server is a display server that communicates with its clients via the X11 protocol . A window manager is also required.

As a display server, the X.Org server is the central component of the window system that handles both the interaction between hardware (screen, mouse and keyboard) and software as well as the interprocess communication within the window system.

The X.Org server communicates like most X Window systems with the operating system - kernel (usually a Linux - BSD - or another Unix kernel) to input and output devices to control. The graphics cards , which are addressed by X.Org directly by bypassing the kernel, are an exception (see also Direct Rendering Infrastructure ). In practice, X.Org often accesses keyboards and mice directly without paying enough attention to the work of the kernel with the corresponding devices.

X.Org has its own drivers for the vast majority of graphics cards from the last 15 years. For some cards (best known are those from Nvidia and ATI ) there are additional binary drivers from the manufacturers that replace the X.Org drivers. These proprietary drivers usually provide improved 3D support, but are not free software . It is also possible to let X.Org work on a framebuffer device, for which a graphics card driver of the kernel is used.

On a typical POSIX system, the X.Org configuration files are in the directory /etc/X11. Manual configuration is not recommended on modern distributions - this is no longer necessary, as the X.org X server offers automatic detection on modern hardware. Will or manual configuration must still be made, and so carried on older systems this about the file xorg.confthat u. a. Settings for the monitor, keyboard, mouse and graphics card used. For the less experienced user there are a number of (also graphical) front ends to facilitate the manual configuration of the X server. Earlier distributions also offered semi-automatic detection of the correct settings. Proprietary drivers, e.g. B. from Nvidia or AMD (formerly ATI ), usually bring their own graphic setup wizards (front ends) with them, which can configure the specific driver accordingly.

See also

  • Other projects of the X.Org Foundation , for example Xinerama
  • AIGLX - an extension of the X.Org server for hardware-accelerated graphic desktop effects, from version 7.1 part of the X.Org server
  • Xgl - another extension for hardware-accelerated graphic desktop effects
  • Xegl - completely new X server completely implemented in OpenGL with a modern driver concept
  • XCB - library to replace Xlib
  • Wayland (display server protocol)

Individual evidence

  1. Matt Turner: xorg-server 1.20.7 , freedesktop.org. January 13, 2020
  2. ^ The x Open Source Project on Open Hub: Languages ​​Page . (accessed on July 14, 2018).
  3. Module Versions In: freedesktop.org. Retrieved May 31, 2007.
  4. ^ Adam Jackson: Xorg releases and future planning. X developer conference 2007. In: wiki.x.org. (English).
  5. List of new features in version 7.3 , September 6, 2007
  6. ^ X.Org Server Development Continues Trending Lower , Phoronix, July 16, 2016
  7. X.Org Server 1.19 Officially Released With A Year's Worth Of Improvements , Phoronix, November 15, 2016
  8. Warren Block: Chapter 5. The X Window System. 5.4. Xorg Configuration. In: FreeBSD Handbook. The FreeBSD Documentation Project, accessed August 19, 2018 : “Do not create manual configuration files unless required. Unnecessary manual configuration can prevent proper operation. "
  9. xorg.conf. ( Wiki ) In: Gentoo.org Wiki. Gentoo Foundation, Inc., accessed on August 19, 2018 (English): "Manually creating xorg.conf should be seen as a last resort option. It is typically desirable to run the X server without any special configuration. "
  10. Xorg.1.html. Manpage . In: X.org X11R7.0. The X.Org Foundation, December 21, 2005, accessed on August 19, 2018 (English): "Starting with version 4.4, Xorg has a mechanism for automatically generating a built-in configuration at run-time when no xorg.conf file is present. "

Web links

Commons : X.Org server  - collection of images, videos and audio files