[Digital logo]
[HR]

OpenVMS System Manager's Manual


Previous | Contents

16.9.8.2 Privileged Shareable Images

A privileged shareable image is a shareable image with defined entry points that execute in inner (executive or kernel) mode. Inner-mode entry points in shareable images are referred to as user-written system services.

To create a privileged shareable image, you must:

  1. Create a program section with the VECTOR attribute containing a PLV (privileged library vector) data structure.
  2. Link the shareable image with the /PROTECT command qualifier or the PROTECT= option of the Linker utility, so that the image acquires its particular form of enhanced privileges.
  3. Install the privileged shareable image with the Install utility, specifying both the /PROTECTED and the /SHARED qualifiers. The /PROTECTED qualifier assigns the protected attribute. The /SHARED qualifier assigns the shareable attribute. See Section 16.9.3 for information about these attributes.

    Note

    You cannot grant privileges to a shareable image using the /PRIVILEGED qualifier for the INSTALL commands ADD or CREATE. This qualifier works only for executable images.

    For more information on creating privileged shareable images, see the OpenVMS Programming Concepts Manual.

    16.9.9 Activating Images in a Privileged Context

    When a process does one of the following, the image activator enters a restricted mode of operation similar to that entered when a privileged program is run:

    In this mode of operation:


    Note

    The executable image that calls an execute-only shareable image must be installed with the /EXECUTE_ONLY qualifier, which enables the executable image to activate shareable images to which the process has execute but not read access.

    The /EXECUTE_ONLY qualifier has meaning only for executable images.

    This restriction assures that shareable images running in a privileged context can be trusted to behave as expected.


    16.9.10 Specifying File Names in INSTALL

    When you use INSTALL commands, your file specifications must name existing executable or shareable images. OpenVMS RMS resolves each file specification using the following defaults:

    You can specify a specific version of the file as the known version of the image with the CREATE or REPLACE command. Even if other versions of the file exist, the version that you specify will be the version that satisfies all known file lookups for the image.

    16.9.11 Installing Images with INSTALL

    Before performing this task, you should understand the following:

    How to Perform This Task

    1. Give yourself the CMKRNL privilege by entering the following command:
      $ SET PROCESS/PRIVILEGES=CMKRNL
      
    2. Invoke INSTALL by entering the following command:
      $ INSTALL
      
    3. Enter the CREATE command in the following format:
      CREATE file-spec [/qualifier...] 
      


      Specify one or more of the following qualifiers, depending on which attributes you want to assign to the image:

      • /EXECUTE_ONLY
      • /HEADER_RESIDENT
      • /OPEN
      • /PRIVILEGED
      • /PROTECTED
      • /RESIDENT (Alpha systems only)
      • /SHARED
      • /WRITABLE

      For more information on installing images, see the INSTALL command CREATE in the OpenVMS System Management Utilities Reference Manual.

      Note

      Installing the Install utility itself requires that a number of shareable images have been previously installed. If any of those required shareable images (such as SMG$SHR, LIBOTS, and so on) is unavailable, the execution of the Install utility fails. Since INSTALL will not work in this situation, you cannot simply install the missing images. To work around this problem, redefine the INSTALL command as follows:
      $ DEFINE INSTALL SYS$SYSTEM:INSTALL.EXE;0
      

      When you now enter the INSTALL command, the image activator does not check the known files list for INSTALL.EXE, and the INSTALL command will complete, allowing you to install the required shareable images.


      16.9.12 Displaying Known Images with INSTALL

      Use the INSTALL command LIST to display information about known images.

      The information displayed with the /FULL qualifier of the LIST command can help you determine if installing an image is worth the expense.

      How to Perform This Task

      1. Invoke INSTALL by entering the following command:
        $ INSTALL
        
      2. To display a list of all known images and their attributes, enter the LIST command. To display attributes for a specific image, specify the name of the image as follows:
        LIST file-spec 
        

        For example:
        INSTALL> LIST LOGINOUT
        
      3. To display complete information about a specific image, including the number of accesses, the number of concurrent accesses, and the number of global sections created, specify the /FULL qualifier as follows:
        LIST/FULL file-spec 
        

      Example

      The following example displays complete information about the installed image LOGINOUT.EXE, including the number of accesses, the number of concurrent accesses, and the number of global sections created:

      $ INSTALL
      INSTALL> LIST/FULL LOGINOUT
      DISK$VMS551:<SYS2.SYSCOMMON.SYSEXE>.EXE 
         LOGINOUT;2       Open Hdr Shar Prv 
              Entry access count         = 36366 
              Current / Maximum shared   = 1 / 10 
              Global section count       = 3 
              Privileges = CMKRNL SYSNAM LOG_IO ALTPRI TMPMBX SYSPRV 
      INSTALL> 
      

      16.9.13 Defining Logical Names for Shareable Image Files

      If a shareable image is not located in SYS$SHARE, you must define a logical name for that image in order to run an executable image linked against it. For example, if the file specification for STATSHR is SYS$SHARE:STATSHR.EXE, no logical name is necessary. But if you put STATSHR in SYS$DEVICE:[TEST], you must define STATSHR as a logical name before running an executable image that calls it. The logical name must be the same one that was used as the input file specification for the shareable image when it was linked (this is the same name used in installation). For example:

      $ DEFINE STATSHR SYS$SYSDEVICE:[TEST]STATSHR
      

      By redefining the logical name of a shareable image, you can replace that shareable image with another without requiring the calling executable image to relink. For example, the following statement redefines the file name STATSHR. It becomes the logical name of the shareable image SYS$SYSDEVICE:[MAIN]STATSHR.EXE for executable images calling STATSHR.

      $ DEFINE STATSHR SYS$SYSDEVICE:[MAIN]STATSHR
      

      Note

      Logical names defined in the process or group logical name table are ignored when you run a privileged executable image. Only logical names and table names defined in executive or kernel modes are used to find the image.

      16.9.14 Removing Known Images

      The INSTALL command REMOVE removes a known file entry for an image and deletes any global sections created when the image was installed. Note that a volume cannot be dismounted while any known file entries are associated with it. To dismount a volume, you must delete all known images associated with it. You must also wait for all processes using those images to exit. Use the DCL command SHOW DEVICES/FILES to determine the status of the files.

      For more information on the INSTALL command DELETE, see the INSTALL section of the OpenVMS System Management Utilities Reference Manual.


      Chapter 17
      Testing the System with UETP

      This chapter explains how to use UETP (user environment test package) to test whether the OpenVMS operating system is installed correctly.

      17.1 Overview

      This overview summarizes what UETP does and how you use it. The rest of the chapter provides detailed instructions for setting up your system for testing, running the tests, and troubleshooting errors.

      Information Provided in This Chapter

      This chapter describes the following tasks:
      Task Section
      Running UETP (a summary) Section 17.1.2
      Preparing to use UETP Section 17.2
      Setting up the devices to be tested Section 17.3
      Starting UETP Section 17.4
      Stopping a UETP operation Section 17.5
      Troubleshooting: identifying and solving problems Section 17.7

      This chapter explains the following concepts:
      Concept Section
      Understanding UETP Section 17.1.1
      Troubleshooting (an overview) Section 17.6
      UETP Tests and Phases Section 17.8

      17.1.1 Understanding UETP

      UETP is a software package designed to test whether the OpenVMS operating system is installed correctly. UETP puts the system through a series of tests that simulate a typical user environment by making demands on the system that are similar to demands that can occur in everyday use.

      UETP is not a diagnostic program; it does not attempt to test every feature exhaustively. When UETP runs to completion without encountering nonrecoverable errors, the system being tested is ready for use.

      UETP exercises devices and functions that are common to all OpenVMS systems, with the exception of optional features such as high-level language compilers. The system components tested include the following:

      • Most standard peripheral devices
      • System's multiuser capability
      • DECnet for OpenVMS software
      • Clusterwide file access and locks

      17.1.2 Summary of How to Use UETP

      This section summarizes the procedure for running all phases of UETP with default values. If you are familiar with the test package, refer to this section. If you want additional information, refer to Section 17.2.


      Note

      If you are using UETP on an OpenVMS Alpha system, you must execute the CREATE_SPECIAL_ACCOUNTS.COM command procedure to create the SYSTEST and SYSTEST_CLIG accounts before you begin the following procedure. For complete information about the CREATE_SPECIAL_ACCOUNTS.COM command procedure, see Section 6.4.

      1. Log in to the SYSTEST account as follows:
        Username: SYSTEST
        Password:
        

        Caution

        Because the SYSTEST and SYSTEST_CLIG accounts have privileges, unauthorized use of these accounts can compromise the security of your system.

      2. Make sure no user programs are running and no user volumes are mounted.

        Caution

        By design, UETP assumes and requests the exclusive use of system resources. If you ignore this restriction, UETP can interfere with applications that depend on these resources.

      3. After you log in, check all devices to be sure that the following conditions exist:
        • All devices you want to test are powered up and are on line to the system.
        • Scratch disks are mounted and initialized.
        • Disks contain a directory named [SYSTEST] with OWNER_UIC=[1,7]. (You can create this directory with the DCL command CREATE/DIRECTORY.)
        • Scratch magnetic tape reels are physically mounted on each drive you want tested and are initialized with the label UETP (using the DCL command INITIALIZE). Make sure magnetic tape reels contain at least 600 feet of tape.
        • Scratch tape cartridges have been inserted in each drive you want to test and are initialized with the label UETP (using the DCL command INITIALIZE).
        • Line printers and hardcopy terminals have plenty of paper.
        • Terminal characteristics and baud rate are set correctly. (See the user's guide for your terminal.)

        Note that some communication devices need to be set up by Multivendor Customer Services. (See Section 17.3.)
        If you encounter any problems in preparing to run UETP, read Section 17.3 before proceeding.
      4. To start UETP, enter the following command and press Return:
        $ @UETP
        

        UETP responds with the following question:
        Run "ALL" UETP phases or a "SUBSET" [ALL]? 
        

        Press Return to choose the default response enclosed in brackets. UETP responds with the following sequence of questions:
        How many passes of UETP do you wish to run [1]? 
        How many simulated user loads do you want [4]? 
        Do you want Long or Short report format [Long]? 
        

        Press Return after each prompt. After you answer the last question, UETP initiates its entire sequence of tests, which run to completion without further input. The final message should look like the following:
        ***************************************************** 
        *                                                   * 
           END OF UETP PASS 1 AT 22-JUN-1996 16:30:09.38 
        *                                                   * 
        ***************************************************** 
        

        Note

        If you want to run UETP without using the default responses, refer to Section 17.4, which explains your options.

      5. After UETP runs, check the log files for errors. If testing completes successfully, the OpenVMS operating system is in proper working order.
        If UETP does not complete successfully, refer to Section 17.6 for information on troubleshooting.

        Note

        After a run of UETP, you should run the Error Log utility to check for hardware problems that can occur during a run of UETP. For information on running the Error Log utility, refer to the OpenVMS System Management Utilities Reference Manual.

        17.2 Preparing to Use UETP

        This section contains detailed instructions for running UETP, including:
        • Logging in
        • Using the [SYSTEST] directory

        17.2.1 Logging In

        Obtain the SYSTEST password from your system manager. Log in to the SYSTEST account from the console terminal as follows:

        Username: SYSTEST
        Password:
        

        Note

        Because SYSTEST has privileges, unauthorized use of this account can compromise the security of your system.

        UETP will fail if you do not run the test from the SYSTEST account. Also, if you try to run UETP from a terminal other than the console terminal, the device test phase displays an error message stating that the terminal you are using is unavailable for testing. You can ignore this message.

        After you log in to the SYSTEST account, enter the command SHOW USERS to make sure no user programs are running and no user volumes are mounted. UETP requires exclusive use of system resources. If you ignore this restriction, UETP can interfere with applications that depend on these resources.


        Note

        The information contained in Section 17.7.2 can help you identify and solve problems, including wrong quotas, privileges, or accounts, that could occur when you are running UETP. Refer to this section before you run UETP.

        17.2.2 Using the SYSTEST Directories

        If you logged in successfully, your default directory is [SYSTEST] on the system disk. UETP uses this directory to hold all the files used by UETP command procedure (UETP.COM) and temporary files used by UETP during testing.

        On a typical system, the DCL command SHOW LOGICAL displays the translation of the logical name SYS$TEST:

        $ SHOW LOGICAL SYS$TEST
           "SYS$TEST" = "SYS$SYSROOT:[SYSTEST]"  (LNM$SYSTEM_TABLE)
        

        To use UETP to test a particular disk, such as a scratch disk, create either a [SYSTEST] directory or a [SYS0.SYSTEST] directory on that disk. Section 17.3.3 discusses setting up scratch disks for testing.

        17.3 Setting Up the Devices to Be Tested

        After you log in, set up the devices on the system for UETP testing, as described in the following sections. Note that your system might not have all the devices described in this section.

        17.3.1 Check Your Devices

        Examine all devices that UETP will use to be sure that the following conditions exist:

        • All devices you want to test are turned on and are on line.
        • Scratch disks are initialized and mounted.
        • Disks contain a directory named [SYSTEST] with OWNER_UIC=[1,7]. Use the CREATE/DIRECTORY command if the [SYSTEST] directory does not exist on the disk.
        • Scratch magnetic tape reels are physically mounted on each drive you want tested and are initialized with the label UETP (using the DCL command INITIALIZE). Make sure magnetic tape reels contain at least 600 feet of tape.
        • Scratch tape cartridges have been inserted in each drive you want to test and are mounted and initialized with the label UETP (using the DCL command INITIALIZE).
        • Line printers and hardcopy terminals have plenty of paper.
        • Terminal characteristics and baud rate are set correctly (see the user's guide for your terminal).

        Note that some communications devices discussed in this section must be set up by Multivendor Customer Services.

        17.3.2 System Disk Space Required

        Before running UETP, be sure that the system disk has at least 1200 blocks available. Note that systems running more than 20 load test processes can require a minimum of 2000 available blocks. If you run multiple passes of UETP, log files will accumulate in the default directory and further reduce the amount of disk space available for subsequent passes.

        If disk quotas are enabled on the system disk, disable them before you run UETP.

        17.3.3 How UETP Works on Disks

        The disk test phase of UETP uses most of the available free space on each testable disk in the following manner:

        • On each testable disk, the device test phase tries to create two files. The size of these files depends on how much free space is available on the disk. Usually the test creates each file with 0.1% of the free space on the disk. However, if the disk is almost full, the test creates files that are 5 blocks. If the test cannot create 5 block files, it fails. Only the initial file creation can cause the device test to fail because it lacks disk space.
        • The test randomly reads and writes blocks of data to the files. After every multiple of 20 writes for each file, the test tries to extend the file. The size of this extension is either 5% of the free disk space or 5 blocks if the file was created with 5 blocks. This process of extension continues until the combined space of the files reaches 75% of the free disk space.

        By creating and extending fragmented files in this way, UETP exercises the disk. This allows the test to check for exceeded quotas or a full disk, and to adjust for the amount of available disk space.

        As with other disks, shadow sets and volume sets can be tested with UETP; the expectation is that the individual members will be listed as untestable during UETINIDEV (initialization of UETP). UETINIDEV lists errors when testing using a shadow set during the system disk (UETDISK00) pass, however, the shadow set is listed as testable. When testing using a volume set, errors will be noted against all but relative volume number 1, and all but relative volume 1 will be listed as untestable at the end of UETINIDEV.

        17.3.4 Prepare Disk Drives

        To prepare each disk drive in the system for UETP testing, use the following procedure:

        1. Place a scratch disk in the drive and spin up the drive. If a scratch disk is not available, use any disk with a substantial amount of free space; UETP does not overwrite existing files on any volume. If your scratch disk contains files that you want to keep, do not initialize the disk; go to step 3.
        2. If the disk does not contain files you want to save, initialize it. For example:
          $ INITIALIZE DUA1: TEST1
          

          This command initializes DUA1 and assigns the volume label TEST1 to the disk. All volumes must have unique labels.
        3. Mount the disk. For example:
          $ MOUNT/SYSTEM DUA1: TEST1
          

          This command mounts the volume labeled TEST1 on DUA1. The /SYSTEM qualifier indicates that you are making the volume available to all users on the system.
        4. UETP uses the [SYSTEST] directory when testing the disk. If the volume does not contain the directory [SYSTEST], you must create it. For example:
          $ CREATE/DIRECTORY/OWNER_UIC=[1,7] DUA1:[SYSTEST]
          

          This command creates a [SYSTEST] directory on DUA1 and assigns a user identification code (UIC) of [1,7]. The directory must have a UIC of [1,7] to run UETP.

        If the disk you have mounted contains a root directory structure, you can create the [SYSTEST] directory in the [SYS0.] tree.

        17.3.5 Magnetic Tape Drives

        Set up magnetic tape drives that you want to test by performing the following steps:

        1. Place a scratch magnetic tape with at least 600 feet of magnetic tape in the tape drive. Make sure that the write-enable ring is in place.
        2. Position the magnetic tape at the BOT (beginning-of-tape) and put the drive on line.
        3. Initialize each scratch magnetic tape with the label UETP. For example, if you have physically mounted a scratch magnetic tape on MUA1, enter the following command and press Return:
          $ INITIALIZE MUA1: UETP
          

          Magnetic tapes must be labeled UETP to be tested. As a safety feature, UETP does not test tapes that have been mounted with the MOUNT command.

        If you encounter a problem initializing the magnetic tape or if the test has a problem accessing the magnetic tape, refer to the description of the INITIALIZE command in the OpenVMS DCL Dictionary.

        17.3.6 Tape Cartridge Drives

        To set up tape cartridge drives you want to test, do the following:

        1. Insert a scratch tape cartridge in the tape cartridge drive.
        2. Initialize the tape cartridge. For example:
          $ INITIALIZE MUA0: UETP
          

          Tape cartridges must be labeled UETP to be tested. As a safety feature, UETP does not test tape cartridges that have been mounted with the MOUNT command.

        If you encounter a problem initializing the tape cartridge, or if the test has a problem accessing the tape cartridge, refer to the description of the DCL INITIALIZE command in the OpenVMS DCL Dictionary.

        TLZ04 Tape Drives

        During the initialization phase, UETP sets a time limit of 6 minutes for a TLZ04 unit to complete the UETTAPE00 test. If the device does not complete the UETTAPE00 test within the allotted time, UETP displays a message similar to the following:

        -UETP-E-TEXT, UETTAPE00.EXE testing controller MKA was stopped ($DELPRC) 
                at 16:23:23.07 because the time out period (UETP$INIT_TIMEOUT) 
                expired or because it seemed hung or because UETINIT01 was aborted. 
        

        To increase the timeout value, enter a command similar to the following before running UETP:

        $  DEFINE/GROUP UETP$INIT_TIMEOUT "0000 00:08:00.00"
        

        This example defines the initialization timeout value to 8 minutes.

        17.3.7 Compact Disc Drives

        To run UETP on an RRD40 or RRD50 compact disc drive, you must first load the test disc that you received with your compact disc drive unit.

        17.3.8 Optical Disk Drives

        To run UETP on an RV60 drive, set up the RV64 optical disk-storage system, by doing the following:

        1. Use the Jukebox Control Software (JCS) to load an optical disk in each of the RV60 drives. JCS is a layered product on the OpenVMS operating system that comes with the RV64 and is responsible for controlling the robot arm that loads and unloads the disks.
        2. Initialize the optical disks with the label UETP, but do not mount them.

        UETP tests all the RV60s present in the RV64 simultaneously. Unlike the tape tests, UETP does not reinitialize the optical disks at the end of the test.

        17.3.9 Terminals and Line Printers

        Terminals and line printers must be turned on and on line to be tested by UETP. Check that line printers and hardcopy terminals have enough paper. The amount of paper required depends on the number of UETP passes that you plan to execute. Each pass requires two pages for each line printer and hardcopy terminal.


        Previous | Next | Contents | [Home] | [Comments] | [Ordering info] | [Help]

        [HR]

          6017P053.HTM
          OSSG Documentation
          22-NOV-1996 14:22:34.36
        

        Copyright © Digital Equipment Corporation 1996. All Rights Reserved.

        Legal