Xnest is an X11 display server, which is its display directly in a window of an existing X display server. The program is thus both an X server to its own programs as well as an X client to the X server, in which it is nested ( engl. nested: embedded, nested ).


Xnest is a kind of " extension" of Xvfb. It provides a virtual framebuffer available, however on the real framebuffer Xnest thereby obtains that it is itself a client to an existing X server with framebuffer is mapped. So Xnest itself has no own output hardware or physical ( existing ) Input Devices. All inputs, it receives via the X - server to which it is bound.

Operation and use

When a user X session on display: 0 is running, it can, for example, by entering Xnest: 1 start in a terminal emulator, such as xterm, such a nested X server. By default, this three-quarters the size of the dimensions of the " paternal " displays. If the user so a screen resolution of 1024 × 768 pixels, Xnest will start with default settings with a resolution of 800 × 600 pixels. If a different resolution is desired, it can with attaching: -geometry ' Breite'x'Höhe ', for example -geometry 1024 × 600 are selected.

With Xnest you can very easily start multiple X sessions at the same time, test programs with different screen resolution or for debugging the X Window System. Can XDMCP Using Xnest also similar to VNC be used: To establish a " virtual desktop " to another computer in a window. This is, for example, by the previous example simply a parameter is appended: Xnest: 1 -query name- of - other - computers.


Xephyr is developed as part of the X.Org server software, mending the weakness of Xnest. So Xephyr supports modern X extensions ( Extensions), even if the X server runs on the Xephyr as a client, it does not; among other things, Composite, Damage and RANDR. Xephyr also uses SHM and shadow framebuffer techniques to improve the performance further. In addition, a visual debug mode, are indicated by red borders at the screen updates belongs to the functions of Xephyr.