X.Org Server

Implementations of the client-side X Window System protocol exist in the form of X11 libraries, which serve as helpful APIs for communicating with the X server.

[citation needed] The services with which the X.Org Foundation supports X Server include the packaging of the releases; certification (for a fee); evaluation of improvements to the code; developing the web site, and handling the distribution of monetary donations.

[7] Version 1.16.0 integrates support for systemd-based launching and management which improved boot performance and reliability.

[8] The Device Independent X (DIX) is the part of the X.Org Server that interacts with clients and implements software rendering.

This includes code tables, glyph rasterization and caching, XLFDs, and the core rendering API which draws graphics primitives.

For historical reasons the X.Org Server still contains graphics device drivers supporting some form of 2D rendering acceleration.

In the past, mode-setting was done by an X-server graphics device driver specific to some video controller hardware (e.g., a GPU).

While these can be recompiled as required, the development of the proprietary DDX 2D graphics drivers is greatly eased when the X.Org Server keeps a stable API/ABI across multiple of its versions.

The xf86-video-modesetting package, the Debian-package being called xserver-xorg-video-modesetting, was retired, and the generic modesetting DDX it contained was moved into the server package to become the KMS-enabled default DDX, supporting the vast majority of AMD, Intel and NVidia GPUs.

XAA is on by default, though acceleration of individual functions can be switched off as needed in the server configuration file (XF86Config or xorg.conf).

[24] Since its mainlining into version 1.16 of the X.Org Server, development on Glamor was continued and patches for the 1.17 release were published.

[25] There is a distinct and special DDX for instances of the X.Org Server which run on a guest system inside of a virtualized environment: xf86-video-qxl, a driver for the "QXL video device".

Due to limitation of the VT system in the Linux kernel and of the X core protocol (in particular, how X defines the relation between the root window and an output of the graphics card), multi-seat does not work out-of-the-box for the usual Linux distribution but necessitates a special configuration.

There are these methods to configure a multi-seat assembly: The utilized command-line options of the xorg-server are: Only the user on the first monitor has the use of vt consoles and can use Ctrl+Alt+Fx to select them.

The modern X.Org Foundation came into being in 2004 when the body that oversaw X standards and published the official reference implementation joined forces with former XFree86 developers.

In 2005, a great effort was put in the modularization of the X.Org server source code,[44] resulting in a dual release by the end of the year.

The new build system also brought the use of dlloader standard dynamic linker to load plugins and drivers, deprecating the old own method.

The Modularization project, which broke up X.Org from one giant tree into over 200 small ones, had the goal of making it possible to fix a bug in a single library or driver without having to download and build many megabytes of software & fonts that were not being changed.In the 7.1 release, the KDrive framework (a small implementation of X written by Keith Packard, which was not based on XFree86 that X.Org developers used as a testing ground for new ideas, such as EXA) was integrated into the main codebase of X.Org server.

In 2013, the initial versions of DRI3 and Present extensions were written and coded by Keith Packard to provide a faster and tearing-free 2D rendering.

xdpyinfo , a command to show X.Org Server information
XAA is an API between the Device-Independent-X (DIX) and the Device-Dependent-X (DDX), a 2D graphics driver, here e.g. with the Linux kernel .
A display server, such as X.Org Server, implements the windowing system and serves its clients.