Xvfb - virtual framebuffer X server for X Version 11
Xvfb [ option ] ...
Xvfb is an X server that can run on machines with no display hardware and
no physical input devices. It emulates a dumb framebuffer using virtual
memory.
The primary use of this server was intended to be server testing. The fb code
for any depth can be exercised with this server without the need for real
hardware that supports the desired depths. The X community has found many
other novel uses for
Xvfb, including testing clients against unusual
depths and screen configurations, doing batch processing with
Xvfb as a
background rendering engine, load testing, as an aid to porting the X server
to a new platform, and providing an unobtrusive way to run applications that
don't really need an X server but insist on having one anyway.
In addition to the normal server options described in the
Xserver(1)
manual page,
Xvfb accepts the following command line switches:
- -screen screennum WxHxD
- This option creates screen screennum and sets its
width, height, and depth to W, H, and D respectively. By default, only
screen 0 exists and has the dimensions 1280x1024x24.
- -pixdepths list-of-depths
- This option specifies a list of pixmap depths that the
server should support in addition to the depths implied by the supported
screens. list-of-depths is a space-separated list of integers that
can have values from 1 to 32.
- -fbdir framebuffer-directory
- This option specifies the directory in which the memory
mapped files containing the framebuffer memory should be created. See
FILES. This option only exists on machines that have the mmap and msync
system calls.
- -shmem
- This option specifies that the framebuffer should be put in
shared memory. The shared memory ID for each screen will be printed by the
server. The shared memory is in xwd format. This option only exists on
machines that support the System V shared memory interface.
If neither
-shmem nor
-fbdir is specified, the framebuffer memory
will be allocated with malloc().
- -linebias n
- This option specifies how to adjust the pixelization of
thin lines. The value n is a bitmask of octants in which to prefer
an axial step when the Bresenham error term is exactly zero. See the file
Xserver/mi/miline.h for more information. This option is probably only
useful to server developers to experiment with the range of line
pixelization possible with the fb code.
- -blackpixel pixel-value, -whitepixel
pixel-value
- These options specify the black and white pixel values the
server should use.
The following files are created if the -fbdir option is given.
-
framebuffer-directory/Xvfb_screen<n>
- Memory mapped file containing screen n's framebuffer
memory, one file per screen. The file is in xwd format. Thus, taking a
full-screen snapshot can be done with a file copy command, and the
resulting snapshot will even contain the cursor image.
- Xvfb :1 -screen 0 1600x1200x24
- The server will listen for connections as server number 1,
and screen 0 will be depth 24 1600x1200.
- Xvfb :1 -screen 1 1600x1200x16
- The server will listen for connections as server number 1,
screen 0 will have the default screen configuration (1280x1024x24), and
screen 1 will be depth 16 1600x1200.
- Xvfb -pixdepths 3 27 -fbdir /var/tmp
- The server will listen for connections as server number 0,
will have the default screen configuration (one screen, 1280x1024x24),
will also support pixmap depths of 3 and 27, and will use memory mapped
files in /var/tmp for the framebuffer.
- xwud -in /var/tmp/Xvfb_screen0
- Displays screen 0 of the server started by the preceding
example.
X(7),
Xserver(1),
xwd(1),
xwud(1), XWDFile.h
David P. Wiggins, The Open Group, Inc.