HPlogo MPE/iX System Utilities Reference > Chapter 20 SAINT

Operation

MPE documents

Complete PDF
Table of Contents
Index


WARNING! Do not use this utility without service center support. Unauthorized use will void your warranty and may cause data loss.

The boot sequence expected by the boot image is described below:
  1. IPL locates the START file in the LIF directory and reads the first 128 words of that file, which is the operating system boot image.

  2. When the file has been identified as a valid bootable image, the file is booted into physical memory.

  3. The IPL auxiliary header contained in the boot image identifies the file relative location of the real entry point, and this location is used as an entry point to begin execution of real mode code.

  4. Launch first calculates the size of physical memory, and then finds the page information table (PIT) within the boot image to create the system page and hash tables.

  5. Next, launch allocates memory for the stack, system globals, and so on and initializes the value of system registers.

  6. When launch is ready to switch over to virtual addressing mode, it gets the location of the main virtual entry point from the boot image descriptor, and executes an RFI instruction to jump into Genesis.

Boot Image


Use the following SAINT utility commands to creat a boot image:
  1. To run the program, type RUN SAINT.GROUP.ACCT.

  2. Open and read the system library. For example, if your system library file is NL.ABUILD00.OFFICIAL, you enter:

    
       LOADSYSLIB NL.ABUILD00.OFFICIAL
    
    
  3. Open and read the CME. For example, if the CME is in the file CME.ABUILD01.OFFICIAL, you enter:

    
       LOADME CME.ABUILD01.OFFICIAL
    
    
  4. Open and read the millicode file. For example, if the millicode file is EXTMILLI.MILLI.OFFICIAL, you enter:

    
       LOADMIL EXTMILLI.MILLI.OFFICIAL
    
    
  5. Load the system cross-reference table and use it to build the boot image. For example, if the SXRT file is DSXRT.X.X, you enter:

    
       LOADSXRT DSXRT.X.X
       BUILDPME START,SXRT
    
    
  6. Enter EXIT to exit the SAINT utility.

Each of the SAINT utility commands are described below and on the following pages.

BUILDPME


This command creates the permanent boot image from the internal data structures (symbol tables, code arrays, and so on.) built by the SAINT utility in previous load commands. These data structures keep track of the information designated by the load commands previously invoked in this SAINT utility session.

Syntax

           BUILDPME  bootimagename  [,SXRT]

Parameters
bootimagename

The name of the boot image file. This parameter is required.

SXRT

A keyword designating whether or not a system cross-reference table should be built.

Example

           buildpme getit.gotit.good,sxrt

EXIT


This command terminates the SAINT utility, closes all files it is currently using, and returns control to the process that invoked this session of the SAINT utility.

Syntax

           EXIT

Parameters

             None

Example

           exit

FINDSYM


This command searches for the specified symbol name in the symbol table of the designated boot image and displays pertinent information if the symbol is found. If you do not specify a boot image file, SAINT uses the currently built boot image. If a boot image has not yet been built and you do not specify a boot image file, SAINT returns an error.

Syntax

           FINDSYM  symbolname [,filename]

Parameters
symbolname

The symbol to be found in the symbol table. This parameter is required.

filename

The name of the boot image file. The default is the currently built boot image.

Example

           FINDSYM system_abort,start.abuild01.official

HELP


This command displays a list of the SAINT utility commands in alphabetical order, plus a short description of each command's syntax and function. You can also enter the HELP command followed by a single command name to see the syntax and function of that specific command.

Syntax

           HELP

           HELP >commandname

Parameters
commandname

The name of the command for which you want information.

Examples:

           HELP

           HELP findsym

LOADCME


This command integrates a compatibility mode environment (CME) file into the current boot image file. SAINT appends the CME file to the current boot image and enters the offset of the CME within the boot image in the boot image descriptor record.

Syntax

           LOADCME  filename

Parameters
filename

The name of the CME file to be added. This parameter is required.

Example

           LOADCME why.captain.spalding

LOADMILLI


This command loads the system millicode file into the boot image.

Syntax

           LOADMILLI filename

Parameters
filename

The name of the SOM file containing the system macros. This parameter is required.

Example

           LOADMILLI foobar

LOADSXRT


This command opens the system cross-reference table declaration file (DSXRT), to be used when the SXRT is built by the BUILDPME command. The file is used to build the first section of the SXRT, which continues entries for all system entry points used by switches for CM.

Syntax

           LOADSXRT  filename

Parameters
filename

The name of the SXRT declaration file. This parameter is required.

Example

           LOADSXRT dsxrt.loader.exprmntl

LOADSYSLIB


This command opens a system library file and adds the contents to the boot image. It loads only those code pages that are designated as memory resident or initially resident into the boot image; it loads all data pages, regardless of residency declarations.

Syntax

           LOADSYSLIB  filename [realentrypoint]
                                [virtualentrypoint]
                                [syslib offset]

Parameters
filename

The name of the system library file. This parameter is required.

realentrypoint

The name of the entry point for the real code in the system library. The default is init_ivaaddr.

virtualentrypoint

The name of the entry point for the system library entry point. The default is start.

syslib offset

The virtual offset of the start of the system library. The default value is zero.

Example

           LOADSYSLIB nl.abuild00.official

MAP


This command generates a map of the boot images symbol table. It describes the location of the major components of the boot image. In addition, a flag in the command's parameter list turns on the display of symbolic information obtained from the library symbol tables contained within the boot image.

Syntax

           MAP [filename[,radix[,sym]]]

Parameters
filename

The name of the boot image file used to generate the map and symbol table. Default is PME under construction.

radix

The base in which to display numeric output.

SYM

A keyword which allows the display of symbolic information from the boot images tables.

Examples

           MAP

           MAP boot imagefile1,H,sym

Error Messages


The following pages list some of the more common error messages you may encounter, the probable cause and a suggested action.

The Physical Destination address is too small, will overlay ISL
CAUSE

The NL used to build this PME has the first-resident or initially resident page at a virtual address that is less than expected. The destination address is the address ISL will use to load the PME. If that destination address is lower than the end of ISL, the PME will not be loaded by ISL.

ACTION

Change the linker commands used to build the NL that is the source of the PME. The linked commands that affect the location of the pages are the limit option on the buildxl command and the cleanxl command.

The Physical Destination address is smaller than expected, MAY overlay ISL
CAUSE

The NL used to build this PME has the first-resident or initially resident page at a virtual address that is less than expected. The destination address is the address that ISL uses to load the PME. If that destination address is lower than the end of ISL, the PME is not loaded by ISL. The destination address may or may not be lower than the end of ISL. The end of ISL is dependent on:

  • type of boot

  • size of machine

  • size of code

ACTION

You may try and use the PME or change the linker commands used to build the NL that is the source of the PME. The linker commands that affect the location of the pages are the limit option on the buildxl command and the cleanxl command.

Internal ERROR. Attempt to read or write with index < 0
CAUSE

SAINT has attempted to read or write a file using an invalid index. This is an error in an input file or an internal error.

ACTION

If an input file is indicated, check the input file for correct format and contents; otherwise enter an SR and provide a copy of all the input files, the SAINT program, and any output file.

An IMPORT STUB entry point was not found in the library
CAUSE

One of the SOMs within the library (the NL loaded by SAINT loadsyslib command) has made a call to a procedure external to itself, and no other SOM in the library contains the procedure.

ACTION

Find out which SOM the called procedure should reside in (that is, console SOM, diagnostic SOM, and so on) and try relinking the library with another version of the SOM.

An SXRT entry point symbol was not found in the library
CAUSE

A procedure or intrinsic name in the DSXRT file (loaded by SAINT loadsxrt command) has no corresponding code in the library (the NL loaded by SAINT loadsyslib command).

ACTION

First make sure that the correct version of the DSXRT file is being used for the library. Once this has been verified, it is most likely that the warning message can be ignored. Sometimes obsolete entries are left in the DSXRT file but have no effect on system operation; however, if a warning message exists and the system is experiencing other problems (for example, will not boot), further diagnosis may be necessary. Contact the factory.

ERROR on move data, file num = xx escape code = yyyyyyy
CAUSE

When SAINT attempts to move data into a file and an error is detected by the operating system a trap code is returned to SAINT. There will be further error messages that will define the problem.

ACTION

Determine the problem from the messages that follow.

Error - OUT OF DISK SPACE or internal pointer error
CAUSE

The most common cause of this error is out of disk space. The other possible cause is that an internal pointer has an invalid value in it.

ACTION

First make sure that there is enough disk space on the volume set where the file is being written. Next check the limits on the group and account where the file is being written. The file name is in the

+-F-I-L-E—-I-N-F-O-R-M-A-T-I-O-N—-D-I-S-P-L-A-Y-+.

Correct the disk space problem. If there is enough disk space and the problem still exists, enter an SR describing the problem. Send supporting material: a store tape with a copy of all files used as input to SAINT, (NL,CME, DSXRT,EXTMILLI) a copy of the PME written, and the SAINT program.

Error - Unknown internal pointer error
CAUSE

An internal pointer has an invalid value in it. The file name is in the

+-F-I-L-E—-I-N-F-O-R-M-A-T-I-O-N—-D-I-S-P-L-A-Y+.

Enter an SR describing the problem. Send supporting material: A store tape with a copy of all files used as input to SAINT, (NL, CME, DSXRT, EXTMILLI) a copy of the PME written, and the SAINT program.

An SXRT file has not been defined
CAUSE

The buildpme command has been entered with the sxrt option and the loadsxrt file command has not been entered.

ACTION

Enter the "loadsxrt file" command specifying a valid DSXRT file.

Zero SXRT entries found in DSXRT file
CAUSE

The loadsxrt file command was entered specifying an empty DSRT file.

ACTION

Enter the loadsxrt file command specifying a valid DSXRT file.

Internal ERROR. The SXRT file has not been specified

Internal ERROR. Default entries not available
CAUSE

SAINT has reached a point where it thinks there is no SXRT file specified and it needs to get SXRT entries. This is an internal error condition.

ACTION

Enter an SR describing the problem and the steps taken. Send supporting material: a store tape with a copy of all files used as input to SAINT, (NL, CME, DSXRT, EXTMILLI) a copy of the PME written, and the SAINT program. Re-run the task specifying the loadsxrt file command with a valid DSXRT'' file.

Data region found in non-syslib file
CAUSE

Wrong file name supplied in loadmill command.

ACTION

Supply correct file name.

CAUSE

Millicode file corrupt.

ACTION

Re-install file from tape.

xxx is not a known loader fixup type
CAUSE

Millicode or syslib file is corrupt.

ACTION

Re-install file from tape.




Chapter 20 SAINT


Chapter 21 SLPATCH