[Return to Library]  [TOC]  [PREV]  SECT--  [NEXT]  [INDEX] [Help]

2    X Window System Administration in the Digital UNIX Environment

This chapter provides information about administering the X Window System environment for systems running the Digital UNIX operating software. The X Window System Administrator's Guide (O'Reilly & Associates, Inc.) is included in the Digital UNIX hardcopy documentation set as the primary reference for information on how to manage X resources that control the X Window environment. Most of the information in that manual is generally applicable to the Digital UNIX implementation of the X Window System.

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.


[Return to Library]  [TOC]  [PREV]  SECT--  [NEXT]  [INDEX] [Help]

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.

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.)
Table 2-1: Digital UNIX Implementation-Specific Differences
SectionDifference
Section 1.1.3  Digital UNIX does not support OPEN LOOK. 
Section 2.2.3.1  The information in the third and fourth paragraphs is true if you are using a .xsession script in your home directory. If you are using dxsession (the default), this information does not apply. See the dxsession(1X) reference page for details. 
Section 2.4  The xinit command is not supported by Digital UNIX Version 4.0 
Section 3.5.4.1  The information about the Athena-style login box does not apply to the default Motif style login box used by the Digital UNIX X server. To customize the Motif style login box, modify the Xresources configuration file. To use an Athena style login box, modify the xdm configuration file to specify /usr/shlib/X11/libXdmGreet.so for the DisplayManager.greeterLib resource. 
Section 3.5.4.2  The dxconsole client is started by default, not the xconsole client. The dxconsole client presents the Motif interface. 
Section 3.5.5  The default Xsession file on the installation kit differs in a number of ways from the Xsession file shown in this section. The major difference is the invocation of dxsession and the affect that dxsession has on the window environment. See the xdm(1X) and dxsession(1X) reference pages for details. 
Section 3.7  This section does not describe how the xdm client is installed on Digital UNIX systems. When the boot process goes into multiuser mode, the symbolic links in /sbin/rc3.d are run in sequence as they appear in the directory. The last file to be run is a symbolic link to the xdm script , /sbin/init.d/xdm
Section 4.2.2  The xrsh command is not supported. Note that xon can be used as an alternative unless it is necessary to send authorization information to remote hosts. 
Section 4.4  The SUN-DES-1 mechanism for display access control is not supported. 
Section 5.1.4  The font paths shown in the example output for the xset commands differ from the default font paths on Digital UNIX systems. 
Section 5.5.2  To start the font server at boot time, create a symbolic link to a script in the /sbin/rc3.d directory. 
Section 7.3.1  The rarpd daemon is not supported. 
Section E.4  Much of the information in this section does not apply to Digital UNIX. See Section 2.2 for information on X server files on the Digital UNIX Version 4.0 installation kit. 


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.


FilesContents
/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.) 


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.

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.


Figure 2-1: The xdm Processes


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:

  1. The system uses the following command during the booting procedure to start the xdm daemon:
    /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

  2. The xdm program reads its main configuration file:
    /usr/var/X11/xdm/xdm-config

  3. The xdm program listens on its socket for requests from any X terminals.

  4. The xdm program forks a child process for managing the local display.

  5. The xdm program displays the login box (login widget) on the local display. For this procedure, xdm executes the following steps:

    1. Secures the display.

    2. Loads Xresources from the X server resource database utility xrdb. Loading the resources sets the display characteristics for the xdm login box.

    3. Runs the Xsetup_0 setup script on the local display.

    4. Displays the login box (login widget) on the local display.

  6. The user enters his or her name and password in the login box. User authentication takes place ensures that the user is allowed to access this display.

  7. The login widget is destroyed and xdm runs the GiveConsole startup script on the local display using the root uid.

  8. The X session starts up as a child process using the user's id (uid). The startup action involves executing the /var/X11/xdm/Xsession script which either runs the user's $HOME/.xsession script or dxsession.

  9. The user exits the session.

  10. The xdm program runs the /var/X11/xdm/TakeConsole script on the local display using root's uid.

  11. The xdm local display process exits. At this point the workstation returns to the state it was in at step 4, where xdm forks a child process for managing the local display and displays the login widget. The workstation is ready for a user to log in.

On Digital UNIX, the /var/X11/xdm directory contains the following files:

The following files are the default and alternate greeter modules. They are located in the /usr/shlib/X11 directory:


     libXdmDecGreet.so
     libXdmGreet.so

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

2.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.

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

2.6.1    Login Problems

If you cannot log in at all to your workstation, you should check for errors in the following places:

The following list describes the most common login problems and likely causes:


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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

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.

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
>!

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 Xdec(1X) reference page.

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 Xdec(1X) reference page or run Xdec with the -? option for more information.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.

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:

/var/X11/fs/config

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.


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

The following list explains the elements in the file:


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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

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:

/sbin/rc3.d/S94fs -> ../init.d/fs
For more details, see the rc3(8) reference page.

The following example shows a sample font server initialization script:

#!/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


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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).

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:

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:

cream:0 foreign

With such a connection, the xdm utility immediately displays a login window on the X terminal.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

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.


[Return to Library]  [TOC]  [PREV]  --SECT  SECT--  [NEXT]  [INDEX] [Help]

2.11.1    General Observations About X Server Memory Growth

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.