Xsco -- X Window System server


Xsco or X [: displaynumber] [-ac] [-a number] [-audit audit_level] [-auth authorization_file] [bc] [-bs] [-cc class] [-co database_name] [-crt device] [-dvendor.model.class.mode] [-evsync] [-fc cursor_font] [-fn font] [-fp font_path] [-help] [-I] [-logo] [-nice n] [-nologo] [-nompxlock] [-norunsw] [-pn] [-p minutes] [-ppp] [r] [-r] [-s minutes] [-save seconds] [-static] [-su] [-t number] [-to seconds] -tst [v] [-v] [-wm] [ttyname]


Xsco is an X Window System server. It is frequently a link or a copy of the appropriate server binary for driving the most frequently used server on a given machine.


All of the X servers accept the following command line options:

sets the display number of the server. For example, Xsco :1 allows clients with DISPLAY=servername:1 to establish connections. The default displaynumber is 0.

disables host-based access control mechanisms. It enables access by any host, and permits any host to modify the access control list. Use -ac with extreme caution. This option exists primarily for running test suites remotely.

-a number
specifies the pointer acceleration. number is the ratio of how much movement is reported to how much the user actually moves the pointer. Pointer acceleration can also be set with xset(X) or scomouse(XC).

sets the audit trail level. The default level is 1, meaning only connection rejections are reported. Level 2 also reports all successful connections and disconnections. Level 0 turns off the audit trail. All audit lines are sent to standard error.

-auth authorization_file
specifies a file that contains a collection of authorization records used to authenticate access. See the Xsecurity(X) manual page for more information.

disables certain kinds of error checking, for bug compatibility with previous releases (for example, to work around bugs in R2 and R3 xterms and toolkits). This option does not use dash (-).

disables backing store on all screens.

-cc class
specifies the default visual class. The following are legal values for class:






Not all graphics adapters support all six visual classes.

-co filename
sets the name of the RGB color database. filename is the name of the color database, and may include a path. filename must not include the .dir and .pag extensions of the database files.

-crt device
specifies the console multiscreen on which the server is displayed. device must be a complete device name, such as /dev/tty03.

-d vendor.model.class.mode
specifies the graphics adapter and video mode (resolution). The file /usr/lib/grafinfo/grafdev contains the system-wide default string that is used on each tty when the -d option is not specified. Some examples of setting the display type or resolution with the -d option are:

Xsco -d ibm.vga.vga.640x480-16
Xsco -d paradise.vga1024.svga.640x480-256
Xsco -d sigma.legend.vga.800x600-16
Xsco -d trident.tvga.svga.1024x768-16
Xsco -d trident.tvga.svga.1024x768-256

compensates for some timing problems between the event driver and the system clock in pre-3.2v4 versions of SCO UNIX.

-fc cursor_font
sets the default cursor font. The default cursor font is /usr/lib/X11/fonts/misc/cursor. Use this option only if you have a special purpose cursor font.

-fn font
sets the default text font. The default is fixed. Fonts are found in /usr/lib/X11/fonts. Most, however, are special purpose fonts. To display them, use the xfd client.

-fp font_path
sets the font search path. By default, the server searches the font directories /usr/lib/X11/fonts/misc/, /usr/lib/X11/fonts/Speedo/, /usr/lib/X11/fonts/Type1/, /usr/lib/X11/fonts/75dpi/, and /usr/lib/X11/fonts/100dpi/. Use this option only if the fonts database was installed in a different directory. Note that the font path can also be set with the xset command.

prints options and exits.

causes all remaining command line arguments to be ignored. Use this option for troubleshooting.

turns on the display in the screen-saver. This prints the X logo on your screen if you do not use your screen for 10 minutes. Note that you must also use the v option to see the X logo. To specify how long the server must be idle before it activates the screen saver, use the -save option.

-nice n
alters the priority of the server process by adding n to the value of the current nice. The n value is from 0 to 39. By default, the server process is assigned the value of 0. Lower values correspond to higher scheduling priority.

turns off the X logo screen saver. You can also specify this option as nologo (without the dash character). The -v option overrides this option.

allows the X server to float between processors. By default, the X server locks itself onto processor 0. This option should only be used on multiprocessor machines running MPX. If all processors are capable of accessing the video hardware, this may increase overall system performance.

stops X server from running while screen switched.

permits the X server to continue running when it fails to establish all of its well-known sockets, but does establish at least one.

-p minutes
specifies how often (in minutes) to change the screen saver pattern. The option works in conjunction with the -logo option.

specifies point-perfect pixelization. This causes diagonal ``zero'' width lines to be drawn the same way as the MIT Sample X Server. It is a work around for problems with some X clients that incorrectly assume that ``zero'' width lines are drawn identically on all hardware. This option only affects video cards using the TMS34010 or TMS34020 video CPU.

turns on auto-repeat.

turns off auto-repeat. By default, auto-repeat is on.

-s minutes
activates the screen-saver after minutes of non-use. This option reduces wear on the screen. If you use this option with the -logo option, the X logo moves around the screen according to how you set the -p option. If minutes is set to ``0'', the screen-saver is not activated.

-save seconds
activates the screen-saver after seconds of non-use. This option reduces wear on the screen. If you use this option with the -logo option, the X logo moves around the screen according to how you set the -p option. If seconds is set to ``0'', the screen-saver is not activated. Note that this option overrides -s.

defaults to a static color visual class. This option overrides the -cc option.

disables save under support on all screens.

-t number
sets the pointer acceleration threshold in pixels (that is, after how many pixels pointer acceleration should take effect). Pointer acceleration threshold can also be changed with xset or scomouse.

terminates the server at server reset.

-to seconds
sets the default connection timeout (the time allowed for the client to complete the connection) in seconds.

disables test extensions XTestExtension1, XTEST and DEC-XTRAP.

specifies screen-saver without video blanking. Instead, the root window pattern and X logo cover the screen. The pattern shifts periodically as specified with the -p option.

specifies video blanking for screen-saver. The default is on. This option blanks out the user's screen after 10 minutes of non-use. This option overrides the -logo and -nologo options. To specify how long the server must be idle before it activates video blanking, use the -s option.

forces the default backing-store of all windows to be WhenMapped; a work-around for getting backing-store to apply to all windows.
You can also have the X server connect to scologin using XDMCP. The following options control the behavior of XDMCP.

enables XDMCP and broadcasts BroadcastQuery packets to the network. The first responding display manager will be chosen for the session.

-class display_class
sets the value of the additional XDMCP display qualifier, which is used in resource lookup for display-specific options. By default, the value is "MIT-Unspecified" (not a very useful value).

-cookie xdm-auth-bits
sets the value of a private key shared between the server and the manager, which is used when testing XDM-AUTHENTICATION-1.

-displayID display-id
allows the display manager to identify each display so that it can locate the shared key.

-indirect host_name
enables XDMCP and sends IndirectQuery packets to the specified host.

exits the server after the first session is over. Normally, the server keeps starting sessions, one after the other.

-port port_num
specifies an alternate port number for XDMCP packets. It must be specified before any -query, -broadcast or -indirect options.

-query host-name
enables XDMCP and sends Query packets to the specified host.
Many servers also have device-specific command line options. See the manual pages for the individual servers for more details.

Starting the server

The server is usually started from the SCO OpenServer display manager program scologin. This utility is run from the system startup files and takes care of keeping the server running, prompting for usernames and passwords, and starting up the user sessions. It is easily configured for sites that want to provide consistent interfaces for novice users (loading convenient sets of resources, starting up a window manager, clock, and a terminal emulator window).

Network connections

The X server supports connections made using the following reliable byte-streams:

The server listens on port 6000+n, where n is the display number.

the X client uses /dev/XnR as the streampipe, where n is the display number. The server listens on /dev/XnS.

The server uses /dev/X/server.n, where n is the display number.


You can display from 2 (monochrome) to 16 million colors simultaneously on the screen, depending on the capabilities of the graphics adapter that you have installed on your system and the entries that you select when you use the Video Configuration Manager.

The RGB database files, rgb.dir and rgb.pag, are compiled using the rgb utility from the file rgb.txt. Each line of the rgb.txt file consists of three color values and a color name. The color values are decimal numbers from 0 to 255 for the red, green, and blue components of the color. A typical line looks like this:

   35     35     142     Navy Blue
This entry defines Navy Blue as consisting of 35/255ths of the maximum possible intensity of red, 35/255ths of the maximum possible intensity of green, and 142/255ths of the maximum possible intensity of blue. The server is case-insensitive when searching for color names, so ``navy blue'' or ``Navy BLUE'' finds the entry above, for example. The server is sensitive to spaces in color names, so it does not equate ``Navy BLUE'' and ``NavyBLUE.''

Remember that the precision of different adapters varies. The exact same color values may not produce the exact same shade of that color on different monitors.


The server supports screen-switching between 10 or 12 console multiscreens, depending on the number of function keys on your keyboard. The default screen-switching key sequence is <Ctrl><Alt><Fn>, where <Fn> is function key 1 through 10 or 1 through 12. You can also cycle through the screens lowest to highest by pressing <Ctrl> <Print Screen>.

You can redefine the switch-screen key sequence using the xswkey program. The following conditions must be met: (1) you must be at the console; or (2) the DISPLAY environment variable must be set and at least one server must be running. The syntax of the xswkey program is:

xswkey -[cCaAsS]

c or C stands for the <Ctrl> key; a or A stands for the <Alt> key; and s or S stands for the <Shift> key. Specify the key sequence you want with xswkey and you can then use that key sequence with any function key. For example, to specify that you want to use <Ctrl> and <Shift> along with a function key, type:

xswkey -cs

Then, you switch screens by pressing <Ctrl>-<Shift>-<Fn>.

To use only function keys without <Ctrl>, <Alt>, or <Shift>, use xswkey with only a hyphen and no arguments:

xswkey -

See xswkey(X) for more information.


The X server implements a simplistic authorization protocol, MIT-MAGIC-COOKIE-1, which uses data private to authorized clients and the server. This is a rather trivial scheme; if the client passes authorization data that are the same as the server has, it is allowed access. This scheme is worse than the host-based access control mechanisms in environments with unsecure networks, as it allows any host to connect, given that it has discovered the private key. But in many environments, this level of security is better than the host-based scheme, as it allows access control per-user instead of per-host.

In addition, the server provides support for a DES-based authorization scheme, XDM-AUTHORIZATION-1, which is more secure (given a secure key distribution mechanism). This authorization scheme can be used in conjunction with XDMCP's authentication scheme (XDM-AUTHENTICATION-1) or in isolation.

The authorization data is passed to the server in a private file named with the -auth option. Each time the server is about to accept the first connection after a reset (or when the server is starting), it reads this file. If this file contains any authorization records, the local host is not automatically allowed access to the server, and only clients that send one of the authorization records contained in the file in the connection setup information will be allowed access. See the xauth(X) manual page for a description of the binary format of this file.

The server also provides support for SUN-DES-1, using Sun's Secure RPC. It involves encrypting data with the X server's public key. See the Xsecurity(X) manual page for more information.

The X server also uses a host-based access control list for deciding whether or not to accept connections from clients on a particular machine. If no other authorization mechanism is being used, this list initially consists of the host on which the server is running, as well as any machines listed in the file /etc/Xn.hosts, where n is the display number of the server. Each line of the file should contain an Internet hostname (for example, There should be no leading or trailing spaces on any lines. For example:

Users can add or remove hosts from this list and enable or disable access control using the xhost command from the same machine as the server.

The X protocol intrinsically neither has any notion of window operation permissions nor places any restrictions on what a client can do; if a program can connect to a display, it has full run of the screen. Sites that have better authentication and authorization systems (such as Kerberos) might wish to make use of the hooks in the libraries and the server to provide additional security models.


The X server attaches special meaning to the following signals:

causes the server to close all existing connections, free all resources, and restore all defaults. It is sent by the display manager whenever the main user's main application (usually a scoterm or window manager) exits to force the server to clean up and prepare for the next user.

causes the server to exit cleanly.

checks to see if the server has inherited SIGUSR1 as SIG_IGN instead of the usual SIG_DFL when the server starts. In this case, the server sends a SIGUSR1 to its parent process after it has set up the various connection schemes.


Fonts are usually stored as individual files in directories. The X server can obtain fonts from directories and/or from font servers. The list of directories and font servers the X server uses when trying to open a font is controlled by the font path. Although most sites will choose to have the X server start up with the appropriate font path (using the -fp option mentioned above), it can be overridden using the xset program.

The default font path for the X server contains five directories:

contains many miscellaneous bitmap fonts that are useful on all systems. It contains a family of fixed-width fonts, a family of fixed-width fonts from Dale Schumacher, several Kana fonts from Sony Corporation®, two JIS Kanji fonts, two Hangul fonts from Daewoo Electronics, two Hebrew fonts from Joseph Friedman, the standard cursor font, two cursor fonts from Digital Equipment Corporation®, and cursor and glyph fonts from Sun Microsystems, Inc®. It also has various font name aliases for the fonts, including fixed and variable.

contains outline fonts for the Bitstream® Speedo rasterizer. A single font face, in normal, bold, italic, and bold italic, is provided, contributed by Bitstream, Inc.

contains bitmap fonts contributed by Adobe Systems, Inc.®, Digital Equipment Corporation, Bitstream, Inc., Bigelow and Holmes, and Sun Microsystems, Inc. for 75 dots per inch displays. An integrated selection of sizes, styles, and weights are provided for each family.

contains 100 dots per inch versions of some of the fonts in the 75dpi directory.

contains IBM®-Adobe scaled fonts.

Font databases are created by running the mkfontdir program in the directory containing the compiled versions of the fonts (the .pcf files). Whenever fonts are added to a directory, mkfontdir should be rerun so that the server can find the new fonts.

NOTE: If mkfontdir is not run, the server will not be able to find any fonts in the directory.


Mice are supported using the event(FP) and mouse(HW) interfaces.

Mice with wheel buttons are supported by mapping the wheel button's physical button settings (buttons 7 and 8) to X Button presses for button4 and button5, which correspond to wheel forward and wheel back (for compatibility with other X servers). Synthetic button release events are generated immediately following the ButtonPress.

See also the xmodmap(X) -pp option for current mappings.


Errors are logged in the file /usr/adm/X*msgs.











Known limitations

The option syntax is inconsistent with itself and xset(X).

The acceleration option should take a numerator and a denominator like the protocol.

If X dies before its clients, new clients will not be able to connect until all existing connections have their TCP TIME_WAIT timers expire.

The color database contains only 746 colors

See also

bdftopcf(X), fs(X), mkfontdir(X), rgb(X), scomouse(XC), X(X), xauth(X), xhost(X), xinit(X), xset(X), xsetroot(XC), xswkey(X), xterm(XC),
X Window System Protocol
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003