Xinerama

Last updated
Four Head Xinerama Xinerama 4way.jpg
Four Head Xinerama
Modern Xinerama example Xinerama modern 4 monitor setup.jpg
Modern Xinerama example

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.

Contents

Developed under the name PanoramiX by Madeline T. Asmus of the Digital Equipment Corporation's Unix X Server Engineering Group, the software was contributed to The Open Group for X11 Release 6.4 (X11R6.4) and renamed Xinerama. It was then incorporated into the XFree86 4.0 release in 1998 and the Solaris 7 11/99 release. According to X Server project lead Rob Lembree, the name was inspired by the Cinerama widescreen theatre process. "We were frustrated by having big Alpha machines with multiple displays, and being unable to move applications from one to another. It was developed as much out of frustration as out of competitive advantage." Xinerama advantages include the ability to only maximize windows to the dimensions of the active physical display, and to allow new pop-up windows on the active physical display.

General theory of operation

When Xinerama is enabled in the X server, multiple X screens can be unified into a single workspace. This unified work area allows windows to be transferred across X screens.

XINERAMA extension

The Xinerama extension provides clients with information about the layout of viewports within the unified workspace. Its information regarding offset and size information allows clients to make intelligent decisions about window placement, window maximization and other user interaction events.

Use in non-XINERAMA environments

The X server's client/server architecture allows the server to expose Xinerama information to the client regardless of whether the Xinerama infrastructure is active. RandR and NVidia's twinview utilize this feature to provide window managers and clients with information about the output layout relative to the framebuffer.

Known problems

Common color depth

Xinerama requires that all of the physical screens have the same bit depth. For example, an 8-bit screen cannot be combined with a 16-bit screen.

Hardware rendering

In some[ which? ] implementations, OpenGL direct-rendering only works on one screen. Windows that should show 3D graphics on other screens tend to appear black, a problem most commonly seen with 3D screen savers. The Solaris SPARC OpenGL implementation and ATI and nVidia proprietary Linux drivers support hardware-accelerated rendering of all screens in Xinerama mode.

Static configuration

Physical screens cannot be added or removed dynamically, and there is no way to change the resolution of a screen. This is particularly difficult for mobile computer users, who may use an external physical display in addition to the computer's built-in screen, but only at certain locations. It is recommended that RandR or ATI's or nVidia's single GPU method be used in these cases. Xinerama's lack of support for adding or removing screens causes several problems:

These problems are related to Xinerama's implementation rather than its design, and can be corrected with further development.

Window manager support

xmonad's xinerama support: tiling on three screens simultaneously. Xmonad-screen-triplehead-dons.png
xmonad's xinerama support: tiling on three screens simultaneously.

Some [1] window managers and desktop environments have limited awareness of the separate physical screens in Xinerama, so that the desktop is simply stretched over the physical screens instead of arranged as a single large desktop. The window manager may place a new window on an unexpected screen, which can be confusing and annoying. Xinerama nevertheless offers the advantage that windows can be moved between screens.

Dead space

The physical displays do not need to be the same resolution, and the virtual display area is not necessarily rectangular if the component physical displays are not the same size. Some window managers assume a rectangular display area, and enforce this by creating excess "dead space" at the edges of a display. The window manager needs awareness of Xinerama to avoid placing new windows in this dead space.

See also

Resource

Asmus, Madeline T. (December 1995) "The PanoramiX Extension" THE X RESOURCE 16: A Practical Journal of the X Window System. pp. 59–73 ISBN   1-56592-166-6.

Notes

  1. fvwm (30 May 2003). "FVWM - Man page - fvwm2". Official FVWM Home Page. fvwm. Archived from the original on March 14, 2012. Retrieved 29 May 2012.

Related Research Articles

<span class="mw-page-title-main">X Window System</span> 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.

<span class="mw-page-title-main">X window manager</span> Type of window manager

An X window manager is a window manager that runs on top of the X Window System, a windowing system mainly used on Unix-like systems.

<span class="mw-page-title-main">Windowing system</span> Software that manages separately different parts of display screens

In computing, a windowing system is a software suite that manages separately different parts of display screens. It is a type of graphical user interface (GUI) which implements the WIMP paradigm for a user interface.

<span class="mw-page-title-main">Virtual Network Computing</span> Graphical desktop-sharing system

Virtual Network Computing (VNC) is a graphical desktop-sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse input from one computer to another, relaying the graphical-screen updates, over a network.

<span class="mw-page-title-main">XQuartz</span> Version of the X.Org X server for macOS

XQuartz is an open-source version of the X.Org X server, a display server for the X Window System that runs on macOS. It formally replaced Apple's internal X11 app. The name "XQuartz" derives from Quartz, part of the macOS Core Graphics framework, to which XQuartz connects these applications. XQuartz allows cross-platform applications using X11 for the GUI to run on macOS, many of which are not specifically designed for macOS. This includes numerous scientific and academic software projects.

<span class="mw-page-title-main">FVWM</span>

The F Virtual Window Manager (FVWM) is a virtual window manager for the X Window System. Originally a twm derivative, FVWM has evolved into a powerful and highly configurable environment for Unix-like systems.

X.Org Server is the free and open-source implementation of the X Window System (X11) display server 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.

In computing, the Inter-Client Communication Conventions Manual is a standard protocol for the X Window System. It specifies conventions for clients of a common X server about selections and cut buffers, communication with the window manager and session manager, manipulation of shared resources, and color characterization.

<span class="mw-page-title-main">Direct Rendering Infrastructure</span> Framework

The Direct Rendering Infrastructure (DRI) is the framework comprising the modern Linux graphics stack which allows unprivileged user-space programs to issue commands to graphics hardware without conflicting with other programs. 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.

Workspace is a term used in various branches of engineering and economic development.

In computing, the X Window System is a network-transparent windowing system for bitmap displays. This article details the protocols and technical structure of X11.

<span class="mw-page-title-main">X display manager</span>

In the X Window System, an X display manager is a graphical login manager which starts a login session on an X server from the same or another computer.

<span class="mw-page-title-main">Sun Ray</span> Series of thin client computer

The Sun Ray was a stateless thin client computer aimed at corporate environments, originally introduced by Sun Microsystems in September 1999 and discontinued by Oracle Corporation in 2014. It featured a smart card reader and several models featured an integrated flat panel display.

<span class="mw-page-title-main">Virtual desktop</span> User interfaces describe ways in which virtual space of a computers desktop is expanded

In computing, a virtual desktop is a term used with respect to user interfaces, usually within the WIMP paradigm, to describe ways in which the virtual space of a computer's desktop environment is expanded beyond the physical limits of the screen's display area through the use of software. This compensates limits of the desktop area and is helpful in reducing clutter of running graphical applications.

Multiplicity is a computer program that enables one keyboard and mouse to access two or more client computers from a host computer. It was developed for Stardock as part of their ThinkDesk subscription service, but is available separately.

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.

<span class="mw-page-title-main">Tiling window manager</span> Window manager with non-overlapping frames

In computing, a tiling window manager is a window manager with an organization of the screen into mutually non-overlapping frames, as opposed to the more common approach of coordinate-based stacking of overlapping objects (windows) that tries to fully emulate the desktop metaphor.

A compositing manager, or compositor, is software that provides applications with an off-screen buffer for each window. The compositing manager composites the window buffers into an image representing the screen and writes the result into the display memory. A compositing window manager is a window manager that is also a compositing manager.

Adaptive Internet Protocol (AIP) is a multi-channel protocol that allows an application running on any of multiple platforms to be displayed on any of a wide range of client systems. It supports rich remote display and input services with a number of display options to deliver the presentation of the remote applications onto the local display either as a standalone window, or within a contained remote environment delivered full-screen or in a standalone window. The protocol also supports audio, printing, and other device mapping services.

References