Xephyr

Last updated
Xephyr
Xephyr-IceWM-Fluxbox-LinuxMint.png
Three recursive levels of nested Xephyr sessions, running on Linux Mint
Original author(s) Matthew Allum
Developer(s) freedesktop.org
Initial releaseJanuary 1, 2007;13 years ago (2007-01-01)
Stable release 1.19.1 (January 11, 2017;3 years ago (2017-01-11) [1] ) [±]
Written in C
Type Display server
License MIT License
Website freedesktop.org/wiki/Software/Xephyr/

Xephyr is display server software implementing the X11 display server protocol based on KDrive which targets a window on a host X Server as its framebuffer. It is written by Matthew Allum. Xephyr is an X-on-X implementation and runs on X.Org Server and can work with Glamor. [2] Future versions could make use of libinput.[ citation needed ] Replacing Xephyr with the xf86-video-dummy and xf86-video-nested drivers in the normal X.Org server is being considered as part of X11R7.8. [3]

Contents

Features

Unlike the similar Xnest, Xephyr supports modern X extensions (even if host server doesn't) such as composite, damage, randr, etc. It uses SHM images and shadow framebuffer updates to provide good performance. It also has a visual debugging mode for observing screen updates.

Limitations

Xorg's version of Xephyr uses only software rendering for OpenGL, but Feng Haitao has developed a forked version of Xephyr which can do hardware-accelerated rendering if the underlying X server has the capability.

See also

Related Research Articles

X Window System windowing system for bitmap displays on UNIX-like systems

The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems.

XFree86 implementation of the X Window System

XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and was available for many other operating systems and platforms. It is free and open source software under the XFree86 License version 1.1. It was developed by the XFree86 Project, Inc. The lead developer was David Dawes. The last released version was 4.8.0, released December 2008. The last XFree86 CVS commit was made on May 18, 2009; the project was confirmed dormant in December 2011.

Linux framebuffer

The Linux framebuffer (fbdev) is a graphic hardware-independent abstraction layer to show graphics on a computer monitor, typically on the system console. It allows direct access to the framebuffer using only the Linux kernel's own basic facilities and its device file system interface. It does not rely on user space software like SVGALib.

DirectFB is a software library with a small memory footprint that provides graphics acceleration, input device handling and abstraction layer, and integrated windowing system with support for translucent windows and multiple display layers on top of the Linux framebuffer without requiring any kernel modifications. DirectFB is free and open-source software subject to the terms of the GNU Lesser General Public License (LGPL).

X.Org Server is the free and open-source implementation of the display server for the X Window System stewarded by the X.Org Foundation.

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 used today to resize video content in the video controller hardware in order to enlarge a given video or to watch it in full screen mode. Without XVideo, X would have to do this scaling on the main CPU. That requires a considerable amount of processing power, which could slow down or degrade the video stream; video controllers are specifically designed for this kind of computation, so can do it much more cheaply. Similarly, the X video extension can have the video controller perform color space conversions, and change the contrast, brightness, and hue of a displayed video stream.

Xinerama

Xinerama is an extension to the X Window System that enables X applications and window managers to use two or more physical displays as one large virtual display.

Direct Rendering Infrastructure software framework

The Direct Rendering Infrastructure (DRI) is a framework for allowing direct access to graphics hardware under the X Window System in a safe, efficient way. The main use of DRI is to provide hardware acceleration for the Mesa implementation of OpenGL. DRI has also been adapted to provide OpenGL acceleration on a framebuffer console without a display server running.

Xgl display server

Xgl is an obsolete display server implementation supporting the X Window System protocol designed to take advantage of modern graphics cards via their OpenGL drivers, layered on top of OpenGL. It supports hardware acceleration of all X, OpenGL and XVideo applications and graphical effects by a compositing window manager such as Compiz or Beryl. The project was started by David Reveman of Novell and first released on January 2, 2006. It was removed from the X.org server in favor of AIGLX on June 12, 2008.

Free and open-source graphics device driver

A free and open-source graphics device driver is a software stack which controls computer-graphics hardware and supports graphics-rendering application programming interfaces (APIs) and is released under a free and open-source software license. Graphics device drivers are written for specific hardware to work within a specific operating system kernel and to support a range of APIs used by applications to access the graphics hardware. They may also control output to the display if the display driver is part of the graphics hardware. Most free and open-source graphics device drivers are developed by the Mesa project. The driver is made up of a compiler, a rendering API, and software which manages access to the graphics hardware.

Xsun is an X Window System (X11) display server implementation included with Solaris, developed by Sun Microsystems. It replaced the older Xnews server, which supported the display of not only X11 applications, but also NeWS and SunView programs. Xsun discontinued support for these legacy environments, and added support for Display PostScript.

Xvfb or X virtual framebuffer is a display server implementing the X11 display server protocol. In contrast to other display servers, Xvfb performs all graphical operations in virtual memory without showing any screen output. From the point of view of the client, it acts exactly like any other X display server, serving requests and sending events and errors as appropriate. However, no output is shown. This virtual server does not require the computer it is running on to have any kind of graphics adapter, a screen or any input device. Only a network layer is necessary.

Multiseat configuration

A multiseat, multi-station or multiterminal configuration is a single computer which supports multiple independent local users at the same time.

nouveau (software) Open source software driver for Nvidia GPU

nouveau is a free and open-source graphics device driver for Nvidia video cards and the Tegra family of SoCs written by independent software engineers, with minor help from Nvidia employees.

Wayland (display server protocol) computer display server protocol

Wayland is a communication protocol that specifies the communication between a display server and its clients, as well as a C library implementation of that protocol. A display server using the Wayland protocol is called a Wayland compositor, because it additionally performs the task of a compositing window manager.

EGL (API) interface between Khronos rendering APIs and window system

EGL is an interface between Khronos rendering APIs and the underlying native platform windowing system. EGL handles graphics context management, surface/buffer binding, rendering synchronization, and enables "high-performance, accelerated, mixed-mode 2D and 3D rendering using other Khronos APIs." EGL is managed by the non-profit technology consortium Khronos Group.

In computing, SPICE is a remote-display system built for virtual environments which allows users to view a computing "desktop" environment – not only on its computer-server machine, but also from anywhere on the Internet – using a wide variety of machine architectures.

Linux console Console of the Linux kernel.

The Linux console is a system console internal to the Linux kernel. The Linux console provides a way for the kernel and other processes to send text output to the user, and to receive text input from the user. The user typically enters text with a computer keyboard and reads the output text on a computer monitor. The Linux kernel supports virtual consoles – consoles that are logically separate, but which access the same physical keyboard and display. The Linux console are implemented by the VT subsystem of the Linux kernel, and do not rely on any user space software. This is in contrast to a terminal emulator, which is a user space process that emulates a terminal, and is typically used in a graphical display environment.

Nvidia Optimus is a computer GPU switching technology created by Nvidia which, depending on the resource load generated by client software applications, will seamlessly switch between two graphics adapters within a computer system in order to provide either maximum performance or minimum power draw from the system's graphics rendering hardware.

Display server program to coordinate the input and output of display clients

A display server or window server is a program whose primary task is to coordinate the input and output of its clients to and from the rest of the operating system, the hardware, and each other. The display server communicates with its clients over the display server protocol, a communications protocol, which can be network-transparent or simply network-capable.

References

  1. https://lists.x.org/archives/xorg-announce/2017-January/002754.html
  2. "ANNOUNCE: xorg-server 1.16.0". freedesktop.org. 2014-07-17.
  3. Larabel, Michael (June 16, 2012). "X.Org 7.8 Will Not Come For A While". Phoronix. Retrieved February 11, 2015.