Xgl
   HOME

TheInfoList



OR:

Xgl is an obsolete display server implementation supporting the
X Window System The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X originated as part of Project Athena at Massachusetts Institute of Technology (MIT) in 1984. The X protocol has been at ...
protocol designed to take advantage of modern graphics cards via their
OpenGL OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
drivers, layered on top of
OpenGL OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
. It supports
hardware acceleration Hardware acceleration is the use of computer hardware designed to perform specific functions more efficiently when compared to software running on a general-purpose central processing unit (CPU). Any transformation of data that can be calcula ...
of all X, OpenGL and
XVideo The X video extension, often abbreviated as XVideo or Xv, is a video output mechanism for the X Window System. The protocol was designed by David Carver; the specification for version 2 of the protocol was written in July 1991. It is mainly use ...
applications and graphical effects by a
compositing window manager A compositing manager, or compositor, is software that provides applications with an off-screen data buffer, buffer for each window, then Compositing, composites these window buffers into an image representing the screen and writes the result into ...
such as
Compiz Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
or
Beryl Beryl ( ) is a mineral composed of beryllium aluminium Silicate minerals#Cyclosilicates, silicate with the chemical formula Be3Al2(SiO3)6. Well-known varieties of beryl include emerald and Aquamarine (gem), aquamarine. Naturally occurring Hex ...
. The project was started by
David Reveman Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
of
Novell Novell, Inc. () was an American software and services company headquartered in Provo, Utah, that existed from 1980 until 2014. Its most significant product was the multi-platform network operating system known as NetWare. Novell technolog ...
and first released on January 2, 2006. It was removed from the X.org server in favor of
AIGLX Accelerated Indirect GLX ("AIGLX") is an Open-source software, open source project founded by Red Hat and the Fedora (operating system), Fedora community, led by Kristian Høgsberg, to allow accelerated indirect GLX rendering capabilities to t ...
on June 12, 2008.


History

Development of Xgl started in 2004. Until its release in 2006, it was developed in the open on public mailing lists, though during the last few months, development of Xgl was private. On that day, the source to Xgl was re-opened to the public, and included in
freedesktop.org freedesktop.org (fd.o), formerly X Desktop Group (XDG), is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operatin ...
, along with major restructuring to allow a wider range of supported display drivers. X server backends used by Xgl include Xglx and Xegl. In February 2006, the server gained wide publicity after a public display where the
Novell Novell, Inc. () was an American software and services company headquartered in Provo, Utah, that existed from 1980 until 2014. Its most significant product was the multi-platform network operating system known as NetWare. Novell technolog ...
desktop team demonstrated a desktop using Xgl with several visual effects such as
translucent In the field of optics, transparency (also called pellucidity or diaphaneity) is the physical property of allowing light to pass through the material without appreciable light scattering by particles, scattering of light. On a macroscopic scale ...
window A window is an opening in a wall, door, roof, or vehicle that allows the exchange of light and may also allow the passage of sound and sometimes air. Modern windows are usually glazed or covered in some other transparent or translucent ma ...
s and a rotating 3D desktop. The effects had first been implemented in a composite manager called glxcompmgr (not to be confused with xcompmgr), now deprecated because several effects could not be adequately implemented without tighter interaction between the window manager and the composite manager. As a solution, David Reveman developed
Compiz Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
, the first proper OpenGL
compositing window manager A compositing manager, or compositor, is software that provides applications with an off-screen data buffer, buffer for each window, then Compositing, composites these window buffers into an image representing the screen and writes the result into ...
for the X Window System. Later, in September 2006, the
Beryl Beryl ( ) is a mineral composed of beryllium aluminium Silicate minerals#Cyclosilicates, silicate with the chemical formula Be3Al2(SiO3)6. Well-known varieties of beryl include emerald and Aquamarine (gem), aquamarine. Naturally occurring Hex ...
compositing window manager A compositing manager, or compositor, is software that provides applications with an off-screen data buffer, buffer for each window, then Compositing, composites these window buffers into an image representing the screen and writes the result into ...
was released as a fork of the original Compiz. Compiz and Beryl have merged back in April 2007, which resulted in the development of
Compiz Fusion Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
.


Backends

OpenGL does not specify how to initialize a display and manipulate drawing contexts. Instead, these operations are handled by an API specific to the native windowing system. So far, there are two different backend approaches to solving this initialization problem. Most likely, the majority of each backend will contain the same code, and the differences will primarily be in the initialization portions of the servers.


Xglx

''Xglx'' was the first backend implemented for this architecture. It requires an already existing X server to run on top of, and uses
GLX GLX (initialism for "OpenGL Extension to the X Window System") is an extension to the X Window System core protocol providing an interface between OpenGL and the X Window System as well as extensions to OpenGL itself. It enables programs wishin ...
to create an OpenGL window which Xgl then uses, similar to Xnest. This mode is only intended to be used for development in the future, as it is redundant to require an X server to run Xgl on top of. At XDevConf 2006 (the 2006 X development conference),
NVIDIA Nvidia Corporation ( ) is an American multinational corporation and technology company headquartered in Santa Clara, California, and incorporated in Delaware. Founded in 1993 by Jensen Huang (president and CEO), Chris Malachowsky, and Curti ...
made a presentation arguing that this is the wrong direction to take because the layered server abstracts features of the cards away. This makes driver specific capabilities like support for 3D glasses and dual monitor support much more difficult. However, delegating initialization to an existing X server allows the developers to immediately focus on server functionality rather than dedicating substantial time to specifics of interfacing with numerous video hardware. At the moment, Xglx does not officially support multiple monitors, although it has been achieved on Ubuntu Dapper / ATI / NVIDIA (twinview).


Xegl

''Xegl'' was a long-term goal of X server development. It shares much of the drawing code with the Xglx server, but the initialization of the OpenGL drawable and context management is handled by the EGL API developed by Khronos (EGL is a window system-independent equivalent to the GLX and WGL APIs, which respectively enable OpenGL support in X and Microsoft Windows). The current implementation uses Mesa-solo to provide OpenGL rendering directly to the
Linux framebuffer The framebuffer subsystem in the Linux kernel fbdev is used to show graphics on a computer monitor, typically on the system console. It was designed as a hardware-independent API to give user space software access to the framebuffer (the par ...
or DRI to the graphics hardware. , Xegl can only be run using
Radeon R200 The R200 is the second generation of GPUs used in Radeon graphics cards and developed by ATI Technologies. This GPU features 3D computer graphics, 3D acceleration based upon Microsoft Direct3D 8.1 and OpenGL, OpenGL 1.3, a major improvement ...
graphics hardware and development is currently stalled. It is likely that it will remain so until the Xglx server has proven itself and the closed source drivers add support for the EGL API, when it should be a transparent replacement for the nested Xglx server.


Rationale

Structuring all rendering on top of OpenGL could potentially simplify video driver development. It removes the artificial separation of 2D and 3D
acceleration In mechanics, acceleration is the Rate (mathematics), rate of change of the velocity of an object with respect to time. Acceleration is one of several components of kinematics, the study of motion. Accelerations are Euclidean vector, vector ...
. This is advantageous as 2D operations are frequently unaccelerated (which is counterintuitive, since 2D is a subset of 3D). It also removes all driver-dependent code from the X server itself, and allows for accelerated
Composite Composite or compositing may refer to: Materials * Composite material, a material that is made from several different substances ** Metal matrix composite, composed of metal and other parts ** Cermet, a composite of ceramic and metallic material ...
and Render operations independent of the graphics driver.


Competitors

Hardware acceleration of 2D drawing operations has been a common feature of many window systems (including X11) for many years. The novelty of Xgl and similar systems is the use of APIs specifically developed for 3D rendering for accelerating 2D desktop operations. Prior to the adoption of anti-aliased drawing by X11, the use of 3D rendering APIs for 2D desktop rendering was undesirable because such APIs did not make the pixel accurate rendering guarantees that are part of the original X11 protocol definition. Hardware-accelerated OpenGL window and desktop rendering, limited to using OpenGL for texture composition, has been in use in Mac OS X, in a technology called
Quartz Extreme Quartz Compositor is the display server (and at the same time the compositing window manager) in macOS. It is responsible for presenting and maintaining rasterized, rendered graphics from the rest of the Core Graphics framework and other ren ...
, since Mac OS X v10.2. Quartz 2D Extreme is an enhancement of this feature and more directly comparable to Xgl. Like Xgl, Quartz 2D Extreme brings OpenGL acceleration to all 2D drawing operations (not just desktop compositing) and ships with Mac OS X v10.4, but is disabled by default pending a formal declaration of production-readiness. Core Animation is the extension of this effort for Leopard (
Mac OS X v10.5 Mac OS X Leopard (version 10.5) is the sixth major release of macOS, Apple's desktop and server operating system for Macintosh computers. Leopard was released on October 26, 2007, as the successor of Mac OS X Tiger, and is available in two ed ...
). Several desktop interfaces based on 3D APIs have been developed, more recently
OpenCroquet The Croquet Project is a software project that was intended to promote the continued development of the Croquet open-source software development kit to create and deliver collaborative multi-user online applications. Croquet is implemented in Sq ...
and Sun Microsystems's
Project Looking Glass Project Looking Glass is a now inactive free software project under the GNU General Public License, GPL to create an innovative Graphical user interface#Three-dimensional user interfaces, 3D desktop environment for Linux, Solaris (operating sy ...
br>
these take advantage of 3D acceleration for software built within their own framework, but do not appear to accelerate existing 2D desktop applications rendered within their environment (often via mechanisms like VNC).
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
developed a similar technology based on
DirectX Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct" ...
, named the
DWM dwm is a minimalist dynamic window manager for the X Window System developed by Suckless that has influenced the development of several other X window managers, including xmonad and awesome. It is externally similar to wmii, but interna ...
, as part of its
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, released five years earlier, which was then the longest time span between successive releases of Microsoft W ...
operating system. This technology was first shown publicly at Microsoft's October 2003 PDC.


Availability

, the Xgl
X Server X server may refer to: * a display server for the X Window System * X.Org Server, the X.Org Foundation's display server for the X Window System * HPE Integrity Superdome X Server, a line of HPE Integrity Servers HPE Integrity Servers is a ser ...
(and related components including the Compiz compositing manager and associated graphical config tools) ships as a non-default in one major Linux distribution,
SUSE Suse may refer to: * Fort Suse, a military installation in the Kurdistan region of Iraq * Suse Heinze (1920–2018), German diver See also * SUSE (disambiguation) * Sus (disambiguation) * Susa, an ancient capital of Elam and the Achaemenid Emp ...
10.1, and is included in
Frugalware Linux Frugalware Linux is a general-purpose Linux distribution designed for intermediate users who are familiar with command-line operations. Early versions were based on Slackware, but it later became an independently developed distribution. Frugalware ...
or
SUSE Linux Enterprise Desktop SUSE Linux Enterprise (SLE) is a Linux-based operating system developed by SUSE S.A., SUSE. It is available in two editions, suffixed with Server (SLES) for server (computing), servers and mainframe computer, mainframes, and Desktop (SLED) for wo ...
10. Xgl can be set up fairly easily for
Ubuntu Ubuntu ( ) is a Linux distribution based on Debian and composed primarily of free and open-source software. Developed by the British company Canonical (company), Canonical and a community of contributors under a Meritocracy, meritocratic gover ...
6.06 LTS (Dapper Drake) and 6.10 (Edgy Eft) and for
Freespire Freespire is a community-driven Linux distribution currently owned by PC/Open Systems LLC. It is derived from Linspire and is composed mostly of Free software, free, Open-source software, open source software, while providing users the choice of ...
with binary packages from unofficial repositories. Xgl is also available as an overlaid package in
Gentoo Linux Gentoo Linux (pronounced ) is a Linux distribution built using the Portage package management system. Unlike a binary software distribution, the source code is compiled locally according to the user's preferences and is often optimized for ...
, and as a PKGBUILD for
Arch Linux Arch Linux () is an Open-source software, open source, rolling release Linux distribution. Arch Linux is kept up-to-date by regularly updating the individual pieces of software that it comprises. Arch Linux is intentionally minimal, and is meant ...
.
Mandriva Linux Mandriva Linux, a fusion of the French distribution Mandrake Linux and the Brazilian distribution Conectiva Linux, is a discontinued Linux distribution developed by Mandriva S.A. Each release lifetime was 18 months for base updates (Linux, syste ...
2007 includes official packages to run
Compiz Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
, using Xgl and
AIGLX Accelerated Indirect GLX ("AIGLX") is an Open-source software, open source project founded by Red Hat and the Fedora (operating system), Fedora community, led by Kristian Høgsberg, to allow accelerated indirect GLX rendering capabilities to t ...
. Mandriva provides drak3d, a tool to configure a 3D Desktop in two clicks.
Ubuntu Ubuntu ( ) is a Linux distribution based on Debian and composed primarily of free and open-source software. Developed by the British company Canonical (company), Canonical and a community of contributors under a Meritocracy, meritocratic gover ...
6.10 "Edgy Eft" and later use
AIGLX Accelerated Indirect GLX ("AIGLX") is an Open-source software, open source project founded by Red Hat and the Fedora (operating system), Fedora community, led by Kristian Høgsberg, to allow accelerated indirect GLX rendering capabilities to t ...
, not Xgl, by default. Xgl was removed from X11R7.5 in 2009 due to it being an unmaintained server variant.


See also

*
X Window System The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X originated as part of Project Athena at Massachusetts Institute of Technology (MIT) in 1984. The X protocol has been at ...
*
AIGLX Accelerated Indirect GLX ("AIGLX") is an Open-source software, open source project founded by Red Hat and the Fedora (operating system), Fedora community, led by Kristian Høgsberg, to allow accelerated indirect GLX rendering capabilities to t ...
*
VirtualGL VirtualGL (VGL) is an open-source software package that redirects the 3D rendering commands from Unix and Linux OpenGL applications to 3D accelerator hardware in a dedicated server and sends the rendered output to a ( thin) client located elsewhe ...
*
OpenGL OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
*
Compiz Compiz () is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loa ...
*
Beryl Beryl ( ) is a mineral composed of beryllium aluminium Silicate minerals#Cyclosilicates, silicate with the chemical formula Be3Al2(SiO3)6. Well-known varieties of beryl include emerald and Aquamarine (gem), aquamarine. Naturally occurring Hex ...


References


External links


Xegl

EGL specifications


— overview of various approaches to replace the current X server
the video demonstrating Compiz on Xgl
{{XWinSys Freedesktop.org OpenGL X servers