Google
 

Trailing-Edge - PDP-10 Archives - scratch - 10,7/unscsp/script/script.mem
There are 4 other files named script.mem in the archive. Click here to see a list.


               SCRIPT EXTERNAL DOCUMENTATION

                       100-180-003-01
                         TONY LAUCK
                     REV: PETER CONKLIN
                    FILE: SCRIPT.RNO%006

                         25 JULY 70

























The information in this document is subject to change  without  notice
and  should  not  be  construed  as  a  comitment by Digital Equipment
Corporation.  Digital Equipment Corporation assumes no  responsibility
for and errors that may appear in this document.

The software described in this document is furnished under  a  license
and  may  be  used or copied only in accordance with the terms of such
license.

Digital Equipment Corporation assumes no responsibility for the use or
reliability  of  its  software  on  equipment  that is not supplied by
DIGITAL.

     Copyright (C) 1973,1979 by Digital Equipment Corporation

The following are trademarks of Digital Equipment Corporation:

DIGITAL        DECsystem-10   MASSBUS
DEC            DECtape        OMNIBUS
PDP            DIBOL          OS/8
DECUS          EDUSYSTEM      PHA
UNIBUS         FLIP CHIP      RSTS
SCRIPT      25 JULY 70    100-180-003-01                        Page 2


COMPUTER LABS  FOCAL          RSX
COMTEX         INDAC          TYPESET-8
DDT            LAB-8          TYPESET-10
DECCOMM        DECsystem-20   TYPESET-11
SCRIPT      25 JULY 70    100-180-003-01                        Page 3


THE PROGRAM DESCRIBED IN THIS MEMORANDUM  WAS  DEVELOPED  TO  AID  THE
STUDY  OF  THE  PDP-10 MONITOR.  IT IS NOT A SUPPORTED PRODUCT, BUT IS
AVAILABLE TO CUSTOMERS ON A FOR INFORMATION PURPOSES ONLY BASIS.





                               CONTENTS

          1  PURPOSE
          2  JOB CAPABILITY
          3  CONTROL FEATURES
          4  ANALYSIS OF RESULTS
          5  FORMAT OF SCRIPT FILES
          6  OPERATING INSTRUCTIONS
SCRIPT      25 JULY 70    100-180-003-01                        Page 4


1.0            PURPOSE

THE  SCRIPT  PROGRAM  ALLOWS  PREDETERMINED   SEQUENCES   OF
CHARACTERS  TO  BE  SENT  OVER MULTIPLE PSEUDO-TELETYPES AND
THEREBY ALLOW THE SIMULATION OF A LOAD ON  THE  TIME-SHARING
SYSTEM.   THE  RESULTS  OF  A RUN CAN BE WATCHED ON-LINE AND
STATISTICS OF RESPONSE TIME, ETC.  CAN BE  RECORDED  ON  THE
SYSTEM DISK.

2.0            JOB CAPABILITY

THE SCRIPT PROGRAM HAS BEEN WRITTEN AS A REENTRANT  PROGRAM.
THE CODE AND TEXT TO BE SENT ARE IN THE HIGH SEQMENT AND CAN
BE SHARED BY SEVERAL JOBS, EACH WITH A 1K LOW SEGMENT.  EACH
JOB  CAN  CONTROL  UP  TO 14 JOBS, SO IT BECOMES POSSIBLE TO
SIMULATE A LARGE NUMBER OF PDP-10 TIME-SHARING USERS.
SCRIPT      25 JULY 70    100-180-003-01                        Page 5
CONTROL FEATURES


3.0            CONTROL FEATURES

THE SCRIPT IS LOADED INTO THE HIGH SEGMENT FROM  ANY  PDP-10
INPUT  DEVICE.   IN ADDITION TO THE TEXT TO BE SENT, CONTROL
COMMANDS CAN BE INCLUDED TO DETERMINE THE SPEED AT WHICH THE
SIMULATED USERS WILL OPERATE.

3.1            TIMING PARAMETERS

PARAMETERS  SUBJECT  TO  VARIATION  INCLUDE  TYPE-IN   TIME,
TYPE-OUT  TIME,  AND  USER  "THINK"  TIME.   THE TYPE-IN AND
TYPE-OUT TIME CAN BE SPECIFIED AS A CONSTANT OR AS  A  RATE,
IN  WHICH  CASE  THE  TIME  WOULD  DEPEND  ON  THE NUMBER OF
CHARACTERS SENT OR RECEIVED.  THE "THINK" TIME IS BROKEN  UP
INTO TWO PARTS:  1) THE ALLOWED RESPONSE TIME, AND 2) "FREE"
TIME.  IF THE COMPUTER GIVES  INSTANTANEOUS  RESPONSE  TO  A
COMMAND,  THE  TOTAL  DELAY  IS  SIMPLY  THE  SUM OF THE TWO
QUANTITIES.  IF RESPONSE IS GREATER  THAN  ALLOWED,  "THINK"
TIME  IS EQUAL TO THE "FREE" TIME.  IN BETWEEN, "THINK" TIME
IS THE SUM OF ALLOWED RESPONSE PLUS "FREE"  TIME  MINUS  THE
ACTUAL  COMPUTER  RESPONSE  TO  THE COMMAND.  ONE ADDITIONAL
TIME FACTOR ALLOWED IS THE ABILITY TO SET A MAXIMUM RESPONSE
PLUS  TYPE-OUT  DELAY  FOR  A GIVEN COMMAND.  IF THE COMMAND
EXCEEDS THIS LIMIT, THEN THE JOB IS INTERRUPTED  BY  SENDING
TWO  CONTROL-C  CHARACTERS  OVER  THE PSEUDO TELETYPE.  THIS
ALLOWS  A  SCRIPT  TO  INCLUDE  PROGRAM  LOOPS   WHICH   ARE
INTERRUPTED  AFTER  A SPECIFIED TIME INTERVAL.  THE OPERATOR
CAN MULTIPLY THESE DELAY TIMES BY  AN  INTEGER  FACTOR.   IN
PARTICULAR,  THEY  CAN BE SET TO 0 TO DEBUG A SCRIPT WITHOUT
THE DELAYS PRESENT.

3.2            REPETITION OF SCRIPTS

AN ADDITIONAL SCRIPT LANGUAGE FEATURE ALLOWS THE  SCRIPT  TO
SPECIFY  HOW  MANY TIMES IT WILL BE EXECUTED, SO THAT STEADY
STATE LOADING CONDITIONS CAN BE MEASURED.  THE OPERATOR  CAN
OVERRIDE THE REPEAT COUNT.

3.3            STAGGERING LOAD BUILDUP

WHEN MULTIPLE JOBS ARE TO FOLLOW THE SCRIPT, THE SCRIPT  MAY
SPECIFY  A  STAGGERING  INTERVAL SO THAT LOAD BUILDUP CAN BE
GRADUAL.

3.4            MULTIPLE USER NUMBERS

AS AN OPTIONAL FEATURE, THE SCRIPT PROGRAM WILL CONVERT  THE
"#" CHARACTER INTO A TWO DIGIT OCTAL STRING EQUAL TO THE PTY
UNIT NUMBER.  THIS WILL ALLOW ONE SCRIPT TO LOG MANY JOBS IN
UNDER DIFFERENT NUMBERS OR FOR MULTIPLE JOBS TO USE SEPERATE
FILES.  ALL STANDARD SCRIPTS USE THIS FEATURE  TO  LOG  INTO
[4,777#].
SCRIPT      25 JULY 70    100-180-003-01                        Page 6
ANALYSIS OF RESULTS


4.0            LOGGING OF RESULTS

THE SCRIPT PROGRAM MAKES AN ENTRY IN THE LOG FILE  FOR  EACH
LINE OF PTY DATA SENT TO THE TIME-SHARING SYSTEM.  THE TIME,
IDENTITY OF A PARTICULAR JOB,  NUMBER  OF  CHARACTERS  SENT,
NUMBER  OF  CHARACTERS RECEIVED, NUMBER OF BUFFERS RECEIVED,
AND TOTAL RESPONSE TIME  ARE  ALL  RECORDED.   IN  ADDITION,
DELAYS  IN SENDING OR SIMULATING TELETYPE OUTPUT DUE TO POOR
SCRIPT PROGRAM RESPONSE ARE ALSO  RECORDED.   THIS  PROVIDES
SOME  IDEA  OF  HOW  THE  RESPONSE  TO  THE  CONTROLLING JOB
AFFECTED  SYSTEM  LOAD  AND  RESPONSE   TIME   MEASUREMENTS.
IDEALLY  THE CONTROLLLING JOB WOULD BE REAL-TIME, I.E.  HIGH
PRIORITY  AND  LOCKED  IN  CORE.   DELAYS  TO   THE   SCRIPT
INPUT/OUTPUT  LIGHTEN  THE OVERALL SYSTEM LOAD, WHILE DELAYS
IN RECEIVING REQUESTS FOR MORE INPUT ARE MEASURED AS IF  THE
USER  JOB  HAD  EXPERIENCED  WORSE RESPONSE THAN IT ACTUALLY
DID.

AS A FURTHER CHECK ON ERRORS IN RESPONSE  TIME  MEASUREMENTS
DUE  TO  POOR  SCRIPT  PROGRAM  RESPONSE, A "+" CHARACTER IS
OUTPUT WHEN POOR SCRIPT PROGRAM RESPONSE MAY HAVE CAUSED THE
PT WAKE FUNCTION IN THE MONITOR TO FAIL.  WHEN THIS HAPPENS,
THE SCRIPT PROGRAM WILL WAKE UP BASED ON ITS SLEEP  INTERVAL
AND  NOT  ON  OBJECT  JOB  RESPONSE.   NORMALLY, THE MONITOR
RESETS  THE  SLEEP  COUNT  WHEN   A   JOB   RUNNING   ON   A
PSEUDO-TELETYPE NEEDS SERVICE.  THE SCRIPT PROGRAM TESTS THE
PTY FLAGS, AND IF  THE  PTY  DOESN'T  NEED  SERVICE  SLEEPS.
IDEALLY,  THIS  SLEEP  WILL BE TERMINATED IMMEDIATELY BY THE
MONITOR.  HOWEVER, SHOULD THE SCRIPT PROGRAM BE  RESCHEDULED
BETWEEN  TESTING  THE  PTY  AND  DOING THE SLEEP, THIS CAN'T
HAPPEN.  IN THIS CASE, THE SCRIPT PROGRAM  COULD  SLEEP  FOR
ITS  MAXIMUM  INTERVAL.   THIS  COULD  BE  UP  TO 5 SECONDS.
UNFORTUNATELY, THERE IS NO WAY TO  TELL  IF  THIS  HAPPENED.
THE  "+" IS SET WHENEVER A JOB GETS RESPONSE AND THE TIME OF
DAY EXCEEDED THE TIME OF DAY  THE  SLEEP  ENTRY  WOULD  HAVE
TERMINATED.   THIS  CAN OCCUR ALSO DUE TO POOR RESPONSE ONCE
THE SLEEP INTERVAL HAS TERMINATED.

4.1            DEFINITION OF RESPONSE TIME

THE RESPONSE TIME MEASURED IS THE TOTAL TIME FROM OUTPUTTING
("TYPING")  A  LINE  OVER THE PTY UNTIL THE PROGRAM REQUESTS
THE NEXT LINE OR TIMES OUT TO TWO CONTROL-C CHARACTERS, LESS
TIME  SPENT SIMULATING TTY OUTPUT.  THUS, IF ONE LINE TO THE
SYSTEM PRODUCES 50 LINES OF OUTPUT, ONE RESPONSE  TIME  WILL
BE  RECORDED,  WHICH  IS THE TOTAL TIME THE USER WAS WAITING
FOR THE COMPUTER.
SCRIPT      25 JULY 70    100-180-003-01                        Page 7
ANALYSIS OF RESULTS


4.2            OVERLAP  AND  ITS  EFFECT  ON  RESPONSE  TIME
MEASUREMENTS

THERE IS ONE POSSIBLE DIFFICULTY:   OVERLAP  BETWEEN  OUTPUT
AND  THE  NEXT  INPUT.   NORMALLY AN OUTPUT-BOUND PROGRAM IS
WOKEN UP WHEN 8 CHARACTERS OF SPACE REMAIN  IN  THE  MONITOR
BUFFER.   THUS  A  0.8  SECOND  DELAY (AT 10 CHARACTERS/SEC)
WOULD NOT CAUSE A PAUSE IN TYPE-OUT.  UNFORTUNATELY, THE PTY
TRANSFERS A LINE AT A TIME, SO THIS OVERLAPPED TIME IS LOST.
THE NET AFFECT IS TO MAKE THE MEASURED RESPONSE TIMES LOOK A
LITTLE  WORSE  THAN  RESPONSE TIMES AN ACTUAL TTY USER WOULD
SEE.  INCIDENTALLY, SHOULD THE PROGRAM REQUEST  INPUT  WHILE
TYPEOUT  IS IN PROGRESS, ALL TYPEOUT DELAY WILL BE COMPLETED
BEFORE ACTING ON THE INPUT REQUEST.

4.3            DIFFERENT BUFFERING MODES

IF THE SCRIPT SPECIFIED OUTPUT AS A FUNCTION OF  TIME,  THEN
THE SCRIPT PROGRAM WAITS UNTIL THE DELAY IS UP, THEN DATA IS
TRANSFERRED OVER THE PTY TO THE SCRIPT  PROGRAM.   WHEN  THE
SCRIPT  SPECIFIES  AN  OUTPUT  RATE, THE SCRIPT PROGRAM MUST
FIRST READ THE DATA FROM THE PTY, DETERMINE THE  DELAY,  AND
THEN  SLEEP.   SPECIFYING  ONE  MODE  OR  THE  OTHER  MAY BE
APPROPRIATE  TO  PARTICULAR  PROGRAMS   DUE   TO   DIFFERENT
BUFFERING MODES.

4.4            ANALYSIS OF RESPONSE TIME RESULTS

IN ANY EVENT, THE USER MUST  ANALYZE  RESPONSE-TIME  RESULTS
WITH  A  KNOWLEDGE OF THESE FACTORS, AND AN UNDERSTANDING OF
THE OVERLAP BETWEEN USER PROGRAM BUFFERS,  MONITOR  BUFFERS,
AND  SCRIPT  BUFFERS.   ALTERNATELY, IF PSYCHOLOGICAL SYSTEM
PERFORMANCE IS  IMPORTANT,  THE  USER  CAN  USE  THE  SYSTEM
MANUALLY  AND  SEE HOW CLEVERLY THE SYSTEM IS CONCEALING ITS
RESPONSE.  THE MAIN PURPOSE OF  THE  SCRIPT  PROGRAM  IS  TO
OBTAIN  CONSISTENT  RELATIVE  RESPONSE FIGURES TO ASSESS THE
EFFECT OF HARDWARE AND SOFTWARE CHANGES IN THE  TIME-SHARING
SYSTEM.
SCRIPT      25 JULY 70    100-180-003-01                        Page 8
FORMAT OF SCRIPT FILES


5.0            FORMAT OF SCRIPT FILES

5.1            COMMAND LINES

A SCRIPT FILE CONSISTS OF SCRIPT  LINES  WHICH  END  WITH  A
<LINE  FEED>  CHARACTER.   SCRIPT  LINES  ARE EITHER COMMAND
LINES OR TEXT LINES.  COMMAND  LINES  ARE  USED  TO  CONTROL
TYPING  AND OPERATION OF THE SCRIPT PROGRAM.  TEXT LINES ARE
SENT OVER THE PSEUDO TELETYPE TO RUN THE OBJECT JOBS.

5.2            TEXT LINES

A COMMAND LINE BEGINS WITH ONE EXCLAMATION  POINT  WHICH  IS
FOLLOWED BY A NON-EXCLAMATION POINT CHARACTER.

A TEXT LINE BEGINS WITH NO EXCLAMATION POINT,  OR  WITH  TWO
EXCLAMATION  POINTS.   IN THIS CASE, ONLY THE SECOND IS SENT
TO THE OBJECT  JOB.   IF  A  SCRIPT  LINE  BEGINS  WITH  ONE
UP-ARROW,  THEN  THE UP-ARROW IS NOT SENT;  INSTEAD THE NEXT
CHARACTER  IS  CONVERTED   TO   A   CONTROL   CHARACTER   BY
COMPLEMENTING BIT 100.  TWO UP-ARROWS RESULT IN ONE UP-ARROW
BEING SENT.  (THE CR/LF AT THE END OF ANY LINE STARTING WITH
A SINGLE UP-ARROW ARE NOT SENT.)

NOTE THAT "!" AND "^" HAVE NO  SIGNIFICANCE  EXCEPT  AT  THE
BEGINNING OF A TEXT OR COMMAND LINE.

5.3            COMMAND LINE SYNTAX

COMMAND  LINES  CONSIST  OF  NUMBERS  AND  LETTER  SWITCHES.
SWITCHES  THAT  TAKE  NUMERICAL VALUES MAY BE PRECEEDED BY A
NUMBER.  A  NUMBER  CONSISTS  OF  POSSIBLY  ONE  MINUS  SIGN
FOLLOWED  BY  A  STRING  OF DECIMAL DIGITS.  THERE CAN BE NO
SPACES OR TABS BETWEEN THE START AND END OF  A  NUMBER.   AT
OTHER POINTS, SPACES AND TABS ARE IGNORED IN COMMAND LINES.

SHOULD A NUMBER NOT BE SPECIFIED, THE LAST  NUMBER  SUPPLIED
IS  ASSUMED.   IF  NO  VALUE  HAS  BEEN  SUPPLIED, A ZERO IS
ASSUMED AT THE START OF EACH COMMAND LINE.

CERTAIN LETTER SWITCHES MAY NOT HAVE NUMBERS ASSOCIATED WITH
THEM.   THESE  SWITCHES  MAY  NOT  BE  PRECEEDED BY A NUMBER
UNLESS THERE IS AN INTERVENING LETTER SWITCH THAT  ALLOWS  A
NUMBER.

ILLEGAL CHARACTERS OR BAD SYNTAX RESULT  IN  AN  ERROR  WHEN
PROCESSING  JOBS.   THESE  ERRORS  ARE NOT DETECTED WHEN THE
SCRIPT IS LOADED INTO THE HIGH SEGMENT.
SCRIPT      25 JULY 70    100-180-003-01                        Page 9
FORMAT OF SCRIPT FILES


A COMMAND LINE MAY INCLUDE A COMMENT BY USING  A  SEMICOLON.
A  DOUBLE  SEMICOLON  AND  ANY  CHARACTERS  REMAINING ON THE
COMMAND LINE ARE DELETED WHEN THE SCRIPT IS  LOADED  AND  SO
USE  NO  CORE AT RUN-TIME.  THE FIRST 6 CHARACTERS FOLLOWING
THE FIRST PERCENT SIGN OF THE DOUBLE  SEMICOLON  COMMENT  OF
THE  FIRST  SCRIPT  LINE  (IF ANY) ARE TAKEN AS THE SCRIPT'S
VERSION NUMBER (USUALLY "%NNN").

A COMMAND LINE MUST NOT END WITH A NUMBER.   THUS  A  LETTER
SWITCH MUST FOLLOW ANY NUMBER IN A COMMAND LINE.


5.4            LETTER SWITCHES

I   IF NON-NEGATIVE ARGUMENT SUPPLIED   -- SETS TYPE-IN
                                        DELAY
    IF NEGATIVE ARGUMENT SUPPLIED       -- SETS TYPE-IN
                                        RATE.

O   SAME AS I EXCEPT THAT IT SETS TYPE-OUT RATE.

R   IF NON-NEGATIVE ARGUMENT SUPPLIED   -- SETS ALLOWED
                                        RESPONSE TIME

F   IF NON-NEGATIVE ARGUMENT SUPPLIED   -- SETS FREE TIME

S   IF NON-NEGATIVE ARGUMENT SUPPLIED   -- SETS STAGGER TIME

T   IF POSITIVE ARGUMENT SUPPLIED       -- SETS NUMBER OF
                                        TIMES TO DO SCRIPT.

C   IF A POSITIVE ARGUMENT SUPPLIED     -- SETS MAXIMUM
                                        DELAY BEFORE PROGRAM
                                        SENDS ^C^C
    IF ZERO ARGUMENT SUPPLIED           -- INHIBITS SENDING
                                        ^C^C TIME-OUT

L   NO ARGUMENTS ALLOWED                -- SETS L MODE FLAG

N   NO ARGUMENTS ALLOWED                -- CLEARS L MODE
                                        FLAG

U   NO ARGUMENTS ALLOWED                -- SETS U MODE FLAG

V   NO ARGUMENTS ALLOWED                -- CLEARS U MODE
                                        FLAG

Q   IF POSITIVE ARGUMENT SUPPLIED       -- SETS NUMBER OF
                                        EXPECTED ERRORS
    IF ZERO ARGUMENT SUPPLIED           -- INHIBITS ERROR
                                        CHECKING
        (APPLIES FOR NEXT LINE ONLY)

X   NO ARGUMENTS ALLOWED                -- REST OF LINE IS
SCRIPT      25 JULY 70    100-180-003-01                       Page 10
FORMAT OF SCRIPT FILES


                                        COMMENT TO OPERATOR


5.5 TIMING UNITS

TIMES ARE IN MILLISECONDS.  RATES ARE  IN  MILLISECONDS  PER
CHARACTER.

5.6 L MODE

WHEN L MODE IS SET <CR> AND <LF> WILL NOT BE SENT  OVER  THE
PTY.   THUS  A  LINE ENDING WITH <ALTMODE> CAN BE SENT.  ANY
LINE MUST END  HOWEVER  WITH  A  FULL  CHARACTER  SET  BREAK
CHARACTER DUE TO A LIMITATION IN THE PTY.

5.7 U MODE.

WHEN SET U MODE CONVERTS "#" IN TEXT LINES INTO A STRING  OF
TWO  OCTAL  DIGITS  EQUAL  TO THE PTY UNIT NUMBER.  (LEADING
ZEROS WILL BE INCLUDED.)  ALL DEC SCRIPTS USE  THIS  FEATURE
TO  LOG  IN THE JOB UNDER PPN 4,77700 THROUGH 4,77777 (I.E.,
4,777#).

5.8 INITIAL VALUES.

AT THE START OF EACH  PASS  OVER  A  SCRIPT,  THE  FOLLOWING
PARAMETERS  ARE SET UP.  ALL REMAINING QUANTITIES ARE SET TO
ZERO.

          TYPE IN RATE                  .3 SEC/CHAR
          TYPE OUT RATE                 .1 SEC/CHAR
          ALLOWED RESPONSE TIME         10 SEC
          FREE TIME                     7 SEC
          STAGGER TIME                  20 SEC/JOB
          REPEAT COUNT                  1 PASS
          U MODE ON, L MODE OFF
SCRIPT      25 JULY 70    100-180-003-01                       Page 11
FORMAT OF SCRIPT FILES


5.9 SAMPLE SCRIPT

!;;SAMPLE SCRIPT/PFC  25 JULY 1970           IDENTIFY SCRIPT
LOGIN                                        START LOGIN
4,777#                                       USE 4,77700+
XXXX#                                        PASSWORD
!XIN                                         TELL OPERATOR
DEL *.*                                      CLEAR DIRECTORY
MA FOO.F4
        TYPE 1
1       FORMAT (' HI')
        END
!L                                           TERMINATE
$EX$$
!N
EXECUTE FOO
KJOB                                         START LOGOUT
K                                            KILL FILES
!XOUT                                        TELL OPERATOR
SCRIPT      25 JULY 70    100-180-003-01                       Page 12
OPERATING INSTRUCTIONS


6.0 OPERATING INSTRUCTIONS

6.1

BUILD  A  TIME-SHARING  SYSTEM  WITH  SUFFICIENT  JOBS   AND
PSEUDO-TELETYPES.   ONE  CONTROL JOB WILL BE NEEDED FOR EACH
14 JOBS FOLLOWING THE SCRIPT.

6.2

CREATE AN APPROPRIATE SCRIPT.

6.3

START THE SCRIPT PROGRAM.


6.4

IT WILL TYPE OUT THE NAME OF THE  CURRENTLY  LOADED  SCRIPT.
IF THE SEGMENT IS SHARABLE, IT WILL GO TO STEP 6.10.

6.5

IF THE SEGMENT IS NOT SHARABLE, IT ASKS  "WHERE  TO  LOAD  A
SCRIPT?".   TYPE  THE  DEVICE,  FILE  NAME,  EXTENSION,  AND
DIRECTORY.  IF ARGUMENTS ARE NOT SUPPLIED, THEY  DEFAULT  TO
DSK:.SCP

6.6

THE PROGRAM WILL RESPOND WITH "NAME  LOADED  XX  LINES"  AND
RETURN  TO  MONITOR  COMMAND LEVEL.  IF THERE WERE ERRORS IT
WILL ASK INSTEAD IF A SCRIPT IS TO BE LOADED.   GO  BACK  TO
STEP 6.5.

6.7

IF THE SCRIPT IS NOT GOING TO BE SHARED TYPE "CONT"  AND  GO
TO STEP 6.10.

6.8

SAVE THE LOADED  SCRIPT  WITH  A  SSAVE  COMMAND.   EXAMPLE:
"SSAVE DSK:FOO<CR>".

6.9

START N COPIES OF THE PROGRAM  BY  LOGGING  IN  N  JOBS  AND
GIVING  THE  COMMAND "RUN DSK SCRIPT" OR WHAT EVER IS NEEDED
TO LOAD THE SAVED VERSION FROM STEP 6.8.   THE  INSTRUCTIONS
IN  THE REMAINING STEPS SHOULD BE FOLLOWED FOR EACH OF THE N
JOBS.
SCRIPT      25 JULY 70    100-180-003-01                       Page 13
OPERATING INSTRUCTIONS


6.10

THE PROGRAM WILL NOW ASK HOW MANY JOBS ARE TO BE RUN.  ENTER
THE  NUMBER  FOR  EACH CONTROL JOB ON ITS TTY.  THE MAXMIMUM
NUMBER IS 14 JOBS PER CONTROL JOB.  EACH OBJECT JOB NEEDS  A
PTY.

6.11

SHOULD THERE BE TOO FEW PTYS, THEN THE SCRIPT  PROGRAM  WILL
RELEASE  ALL  GOTTEN SO FAR AND ASK OVER AGAIN HOW MANY JOBS
ARE TO BE RUN.

6.12

THE FIRST 1-14 JOBS  RUN  BY  A  GIVEN  SCRIPT  JOB  CAN  BE
MONITORED ON ANY DEVICE.  THIS IS USEFUL FOR DEBUGGING A NEW
SCRIPT.   ANSWER  THE  QUESTION  "WATCH  HOW   MANY   JOBS?"
APPROPRIATELY.   A  NULL RESPONSE (JUST <CR>) WILL RESULT IN
ALL JOBS BEING MONITORED.  IF YOU ANSWER WITH A NUMBER  MORE
THAN  0,  IT  WILL  ASK  "WHERE".  RESPOND WITH DEVICE, FILE
NAME, EXTENSION, AND DIRECTORY.  THE DEFAULTS ARE  DSK:.WCH.
SHOULD  THE  DEVICE BE UNAVAILABLE, OR THE FILE UNENTERABLE,
AN ERROR  MESSAGE  WILL  APPEAR  ON  THE  TELETYPE  AND  THE
QUESTION WILL BE ASKED AGAIN.

SHOULD AN ERROR OCCUR ON THE DEVICE WHILE RUNNING,  THE  RUN
WILL  NOT BE SUSPENDED.  HOWEVER, SUBSEQUENT MONITORING WILL
BE INHIBITED.  IF MORE THAN ONE JOB IS BEING MONITORED, EACH
LINE  IS  PRECEEDED  BY THE PROCESS NUMBER (01-14, DECIMAL).
EXCEPT ON A TELETYPE MONITOR, EACH LINE WILL BE INDENTED 2*I
SPACES.

6.13

IF THE SCRIPT CALLS FOR FASTER OUTPUT THAN  THE  DEVICE  CAN
HANDLE,  THEN  THE  SCRIPT  JOB WILL GO INTO I/O WAIT.  THIS
WILL RESULT IN VERY  LONG  DELAY  TIMES  ATTRIBUTED  TO  THE
SCRIPT   PROGRAM.   THIS  CONDITION  SHOULD  BE  AVOIDED  BY
CHANGING THE SCRIPT PARAMETERS, USING A FASTER DEVICE OR NOT
MONITORING AT ALL.

6.14

THE PROGRAM WILL NOW ASK, "WHERE  TO  LOG  RESPONSE  TIMES?"
ANSWER  WITH  A DEVICE, FILE NAME, EXTENSION, AND DIRECTORY.
ARGUMENTS NOT SUPPLIED WILL DEFAULT  TO  DSK:.RSP.   A  NULL
RESPONSE  (JUST  <CR>)  WILL  RESULT  IN  NO RESPONSES BEING
LOGGED.
SCRIPT      25 JULY 70    100-180-003-01                       Page 14
OPERATING INSTRUCTIONS


IF THE DEVICE IS NOT AVAILABLE, OR IF THE FILE  CAN  NOT  BE
ENTERED, GO BACK TO STEP 6.14.

SHOULD A DATA  ERROR  OCCUR  WHILE  RUNNING,  THE  RUN  WILL
PROCEED  WITH  SUBSEQUENT  RESPONSE  LOGGING  INHIBITED.  AN
ERROR MESSAGE WILL APPEAR ON THE TELETYPE.

6.15

SCRIPT ASKS "REPEAT COUNT = ".  TYPE A DECIMAL  NUMBER.   IF
ZERO OR NULL, THE REPEAT COUNT IN THE SCRIPT WILL BE USED.

6.16

SCRIPT ASKS "DELAY FACTOR = ".  TYPE A DECIMAL NUMBER.  THIS
MULTIPLIES  ALL  THE DELAY TIMES.  IF 1 OR NULL (JUST <CR>),
THE SCRIPT IS TAKEN LITERALLY, IF 0, DELAYS ARE IGNORED.

6.17

SCRIPT ASKS "STAGGER TIME = ".  TYPE A DECIMAL  NUMBER.   IF
NULL,  THE  VALUE  IN  THE  SCRIPT  WILL  BE USED.  IF 0, NO
STAGGERING WILL APPLY.  IF NON-ZERO, THE VALUE TYPED IN WILL
BE TAKEN (IN SECONDS).

6.18

SCRIPT ASKS "SEE COMMENTS TO OPERATOR? ".  TYPE YES  OR  NO.
IF  YES,  ALL  X  SCRIPT COMMANDS WILL BE TYPED AS PROCESSED
PREFIXED BY THE PROCESS  NUMBER  (1-14)  IN  DECIMAL  WITHIN
PARENTHESIS.

6.19

IF SCRIPT WAS ASSEMBLED WITH THE DEBUG SWITCH ON (THE NORMAL
CASE),  IT  WILL  ASK  "DEBUG? ".  ANSWER YES OR NO.  IF YOU
ANSWER YES, THEN SCRIPT WILL OPERATE IN  DEBUG  MODE.   THIS
WILL  ADD TO THE MONITOR FILE (UNDER MONITORS WITH THE IMAGE
MODE SCANNER SERVICE) THE JOB STATUS EACH TIME IT IS NOTICED
TO  BE  DIFFERENT.   THE OUTPUT WILL BE IN THE FORM "[\NN\]"
WHERE NN IS THE HIGH ORDER SIX BITS RETURNED BY  THE  JOBSTS
UUO.  THESE BITS ARE AS FOLLOWS:

          40   JOB NUMBER ASSIGNED
          20   JOB COMPLETED LOGIN, NOT STARTED LOGOUT
          10   TTY AT MONITOR LEVEL
          04   TTY OUTPUT AVAILABLE
          02   TTY IN NEED OF INPUT TO DO ANYTHING
          01   CONTROL C DEFEATED
SCRIPT      25 JULY 70    100-180-003-01                       Page 15
OPERATING INSTRUCTIONS


6.20

SCRIPT ASKS "WATCH FOR ERRORS?".  TYPE YES OR NO.   IF  YES,
ALL  PTY  OUTPUT  FOR ALL THE JOBS WILL BE MONITORED FOR "?"
LINES.  UNLESS THE SCRIPT HAS  PREDICTED  ERRORS,  ALL  SUCH
LINES  WILL BE TYPED ON THE TELETYPE PREFIXED BY THE PROCESS
NUMBER (1-14) IN DECIMAL WITHIN PARENTHESES AND FOLLOWED  BY
TWO BELLS.

6.21

SCRIPT WILL SAY "STARTING".  JOBS UNDER CONTROL OF  A  GIVEN
CONTROL  PROGRAM WILL BE STAGGERED BY THE INTERVAL SPECIFIED
BY THE OPERATOR OR IN THE SCRIPT.  IF MULTIPLE  SCRIPT  JOBS
ARE  RUNNING,  THE  USER  CAN STAGGER THEIR TIMING BY ENDING
STEP 6.20 AT THE APPROPRIATE TIME OF DAY.

6.22

WHEN THE LAST JOB UNDER A GIVEN SCRIPT PROGRAM HAS FINISHED,
THE  MESSAGE  "ALL  JOBS  DONE"  WILL  APPEAR  ON  THE USERS
TELETYPE AND THE LOG FILE AND MONITOR FILE WILL  BE  CLOSED.
THE PROGRAM WILL THEN EXIT.

6.23

SHOULD IT BE NECESSARY TO TERMINATE A RUN, STOP THE  CONTROL
PROGRAM  BY TYPING TWO <CONTROL C> CHARACTERS.  TO CLOSE OUT
THE LOG FILE REENTER THE PROGRAM BY A  REENTER  COMMAND.   A
MESSAGE  "JOBS ABORTED" WILL APPEAR ON THE TELETYPE, AND ALL
JOBS WILL BE KJOBBED.

6.24

THE FORTRAN PROGRAM TOTAL  CAN  BE  USED  TO  SUMMARIZE  THE
RESPONSE  LOG  FILE.   IT  TAKES  INPUT FROM 1:FOR01.DAT AND
PLACES A SHORT LISTING ON 6:FOR06.DAT.
SCRIPT      25 JULY 70    100-180-003-01                       Page 16
OPERATING INSTRUCTIONS


6.25 SAMPLE DIALOGUE

R SCRIPT                                GET SCRIPT
NO SCRIPT LOADED
WHERE TO LOAD A SCRIPT? SYS:DELALL      NAME OF SCRIPT
DELALL.SCP%002 LOADED 15 LINES

.SS DSK:DELALL                          SAVE SO CAN SHARE
JOB SAVED
^C

.RU DSK:DELALL                          GET SHARABLE COPY
SCRIPT DELALL.SCP%002 LOADED
HOW MANY JOBS TO BE RUN? 14             MAX NUMBER
WATCH HOW MANY JOBS?                    DO ALL
WHERE? DEL1                             USE DSK:DEL1.WCH
WHERE TO LOG RESPONSE TIMES? DEL1       USE DSK:DEL1.RSP
REPEAT COUNT =                          USE SCRIPT VALUE
DELAY FACTOR =                          USE SCRIPT VALUE
STAGGER TIME =                          USE SCRIPT VALUE
SEE COMMENTS TO OPERATOR? Y             WATCH PROGRESS
DEBUG? N                                NOT USUALLY NEEDED
WATCH FOR ERRORS? Y                     A GOOD IDEA
STARTING
(1) IN                                  JOB 1 LOGGED IN
(2) IN                                  JOB 2 LOGGED IN
...
(13) OUT                                JOB 13 LOGGED OUT
(14) OUT                                JOB 14 LOGGED OUT
ALL JOBS DONE                           IT HAS FINISHED
EXIT
^C

.