You should read the O'Reilly manual in conjunction with this manual. Section 2.2 in this manual provides a list of items in the O'Reilly manual that are handled differently or are not supported by the Digital UNIX implementation of the X Window System. Although the O'Reilly manuals have not been updated for X11 R6, they are still a valid resource.
This chapter includes information on the following topics:
Many of these topics are covered in greater detail in the O'Reilly manual.
If for any reason you need to restart your X display manager, this can
be done using xsetup, whether or not you choose to switch from
one display manager to another. Alternatively, the X display manager can be
stopped, started, or restarted using the /sbin/init.d/xlogin command
with stop, start, or restart specified as
the parameter.
For further information on configuring CDE and dtlogin, refer
to Common Desktop Environment: User's Guide.
The information in the rest of this chapter primarily applies if you
choose to run xdm. While dtlogin is similar to xdm and uses the same methods and concepts, there are important differences
in the details.
2.1 Choosing the xdm or the dtlogin Display Manager
You can configure your system to either
the standard X11 R6 display manager xdm or the CDE display manager dtlogin. Run the /usr/sbin/xsetup script to switch between
CDE and xdm. The xsetup script sets the value of the /etc/rc.config variable XLOGIN to be xdm or cde and will optionally restart your X display manager using the /sbin/init.d/xlogin script. When your system boots, the /sbin/init.d/xlogin script uses the value of the /etc/rc.config XLOGIN variable
to determine whether to start xdm or CDE's dtlogin.2.2 Administrator's Guide - Digital UNIX Differences
Table 2-1 lists specific sections in the X Window System Administrator's Guide (O'Reilly & Associates,
Inc.) where the information does not apply to the Digital UNIX X Window System
environment. (The differences do not in any way reflect errors or omissions
on the part of the authors of that manual.)
2.3 Locations of the X Window System Files
The file locations shown in the following list reflect the locations of
the X Window System files as established by the workstation installation kits.
Files | Contents |
---|---|
/usr/bin/X11 | X binaries. (In some previous X implementations, some X binaries were located in /usr/bin.) |
/usr/bin/X11/demos | Binaries of X demo programs. |
/usr/examples | Example files and (possibly) program sources. |
/usr/include/DPS | Display PostScript header files. |
/usr/include/DXm | DECwindows Motif widget header files. |
/usr/include/Mrm | Motif resource manager header files. |
/usr/include/uil | User Interface Language (UIL) header files. |
/usr/include/X11 | X11 header files. |
/usr/include/X11/bitmaps | |
Bitmaps used by various window managers and applications. |
/usr/include/X11/extensions | |
Header files for extensions to X11 R6. (The extensions are discussed in Chapter 3.) | |
/usr/include/X11/ICE | InterClient Exchange library header files. |
/usr/include/X11/SM | Session management library header files. |
/usr/include/X11/Xaw | Athena widget header files. |
/usr/include/X11/Ximp | Header files for libXimp. |
/usr/include/Xm | Motif header files. |
/usr/include/X11/Xmu | X utility header files. |
usr/include/X11/Xserver | Header files for loadable X server libraries. |
/usr/lib/dxbook | Bookreader (dxbook) bookshelves and documents for Digital UNIX Version 4.0 |
/usr/lib/lib* | Developers' libraries (static versions). |
/usr/lib/X11/app-defaults | Application default files used by applications to define default interface configurations and, in some cases, layout of applications. |
/usr/lib/X11/locale/C | |
Internationalization files. | |
/usr/lib/X11/config | Configuration files that can be used to build Makefiles from Imakefiles so that developers can use more generic build configurations for their applications. These configuration files define the proper configuration parameters for the system. |
/usr/lib/X11/DPS | Display PostScript configuration files that denote the location of fonts and the DPS kernel file (masterDPSVM). |
/usr/lib/X11/fonts/100dpi | |
The 100 dpi fonts from the X Consortium. | |
/usr/lib/X11/fonts/75dpi | The 75 dpi fonts from the X Consortium. |
/usr/lib/X11/fonts/decwin/100dpi | |
The 100 dpi DECwindows fonts. | |
/usr/lib/X11/fonts/decwin/75dpi | |
The 75 dpi DECwindows fonts. | |
/usr/lib/X11/fonts/misc | Fonts from the X Consortium. |
/usr/lib/X11/fonts/Speedo | Speedo scalable fonts. |
/usr/lib/X11/fonts/Type1 | |
Type1 scalable fonts. | |
/usr/lib/X11/fonts/Type1Adobe | |
Adobe Type1 scalable fonts. | |
/usr/lib/X11/fonts/Type1Adobe/afm | |
Font metrics files. | |
/usr/lib/X11/fonts/user/100dpi | |
The 100 dpi fonts from layered products and local installations. | |
/usr/lib/X11/fonts/user/75dpi | |
The 75 dpi fonts from layered products and local installations. | |
/usr/lib/X11/fonts/user/misc | |
Other fonts from layered products and local installations. | |
/usr/lib/X11/fs | Font server configuration and error log files. |
/usr/lib/X11/help | Directories in this directory contain the help files for various applications. |
/usr/lib/X11/ja | Internationalization files. |
/usr/lib/X11/japan | Internationalization files. |
/usr/lib/X11/locale | Internationalization files. |
/usr/lib/X11/keymaps | Alternate keymaps for different international keyboards. |
/usr/lib/X11/nls | Natural language support for native character mappings. |
/usr/lib/X11/nls/local_im_tbl | |
Internationalization files. |
/usr/lib/X11/rgb* | Color database used by the server to convert color names to red-green-blue values. |
/usr/lib/X11/system.mwmrc | |
Default systemwide configuration file for mwm. | |
/usr/lib/X11/twm | Default configuration information for twm. |
/usr/lib/X11/uid | User interface control files used by some applications. |
/usr/lib/X11/x11perfcomp | |
Utility scripts for reformatting x11perf output. | |
/usr/var/X11/xkb | XKB keymap files. |
/usr/lib/X11/xkb | XKB keymap files. |
/usr/bin/X11/xkbcomp | |
XKB keymap compiler. | |
/usr/bin/X11/xkbprint | |
XKB keymap to PostScript generator. | |
/usr/bin/X11/xkbdfltmap | |
Determines the default keymap based on the console, language, and keyboard. | |
/usr/bin/X11/dxkbledpanel | Displays a graphical user interface of the available XKB indicators. Used primarily to show the current keyboard group. Replaces the kb_indicator application. |
/var/X11/xdm | X Display Manager configuration and resource files, and the xdm error log. (The file /usr/lib/X11/xdm is a link to /var/X11/xdm.) |
/usr/lib/X11/XErrorDB | Error messages used by the X library. |
/usr/lib/X11/XKeysymDB | The keysym mappings for X toolkit based applications. |
/var/X11/Xserver.conf | |
Configuration information file for the X server. (The file /usr/lib/X11/Xserver.conf is a link to /var/X11/Xserver.conf.) | |
/usr/share/uwsvers | Workstation software version file. |
/usr/shlib | Run-time shared libraries. |
/usr/shlib/X11 | Run-time shared libraries for the X server, font server, and xdm. |
/usr/shlib/_null | Older versions of sharable libraries. |
/var/X11/fs | Font server configuration files. (The file /usr/lib/X11/fs is a link to /var/X11/fs.conf.) |
The xdm utility creates child processes
for each display both locally
and remotely. The xdm utility is an X client that manages user
session elements, such as logging in, authentication, and default resource
set up. System administrators can use xdm to make systemwide configurations
of the X Window System environment.
Figure 2-1 shows the kinds of processes that xdm manages.
The xdm daemon starts when the system boots in multiuser
mode,
so it is ready to manage the
login process. The following list shows the steps involved in the login process
on Digital UNIX systems:
On Digital UNIX, the /var/X11/xdm
directory contains the following
files:
This script is run when xdm starts up and changes the ownership
of the console,
/dev/console, from root
to the user. The script only runs on the local display. (It cannot be used
with X terminals.)
This script is run when xdm is reset and returns ownership
of the console,
/dev/console, from the
user to root. The script only runs on the local display. (It cannot be used
with X terminals.)
This configuration file controls how xdm responds to different
queries from the X Display Manager Control Protocol
(XDMCP). This file is used
to manage X terminals.
This file defines the mapping between language and keyboard and the
corresponding keymap
file in the /usr/lib/X11/keymaps
directory. Whenever the server is started or
reset, the keymap is loaded into the X server by xdm using the xmodmap
command.
The value of the console language variable
and the keyboard type
are retrieved from the kernel and used as an index
into the Xkeymaps
table to define the appropriate keymap.
This file contains resource specifications that are loaded into the
X
server's resource database, xrdb,
before the login widget
is displayed. These resources affect the appearance
of the login window and screen (either dxlogin
or xlogin),
the background color of all clients, as well as the appearance
of the clients which are started by xdm: xconsole,
dxconsole,
and chooser
.
The dxlogin
resources can control the following
elements:
The default background color for all clients is #ca94aa469193,
which is a light tan.
This file defines the command that starts the server on the local display.
More entries for workstations or X terminals
can be added as needed.
The default definition for the UNIX socket transport
(DISPLAY :0)
is:
The default definition for the Shared Memory Transport (SMT)
(DISPLAY
local:0) is:
This file can also be used to specify entries for X terminals that do
not support XDMCP.
The file is read by file server systems that use the xdm-config.fs configuration file. This file is used to specify entries for X terminals
that do not support
XDMCP.
This initial startup script is executed under the user's uid to run
the login session. If a $HOME/.xsession
script is available,
it runs. Otherwise, xdm runs the default session, dxsession,
which is the DECwindows Session Manager.
This script is used only to configure the local X server; it cannot
be used with remote X terminals. The script attempts to determine the display
resolution and uses that information to set the appropriate font path. It
also starts dxconsole,
unless an alternate console is being used.
The xdm program links to the appropriate keymap file in
/usr/lib/X11/keymaps.
This configuration file contains the values for a number of DisplayManager
resources.
This version of the xdm_config file is for use by server
systems that do not have a local graphics display.
This file is an error log file. Both xdm
and the X server write all
error messages to this file.
Once this file records the xdm
process id, it is locked to prevent
multiple invocations of xdm.
The following files are the default and alternate greeter modules. They
are located in the /usr/shlib/X11 directory:
These files provide the login box for users. The greeter module presents
the login interface and authenticates the user. This module is dynamically
loaded by xdm. The libXdmDecGreet.so file uses OSF/Motif-style
widgets. The libXdmGreet.so file uses Athena-style widgets. The
greeter module is dynamically loaded by xdm.
The OSF/Motif-style greeter is the default.
It displays the Digital logo
and login box. It uses the Security Integration Architecture (SIA) to
provide improved security.
The Athena-style greeter
uses the standard X Consortium
graphical user interface (GUI). It does not use SIA and therefore cannot
be used with enhanced C2 security.
This section presents a summary of the X security environment. Refer
to the X Window System Administrator's Guide for details
about implementing X security mechanisms for your system.
There are two approaches to X Window System security: host-based security
and user-based security. The next sections briefly discuss each type.
Another host-based security mechanism involves using the /etc/Xn.hosts file to list systems that can access the local server,
specified by n. However, this method is not recommended because
it is hard to maintain a truly limited list of hosts if more than one user
has access to the workstation where the list resides and because the method
allows access to the X server at any time, even when the xdm login
window appears.
The xdm-config resources DisplayManager.DISPLAY.authorize and DisplayManager.DISPLAY.authName control whether xdm uses authorization for local displays.
X terminals using XDMCP negotiate with xdm to determine which mechanism
to use.
When both the host workstation and the X server are configured to use
MIT-MAGIC-COOKIE-1 or XDM_AUTHORIZATION-1, a machine-readable code is placed
in the ~/Xauthority
file in your home directory every
time you log in under xdm
control. The term used for this
machine-readable code is the magic cookie. The X server
is informed of the same magic cookie for the current
session. The code is stored in a file in the /usr/lib/X11/xdm/
directory, which the X server reads using its -auth capability.
Whenever a client application starts, it must supply the correct magic cookie code from the ~/Xauthority file to the
X server to open the display. Since the permissions on this file are restricted
to read/write for the user, only clients that the user starts have permission
to read the magic cookie code. The assumption is that
if the user starts the client application, he or she wants that application
to have permission to run on the user's workstation.
You can use the xauth program to propagate the magic cookie code from one host to another. This feature allows
users to run client applications on other workstations that do not share their
home directory.
This file contains errors generated by your own user account.
This file contains xdm errors that are not limited to your
own user account.
The following list describes the most common login problems and likely
causes:
Possible causes for these problems are as follows:
The Xsession script has resorted to failsafe mode. Possible
causes
are as follows:
If you encounter this problem, check the /usr/lib/X11/xdm-errors
file for error messages. Possible causes for
these error messages are as follows:
For root login to an X display to be allowed, the name of the display
must be listed in the /etc/securettys
file for your
workstation. If the display name is listed in that file, you can log in as
root to the X display.
The /etc/securettys file usually includes the entries :0 and local:0 to allow root login to the local display.
You can add entries for remote X terminals or X displays so you can log in
remotely as root from those machines.
You can invoke the failsafe mode by pressing the F1 or F2 key after
typing your password in the login box. Do not press the Return key.
If you are able to log in, but only a single terminal window appears,
you are already in failsafe mode.
Once you are in failsafe mode, you can check the errors in the xdm-errors file; check for errors in the xsession script, Xsession file, Xserver-conf file, or xdm-config
file; or delete files if the user disk is full.
There are libraries for device support as well as others for X server
extensions and font renderers.
Section 4.1
provides descriptions of the X server extensions that the Digital UNIX operating
system supports.
You specify which libraries you want loaded in the /usr/var/X11/Xserver.conf
resource
file.
On Digital UNIX systems, the X Window System programming extensions
are built and dynamically loaded as sharable libraries. The X protocol requires
that client applications must call the XQueryExtension
function before using an extension.
The XQueryExtension function returns extension information such
as the base request number, number of requests, base error number, number
of errors, and version string.
With this mechanism in place, the X server can defer loading any extension
libraries until a client requests a specific extension.
When the X server receives
an XQueryExtension protocol request, it loads and initializes the
appropriate extension library if that library has not previously been loaded.
In real time, this loading causes a slight delay in processing the first
request for an extension library. However, no such delay is experienced during
server start up. When the X server is shut down, it closes all libraries
that were loaded on demand and returns to its zero state.
The extension library on Digital UNIX consists of the following sharable
libraries. The first four
libraries are loaded at server startup time; the remaining libraries are loaded
on demand.
The following three Xserver
command flags are especially useful in managing
the X server. For more complete information on the Digital UNIX Xdec and Xserver command, see the
This flag causes the server to exit rather than to reset.
You can also achieve the same effect by setting the following xdm resources in the xdm-config
file:
You use one of these flags to connect the edges of screens in a multihead
display configuration.
You can use this flag to set the default font path. The path consists
of a comma-separated list of directories for the X server to search to find
the font databases. Make sure that all components of the list are valid font
directories or else the X server will exit.
The X server has been modified to query the kernel automatically for
the language and keyboard of the console. Given this information, the X server
will examine the contents of the /usr/lib/X11/xkb/keymaps.dir
file to determine which default keymap to use. The X server will then compile
the keymap, place the compiled version in the directory /usr/lib/X11/xkb/compiled, and load it. This feature has been enabled by default. To disable
it, add the -noloadxkb switch to the command line. If you wish
to disable the XKB extension altogether, add the -kb switch to
the command line. See the
2.4 X Display Manager (xdm) and the Login Process
The X Display Manager
(xdm) manages user sessions on both local and remote displays.
On Digital UNIX systems, the xdm utility provides the mechanism for logging in to the X display
and then starts certain client
applications automatically.
Figure 2-1: The xdm Processes
/sbin/init.d/xlogin start
On Digital UNIX systems, the xdm daemon is started by
an initialization script that is run using the following link:
/sbin/rc3.d/S95xlogin -> ../init.d/xlogin
/usr/var/X11/xdm/xdm-config
:0 local /usr/bin/X11/X
local:0 local /usr/bin/X11/X
libXdmDecGreet.so
libXdmGreet.so2.5 Security and xdm Authorization
Because the X Window System
runs in a networked environment, any other host on the network can access
individual workstation unless some kind of security mechanism is in place.
The X Window System design makes it possible for any client that is able
to connect to a workstation's X server to have complete control over that
workstation's display. As a result, a client can take control of the mouse
or keyboard, send keystrokes to any application running on the workstation,
or kill windows in which other applications are running.2.5.1 Host-Based Security
With host-based access control, only
local clients are accepted by default. X Window System administrators can
use the /usr/bin/X11/xhost
client application to add or
delete host names as well as user names from a list of those allowed to connect
to the X server. The xhost program uses host names to limit host
connections. Therefore, there is no security among users on an individual
host; only security among hosts.2.5.2 User-Based Security
Digital UNIX supports two types of
user-based X access control authorization mechanisms: MIT-MAGIC-COOKIE-1 and
XDM-AUTHORIZATION-1.
2.6 Solving X Window System Login Problems
This section describes some useful techniques for solving problems you
might encounter when trying to log in to the X Window System environment.
The first section discusses possible causes for login problems. The second
section describes using the failsafe mode to correct various login problems.2.6.1 Login Problems
If you cannot log in at all to
your workstation, you should check for errors in the following places:
2.6.2 Failsafe Mode
When you have problems logging
in to your workstation, you can use failsafe mode to bring up a terminal window.
You can use this terminal window to perform operations that can solve some
of the login problems outlined in the previous section. Failsafe mode bypasses
the .xsession script and dxsession session manager to
display a single dxterm window. You can use this dxterm
window to debug your .xsession script.2.7 Managing the X Server
The X server consists of components
that are all located in dynamically loadable libraries. The libraries are
in the following directory:
/usr/shlib/X11
Example 2-1 shows the default Xserver.conf resource file that Digital UNIX provides.
Example 2-1: Xserver.conf Resource File
! Default configuration file for extensible X server
! no other sysyem files are needed
! no other core files are needed
!
! device <
! >
! You can set alternate library search paths here or supplement the
! default path.
! library_path < /newserver/fonts/lib/font:/usr/shlib >
! Add a few more extensions
extensions <
< extdpms libextdpms.so DPMSExtensionInit DPMS >
< dbe libdbe.so DbeExtensionInit DOUBLE-BUFFER >
< extshape libextshape.so ShapeExtensionInit SHAPE >
< extMultibuf libextMultibuf.so MultibufferExtensionInit Multi-Buffering >
! The KME extension is obsolete functionality that supports lock down
! and latching modifiers. It has been replaced by the XKB extension
! and is only provided here for interoperability with R5 servers.
< extkme libextkme.so KMEInit Keyboard-Management-Extension >
< extMITMi libextMITMisc. MITMiscExtensionInit MIT-SUNDRY-NONSTANDARD >
< extScrnSvr libextScrnSvr.so ScreenSaverExtensionInit MIT-SCREEN-SAVER >
< extSync libextSync.so SyncExtensionInit SYNC >
< extxtest libextxtest.so XTestExtensionInit XTEST >
< extbigreq libextbigreq.so BigReqExtensionInit BIG-REQUESTS >
< extXCMisc libextXCMisc.so XCMiscExtensionInit XC-MISC >
! add the xtrap extension
< extxtrap libextxtrap.so DEC_XTRAPInit DEC-XTRAP >
! add the video extension along with device specific handlers
! for the TX device
< xv libxv.so XvExtensionInit XVideo
< _dec_xv_tx lib_dec_xv_tx.so XvropScreenInit PMAG-RO >
< _dec_xv_tx lib_dec_xv_tx.so XvropScreenInit PMAG-JA >
>
! add the X imaging extension
!not R6 < _dec_xie lib_dec_xie.so Xie3Init Xie >
< dixie libdixie.so XieInit XIE
< mixie libmixie.so >
>
< _adobe_dps lib_adobe_dps.so XDPSExtensionDeferredInit Adobe-DPS-Extension >
< _adobe_dps lib_adobe_dps.so XDPSExtensionDeferredInit DPSExtension >
>
! Load Speedo and Type1 renderers and
! enable communication with a font server
font_renderers <
< fr_fs libfr_fs.so fs_register_fpe_functions >
< fr_Speedo libfr_Speedo.so SpeedoRegisterFontFileFunctions >
< fr_Type1 libfr_Type1.so Type1RegisterFontFileFunctions >
>
! Enable X Input Devices
!input <
! Dial and Button Box on port /dev/tty01
! < _dec_xi_pcm lib_dec_xi_pcm.so XiPcmInit /dev/tty01 >
!
! Serial Mouse. Use the following format for the last parameter:
!
! device:type:baud:emulate3:chordmid:samplerate:cleardtr:clearrts:core
!
! where
!
! device: The port the device is connectd to.
! For example, /dev/tty00. /dev/tty00 is the
! default.
!
! type: The mouse type. It must be one of the following
! strings (case does not matter): microsoft
! mousesystems mmseries logitech busmouse mouseman
! ps/2 mmhittab. mousesystems is the default.
! baud: The baud rate of the mouse. Mine is 1200, I think
! others will do 9600. 1200 is the default.
!
! emulate3: Either 0 or 1. 1 means emulate a 3 button mouse
! with a 2 button mouse. This is not implemented yet,
! though 0 is the default.
!
! chordmid: Either 0 or 1. Some 3 button mice treat MB2 kind of
! whacky. A value of 1 supports those meesers. 0 is
! the default.
!
! samplerate: The sample rate of the mouse. I don't have a mouse
! that supports this, so I don't know what it does.
! 150 is the default.
!
! cleardtr: Either 0 or 1. 1 means clear the DTR signal for
! the port before using the mouse. 0 is the default.
!
! clearrts: Either 0 or 1. 1 means clear the RTS signal for
! the port before using the mouse. 0 is the default.
!
! core: Either 0 or 1. 1 means make this emulate the core
! device. 0 means make it a two relative motion
! valuator, n-button X Input Device. 0 isn't
! implemented yet. 1 is the default.
!
! < _dec_xi_serial_mouse lib_dec_xi_serial_mouse.so XiSerialMouseInit /dev/tty00:
microsoft:1200:1 >
!>
! transport and auth_protocol library loading is not yet supported
! you specify command line arguments here
args <
-pn
>!
Xdec
(1X) reference page.
Xdec
(1X) reference page or run Xdec with the -? option for more information.2.8 Graphics Adapters
This section lists many of
the graphics adapters supported by Digital UNIX. (Absence of any adapter from
this list does not necessarily mean that the adapter is not supported.) Some
graphics adapters require the DEC Open3D software product for full three-dimensional
support.
PMAGB-B HX Smart Frame Buffer (SFB) | PMAGB-BA/BB 72HZ 1280x1024 -or- 66HZ 1280x1024 |
PMAGB-BC/BD 72HZ 1280x1024 -or- 60HZ 1024x864 | |
PMAGB-BE/BF 72HZ 1280x1024 -or- 66HZ 1280x1024 | |
Supported by lib_dec_sfb.so | |
PMAGD-A HX+ 8-Plane Smart Frame Buffer Plus (SFB+) | PMAGD-AA HX+ 72HZ 1280x1024 |
Supported by lib_dec_ffb.so | |
PMAGD-B HX+ 24-Plane Smart Frame Buffer Plus with no Z-buffer(SFB+) | PMAGD-BA HX+ 72HZ 1280X1024 |
Supported by lib_dec_ffb.so | |
PMAGD-C HX+ 24-Plane Smart Frame Buffer Plus with Z-buffer(SFB+) | PMAGD-CA HX+ 72HZ 1280X1024 |
Supported by lib_dec_ffb.so | |
PMAGB-J TX 24-plane frame buffer | PMAGB-JA/JB TX 72HZ 1280x1024 |
PMAG-JA/JB TX 72HZ 1280X1024 | |
A10U-AA/DA Picture-in-Picture option card for TX | |
Supported by lib_dec_tx.so | |
PMAGC-AA ZLX-M1 graphics accelerator | PMAGC-AA ZLX-M1 graphics adapter |
Supported by lib_dec_pvg.so | |
PMAGC-BA ZLX-M2 graphics accelerator | PMAGC-BA ZLX-M2 graphics adapter |
Supported by lib_dec_pvg.so | |
PMAGC-DA ZLX-L1 graphics accelerator | PMAGC-DA ZLX-L1 graphics adapter |
Supported by lib_dec_pvl.so | |
PMAGC-EA ZLX-L2 graphics accelerator | PMAGC-EA ZLX-L2 graphics adapter |
Supported by lib_dec_pvl.so | |
PB2GA-AA QVision Triton EISA graphics adapter | PB2GA-AA Triton 72HZ 1024x768 |
Supported by lib_dec_triton.so | |
PB2GA-FA ATI Mach64 PCI VGA graphics adapter | PB2GA-FA ATI Mach64 PCI VGA graphics adapter |
PB2GA-FA Mach64 72HZ 800X600 | |
PB2GA-FA Mach64 70HZ 1024X768 (Default hz & resolution) | |
PB2GA-FA Mach64 66HZ 1280X1024 | |
PB2GA-FA Mach64 70HZ 1280X1024 | |
PB2GA-FA Mach64 72HZ 1280X1024 | |
Note that 1280X1024 is only available on cards with at least 2MB RAM | |
Supported by lib_dec_ati64.so | |
PB2GA-FB ATI Mach64 ISA VGA graphics adapter | PB2GA-FA Mach64 72HZ 640X480 |
PB2GA-FA Mach64 72HZ 800X600 | |
PB2GA-FA Mach64 70HZ 1024X768 (Default hz & resolution) | |
PB2GA-FA Mach64 66HZ 1280X1024 | |
PB2GA-FA Mach64 70HZ 1280X1024 | |
PB2GA-FA Mach64 72HZ 1280X1024 | |
Note that 1280X1024 is only available on cards with at least 2MB RAM | |
Supported by lib_dec_ati64.so | |
Cirrus 5422 VGA graphics adapter (embedded on Alphaserver 1000) | Cirrus 5422 60HZ 640X480 |
Cirrus 5422 56HZ 800x600 | |
Supported by lib_dec_cirrus.so | |
PB2GA-J S3 Trio64 VGA graphics adapter | PB2GA-J Trio64 60HZ 640X480 |
PB2GA-J Trio64 72HZ 640X480 | |
PB2GA-J Trio64 60HZ 800X600 | |
PB2GA-J Trio64 72HZ 800X600 | |
PB2GA-J Trio64 60HZ 1024X768 | |
PB2GA-J Trio64 70HZ 1024X768 (Default hz & resolution) | |
PB2GA-J Trio64 72HZ 1024X768 | |
PB2GA-J Trio64 60HZ 1280X1024 | |
PB2GA-J Trio64 66HZ 1280X1024 | |
PB2GA-J Trio64 72HZ 1280X1024 | |
Note that 1280X1024 is only available on cards with at least 2MB RAM | |
Supported by lib_dec_s3.so | |
PBXGA-A HX+ 8-Plane Smart Frame Buffer Plus for PCI (SFB+) | PBXGA-A HX+ 72HZ 1280X1024 |
Supported by lib_dec_ffb.so | |
PBXGA-B HX+ 24-Plane Smart Frame Buffer Plus for PCI with no Z-buffer(SFB+) | PBXGA-BA HX+ 72HZ 1280X1024 |
Supported by lib_dec_ffb.so | |
PBXGA-C HX+ 24-Plane Smart Frame Buffer Plus for PCI with Z-buffer(SFB+) | PBXGA-CA HX+ 72HZ 1280X1024 |
Supported by lib_dec_ffb.so | |
PBXGC-A ZLXp-L1 graphics accelerator | PBXGC-AA ZLXp-L1 graphics adapter |
Supported by lib_dec_pvp.so | |
PBXGC-B ZLXp-L2 graphics accelerator | PBXGC-BA ZLXp-L2 graphics adapter |
Supported by lib_dec_pvp.so | |
PBXGB-A TGA2 8mb Smart Frame Buffer for PCI | PBXGB-AA TGA2 graphics adapter |
Supported by lib_dec_ffb.so | |
PBXGB-C TGA2 Smart Frame Buffer for PCI | PBXGB-CA TGA2 graphics adapter |
Supported bylib_dec_ffb.so | |
In addition, the X Window System environment on Digital UNIX supports the following monitors:
VRT16-HA/H4 16" 66/72HZ 1280x1024
VRT19-HA/H4 19" 66/72HZ 1280x1024
VRM17-HA/H4 17" 72HZ 1280x1024
VR319-DA/D4 19" 72HZ 1280x1024
VR320-Dx 19" 72HZ 1280x1024
VR320-Cx 19" 66HZ 1280x1024
VR160-Dx 16" 60HZ 1280x1024
VR297-Dx 19" 60HZ 1024x864
VR290-x 19" 60HZ 1024x864
VR299-Dx 19" 60HZ 1024x864
VRC16-Cx 17" 72HZ 1024x768
For X11 R6, the font server was renamed from fs to xfs. For compatibility, the symbolic link/usr/bin/X11/fs --> xfs is provided on Digital UNIX. Most X11 R5 and X11 R6 X servers can
communicate with a font server. For example, Digital VXT V2.1 X terminals
can communicate with the font server in the Digital UNIX operating system.
For Digital UNIX, the font server loads the following configuration
file
by default:
Example 2-2 shows the default configuration
file. Note that on the Digital UNIX system, the catalogues and renderers lines are not separated as shown in the example.
The following list explains the elements in the file:
This line indicates whether the font server should try to clone itself
or use delegates when it reaches the limit for number of clients. By default,
the Digital UNIX font server clones itself when the limit is reached.
This line indicates whether or not syslog() is used for font
server error logging. For Digital UNIX, the value is set to off,
which means that, by default, errors are logged to the error-file
specified in this configuration file.
This line contains the list of font directories that are available by
default from the Digital UNIX font server.
This line lists the pathname of the error log file. This file is used
instead of syslog(). If you encounter problems after you have modified
the configuration file, check the /usr/lib/X11/fs/fs-errors log
file to debug your changes.
This line indicates the default point size for any font request that
does not specify a point size. Note that the point size is specified in decipoints,
so that a value of 120 indicates a point size of 12.
This line lists the default resolutions supported by the Digital UNIX
font server. The values are given in pairs of horizontal and vertical resolutions
per inch.
This line defines the dynamically loaded renderer libraries for scalable
fonts. These renderer libraries are the same font renderer libraries that
can be loaded by the X server.
Replace the hostname variable with the name of the system
where the font server is running.
You can create a script that automatically starts the font server when
you boot your system in multiuser mode. Add a symbolic link to your script
in /sbin/rc3.d. For example:
The following example shows a sample font server initialization script:
The fsinfo utility displays information about an X font server.
You can use it to examine the capabilities of the server currently running
on your system. The display shows predefined values for various parameters
that are used for communication between clients and the server. The display
also lists the font catalogues and alternate servers that are available.
The following example shows the default fsinfo display for
a Digital UNIX system named COFFEE:
You can use the fslsfonts utility to display a list of all
the fonts served by the current font server. The following example shows
a partial display for the default Digital UNIX font server on a system named
COFFEE:
The fstobdf utility reads a font from the font server and
creates a BDF (bitmap distribution format) file on the standard output that
can be used to recreate the font. You can use this utility to test font servers,
debug font metrics, and reproduce lost BDF files. However, you should be
careful not to violate any copyrights or licensing agreements that pertain
to the fonts.
The following command invokes the utility to create a BDF file for a
bold font using the font server on system COFFEE:
You can use the showfont utility to display information about
a particular font that is served by the current font server.
Each of the following commands invokes the utility to display information
about the Adobe Avantgarde Demi font available from the font server on system
COFFEE:
For X terminals that have X11 R4, R5, or R6 installed, host systems
use the X Display Manager (xdm)
and the X Display Manager Control
Protocol (XDMCP)
to serve those
terminals. X11 R5 or X11 R6 have many more capabilities and are therefore
preferable if you are considering purchasing new X terminals.
There are three types of XDMCP queries that an
X11 R4, R5, or R6 terminal can use to connect
to a host:
With a direct query, the X terminal requests a login from only one host.
The xdm program on the host responds and displays the login window.
With an indirect query, depending on the host's Xaccess file, xdm either forwards the query to another host or displays the chooser
box, which contains a list of available host nodes. If the chooser box is
displayed, the user selects a host. Next, the chooser client forwards the
query to that host. In either case, the second host then displays the login
window.
With a broadcast query, the X terminal requests a response from any xdm host on the subnet. The X terminal can either request a direct
connection to the first xdm host that responds or collect responses
for a period of time and offer the list to the user to select one.
Once the connection between the X terminal and the host has been made,
the user has access to all the X Window System features that are available
on the host system.
You specify access control for XDMCP connections to X terminals in the /usr/lib/X11/Xaccess
file. This file is
defined in the xdm-config file by the DisplayManager.accessFile resource. The following list contains examples of different types
of connection queries:
Older X terminals with X11 R3 can be managed directly without XDMCP.
To use these X terminals, you must include a specific entry in the /var/X11/xdm/Xserver file. For example, to manage an X terminal named CREAM, include the
following line in the Xservers file:
With such a connection, the xdm utility immediately displays
a login window on the X terminal.
Like all programs, once space is allocated to the X server, it is never
freed to the system. It can be reused, but never freed. This means that the
X server memory allocation may increase dramatically at startup and then become
fairly stable, unless you continue to start new and unique client applications
without terminating any of the earlier applications.
2.9 Font Server Management
In Digital UNIX, /usr/bin/X11/xfs
is the X Window System font server.
The font server supplies fonts to the X Window System display servers.
/var/X11/fs/config
Example 2-2: Font Server config File
# font server configuration file
# $XConsortium: config.cpp,v 1.7 91/08/22 11:39:59 rws Exp $
clone-self = on
use-syslog = off
catalogue = /usr/lib/X11/fonts/decwin/100dpi/,
/usr/lib/X11/fonts/decwin/75dpi/,
/usr/lib/X11/fonts/misc/,
/usr/lib/X11/fonts/75dpi/,
/usr/lib/X11/fonts/100dpi/,
/usr/lib/X11/fonts/Type1Adobe/,
/usr/var/X11/fonts/user/misc/,
/usr/var/X11/fonts/user/100dpi/,
/usr/var/X11/fonts/user/75dpi/
error-file = /usr/var/X11/fs/fs-errors
# in decipoints
default-point-size = 120
default-resolutions = 75,75,100,100
renderers = libfr_Type1.so;
Type1RegisterFontFileFunctions,libfr_Speedo.so;
SpeedoRegisterFontFileFunctions
2.9.1 Using the Font Server
To use the font server, you need to
add the appropriate port to your font path. For Digital UNIX, the default
port number is
7100. The default
port number is the registered port 7100. (Note that many R5 implementations
used port 7000 which was not registered. Use the following syntax
to add the font server to your font path:
xset +fp tcp/hostname:7100
/sbin/rc3.d/S94fs -> ../init.d/fs
For more details, see the rc3
(8) reference page.
#!/sbin/sh
PATH=/sbin:/usr/sbin:/usr/bin
export PATH
#
# Control X font server
#
case $1 in
\'start\')
if [ -f /usr/bin/X11/xfs ]
then
/usr/bin/X11/fs -config /usr/lib/X11/fs/config -port 7100
&
else
echo "WARNING: Font server not found."
exit 1
fi
;;
\'restart\')
$0 stop
sleep 5
$0 start
;;
\'stop\')
pid=`/bin/ps -e | grep '/usr/bin/X11/fs' |
sed -e 's/^ *//' -e 's/ .*//' | head -1`
if [ "X$pid" != "X" ]
then
/bin/kill $pid
fi
;;
esac
2.9.2 Font Server Client Utility Applications
Digital UNIX includes
several font server client utilities: fsinfo, fslsfonts, fstobdf, and showfont. The following list shows how to invoke
each utility and provides a brief description. See the reference page for
each utility for more information.
% fsinfo -server tcp/coffee:7100
name of server: tcp/coffee:7100
version number: 2
vendor string: Digital Equipment Corporation Digital UNIX V4.0
vendor release number: 5001
maximum request size: 16384 longwords (131072 bytes)
number of catalogues: 1
all
Number of alternate servers: 0
number of extensions: 0
% fslsfonts -server tcp/coffee:7100
adobe-avantgarde-demi-i-normal--0-0-0-0-p-0-iso8859-1
adobe-avantgarde-demi-r-normal--0-0-0-0-p-0-iso8859-1
adobe-avantgarde-medium-i-normal--0-0-0-0-p-0-iso8859-1
adobe-avantgarde-medium-r-normal--0-0-0-0-p-0-iso8859-1
adobe-courier-bold-i-normal--0-0-0-0-p-0-iso8859-1
.
.
.
You can also use the fslsfonts utility to list
the fonts that match a specified pattern. See the fslsfonts
(1X) reference
page for details.
% fstobdf -server tcp/coffee:7100 -fn "*bold*" > boldfont.bdf
% showfont -server tcp/coffee:7100 \-fn "-adobe-avantgarde-demi-*-*--*-*-*-*-*-*-*-*"
% showfont -server tcp/coffee:7100 \-fn "-adobe-avantgarde-demi-r-normal--0-0-0-0-p-0-iso8859-1"
2.10 Managing X Terminals
Like workstations, X terminals have
monitors, pointers, and keyboards but otherwise they resemble dumb ASCII terminals
because they need to be connected to a host computer to function. In most
instances, the X terminal reads the X server program at boot time from the
host system over the network. However, there are some X terminals that also
have the X server built directly into the terminal's read-only memory (ROM).
# disallow direct/broadcast service for xtra
!xtra.lcs.mit.edu
# allow access from this particular display
mars.osf.org
# allow access from any display in LCS
*.lcs.dec.com
%HOSTS expo.lcs.dec.com xenon.lcs.dec.com \
excess.lcs.dec.com kanga.lcs.dec.com
# force extract to contact xenon
extract.lcs.dec.com xenon.lcs.dec.com
# disallow indirect access
!xtra.lcs.dec.com dummy
# all others get to choose
*.lcs.dec.com %HOSTS
# offer a menu of these hosts
extract.lcs.dec.com CHOOSER %HOSTS
# offer a menu of all hosts
xtra.lcs.dec.com CHOOSER BROADCAST
# offer any host a menu of all hosts
* CHOOSER BROADCAST
cream:0 foreign
2.11 Memory Utilization by the X Server
Under normal operating conditions,
the X server requires large amounts of memory. The following sections explain
why and how some of the normal memory utilization occurs.2.11.1 General Observations About X Server Memory Growth