HP 3000 Manuals

PREPRUN [ MPE/iX Commands Reference Manual Volume I ] MPE/iX 5.0 Documentation


MPE/iX Commands Reference Manual Volume I

PREPRUN 

Prepares and executes a compiled compatibility mode program.

Syntax 

PREPRUN uslfile[,entrypoint] [;NOPRIV][;RL=filename][;PMAP]

                                    [     [      [[{*formaldesig}]]]]
[;NOCB][;DEBUG][;INFO=quotedstring] [;LMAP[;STDIN[[{=fileref    }]]]]
                                    [     [      [[{$NULL       }]]]]

[;MAXDATA=segsize][;PARM=parameternum]

[         [{*formaldesig  }]]
[;STDLIST=[{fileref [,NEW]}]][;STACK=stacksize]
[         [{$NULL         }]]

                              [     {G}]
[;DL=dlsize][;PATCH=patchsize][;LIB={P}]
                              [     {S}]

[;NOSYM][{;FPMAP  }][;CAP=capabilitylist]
        [{;NOFPMAP}]
Parameters 

uslfile               Actual file designator of the USL file to which the
                      program has been compiled.

entrypoint            Contains a character string, terminated by a blank,
                      specifying the entry point (label) in the program
                      where execution is to begin when the program is
                      executed.  The entrypoint parameter may be the
                      primary entry point or any secondary entry point in
                      the program's outer block.  Default is primary
                      entry point.

NOPRIV                Declaration that the program segments are to be
                      placed in nonprivileged (user) mode.  This
                      parameter is for programs prepared with privileged
                      mode (PM) capability and makes them accessible to
                      nonprivileged users.  Normally, program segments
                      containing privileged instructions are executed in
                      privileged mode only if the program was prepared
                      with privileged mode capability class.  (A program
                      containing legally compiled privileged code, placed
                      in nonprivileged mode, may abort when an attempt is
                      made to execute it.)  If NOPRIV is specified, all
                      segments are placed in nonprivileged mode.
                      (Library segments are not affected because their
                      mode is determined independently.)  Default is that
                      segments of a privileged mode program remain in
                      privileged mode.

PMAP                  Request to produce a descriptive listing of the
                      prepared program to a file whose formal file
                      designator is $SEGLIST. If $SEGLIST is not found in
                      a FILE command, the listing is produced on the
                      current list device.  Default is no listing.

DEBUG                 Request to issue a DEBUG call before the first
                      executable instruction of the program.  Unless the
                      user has READ and EXECUTE access to the program
                      file, this parameter is ignored.  If privileged
                      mode (PM) capability has been assigned, the user is
                      put into privileged mode debug.  If not, the user
                      is put into user mode debug.  Default is that the
                      DEBUG call is not issued.

LMAP                  Request to produce a descriptive listing of the
                      allocated (loaded) program to a file whose formal
                      file designator is LOADLIST. If no FILE command
                      referencing LOADLIST is found, the listing is
                      produced on $STDLIST. Default is no listing.

ZERODB                Request to initialize to zero the initially defined
                      user-managed (DL-DB) area and uninitialized
                      portions of the DB-Q (initial) area.  Default is
                      that these areas are not affected.

segsize               Maximum permitted stack area (Z-DL) in words.  This
                      parameter should be included when you expect that
                      the size of DL-DB or Z-DB areas will be changed
                      during program preparation or execution.
                      Regardless of what you specify, MPE/iX may change
                      the segsize to accommodate table overflow
                      conditions.

                      If you prepare your program with a segsize less
                      than the configured minimum, the value is rounded
                      up to the minimum or the amount needed by the
                      program (as calculated by the MPE segmenter).  The
                      maximum actual segsize permitted a program is
                      31,232 words.  You may prepare your program with a
                      segsize larger than necessary so long as this
                      maximum is not exceeded.  If the specified segsize 
                      does exceed the maximum, it will be rounded down to
                      31,232 words.

parameternum          An integer containing a parameter to be passed to
                      the new program (accessed through Q-4 of the outer
                      block).

stacksize             Size of local data area, Z-Q (initial), in the
                      stack, in words.  If it is specified, this value
                      must be between 511 and 32,767 words.  The default
                      is estimated by the MPE segmenter.

dlsize                DL-DB area to be initially assigned to stack.  Due
                      to system logging considerations, the DL-DB area is
                      always rounded upward, so that the distance from
                      the beginning of the stack data segment to the
                      DB-address is a multiple of 128 words.  The value
                      you specify must be between -1 and 32,767 words.
                      The default is estimated by the MPE segmenter.

G, P, or S            Searches the segmented procedure libraries of the
                      program file's group and account.  The G option
                      searches the group library, the account library,
                      and then the system library.  The P option searches
                      the account library then the system library.  The S
                      option searches the system library for external
                      references to segmented procedures.  Default is S.

capabilitylist        Capability class attributes associated with the
                      program, specified in two-character mnemonics.  If
                      more than one mnemonic is specified, each must be
                      separated from its neighbor by a comma.  The
                      mnemonics are:

                           IA   =   Interactive Access
                           BA   =   Local Batch Access
                           PH   =   Process Handling
                           DS   =   Extra Data Segments
                           MR   =   Multiple RINs
                           PM   =   Privileged Mode

                      You can specify only those attributes that you
                      possess through assignment by the account manager
                      or the system manager.  Default is IA and BA.

filename              Actual file designator of the relocatable library
                      (RL) file to be searched to satisfy external
                      references during preparation of the program.  This
                      can be any permanent file of type RL, to which you
                      must have READ and LOCK access.  It need not belong
                      to the logon group, nor does it require a reserved,
                      local name.  This file yields a single segment that
                      is incorporated into the segments of the program
                      file.  Refer to the MPE Segmenter Reference Manual 
                      (30000-90011) for a description of RL files.
                      Default is that no library is searched.

NOCB                  Request that the file system not use stack segment
                      (PCBX) for its control blocks, even if sufficient
                      space is available.  This permits you to expand
                      your stack (with the DLSIZE or ZSIZE intrinsics) to
                      the maximum possible limit at a later time.  It
                      does, however, cause the file management system to
                      operate more slowly for this program.

quotedstring          A sequence of characters between two single
                      quotation marks (apostrophes) or two double
                      quotation marks.  You may use the delimiting
                      character as part of the string so long as the
                      delimiter appears twice.  Any occurrence of two
                      single quotation marks, or two double quotation
                      marks in a row, is considered part of the string,
                      and, therefore, not the terminating delimiter.

                      The INFO=quotedstring parameter is used in some
                      programming languages (for example, COBOLII,
                      Pascal) to pass compiler options to a program.
                      These options appear before the first line of
                      source code in the text file.

$STDIN                This parameter allows the user to specify the file
                      to be used as $STDIN by the program being executed.
                      If omitted, or if nothing is specified after the
                      equal sign, such as $STDIN=, then $STDIN defaults
                      to the job or session's standard input device.  You
                      may use one of the following subparameters with
                      $STDIN=:

                      *formaldesig          The formal file designator
                                            for a file previously
                                            specified in a file equation.

                      fileref               The name of an existing
                                            permanent disk file.

                      $NULL                 The actual file designator of
                                            a system-defined file that is
                                            always treated as an empty
                                            file.

                                               *   When referenced by a
                                                   program as $STDIN,
                                                   that program receives
                                                   only an end-of-file
                                                   indication when
                                                   accessed.

                                               *   When referenced by a
                                                   program as $STDLIST,
                                                   the associated write
                                                   request is accepted by
                                                   MPE/iX, but no
                                                   physical output is
                                                   actually performed.
                                                   Thus, $NULL can be
                                                   used to discard
                                                   unneeded output from
                                                   an executing program.

STDLIST               This parameter allows the user to specify the file
                      to be used as $STDLIST by the program being
                      executed.  If $STDLIST is omitted, or if nothing is
                      specified after the equal sign, such as $STDLIST=,
                      then $STDLIST defaults to the job or session's
                      standard list device.  This parameter has the same
                      subparameters as $STDIN, but you may also specify
                      the keyword NEW.

                      NEW                   The name to be assigned to a
                                            job/session temporary disk
                                            file created with the system
                                            defaults.  The system
                                            defaults of the new file are
                                            fixed length ASCII 132-byte
                                            records with a maximum file
                                            size of 1023 records.

patchsize             Specifies the size of the patch area.  This size
                      applies to all segments within the program file.
                      The value specified must be within -1 and 16,380
                      words.

NOSYM                 Suppresses the symbolic DEBUG option.  Refer to the
                      HPToolset/V Reference Manual (32350-90001) for more
                      information.

FPMAP or NOFPMAP      Includes or excludes the internal PMAP information.
                      FPMAP is a request to have internal PMAP
                      information included in the program.  NOFPMAP
                      excludes PMAP information from the program when the
                      system FPMAP or job/session FPMAP is on.  If the
                      symbolic DEBUG option is invoked, default is FPMAP.
                      Otherwise, the default is NOFPMAP.

Operation Notes 

The PREPRUN command prepares and executes a program compiled in a USL
file.  Both relocatable (RL) and segmented (SL) libraries are searched
during the preparation process to satisfy external references.

The USL file created during compilation is a system-defined temporary
file, $OLDPASS, which is passed directly to the MPE segmenter.  It can be
accessed only if you do not use the default for progfile.  This is
because the segmenter also uses the file $OLDPASS to store the prepared
program segments, overwriting any existing temporary file of the same
name.

Use 

This command may be issued from a session, job, or program.  It may not
be used in BREAK. Pressing Break suspends the execution of this command.
Entering RESUME continues the execution.

Examples 

To prepare and execute a program from the USL file XUSL, with no special
parameters declared, enter:

     PREPRUN XUSL 

To obtain a descriptive listing of the prepared program, and a listing of
the allocated (loaded) program, enter:

     PREPRUN XUSL;PMAP;LMAP 

To prepare and execute a program from the USL file UBASE that begins
execution at the entry point RESTART, that has a stacksize of 800 words,
and searches an RL file named LIBA, enter:

     PREPRUN UBASE,RESTART;STACK=800;RL=LIBA 

The following example prepares and runs a program with $STDIN set to the
existing disk file INPUT. $STDLIST is set to the line printer:

     FILE LPFILE;DEV=LP 
     PREPRUN TESTPROG;MAXDATA=10000;$STDIN=INPUT;& 
     $STDLIST=*LPFILE 

The next example also uses the $STDIN= and $STDLIST= parameters to
prepare and run a program.  This time, a file equation is used to set
$STDIN to INPT, and to set $STDLIST to the temporary disk file RESULTS
(which is automatically created by the RUN command).

     FILE INFILE=INPT,OLD; 
     PREPRUN TESTPROG;DEBUG;$STDIN=*INFILE;$STDLIST=RESULTS,NEW 

The following example of the PREPRUN command uses the INFO= parameter to
pass a string to the program:

     PREPRUN MYPROG;MAXDATA=2000;INFO="A TEST WITH "" AND "" & 
     CHARACTERS" 

Note that the delimiting character is doubled within the string so that
it appears on the printout as follows:

     A TEST WITH "AND" CHARACTERS

Related Information 

Commands      PREP, RUN, XEQ

Manuals       MPE Segmenter Reference Manual (32650-60026)



MPE/iX 5.0 Documentation