Professional Documents
Culture Documents
9HUVLRQ
0DUFK
0LFURQHWLFV'HVLJQ&RUSRUDWLRQ
Disclaimer
Micronetics Design Corporation makes no representations or warranties with respect
to this manual. Further, Micronetics Design Corporation reserves the right to make
changes in the specification of the product described within this manual and without
obligation of Micronetics Design Corporation to notify any person of such revision or
changes.
The software described in this document is furnished under a license by Micronetics
Design Corporation and may only be used or copied in accordance with the terms of
such license.
This document is copyrighted. Micronetics Design Corporation grants you the right
to download and copy this document only in conjunction with a validly licensed copy
of the software and subject to all provisions of the software license agreement.
Copyright 1998
Micronetics Design Corporation
1375 Piccard Drive
Rockville, Maryland 20850
Telephone: 301-258-2605
Fax: 301-840-8943
E-Mail: info@micronetics.com
WWW: www.micronetics.com
LL
Contents
Preface ix
Acknowledgment .....................................................................................................................................ix
Documentation Conventions....................................................................................................................ix
Date/Time Utilities 7
Overview ...................................................................................................................................................7
%D - Display Date ....................................................................................................................................7
%DI - Date Input .......................................................................................................................................8
%DO - Date Output...................................................................................................................................9
%T - Display Time ..................................................................................................................................10
%TI - Time Input.....................................................................................................................................11
%TO - Time Output ................................................................................................................................12
Communications Utilities 13
Overview .................................................................................................................................................13
%ECHO - Echo Characters .....................................................................................................................13
%TRANS - Transfer Data .......................................................................................................................14
Modifying %TRANS for Non-MSM Systems.................................................................................14
Invoking the %TRANS Utility ........................................................................................................17
Option 1 - Connect to Remote CPU ................................................................................................18
Option 2 - Install Transfer Routines ................................................................................................19
Option 3 - Send Routines or Globals...............................................................................................19
Option 4 - Receive Routines or Globals ..........................................................................................20
%XMIT - Terminal to Machine Connect ................................................................................................21
Routine Utilities 23
Overview .................................................................................................................................................23
%CHKSUM - Compute Checksums .......................................................................................................23
%FL - First Line List ...............................................................................................................................24
%INDEX - Index Routines......................................................................................................................25
%INDSTR - Structured Listing ...............................................................................................................28
%NEWED - Search Routines by Date ....................................................................................................29
%RCHANGE - Routine Change .............................................................................................................31
%RCMP - Routine Compare...................................................................................................................32
%RCOPY - Routine Copy.......................................................................................................................35
%RD - Routine Directory........................................................................................................................36
%RDEL - Routine Delete........................................................................................................................37
%RELOAD - Recompile Programs.........................................................................................................38
%RPRT - Routine Print...........................................................................................................................39
%RR - Routine Restore...........................................................................................................................40
Global Utilities 49
Overview ................................................................................................................................................ 49
%FLIST - File List .................................................................................................................................. 49
%FGR - Fast Global Restore .................................................................................................................. 51
%FGS - Fast Global Save ....................................................................................................................... 52
%G - Global List..................................................................................................................................... 53
%GCH - Global Characteristics.............................................................................................................. 54
Invoking the %GCH Utility............................................................................................................. 54
Option 1 - Collating Sequence ........................................................................................................ 54
Option 2 - Global Growth ............................................................................................................... 56
Option 3 - Protection....................................................................................................................... 56
Option 4 - Journaling ...................................................................................................................... 58
Option 5 - Allow/Prevent KILL ...................................................................................................... 59
%GCHANGE - Global Change .............................................................................................................. 60
^%GCMP - Global Compare .................................................................................................................. 61
%GCOPY - Global Copy........................................................................................................................ 63
%GD - Global Directory......................................................................................................................... 65
%GDE - Extended Global Directory ...................................................................................................... 66
%GDEL - Global Delete......................................................................................................................... 68
%GE - Global Efficiency........................................................................................................................ 69
%GEDIT - Global Edit ........................................................................................................................... 71
%GL - Global List .................................................................................................................................. 72
%GR - Global Restore ............................................................................................................................ 73
%GS - Global Save................................................................................................................................. 74
%GSE - Global Search ........................................................................................................................... 75
%GSEL - Global Selector....................................................................................................................... 76
%GSIZE - Global Size............................................................................................................................ 78
%OS - OS Interface Utility..................................................................................................................... 79
Invoking the %OS Utility................................................................................................................ 79
Directory Functions......................................................................................................................... 79
Show OS Version............................................................................................................................ 80
Available Disk Space ...................................................................................................................... 80
Change Default Path ....................................................................................................................... 80
File Functions.................................................................................................................................. 80
Glossary 251
Index 257
Acknowledgment
Micronetics Standard M (MSM) is an implementation, with extensions, of the ANSI
Standard Specification (X11.1-1995) for the Massachusetts General Hospital Utility
Multi Programming System (MUMPS). MUMPS was developed by the Laboratory
of Computer Science at Massachusetts General Hospital under grant number
HS00240 from the National Center for Health Services Research and Development.
MUMPS was a trademark of the Massachusetts General Hospital.
Documentation Conventions
The following documentation conventions are used in this manual.
Convention Description
RETURN The carriage return key (normally labeled RETURN, ENTER, and so
on).
CTRL+X The CTRL key pressed at the same time as the X key, where X is any
valid key used in combination with the control key.
<ERROR> An MSM error message.
'val' In Help messages, 'val' is used to indicate that the user can enter the
indicated value. The value is entered without the quotes.
> The MSM Programmer prompt.
... The series of items repeats a user-specified number of times.
. Shows a break in a list where consecutive lines have been omitted.
.
.
Bold Items in a dialogue are shown in bold to indicate a user response.
Overview
This chapter describes the standard set of utility programs provided by MSM and
explains how to access them. It also provides information on conventions supported
by the utilities.
%HELP Utility
MSM’s general-purpose Help facility provides assistance in using the utility
programs. This routine provides a list of all utility programs that are supplied with
the system, as well as a brief description of each utility program. To invoke the Help
facility, enter the following command from any UCI:
DO ^%HELP
The system responds with the following prompt:
Enter Routine Name:
Enter the name of the routine for which you want Help information, or ^L to obtain a
list of all routine names, or ALL to list the Help information for all routines. This
routine also allows you to print out a hardcopy listing of the Help information.
When you specify that you want a list, the system prompts you for an output device.
You can enter the number of a device or a null response to have the report directed to
your terminal.
Routine Description
%ACTJOB Returns a string containing the job numbers, separated by circumflexes
(^), of all jobs that are currently executing on the system.
%CHKSUM Computes a checksum (ASCII summation) of one or more routines.
%D Displays the date contained in $HOROLOG on the current device in the
form DD-MMM-YY where DD is the day of the month, MMM is the
three character abbreviation for the month, and YY is the year. An
internal entry point is provided to return the date in a local variable.
%DEBUG Invokes the interactive program debugging facility.
%DEVUSE Displays a list of all OPENed devices and the number of the job that
owns each one.
%DH Converts a decimal value to hexadecimal.
%DI Converts a date from external form (for example: 8-SEP-97) to internal
$HOROLOG format.
%DO Converts a date from internal $HOROLOG format to external format.
%ECHO Allows the program to control the ECHOing of characters at the
terminal. Entry points are provided to turn ECHO on and off.
%ER Displays the error code and values of local symbols for errors that were
trapped using the %ET routine.
%ERRCODE Provides an explanation of MSM error codes.
%ET Records the $ZERROR Special Variable and contents of the local
symbol table in the ^UTILITY("%ER") global in the current UCI.
%FGR Restores the low-level data blocks and rebuilds the pointer blocks for
one or more globals stored on an external device.
%FGS Saves the low-level data blocks for one or more globals to an external
device.
%FL Displays the first line of one or more routines stored on disk in the
current UCI.
%FLIST Lists a file stored in the host file system.
%GCH Allows you to change the attributes of a global, including collating
sequence (numeric or string), protection values (Read, Write, and
Delete), whether or not the global is to be journaled, and growth values.
%GCHANGE Changes all occurrences of a string in one or more globals. You can
verify the changes before they are made.
%GCMP Compares two globals in the same or different UCI.
%GCOPY Copies one or more globals from one UCI to another. The UCI may be
on the same or on a different Volume Group.
%GD Lists the contents of the global directory for the current UCI.
%GDE Provides an extended list of global directories for current UCI.
%GDEL Deletes one or more globals from a UCI.
%GE Displays the amount and percentage of space used for one or more
globals.
Overview
This chapter describes the library utilities that can be called from a program to
format dates, format times, convert input dates and convert input times.
%D - Display Date
The %D utility displays the current date (the value in $HOROLOG) on the current
device in the form DD-MMM-YY, where DD is the day of the month, MMM is the
three-character abbreviation of the month (for example: JUN), and YY is the year.
An internal entry point (INT) can be used to perform the date formatting operation
without displaying the result. In this case, the internal date value ($HOROLOG
form) is passed in the %H local variable and the converted date is returned in the
%DAT and %DAT1 local variables. The value in %DAT is in the form MM/DD/YY
and the value in %DAT1 is in the form DD-MMM-YY.
>D ^%D
24-AUG-97
>W
>S %H=$H
>D INT^%D
>W
%DAT="08/24/1997"
%DAT1="24-AUG-97"
>
>W
%ER=-1
>K
>S %DS="8-SEP-97"
>D ^%DI
>W
%DN=52115 %DS="8-SEP-97"
>S %DN=+$H
>W
%DN=52886
>D ^%DO
>W
%DA="FRIDAY"
%DN=52886
%DS="OCT 18 1997"
>K
>D ^%DO
>W
%ER=1
>
>D ^%T
1:13 PM
>W
>D INT^%T
>W
%TIM="13:15"
%TIM1=" 1:15 PM"
>K
>S %H=$H
>D INTT^%T
>W
%H="52889,47838"
%TIM="13:17"
%TIM1=" 1:17 PM"
>
>D ^%TI
>W
%TN=66960
%TS="18:36"
>D ^%TI
>W
%TN=66960
%TS="6:36 PM"
>D ^%TO
>W
%TN=60000
%TS="16:40"
>D 100^%TO
>W
%TN=60000
%TS=" 4:40 PM"
>
Overview
This chapter describes communication utilities that are used to set terminal echo,
transfer routines or globals between machines, and connect to another machine as a
terminal.
Refer to the MSM User's Guide for additional information on the OPEN and USE
parameters for terminal devices.
>D ON^%ECHO
>O 3 S %DEVICE=3
>D OFF^%ECHO
>
Select Option: ?
Enter enough characters to identify the type of remote system that you
will be connected to for the transfer.
MSM Current Level indicates MSM-09 version 3, MUMPS/VM, and all other
MSM products except for MSM-APPLE.
Down Level MSM-09 is any release older than 3.0, or MSM-APPLE.
Enter <RETURN> to continue
Select Option: ?
Second, the user must Logon to the remote system UCI which will be
sending or receiving the data.
When Installed, the Transfer Utilities are sent as non '%' routines
beginning with the characters 'MSMTRAN', and should be placed into the
remote system UCI to/from which the data will be transferred.
The user may wish to reconnect to the remote system and logoff before
exiting this utility. The port will be CLOSEd upon exiting the utility,
though the communication line will remain active until disconnected.
Select Option:
CTRL/C
>D ^%SS
p - Principal Device
c - Current Device
CTRL/A
Disconnected
Transfer Routines
MSMTRAN2....................................................
Waiting for verification...verification received.
MSMTRAN3...............................................
Waiting for verification...verification received.
MSMTRAN4....................................
Waiting for verification...verification received.
Transfer Complete.
3 globals selected.
Global selector: ^
Beginning transfer....
^TEST Complete
^TEST1 Complete
^TEST2 Complete
Transmission complete.
Select Routines
5 routines selected.
1 routine selected.
Routine selector: ^L
Routine selector:
Beginning transfer...
DIST Line # 63
DIST1 Line # 45
DIST2 Line # 10
DIST3 Line # 38
DIST4 Line # 64
MSMDR Line # 40
Transfer complete.
CTRL/B
>D ^%SS
p - Principal Device
c - Current Device
>CTRL/A
Transmission Complete
Overview
This chapter describes the library utilities that can be used to compute checksums on
routines, index routines, list routines by date edited, edit routines, save and restore
routines, and so on.
7 routine selected.
Routine selector:
>
4 routines selected.
4 Routines processed.
>
Answering 'yes' to this question has the effect that the program will
produce more detailed information.
Answering 'yes' to this question has the effect that the program will
omit any details on the various routines.
Answering 'yes' to this question has the effect that the program will
produce a print-out of all routines that are analyzed.
Answering 'yes' to this question has the effect that the program will
produce a print-out in which the error messages and warnings are
interspersed with the lines of code in which these issues were
encountered.
Answering 'yes' to this question has the effect that the program will
also analyze all routines that are invoked by the routines in the
current selection.
Routine selector: TT
1 routine Selected
Routine selector:
--- D O N E ---
>
Contents of Report File
TT
Naked Globals
NONE
Marked Items
NONE
Label References
10 INT
20 INTT
External References
NONE
Routine selector: %T
1 routine selected.
Routine selector:
>
Routine selector: ?
Respond with routine selection criteria.
Valid responses:
Routine name.......Eg: ABC
Routine range......Eg: AAA-HZZZ
Routine pattern....Eg: PROG? PRG*AA A*C?D *XYZ ?
Where '?' matches any single character,
and '*' matches zero or more characters
All routines....... * (selects ALL routines)
Precede any of the above with a '-' to unselect previously selected
routines.
Enter '.' or ' ' to retain previously selected range(s).
Enter '^L' for display of previously selected routines.
Enter '^D' to display all routine names.
Enter '^' or '^Q' to exit.
Routine selector: *
Start date? <2-MAR-1998> ?
3 routines selected.
Routine selector:
Replace : %CODE
With : %CODEX
Verify <N> ?
Verify <N> Y
TEST1+14
OLD: SD2 S %RT=0,%L=$L(%CODE),%SEQ=%SEQ+1,%X=%SEQ#16+(16*%EOD)
NEW: SD2 S %RT=0,%L=$L(%CODEX),%SEQ=%SEQ+1,%X=%SEQ#16+(16*%EOD)
Verified? <Y> Y
TEST2+67
OLD: KILL Q:ERR K %ANS,%CHK,%CODE,%DATA,%EOD,ERR,%GBR,%GN,%GNAM
NEW: KILL Q:ERR K %ANS,%CHK,%CODEX,%DATA,%EOD,ERR,%GBR,%GN,%GNAM
Verified? <Y> N
TEST3+15
OLD: S %X=$E(%CODE,1,%L+2) I %MSM>1 S %CHK=$ZC(%X,1)
NEW: S %X=$E(%CODEX,1,%L+2) I %MSM>1 S %CHK=$ZC(%X,1)
Verified? <Y> Y
Replace :
Routine selector:
>
Answering 'yes' to this question has the effect that the program will
not display any lines of compared text, but a summary with numbers of
similarities and differences only.
Answering 'yes' to this question has the effect that the program
produces output with the differences between the various programs shown
in a highlighted fashion.
Answering 'yes' to this question has the effect that the program will
include lines that are identical in its output.
Answering 'no' will cause such lines to be omitted.
Routine selector: TT
1 routine Selected
Enter the name of the UCI in which the routines are stored that are to
be compared with the selected routines in the current UCI (TST,TST). If
this UCI is in the same volume group as the current one, the name of
the volume group may be omitted.
Answering 'yes' to this question has the effect that the program will
ask (for all selected routines) for the name of the routine with which
each routine is to be compared. When this option is selected, it will
also be possible to skip comparison of selected routines.
Routine selector: TT
1 routine Selected
23-DEC-1997, 8:13 AM
Comparing:
Name #Lines #Bytes
1: [TST,TST]TT 11 414
2: [MGR,TST]%T 10 397
<done>
Identical lines: 8
Different lines: 2
Lines in 1 only: 1
Lines in 2 only: 0
3 routines selected.
Routine selector:
Copy to UCI: ?
If you choose selective copy, you will be prompted for each routine
that is to be copied.
You must then respond to each prompt to copy the routine, possibly
with a different name.
Selective copy (allows rename) <N>: YES
>
217 Routines.
>
3 routines selected.
Routine selector:
Deleting ...
>
>
1 routine selected.
Routine selector:
Done.
>
4 Routines restored.
>
If using removable disks or tape for save, enter the number of 1-K
blocks which each disk will hold. As each disk becomes full, you will
be asked to replace it with an empty one.
If not using removable media, press <RETURN>
9 routines selected.
Routine selector:
Saving ...
>
This utility lists only those routines in which all of the specified
strings are found
9 routines selected.
Routine selector:
Routine selector:
>
9 routines selected.
Routine selector:
Routine selector:
>
Routine selector: ?
7 routines selected.
6 routines selected.
3 routines de-selected.
Routine selector: ^L
Routine selector:
>
10 routines selected.
Routine selector:
10 Routines Processed
>
The text to be entered here indicates how the report will be sorted.
N means sort (ascending) by name of routine.
T means sort (ascending) by date and time of update.
-T means sort (decending) by date and time of update.
Routine selector: X*
16 routines Selected
>
Overview
This chapter describes the library utilities that perform functions such as listing host
files and globals, changing globals and global characteristics, and copying globals.
File Name: ?
Enter the name of the host operating system file to read from.
File Name: ^L
At the end of every page, the file name will be displayed in angle
brackets, the current line number in the file and the amount of data
above the current line (expressed as a percentage of the file size)
will be displayed, and the output will pause.
Lines/Page <23>:
echo off
prompt $p$g
set edconfig=\utility
path c:;c:\dos;c:\utility
mode com2 9600,n,8,1,p
mode lpt1=com2
mode co80
mskermit set baud 9600
cd \msm
File Name:
>
Restore Complete
>
The comment will be displayed with the date and time before the globals
are restored.
Global selector: ^
>
Enter "Y" if you want the listing to pause every 'n' lines and wait for
a Carriage Return before continuing. You will be prompted for 'n'.
^UTILITY("%ER",52816,0)="1"
^UTILITY("%ER",52816,1,0)="$ZE=^%ET"
^UTILITY("%ER",52816,1,1)="$H=
^UTILITY("%ER",52816,1,111)="%ERR("3")=2"
^UTILITY("%ER",52816,1,112)="%ERR("4")=3"
^UTILITY("%ER",52816,1,112)="%ERR("5")=4"
^UTILITY("%ER",52816,1,112)="%ERR("6")=5"
^UTILITY(3,0)="4"
^UTILITY(3,"%ZIS")=""
^UTILITY(3,"%ZIS1")=""
^UTILITY(3,"%ZIS2")=""
^UTILITY(3,"%ZIS4")=""
Global selector: ^
>
Global created..
Select OPTION
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
Select OPTION
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
Option 3 - Protection
MSM allows you to control who is allowed to access information and the degree of
access permitted. This is done by assigning protection attributes to the global using
the Protection option. Within MSM, protection is divided into the following groups
or classes of user:
SYSTEM Includes all users and programs that are running in the Manager’s UCI
(UCI \#1).
USER Includes all users and programs running in the same UCI where the
global is stored.
GROUP Includes all users and programs that belong to the same UCI group. A
UCI group is the set of all UCIs on the same volume group.
WORLD Includes all users and programs that do not belong to any of the other
three classes.
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
Current --> System = RWD World = NONE Group = NONE User = RWD
1 N - None
2 R - Read
3 RW - Read/Write
4 RWD - Read/Write/Delete
1 N - None
2 R - Read
3 RW - Read/Write
4 RWD - Read/Write/Delete
1 System
2 World
3 Group
4 User
Select CLASS
1 System
2 World
3 Group
4 User
New Status --> System = RWD World = RWD Group = RWD User = RWD
Option 4 - Journaling
In MSM, global journaling is the method used to record information about global
SET and KILL operations. The information that is captured during the SET or KILL
operation is stored on the primary disk device. If a system failure occurs, the global
journal can provide the information necessary to automatically reprocess all or part
of the global SET and KILL operations that have occurred since the last system
backup. Use the Journal option of this utility to specify whether or not journaling is
to occur for a particular global.
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
1 Always journal
2 Journal only when UCI is journaled
3 Never journal
Select Option: ?
1 Collating Sequence
2 Global Growth
3 Protection
4 Journaling
5 Allow/Prevent KILL
Global selector: ^
Replace : 18
With : 23
Verify <N> ?
Verify <N> Y
^TEST1(0,"%DMSCON",1)
OLD: ^^^^^^100^110^120^^130^140^150^^160^170^180^^190^200^210
NEW: ^^^^^^100^110^120^^130^140^150^^160^170^230^^190^200^210
Verify <Y> N
^TEST1(0,"%DMSCON/D",5)
OLD: 18^0^1^79^0^^^78^CHECK(%LP(%LW+3))
NEW: 23^0^1^79^0^^^78^CHECK(%LP(%LW+3))
Verify <Y>
Replace :
Global selector: ^
>
Answering 'yes' to this question has the effect that the program will
wait after every screenful.
Answering 'yes' to this question has the effect that the program will
display all nodes that it finds in either global variable.
22-DEC-1997, 14:42 PM
Comparing:
1: ^ONE
2: ^TWO
Press any key to interrupt.
different at ...(0,"BKS"):
1: Modified data
2: 0
2 only: ...("allnew")
Done
Identical nodes: 20
Different data: 1
Nodes in 1 only: 0
Nodes in 2 only: 1
>
3 globals selected.
Global selector: ^
Copy to UCI: ?
If you choose selective copy, you will be prompted for each global.
You must respond to each prompt to copy the global, possibly with a
different name.
3 globals selected.
Global selector: ^
Global selector: ^
>
26 - Globals
>
Global selector ^*
30 globals selected.
30 - Globals
3 globals selected.
Global selector: ^
Deleting ...
>
3 globals selected.
Global selector: ^
3 Globals processed.
Mode <R>: ?
Mode <R>: ??
Replace mode will prompt you for 'replace' and 'with' strings.
Edit mode means the global will be displayed and you can edit any part
of it by moving the cursor under the part to be edited and then
entering R to Replace, D to Delete, or I to Insert characters.
Press <RETURN> to terminate the Replace and Insert modes.
Cursor movement is controlled by using the space bar to move to the
next punctuation, the period to move to the next character, or the TAB
key to move 8 characters to the right.
Mode <R>:
^TEST1(0,"%DMSCON",1)=^^^^^^100^120^^130^140^150^^160^170^180^^190
Replace: 180 With: 230 Replace:
^TEST1(0,"%DMSCON",1)=^^^^^^100^120^^130^140^150^^160^170^230^^190
Replace:
^TEST1(0,"%DMSCON/D",5)=18^0^1^79^0^^^78^CHECK(%LP(%LW+3))
Replace: 18 With: 23 Replace:
^TEST1(0,"%DMSCON/D",5)=23^0^1^79^0^^^78^CHECK(%LP(%LW+3))
Replace:
^TEST1(0,"%DMSCON/R",190)=44^0^1^0^^^^^78^CHECK(%LP(%LW+3))^L^^160
Replace: 78 With: 192 Replace:
^TEST1(0,"%DMSCON/R",190)=44^0^1^0^^^^^192^CHECK(%LP(%LW+3))^L^^160
Replace:
Global selector: ^
>
Enter 'Y' if you want the listing to pause every 'n' lines and wait for
a <RETURN> before continuing. You will be prompted for 'n'.
^UTILITY("%ER",52816,0)="1"
^UTILITY("%ER",52816,1,0)="$ZE=^%ET"
^UTILITY("%ER",52816,1,1)="$H=
^UTILITY("%ER",52816,1,111)="%ERR("3")=2 "
^UTILITY("%ER",52816,1,0)="$ZE=^%ET"
^UTILITY("%ER",52816,1,1)="$H=
^UTILITY("%ER",52816,1,111)="%ERR("3")=2 "
Global selector: ^
Restoring...
Restore Complete
>
The comment will be displayed with the date and time before the globals
are restored.
Enter comment for dump header : DEMO OF %GS AND %GR UTILITIES
3 globals selected.
Global selector: ^
Saving ...
^TEST(12)
^TEST2
^TEST3("DEMO")
Save complete.
>
1 global selected.
Global selector: ^
Search string: program
Search string:
Search string:
Global selector: ^
>
Parameter Function
U Allows cross-UCI selection of globals on local system.
R Allows selection of globals on remote systems.
P Allows partial global selection.
1 Allows only one global to be selected.
Global selector: ^?
14 - Globals
3 globals selected.
Global selector: ^
Global Blocks
Name Depth Leftmost Used
-------- ------- ---------- -------
3 Globals processed
>
Available options:
1 - Directory Functions
2 - Show DOS Version (or Windows 95 Version or Windows NT Version)
3 - Available Disk Space
4 - Change Default Path
5 - File Functions
Select Option: ?
Directory Functions
Available options:
1 - Create Directory
2 - Delete Directory
3 - List Directory
Available options:
1 - Create Directory
2 - Delete Directory
3 - List Directory
Available options:
1 - Create Directory
2 - Delete Directory
3 - List Directory
Show OS Version
Currently running under DOS version 5.00
File Functions
Available options:
1 - Delete File
2 - Rename File
3 - Set File Attributes
4 - List File
5 - Copy File
Available options:
1 - Delete File
2 - Rename File
3 - Set File Attributes
4 - List File
5 - Copy File
Available options:
1 - Delete File
2 - Rename File
3 - Set File Attributes
4 - List File
5 - Copy File
Enter the name for the file whose attributes are to be changed.
If the drive name or directory path is omitted, the default values will
be assumed.
Enter '^' or <RETURN> to backup to the previous question, or
Enter '^Q' to exit the utility.
Available options:
1 - Delete File
2 - Rename File
3 - Set File Attributes
4 - List File
5 - Copy File
1RWH The following option is a call to the %FLIST utility, which is documented in
“%FLIST - File List” in this manual.
File Name:
Enter the name of the host operating system file to read from.
Available options:
1 - Delete File
2 - Rename File
3 - Set File Attributes
4 - List File
5 - Copy File
Select option: 5
Enter the name of the DOS file to be copied. If the drive and
directory name are not entered with the file name, the file is
assumed to be in the current directory, C:\MSM.
Enter the name of the DOS file to which CONFIG.SYS will be copied.
If the name ends with a '\' or a ':', it will be assumed that a
directory name has been entered. In that case, the source file
will be copied to the specified directory using the same file name
as the source file.
100% done
Overview
This chapter describes the system status routines that can be called from a program
or directly from the open command language to obtain status information.
>W X
3
>S J=0 F S J=$$NEXT^%ACTJOB(.JOBS,J) Q:J=0 W J," "
1 16 20
>
6 - DEVICES IN USE
>
>D ^%GUCI
>W
%UCI="MGR,SYS"
%UCN=1
>
>D ^%MDMP
FROM OFFSET...: ?
FROM OFFSET...: 0
TO OFFSET.....: ?
TO OFFSET.....: 2F
MEMORY TYPE...: ?
MEMORY TYPE...: 0
HEX FORMAT....: ?
HEX FORMAT....: Y
CHAR FORMAT...: ?
CHAR FORMAT...: Y
>
>
Vol# Maps Tot Blks Free Spc %-Free Host File Name
---- ---- -------- -------- ------ ------------------------
0 5 2098 234 11.15 \MUMPS\DATABASE.MSM
1 3 1074 105 9.78 \USR\MUMPS\DATABASE1.MSM
======== ======== ======
3172 339 10.69
Vol# Maps Tot Blks Free Spc %-Free Host File Name
---- ---- -------- -------- ------ -------------------
0 10 5120 497 11.15 D:\MSM\DATABASE.MSM
>K
>D INT^%SP
>W
>S %VGI=1
>D INT^%SP
>W
%FTOTBLK=497
%TOTBLK=5120
%VGI=1
>
p - Principal Device
c - Current Device
>
Overview
This chapter describes the library utilities that can be called from a program during
execution to trap errors, select devices, change priority, and so on.
> <ASYNC>*XECUTE*:::6:22:1826
Available Options:
1 - Run a Program
2 - Enable Debugging Environment
3 - Disable Debugging Environment
4 - HELP Information
Select Option: ?
Select Option:
Run a program
Use this option to interactively debug a program. A program in execution will be
interrupted at user-specified locations, and the interactive debugger will be invoked
at each of these points so that you can examine the current state of the routine.
The program can be interrupted by explicit breakpoints in the program (a BREAK
command with no arguments), the interrupt CTRL+C key, program errors (which may
or may not be handled by the $ZTRAP facility), or implicit breakpoints (defined to
you through the debugger without modifying the code). Use the debugger to specify
that an implicit breakpoint should occur at the start of each line in a routine (line
stepping) or at the start of each command in each line in a routine (command
stepping).
It is important to understand the debugger’s basic capabilities and the terminology
used in the debugger commands. Generally, for basic debugger functions, there is a
corresponding command to invoke an action.
Line stepping
In this mode, an implicit breakpoint is inserted at the start of each line. This means
that the debugger will receive control at the start of execution of each line. To invoke
line stepping, press RETURN.
Command stepping
In this mode, an implicit breakpoint is inserted at the start of each command in each
line. This means that the debugger will receive control at the start of execution of
each command within a line. The space key, the PF1 key (ANSI terminals only), and
the /C command all can be used to invoke command stepping.
An especially useful feature is the ability to break after every command and drop
into Command Stepping mode or continue executing, depending on the execution of
user-defined code. For example, a test could be made for the value of a particular
variable, and execution stopped when the variable contains a certain value. Using
this feature, the precise command on which an event occurs can be identified. The
following example illustrates how this is done.
DEBUG>/C=IF ACCOUNT=12765 ZGO
The code "IF ACCOUNT=12765 ZGO" will be executed by the debugger after each
command in the application code. If the ZGO is executed, the application continues
to execute at the next command. If the ZGO is not executed, then you are dropped
back into Command Stepping mode. This particular command would find the
location in the application at which the ACCOUNT variable is equal to 12765.
Environmental variables
The debugger can report on the state of environmental variables that are maintained
by the MSM system, including $TEST, $JOB, $IO, $X, $Y, $ZUCI,
$ZREFERENCE, and subroutine step mode. The /E command displays the
environmental variables.
Miscellaneous commands
The debugger responds to several additional commands. For example, use the ZGO
command to have the debugger resume execution of a routine and continue
processing until the next implicit or explicit breakpoint is encountered. When you
enter the debugger from a breakpoint, you can use the line step, command step, or
ZGO command to resume execution.
Sometimes it is desirable to exit completely from a program that is being debugged
(for example: the program error has been found). Use the QUIT command to do this.
When you enter this command, the debugger terminates and returns to programmer
mode with debugging disabled.
Tthe /S command within the debugger displays the current execution stack. This
provides a traceback of how control passed to the current routine and shows all
nested DO and XECUTE commands down to the current execution level.
Select Option: 1 - Run a Program
Enter the terminal device number which will be used for controlling the
debugger. All debugging prompts and error messages will be directed to
this drive. This can be used for full screen applications so that the
contents of the screen are not disturbed.
DEBUG> ?
DEBUG>
D>
>
ENTER:
Display Errors
Select OPTION
1 Display errors
2 Print errors
3 Erase errors
4 Summarize errors
Enter option: Display
ENTER:
'^Q' to exit this utility, or
<RETURN> or '^' to return to the previous question.
a date as 'MM/DD/YY' or, 'T' (today) or, 'T-1' (yesterday), etc.
Date of error: T
1) $ZE=<UNDEF>+37^%FIP6100:::4:0:
$H=54657,46687 AUG 24 1997 12:58 PM
2) $ZE=<DKFUL>+15^%TRANS2:::7:12:3
$H=54657,48600 AUG 24 1997 1:30 PM
3) $ZE=<DIVER>+12^%FSCRDCF:::5:2:
$H=54657,54000 AUG 24 1997 3:00 PM
Error #: 1
Symbol: ?
ENTER:
name of symbol to be displayed.
'^L' to obtain a list of all symbols.
'^S' to set symbols into the symbol table of this partition,
and exit this utility.
'^' or <RETURN> to return to the last question.
'^Q' to exit this utility.
Symbol > ^L
$ZE=<UNDEF>+37^%FIP6100:::4:0:
$H=54657,46687 AUG 24 1997 12:58 PM
$J=1
$I=1
$S=8456
LAST GLOBAL REFERENCED=^SCR(0,"%DMS",0)
%A=0
%B=0
%C=23
%DMNST=1
%DMPAG=0
%ED=0
%FTYP=0
%GI1=0
%GT=^UTILITY("%RD","BLKDMP1")
%GV=^UTILITY("%RD","BLKDMP1")
%I=1^52997,44409^^^15^23^78
%IOD=0
%IOT("1")=%FIP6100
%IOT("2")=%FIR6100
%KN=0
%LINQ=
%LPOS=
%S=%DMS
%SV=,%DMS,0,23,0,78,0,23,0
%U=^
Symbol> ^S
>
1 Display errors
2 Print errors
3 Erase errors
4 Summarize errors
Enter date(s): ?
Errors have been logged the following days: T-12, T-10, T-3, T-1, T
ENTER:
'^Q' to exit this utility.
<RETURN> or '^' to return to the last question.
Date as 'MM/DD/YY' or, 'T' (today) or, 'T-1' (yesterday), etc.
two dates, in either format, separated by ':' for a date range.
Example: 8/7/97:8/30/97 for period between August 7 and 30.
Enter date(s): T
3 ERRORS LOGGED ON 8/24/97
$ZE=<UNDEF>+37^%FIP6100:::4:0:
$H=54657,46687 AUG 24 1997 12:58 PM
$J=1
$I=1
$S=9934
LAST GLOBAL REFERENCED=^SCR(0,"%DMS",0)
%A=0
%B=0
%C=23
.
.
.
%IOT("1")=%FIP6100
%IOT("2")=%FIR6100
%KN=0
%LINQ=
%LPOS=
%S=%DMS
%SV=,%DMS,0,23,0,78,0,23,0
%U=^
Erase Errors
Select OPTION
1 Display errors
2 Print errors
3 Erase errors
4 Summarize errors
Enter date(s): ?
Errors have been logged the following days: T-12, T-10, T-3, T-1, T
Enter date(s): T
Are you sure you want to delete errors logged on 8/24/97? <N>: Y
ERRORS DELETED
Summarize Errors
Select OPTION
1 Display errors
2 Print errors
3 Erase errors
4 Summarize errors
Error code: ?
Error code: 21
Error code:
>
When an error occurs, the error trap utility is automatically invoked. Before logging
the error, the utility displays a message indicating that a program error has occurred
and the value of the $ZERROR special variable. To suppress the message, enter the
error trap utility at the INT entry point (INT^%ET).
>D ^TESTRTN
***PROGRAM ERROR***
$ZE=<DIVER>+4^TESTRTN:::5:2:
>D ALT^TESTRTN
ROUTINE ERROR
>
>D HIGH^%HL
>
>D ^%LOGON
>
No <ASYNC> Error
By default, if a buffered DDP or Remote Volume Group transaction fails, an
<ASYNC> error is issued for the job that issued the SET or KILL. Enabling this
mode flag suppresses the <ASYNC> error. Use the %DBSYNC utility to to
determine whether errors occur while this flag is enabled.
Enter either the switch number, or one or more characters of the switch
you wish to turn on/off. The switch will be toggled opposite from its
current value.
Enter <RETURN>, or '^', or '^Q' to exit this utility.
ENTER SWITCH TO TOGGLE > 8 Allow Reference to Null Subscripts
Two internal entry points allow application programs to control environmental mode
flags. One or more switches can be turned on or off with a single call to
%MODESET. The following examples illustrate how these entry points are used. If
only one switch is being changed, the quotes around it are optional.
D ON^%MODESET(7) Turn on switch 7
D OFF^%MODESET("7,8,14,15") S Turn off switches 7, 8, 14, 15
X="9,10" D ON^%MODESET(X) Turn on switches 7 and 8
^%MTCHK
Displays a list of messages showing the complete status (normal conditions and error
conditions) of the current tape drive.
%SET^%MTCHK
Creates a series of local variables that the programmer can use to test a tape device
for each status condition that can exist. When one of these local variables is
referenced through indirection (for example: IF @%MTEOT), the value returned is 1
if the condition is true and 0 if the condition is false. The following is a list of the
local variables and their meanings.
%KILL^%MTCHK
Kills the local variables that were created by the %SET entry point.
%ERR^%MTCHK
Performs the same function as the %ERRCHK entry point, except that no status
messages are displayed (only the local variables are returned).
Tape is On-line
Tape is Ready
Tape is Write-Protected
>D %SET^%MTCHK
>W
%MTBOT="$ZB($ZA,1,1)"
%MTBLK="$ZB($ZA,512,1)"
%MTBUS="$ZB($ZA,4096,1)"
%MTDAT="$ZB($ZA,8192,1)"
%MTEOD="$ZB($ZA,4,1)"
%MTEOT="$ZB($ZA,2,1)"
%MTERR="($ZB($ZA,7+8+16+32+64+128+2048,2)'=0)!($ZB($ZA,16,1)=0)"
%MTHDW="$ZB($ZA,16384,1)"
%MTLER="$ZB($ZA,256,1)"
%MTMED="$ZB($ZA,64,1)"
%MTMER="$ZB($ZA,1024,1)"
%MTON="$ZB($ZA,32,1)"
%MTONL="$ZB($ZA,16,1)"
%MTPIP="$ZB($ZA,8,1)"
%MTRES="$ZB($ZA,32768,1)"
%MTTMK="$ZB($ZA,128,1)"
%MTWLK="$ZB($ZA,2048,1)"
>U 47 D %ERR^%MTCHK
>W
%MTERR=0
%MTWLK=1
>D %KILL^%MTCHK
>W
>
>
Enter the name of the host operating system file to write to.
The file name should include the fully-qualified path name that
identifies the location of the file.
%DEV=51
%DEVOARG
%DEVTYPE
%FN="TESTFILE"
%ZA=0
>D SBP^%SDEV
Enter output device <SBP>:
Enter Volume Group Number <0>: ?
>
Overview
This chapter describes the library utilities that can be called to perform decimal to
hexadecimal conversions, hexadecimal to decimal conversions, and square roots.
>
>
3.1415926535897932
>W $$LN^%MFUNC(14)
2.639057329624927
>W $$COS^%MFUNC(4)
-.65364362086361236
>S %X=88765
>D ^%SQRT
>W
%RES=297.93455657241239
%X=88765
>
Overview
This chapter describes the Manager utilities that are used to display, map, validate,
and repair volume groups, control global placement, and perform other functions.
BLOCK: ?
bn
vg:bn
bn:vg
vn:bn:vg
exp
*
BLOCK:
Global Directory
BLOCK: 2
BLOCK:
>
BLOCK:
>
BLOCK:
BLOCK:
>
Routine Header
BLOCK: 23
BLOCK:
>
Routine Data
BLOCK: 24
Routine block
BLOCK:
>
BLOCK:
>
BLOCK:
>
Journaling Block
BLOCK: 8251
Journaling block
BLOCK:
>
Block Number: ?
bn
vn:bn
bn:vg
vn:bn:vg
Block Number: 2
Enter a valid block type. Valid types are: Global Directory, Pointer,
Global Data, Long Data, Routine Directory, Routine Header, Routine
Continuation, Map, Sequential processor, Spooling directory, Spooling
data, Volume label, UCI definition, BIJ status, OLB status,
Configuration, Volume Header Extension, XPointer and XGlobal Data.
Enter ^ to return to the previous question, or
^Q to exit the utility.
Enter Request: ?
1RWH When a question mark (?) is entered in response to the Enter Request prompt,
only those options that are allowed for the current block type are displayed. In the
above example, all of the possible options are shown.
Enter Request:
Enter the full global reference (with quotes) for the entry
to be inserted.
Enter the three-letter UCI name which has this block as its global
directory.
Enter '^L' for a list of UCIs.
Enter Request:
Entry to delete: ?
Enter the full global reference (with quotes) for the entry to be
deleted.
Or, you can enter the offset of the entry to be deleted.
Enter Request:
Enter the new right link value or return to leave the current value
unchanged.
Enter Request:
Enter the new offset value or <RETURN> to leave the current value
unchanged.
OFFSET <323> 324
Enter Request:
Enter the new free space count or <RETURN> to leave the current
value unchanged.
Enter Request:
Enter the name or the number of the UCI that is to own the block.
Enter SYSTEM for system-owned blocks
NON-DATABASE for blocks which are outside of the database
SBP for Sequential Block Processor blocks
JOURNAL for JOURNAL blocks
SPOOL for Spool blocks
Enter UCI >
Enter Request:
Enter Request:
Enter Request:
Enter Request:
Enter Request:
BLOCK NUMBER:
Enter Request:
FREE - 803
MGR - 4303
SYSTEM - 13
>D ^DISKMAP
Available Options:
1 - Compress Globals
2 - Repair Globals
3 - Display Global Efficiency
4 - Map Block Repair
Select Option: ?
Select Option:
1RWH Although Option 1, Compress Globals, still appears on the GBMAINT menu,
it has been superseded by the OLC (online compression) utility. Refer to "OLC -
Online Compression" in this manual for additional information.
Repair Globals
&DXWLRQ Before using this option, note the following:
• This option does not always work; it does not fix every error.
• The more errors that exist in a global, the greater the likelihood that use of this
option will result in an M error or looping condition.
• The larger the global, the longer this option requires to repair the global. A large
global may require many hours.
For these reasons, we recommend that you use the manual repair option provided by
the DBFIX utility. For additional information, refer to "DBFIX - Database Repair
Utility" in this manual.
Use this option to repair a single global that contains an error in its physical
structure. Enter the volume group name, UCI name, and the global to be repaired.
Errors in pointer blocks, right links, down pointers, and so on are automatically
corrected by the utility. All errors except those in the actual data portion of a global
data block can usually be repaired. If errors exist in the data blocks, they must be
repaired using the DBFIX utility before they can be automatically repaired.
Enter the name or number of the Volume Group that contains the globals
that are to be repaired.
Enter '^L' for a list of all mounted Volume Groups.
Enter <RETURN> or '^' to return to the previous question, or
Enter '^Q' to exit the utility.
Enter Volume Group to Repair: 0
Enter UCI to Repair: ?
Enter the name of the UCI that contains the globals that are to be
repaired, or
Enter '^L' for a list of all of the available UCIs, or
Enter <RETURN> or '^' to return to the previous question, or
Enter '^Q' to exit the utility.
Enter the number of the Volume Group that contains the global that
is to be repaired.
Enter '^L' for a list of all mounted Volume Groups.
Enter <RETURN> or '^' to return to the previous question, or
Enter '^Q' to exit the utility.
Examples
S GLOBAL="[VAH,FSA]XUTL" Compresses ^XUTL in UCI VAH,FSA
D INT^GBMAINT(GLOBAL) Invokes utility
D INT^GBMAINT("[ABC]X",1) Repairs ^X in UCI ABC of Volume Group 0
Enter the name of the UCI where the new Global is to be created.
Enter <RETURN> or '^' to exit the utility.
>
Enter Option:
Enter the UCI name which will be searched for lost blocks. RECOVER
first creates a list in global ^zzzzzzzz of all blocks pointed to
by this UCI. It then searches through every map in the system for
those blocks which are allocated to the UCI, but not in the list.
Each one found is automatically freed.
Note that if any global in the UCI contains structural errors, this
utility is likely to make them worse. The VALIDATE utility should
be run and all errors corrected before running RECOVER.
Choose from:
Processing globals: 27 of 27
Done.
>
If all UCIs on a Volume Group are selected for validation, VALIDATE checks the
map blocks on that Volume Group. If all Volume Groups are selected, all system
map blocks are checked. A map block can be checked independently of this utility
using the VERIFY utility.
Choose from:
Enter:
1 - GLOBALS
2 - ROUTINES
3 - BOTH
Select option: ?
>D ^VALIDATE
1 - GLOBALS
2 - ROUTINES
3 - BOTH
Global selector: ^
Validating Globals
The VALIDATE utility includes the label AUTO which checks the integrity of all
mounted volume groups without user interaction. Invoking AUTO^VALIDATE
checks all map blocks as when the VERIFY utility is run. Errors are returned in the
%ERR variable, the format of which is described below.
(55 )RUPDW
%ERR Meaning
0 No errors found.
1 Errors found and returned in %ERR() array.
2 Abnormal termination. Value of %ERR is returned via S %ERR="@,"_$2E.
3 Device 63 is not available.
Volume Group: 1
Volume: 3
Map 200 (Block 101889)
Free Space Counter: 1
Block 101889, Offset 0: Count of Free Blocks in Map is Wrong
>
Overview
This chapter describes the Manager utilities that are used to define or modify the
system configuration.
Select Option: ?
Select Option:
Specify the file name of the database on which this volume will be
created. For example, C:\MUMPS\DATABASE.MSM
OK to proceed <N>: Y
Enter the name or number of the volume group which contains the
volume to be re-initialized.
Warning: All data on this volume will be lost. If data on other volumes
points to this volume, files will be corrupted!
Re-initializing...done.
Vol Maps Tot Blks Free Spc %-Free Host File Name
--- ---- -------- -------- ------ ---------------------
0 3 1346 75 5.57 C:\MUMPS\DATABASE.MSM
1 2 1088 1086 99.81 C:\MUMPS\SYSVOL1.MSM
======== ======== ======
2434 1161 47.70
Vol Maps Tot Blks Free Spc %-Free Host File Name
--- ---- -------- -------- ------ ---------------------
0 3 1346 75 5.57 C:\MUMPS\DATABASE.MSM
1 2 1024 1022 99.80 C:\MUMPS\SYSVOL1.MSM
======== ======== ======
2370 1097 46.29
Enter the full name of the host operating system file which
contains the first volume of the volume group to mount.
Mounting.
Mount done.
The AUTO entry point in the MOUNT utility allows application routines to mount
volume groups without user interaction. This entry point is invoked using
call-by-reference parameter passing.
D AUTO^MOUNT(.Vglist)
Vglist is the name of a local array that has the following format:
Vglist(Hfname)=Vgin^Laccess^Raccess
For each volume group to be mounted, the host file name of the first volume in the
group (volume 0) must be passed as a subscript (Hfname) in the Vglist array. The
data portion of the array has three parts. Vgin is the Volume Group Index in which
the volume group is to be mounted. If Vgin is equal to zero, then the utility mounts
the group in the first available slot.
Laccess determines the Read/Write characteristics of the volume group when
accessed locally, and determines whether its LAT services are to be enabled.
Laccess can be set to R (Read), W (Write), or RW (Read/Write). If Laccess is set to
the null string, then no local access is allowed (the volume group can only be
accessed from another system as a Remote Volume Group). The letter L appended
to the access flags indicates that the LAT services on the volume group are to be
broadcast by the local system.
Raccess determines the Read/Write characteristics of the volume group when
accessed from another system as a Remote Volume Group. Raccess can be set to R
(Read), W (Write), or RW (Read/Write). If Raccess is set to the null string, then no
remote access is allowed (the volume group can only be accessed from the mounting
system).
If neither Laccess nor Raccess is specified (the data portion the array node contains
only Vgin and no caret delimiters), then the default access for the volume group will
be used. The following example illustrates the proper use of this entry point:
S VGMOUNT("/disk2/sql0.msm")="1^RWL^"
S VGMOUNT("/disk3/payroll0.msm")="0^R^"
D AUTO^MOUNT(.VGMOUNT)
I QF=0 W !,"Databases mounted successfully"
The above code mounts volume groups whose first volumes are contained in files
/disk2/sql0.msm and /disk3/payroll0.msm, respectively. The first one is mounted as
Volume Group 1, with Read/Write privileges and LAT services enabled. The second
is mounted as the first available volume group slot, with Read-only access and no
LAT services. Note that QF is returned with a non-zero if any of the volume groups
fail to mount.
Dismounting...done.
The AUTO entry point in the UMOUNT utility allows application routines to
unmount Volume Groups without user interaction. This entry point is invoked using
call-by-value parameter passing.
D AUTO^UMOUNT(Vglist)
Vglist is a list of volume group names or indexes (separated by commas) to be
unmounted. If any volume group failed to unmount, the utility returns a QF variable
that has a non-zero value.
When this application entry point is used, the utility terminates all jobs that are active
in each volume group before it is unmounted.
OK to proceed <N>? ?
OK to proceed <N>? Y
Vol Maps Tot Blks Free Spc %-Free Host File Name
--- ---- -------- -------- ------ ---------------------
0 3 1346 75 5.57 C:\MUMPS\DATABASE.MSM
1 2 1024 22 2.14 C:\MUMPS\SYSVOL1.MSM
======== ======== ======
2370 97 4.09
Expanding Database:
100% done
Vol Maps Tot Blks Free Spc %-Free Host File Name
--- ---- -------- -------- ------ ---------------------
0 3 1346 75 5.57 C:\MUMPS\DATABASE.MSM
1 2 1088 86 7.90 C:\MUMPS\SYSVOL1.MSM
======== ======== ======
2434 161 6.61
Done.
Enter the name of the remote system which owns the volume group to
be mounted. There must be an active DDP circuit to this system.
Access Requested:
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
Enter YES if any LAT services defined on the mounted volume group
should be advertised on this system.
Mounting...
Requested LAT access not allowed
Location to edit:
1 - DISK
2 - MEMORY
Select Option <DISK>: ?1
The information will be changed on disk only. The changes will not
take effect until the next time the volume group is mounted.
Select Option <DISK>: ?2
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
4 - NONE - No Access
Select Option <RW>: RW - Read and Write
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
4 - NONE - Not Exportable
Select Option <RW>: RW - Read and Write
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
4 - NONE - Not Exportable
LAT services for this volume group will not be advertised anywhere.
Enter the maximum length that will be allowed for global data
values in this volume group. The length may not exceed 511.
Enter the UCI name or number where the ^SYS global will be
maintained. This global contains the characteristics and LAT
service definitions for this volume group.
Defined UCIs:
APP TST MGR
Edit Done.
The following terminal session illustrates how to edit the volume group
characteristics in memory.
Select Option: 9 - Edit Volume Group Characteristics
Location to edit:
1 - DISK
2 - MEMORY
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
4 - NONE - No Access
1 - RO - Read Only
2 - WO - Write Only
3 - RW - Read and Write
4 - NONE - Not Exportable
During startup, if this field is non-zero, MSM will check the total
number of free blocks in the volume group. If the free space is
less than the expansion threshold, MSM will automatically expand
the volume group by the number of blocks specified by the next
prompt.
Enter the amount of free space, in 1-K blocks, below which an
automatic expansion of the volume group will occur. The amount can
be specified in megabytes (i.e., 5M = 5120 blocks).
This feature only operates for volume groups that are auto-mounted.
Enter '^" to return to the previous prompt.
Enter YES to suspend any job that attempts to read from this volume
group.
Enter NO to allow reads from this volume group and to release any
jobs waiting because of a previous suspension.
Enter YES to suspend any job that attempts to write to this volume
group.
Edit Done.
Syntax
DO AUTOBACK^OLB(VGN,BACKTYPE,VERBOSE)
Parameter Description
VGN A volume group name, or a volume group index, or the name of a
volume group set (a super-grouping of volume groups).
BACKTYPE One of the following values:
F Full backup
S Sequential backup
C Cumulative (sequential backup)
VERBOSE If non-zero, then messages will be displayed. Otherwise, the utility
operates silently. If this parameter is omitted, VERBOSE defaults to
silent mode.
Description
The utility returns the status variable QF when done. If QF=0, then the backup was
successful. Otherwise, it is equal to an error code which is defined in the text at the
end of the OLB utility (see label ERRSUBR).
Device Name: ?
Enter the name of a parallel device (LPT1, LPT2, or LPT3) for which
interrupt driven I/O will be disabled/enabled.
Precede the name with a '-' to delete it, and therefore run
interrupt-driven.
Enter '^L' to display list of devices in the table.
Enter <RETURN> or '^' or '^Q' to exit the utility.
Device Name: ^L
Device Name:
>
Select Option: ?
Select Option:
Available Functions:
Select Option: ?
Select Option:
Enter the UCI that you wish to replicate to. This UCI may be
specified by the UCI name or by the UCI and volume group name.
If no volume group name is specified, the current volume group is
assumed.
Enter '^' to return to the previous question.
Enter '^Q' to exit this utility.
Enter '-' to delete this UCI.
Enter the index of the table entry that you wish to edit
Enter n.5 to insert an index between index n and n+1.
Enter '^' to return to the previous question.
Enter '^Q' to exit this utility.
Enter '^L' for available list.
Enter '-' followed by the index to delete a table entry.
Enable Translation
Translation is automatically enabled during system startup. If disabled, it can be
manually re-enabled using this option.
Select Option: 2 - Enable Translation
Translation Enabled...
Disable Translation
Translation is automatically enabled during system startup. It can be disabled again
using this option.
Select Option: 3 - Disable Translation
Available Functions:
Select Option: ?
Enter the name or number of the volume group where the UCI is to be
created.
Enter '^L' for a list of the mounted volume groups.
Enter '^' to return to the previous question.
Enter '^Q' to exit the utility.
Enter the name of the new UCI to be created. The UCI must not
already be defined. The UCI name is composed of three uppercase
letters (e.g., USR).
Enter '^L' for status display of existing UCIs
Enter '^' to return to the previous question.
Enter '^Q' to exit the utility.
The system allocates global data blocks as needed. You have the
option of specifying the starting point for searching for a free
block to allocate to this UCI. By manipulating the expansion area
and limits, you can restrict global data in this UCI to a specific
area within the volume group.
Enter the starting map number for searching for a free block.
The map number may optionally be specified as 'vol:rmap', where
'vol' is the volume index number and 'rmap' is the relative map
number on that volume. The default value is the map number which
contains the directory block, with a minimum default value of 11
for UCIs on the first volume group.
Enter map number for global data expansion area <2:1>: RETURN
You have the option of specifying a limit beyond which global data
expansion will not be allowed. If an attempt is made to expand
global data from this UCI beyond the map number specified, a
<DKFUL> error will occur. Enter the map number beyond which no
data from this UCI will be allowed.
The map number may optionally be specified as 'vol:rmap', where
'vol' is the volume index number and 'rmap' is the relative map
number on that volume.
Enter map number for global pointer expansion area <2:1>: RETURN
Password <>: ?
Please Verify:
Done.
UCI UCI Global Routine Rtn Exp/ Data Exp/ Ptr exp/ Jrnl Stat
Ind Name Directory Directory Exp Lim Exp Lim Exp Lim Pword/Lib
--- ---- --------- --------- -------- --------- -------- ---------
1 MGR 0:2 0:3 1/512 1/512 1/512 YES//0
Legend:
Directory Block 'v:b' means: Volume number 'v', Relative Block 'b'
Expansion pointers are expressed as map numbers.
The system allocates global data blocks as needed. You have the
option of specifying the starting point for searching for a free
block to allocate to this UCI. By manipulating the expansion area
and limits, you can restrict global data in this UCI to a specific
area within the volume group.
Enter the starting map number for searching for a free block.
The default value is the map number which contains the directory
block, with a minimum default value of 11 for UCIs on the first
volume group.
Enter map number for global pointer expansion area <0:3>: 513
You have the option of specifying a limit beyond which global data
expansion will not be allowed. If an attempt is made to expand
global data from this UCI beyond the map number specified, a
<DKFUL> error will occur. Enter the map number beyond which no
data from this UCI will be allowed.
The map number may optionally be specified as 'vol:rmap', where
'vol' is the volume index number and 'rmap' is the relative map
number on that volume.
Enter map number for global data expansion area <3>: 513
The system allocates routine data blocks as needed. You have the
option of specifying the starting point for searching for a free
block to allocate to this UCI. By manipulating the expansion area
and limits, you can restrict routine data in this UCI to a specific
area within the volume group.
Enter the starting map number for searching for a free block.
Password <>: ?
UCI UCI Global Routine Rtn Exp/ Data Exp/ Ptr exp/ Jrnl Stat
# Nam Directory Directory Exp Lim Exp Lim Exp Lim Pword/Lib
--- --- --------- --------- -------- --------- -------- ---------
1 MGR 0:2 0:3 1/512 1/512 1/512 YES//0
Select UCI: ?
Enter the name and volume group of the UCI that contains the
routine to be invoked at logon. If the volume group is omitted,
volume group 0 will be used. The UCI name and volume group must be
three uppercase letters, and are separated by a comma.
Enter '^L' for a list of currently defined UCIs.
Enter the size of the partition that is required for the routine.
The size is specified in 1-K blocks. The minimum partition size
is 12K and the maximum is 256K.
Enter Password: ?
>
Overview
This chapter describes the Manager’s utilities that are used to perform system
operations, including killing jobs, displaying system tables, mapping control blocks,
and so on.
Enter the text of the message that you wish to broadcast. It may be
up to 255 characters and must not include control characters.
Enter <RETURN> or '^' or '^Q' to exit this utility.
Broadcast Message: SYSTEM SHUTDOWN IN 5 MINUTES. PLEASE LOG OFF.
Broadcast to terminal(s)?: ?
Select Job #: ^L
p - Principal Device
c - Current Device
Select Job #: 4
0) *XECUTE* : D ^SYSGEN
1) PROMPT+1^SYSGEN : S SGID="MENU",SGHDR="Select SYSGEN Option:"
D ^SGMENU G:$D(QUIT) EXIT G:SGOPT="" EXIT
2) SELECT+1^SGMENU : W !!,"Select Option" W:$D(SGDEFLT) " <",SGDE
FLT,">" W ": " R SGOPT I SGOPT="",$D(SGDEFLT) S SGOPT=SGDEFLT W
SGOPT
Enter Y if you wish to see the locals for the selected job
Enter N if you do not wish to see the locals
Display locals for job <N>: Y
SG=-1
SGHDR="Select SYSGEN Option:"
SGID="MENU"
SGSKIP=",UNIX,"
SGSYSID="UNIX"
X=""
Select Job #:
>
The program entry points KILL, KILLALL, and KILLBUT0 allow application
routines to terminate jobs without user interaction. They are described below.
D KILL^KILLJOB(Job,Nowait) Terminates job number Job. If the Nowait
parameter is non-zero, then KILLJOB does not
wait for the job to terminate, but simply issues
the terminate message and quits. The Nowait
defaults to 0 if not passed.
D KILLALL^KILLJOB(Vglist,Nowait) Terminates all active jobs in all Volume
Groups indicated by Vglist (a list of VG names
or indexes separated by commas). If Vglist is
an asterisk (*), then all users are terminated
except the user that is calling KILLJOB. The
Nowait parameter is handled the same as for
the KILL entry point.
D KILLBUT0^KILLJOB(Nowait) Terminates all active jobs in all Volume
Groups except VG0. The Nowait parameter is
handled the same as for the KILL entry point.
>D ^LOCKTAB
>ZA %LOCK,%SYS
>D ^LOCKTAB
5 SYS ZA %SYS
5 SYS ZA %LOCK
5 SYS LOCK ^[MGR,SYS]CUS(1013,0)
5 SYS LOCK B
5 SYS LOCK A
>ZD %LOCK
>D ^LOCKTAB
5 SYS ZA %SYS
5 SYS LOCK ^[MGR,SYS]CUS(1013,0)
5 SYS LOCK B
5 SYS LOCK A
>
ADDR The address of the buffer control block associated with the
buffer. The control block is displayed by this utility.
IOWAIT The queue of jobs waiting for disk I/O to complete for this
buffer.
BUSYWAIT The queue of jobs waiting for this buffer to become free.
BUFFADDR The address of the buffer associated with this control block.
BLOCK# The block number of the disk block currently contained in the
buffer.
STAT The status of the buffer associated with this control block. The
following hexadecimal status codes are valid:
0001 The I/O operation in progress is a write.
0002 The I/O completed without error.
0004 The I/O completed with an error.
0008 Buffer is being used for update.
0010 Buffer is being used in shared mode.
0040 Other job(s) are waiting for buffer.
0080 Re-queue buffer to top of queue.
0100 Perform asynchronous write.
0200 Buffer is modified.
0400 Buffer is on data queue.
0800 Buffer is on free queue.
1000 Buffer is on I/O queue.
USE# The number of users that are currently using the buffer in
shared mode.
BTYP The type of block that is currently in the buffer. The following
block types are defined:
1 - Global Directory
2 - Global Pointer
3 - Global Data
5 - Routine Directory
6 - Routine Header
7 - Routine Data
8 - Map block
9 - Journal
10 - Sequential Block Processor
11 - Spool Directory
12 - Spool Data
When this utility is invoked, a header line is displayed and then the %SDEV routine
is called to select the output device. The default output device is the current device.
Number Of Buffers = 75
>
1 - ALL
2 - BASIC
3 - HFS
4 - TIO
5 - SBP
6 - IJC
7 - VIO
8 - TCPIO
9 - TAPE
10 - NULL
11 - HSPL
Display Modes
1 - SUMMARY
2 - FULL
Display Modes
1 - SUMMARY
2 - FULL
Display Modes
1 - SUMMARY
2 - FULL
VIEW DDB
View Buffer Descriptor
>
>
Address: ?
Address: 30000C
30000C Verify : ?
Replace: 213B
30000E Verify :
>
Device Number: ?
Device Number: 4
CTRL/C
Monitoring Terminated
Device Number:
>
Enter the job number of the job whose locks should be recovered. If
the lock was issued by a remote system, enter the job number,
followed by a comma, followed by the remote system name (e.g.,
4,SYS).
Enter '^L' to display the contents of the LOCK Table.
3 ABC LOCK 1 Z
4 ABC ZA SYSTEM
4 ABC LOCK 1 ^[MGR,ABC]ABC(1,B)
>D ^LOCKTAB
>
p - Principal Device
c - Current Device
Total Buffers In System: 91, Modified#=0
Disk Cache Efficiency: 98.7%
Enter the maximum amount of time in seconds to wait for all other
users to log off. Shutdown can be forced if users fail to log off
during this time.
Enter ^ to abort the shutdown.
Exit
Switch Description
Journaling suspended Indicates that journaling is suspended because the space is full.
When journaling is switched to a new space, this flag is reset.
Disable user logins Prevents any new users from logging on to the system. If a user
attempts to log on, the system displays a message indicating that
logons are not allowed and then terminates the logon.
Console jobs only Allows the system manager to log on to the system even if
logons are disabled. If a user other than the console device
attempts to use the JOB command, the request is denied.
Disable database WRITEs Disables all writes to all mounted volume groups except the
VIEW command. If a user attempts to write to the database, the
user’s job will be suspended until database writes are enabled.
Database reads are not restricted. Since this option updates a
series of flags for each volume group, no offset is given.
Disable database READs Disables all reads from the MSM database except for the VIEW
command. If a user attempts to do a READ/WRITE operation,
the job will be suspended until database reads are enabled.
Because this option updates a series of flags for each volume
group, no offset is given.
Initiate system shutdown Indicates that system shutdown has been initiated by the SSD
routine. This flag can be interrogated by background jobs
periodically to know when to shut down. To test for system
shutdown activity, use the following code:
I $ZB($V(4,-4,2),#8000,1)
STU has run Indicates that the system startup routine (STU) has run and the
configuration has been set.
Enable system-wide Activates journaling for all globals on the system.
journaling
Post special queue Indicates that the dispatcher needs to post all jobs suspended by
one of the flags in this field. If the resource for which the job is
waiting is not available, then the job continues to wait.
Emergency system Initiates an emergency shutdown of MSM. All users on the
shutdown system will be logged off, followed by an immediate shutdown
of MSM.
Restrict VIEW Prevents the VIEW command from being used except by the
command use Manager's UCI or % routines.
When this utility is invoked, it displays the value of each switch. Enter the switch to
toggle. If you enter a null response, the utility terminates.
Two program entry points in this utility allow application routines to control these
switches without user interaction. Use of the entry points ON and OFF is illustrated
below:
D ON^SWREG(Switch) Turns on the switch number designated by Switch.
D OFF^SWREG(Switch) Turns off the switch number designated by Switch.
Overview
This chapter describes the performance monitoring utilities that are provided within
MSM.
Available Options:
Select Option: ?
Select Option:
Enter the time of day at which the monitoring run will begin.
The time can be entered in any of the following formats:
This value is used to indicate the frequency to record CPU and Disk
Utilization statistics within a report interval.The minimum value
is 5 seconds and the maximum value is the duration of the report
interval. For example, if one minute is specified, then the CPU
and Disk Utilization reports will display values at one-minute
intervals.
To specify time in seconds, enter nnnS (e.g., 5S, 30S, etc.)
To specify time in minutes, enter nnnM (e.g., 30M, 60M, etc.)
To specify time in hours, enter nn.nnH (e.g., 1H, 2.5H, etc.)
Available Reports
Enter the number of the report group to print. More than one report
group can be selected by entering the report numbers separated by
commas. For example, you can enter 1,2,3 to print reports for the
first report groups.
UCI,VGP Routine (%-CMDS) 0% 10% 20% 30% 40% 50% ... 100%
======= ================ +====+====+====+====+====+====+====+
DJM,MDC #PgmrMd# (0.0%) |
DJM,MDC MAPDDB (1.1%) |-
DJM,MDC MAPDDB5 (0.0%) |
DJM,MDC SGMENU (0.2%) |
-------
Subtotal (1.3%) |-
UCI,VGP Routine (%-CMDS) 0% 10% 20% 30% 40% 50% ... 100%
======= ================ +====+====+====+====+====+====+====+
DJM,MDC SGMENU (1.8%) |-
DJM,MDC DISPLAY (17.3%) |----+---
-------
Subtotal (19.1%) |----+----
UCI,VGP Global (%-CMDS) 0% 10% 20% 30% 40% 50% ... 100%
======= ================ +====+====+====+====+====+====+====+
DJM,MDC #PgmrMd# (0.0%) |
DJM,MDC SYSGEN (0.1%) |
DJM,MDC UTILITY (0.4%) |
DJM,MDC abc (0.2%) |
-------
Subtotal (0.7%) |
Journaling............................: 0 0.0
Journaling In Use.....................: 0 0.0
Journaling Buffers full...............: 0 0.0
Total Logical Read Operations.........: 114,192 380.6
..qread().............................: 96,642 322.1
...Block type=GDIR....................: 217 0.7
...Block type=POINTER.................: 47,901 159.7
...Block type=GDATA...................: 48,462 161.5
...Block type=RDIR....................: 62 0.2
...Block type=RTNHDR..................: 0 0.0
...Block type=RTNDATA.................: 0 0.0
...Block type=MAPBLK..................: 0 0.0
...Block type=ANY.....................: 0 0.0
..bread().............................: 17,550 58.5
...Block type=GDIR....................: 11 0.0
Buffer releases
The number of times a block in the buffer pool was released. Buffer pool blocks are
continually used (both shared and exclusive) by the running jobs. When the
concurrent use count for a block drops to zero, the buffer is returned to the free
queue (the buffer is released).
Buffer flushes
The number of times MSM searched for a modified buffer to rewrite back to the
database.
Global fetches
A count of Global nodes fetched. This value includes all references made using
$DATA, $NEXT, $ORDER, $QUERY, and so on, as well as any references to a
global node made as part of an M expression. A high rate of global references may
indicate a database bottleneck. If so, consider strategies to reduce global usage. This
value is sub-divided into global find operations, global search operations ($NEXT,
$ORDER, $QUERY), and $DATA operations.
Global KILLs
A count of the total number of KILL commands issued for globals during the
Monitoring Interval. No distinction is made between a KILL for the entire global
and a KILL for a portion of the global.
Naked reused
This counter indicates the number of times a global reference could be satisfied by
the first entry in the job's table of naked refrences.
Journaling
The number of times a database journal entry was made. Journal entries include
SET, KILL, TSTART, TCOMMIT, and so on.
Journaling in use
The number of times the journal appears busy to a job due to use by other jobs.
Journaling serializes database updates so they can be recorded in the journal. Any
delays in adding entries to the journal (such as switching to a new journal file) cause
other jobs to wait if they attempt a journal operation.
Bread operations
Block read operations are requests that hold a buffer until it is explicitly released by
the process that held it. This category is subdivided by the type of block being read
(Global Directory, Pointer Block, Global Data Block, Routine Directory, Routine
Header, Routine Data, Map Block, and any other type).
RVG ADD_BP
The number of times a new database block was added to the client’s RVG cache.
RVG ADD_BP_REPL
The number of times a new RVG block replaced an older version in the client’s RVG
cache.
RVG PURGE_BP
The number of times an RVG block was purged from the client’s RVG cache.
RVG NO_BLOCK_RCVD
The number of RVG messages between the client and a server that did not include
the transfer of an RVG database block.
ReXECUTEs on strings
The total number of times that an XECUTE command was repeated on the same
string. The system includes special code to optimize performance for this type of
situation.
@Expression
The number of expressions evaluated by the system that included indirection.
Command Argument @
The number of commands evaluated by the system that included indirection in one of
their arguments.
@Local Variable
The number of times M(UMPS) indirection was used on a local variable.
Job dispatches
The number of times that an MSM job was dispatched. In a system where more than
one job is running, dispatches can occur when a job’s time slice has been exceeded,
when a disk I/O operation completes, when a terminal read command completes, etc.
The algorithms used by the dispatcher are intended to balance job performance while
maintaining maximum throughput and interactive responsiveness.
JPOST
The number of JPOST operations performed during the monitoring interval. A
JPOST is issued by the system to wake up a job that has gone to sleep as a result of a
JWAIT operation.
Timesharing slice-checks
The number of times that an MSM job's execution was suspended because the job
had completed its allotted time-slice. At the end of each execution time-slice, the job
with the highest internal priority that is ready to run will be dispatched. Typically,
an execution time-slice is determined by the number of M commands performed by
the job.
PCCPUIDLE1
The number of CPU idle clock ticks. This counter is only valid in MSM-PC/PLUS.
PCCPUIDLE2
This counter is used in conjunction with PCCPUIDLE1 counter. This counter is
only valid in MSM-PC/PLUS.
$TEXT ()
The number of times the $TEXT system function was used during program
execution.
Memget ()
The number of times internal memory allocation was requested by running jobs.
Memory allocation is typically associated with local variables.
Getmain ()
The number of times the internal memory allocator requested memory from the
system memory allocator. The system memory allocator in MSM requests memory
from the host operating system if it cannot satisfy the request from its own memory
queue.
Sbrk ()
The number of times the system memory allocator requested memory from the host
operating system.
Description Value
===========================================: =======
Cache Read Hit Ratio.......................: 99.7%
...Block type=GDIR.........................: 97.2%
...Block type=POINTER......................: 100.0%
...Block type=GDATA........................: 99.9%
...Block type=RDIR.........................: 89.2%
...Block type=RTNHDR.......................: 60.8%
...Block type=RTNDATA......................: 17.1%
...Block type=MAPBLK.......................: 99.9%
...Block type=ANY..........................: 94.7%
Cache Write Buffering Ratio................: 78.2
...Block type=GDIR.........................: 1.0
...Block type=POINTER......................: 160.4
...Block type=GDATA........................: 72.8
...Block type=RDIR.........................: n/a
...Block type=RTNHDR.......................: n/a
...Block type=RTNDATA......................: n/a
...Block type=MAPBLK.......................: 616.9
...Block type=ANY..........................: n/a
Reuse Same Block Efficiency................: 94.8%
...Global Find()...........................: 98.1%
...$N/$O/$Q/$prev..........................: 85.0%
...$D......................................: 92.6%
...SET Commands............................: 72.9%
Buffer Reads Per Global Reference..........: 0.1
Physical Buffer Writes Per Global SET/KILL.: 0.0
Logical Buffer Writes Per Global SET/KILL..: 1.1
Global Block Splits Per Global SET.........: 0.0
Global Fetches per Global SETs.............: 6.6
Global SETs per Global KILLs...............: 1,132.8
% Xecute Commands On Local Variables.......: 0.0%
% ReXecute of Locals.......................: 0.0%
% Xecute Commands On Global Variables......: 0.0%
% ReXecute of Strings......................: 100.0%
% ReXecute of Saved Pcode..................: 100.0%
RVG: % Total Global References.............: 0.0%
...Global Finds............................: 0.0%
...$N/$O/$Q/$prev..........................: 0.0%
...$D......................................: 0.0%
ReXecute of locals
This ratio reflects the percentage of time that an XECUTE of a local variable was
repeated. Since the system optimizes repeated executes of the same local variable by
saving the compiled code, modify the application, if possible, to copy frequently
executed global nodes or constant expressions into locals.
ReXecute of strings
This ratio reflects the percentage of time that an XECUTE command was a
re-execution of a string expression.
Flush quantity
This parameter specifies how many modified buffers are rewritten at each periodic
interval when MSM is not in Burst Flush mode.
Maximum partitions
The maximum number of partitions that will be allowed to run for this MSM license.
Dispatch parameters
These parameters govern the way in which the MSM internal scheduler establishes
the dispatch priority of executing jobs.
Slice size
Specifies the execution slice size measured in commands. At the end of each slice,
the MSM dispatcher scans its internal run queues for other partitions ready to be
dispatched. Because MSM is a real-time operating system, priorities are
dynamically established. A higher priority partition will preempt a running partition.
RunQ slice
The size of the current execution slice for a pre-empting job. Once a pre-empting
job exhausts its RunQ slice, it resumes its normal allocation of execution slices.
Q2 -> Q3 threshold
When the Q2 -> Q3 threshold of commands since last terminal READ operation is
reached, the job drops from an internal level of Q2 down to an internal level of Q3.
MSM typically exhausts all Q2 level activity before initiating any activity from the
Q3 level.
STAP size
The size of the internal expression and ZSAVE work stack used by each partition. A
large value allows complex expressions to be properly evaluated, larger routines to
be ZSAVEd, and so on.
STACK size
The size of the internal system stack used by each partition. This affects the
maximum nesting levels of DOs, XECUTEs, and indirection.
Elapsed # of
Times Events 0% 10% 20% 30% 40% 50% ... 100%
======= ======= |====+====+====+====+====+====+====+
0: 54 |----+----+----+----+----+----+
1: 16 |----+----+
2: 0 |
3: 0 |
4: 0 |
5: 1 |
6: 2 |-
7: 0 |
8: 0 |
9: 0 |
10: 0 |
20: 0 |
30: 0 |
40: 0 |
50: 1 |
60: 0 |
100: 0 |
150: 0 |
200: 0 |
======
74
# of # of
Commands Events 0% 10% 20% 30% 40% 50% ... 100%
======== ======= |====+====+====+====+====+====+====+
10: 2,416 |----+----
50: 1 |
100: 2 |
200: 1,200 |----
500: 5,357 |----+----+----+----+
1,000: 4,439 |----+----+----+-
2,000: 12 |
5,000: 124 |-
10,000: 1 |
20,000: 0 |
100,000: 5 |
======
13,557
Time CPU Busy Jobs 0% 10% 20% 30% 40% 50% ... 100%
======== ======== ==== +====+====+====+====+====+====+====+
08:50 am 32.97% 3 |----+----+----+-
08:51 am 7.69% 3 |----
08:52 am 97.91% 11 |----+----+----+----+----+----+----
08:53 am 49.34% 3 |----+----+----+----+----
08:54 am 3.30% 3 |-
-------- -------- ----
******************************************************************
* #11 Disk Utilization Report *
******************************************************************
Time Disk Busy Jobs 0% 10% 20% 30% 40% 50% ... 100%
======== ========= ==== +====+====+====+====+====+====+====+
08:50 am 0.00% 3 |
08:51 am 2.20% 3 |-
08:52 am 26.37% 11 |----+----+---
08:53 am 8.79% 3 |----
08:54 am 0.00% 3 |
-------- -------- ----
Available Options:
Select Option: ?
Available Options:
Select Option: 1
Overview
This chapter describes the Manager’s utilities that can be used to start up, shut down,
and configure Journaling and Cross-System Journaling, and control the Sequential
Block Processor (SBP) and Spooling functions.
Searching.........
Please verify:
Starting block number..............: 0:4880:G0
Size of SBP area...................: 5
Resetting
Select Option: ?
Specify size of SBP area in number of 1-K blocks; you may use a
suffix of 'M' to indicate megabytes (fractional numbers are valid).
Searching...
Please verify:
Volume group number................: 0
Starting block number..............: 0:1517
Size of spool area.................: 1000
Creating
Initializing
Are you sure you want to free the spool area <N>: Y
Initializing.
Enable Spooling
Before you can create spool files, the system spooler must be running. Use this
option to start the spooler task in MSM and to assign the default device to be used
for spooling.
Select Option: 5 - Enable Spooling
Spooling enabled.
Despooler started.
Disable Spooling
Use this option at any time to stop the spooling task within MSM. This should be
done only after all jobs that are in the process of spooling have ended.
Select Option: 6 - Disable Spooling
Spooling disabled.
Despooler started.
Despooler stopped.
Enter the number of the spool file to be deleted from the spool
area without being printed.
Enter '^L' for a list of spool files.
Enter '^' to return to menu.
Enter '^Q' to exit this utility.
File# Size
----- -----
1 3
ASCII
The American Standard Code for Information Interchange. This code consists of 128
characters which comprise the standardized character set.
baud
The data transmission rate between two devices.
break
A command used to interrupt program execution so that debugging can occur.
canonic number
A numeric value that has no leading or trailing zeros after the decimal point.
checksum
The summation of all ASCII characters in a routine. Use checksum to compare
routines.
collating sequence
An order that is assigned to a grouping of subscripts, sorted in either string or
numeric sequence.
string - All subscripts are treated as character strings and are stored in ASCII
sequence.
numeric - Storage is in the order of canonic numbers first, followed by the non-
numeric values in ASCII sequence.
Configuration
1) A collection of hardware and software that comprises the computer system.
2) A collection of attributes that describes how the system will function when it is
initialized. Use the SYSGEN utility to set up or modify MSM configurations.
cursor
The on-screen marker, usually a box or an underline, which indicates the location
where the next data entry is to occur.
data
Information (letters, numbers, symbols) that is entered into the system for processing
or storage.
database repair
The process by which the system manager repairs the internal structure of a volume
group.
default
A value that is assumed as the entry to a prompt if the RETURN key is pressed. In
MSM, default values are displayed within greater than (>) and less than (<) signs
(for example: <DEFAULT>).
descendant
Any array node on a lower subscript level which can be reached from the node and
which shares the first 'x' subscripts in common. For example, the nodes R(3,4,5) and
R(3,6,4,7) are descendants of R(3).
device
Any part of the computer other than the CPU, the memory, or any associated
architectural part, for example: a printer, terminal, or modem.
directory
An alphabetical listing of the contents in the current UCI. MSM uses two types of
directories:
global directory - All global names saved in the current UCI.
routine directory - All routine names saved in the current UCI.
function
An action that streamlines routine operations. In MSM, a function begins with a
dollar sign ($) or with a dollar sign and the letter Z ($Z) for specialized M functions.
global variable
A reference name for data stored in a global on the disk. Any user with the proper
protection level can access or change global variables.
hardware
The physical components of the computer system other than the software; for
example, the computer itself (monitor, disk drive, and so on), the tape drive, and the
printer.
$HOROLOG
A special variable which contains the current date and time as integer values
separated by a comma.
interpreter
A component of the MSM system which processes the pseudo-machine code
generated by the compiler.
job
Any use of the MSM system that requires a partitioned work space.
journaling
A method of recording global SETs and KILLs while the system is in use. All
information is recorded in a journal entry which can be used to reconstruct a volume
group. This option does not apply to single-user versions of MSM.
line
A string of characters that end with a specified READ terminator (carriage
return/line feed).
line label
An optional name at the beginning of a routine line that identifies that line to MSM.
This label is limited to eight characters and must begin with an alphabetic or percent
(%) character.
local variable
A symbolic name assigned to a data value that exists only for the duration of the
terminal session or routine that creates it. Local variables are unique to each
partition.
modem
Acronym for MOdulator DEModulator. This device converts data to a form which
can be transmitted via a phone line to a remote site, and then reconverted to a form
usable by the remote site processing system.
MSMDR
An MSM utility which is used to take a backup of a volume group or restore a
previous backup copy. Three types of backup can be performed:
full - A complete backup of the entire volume group (mirror-image).
allocated - A dump of all blocks currently in use by MSM.
incremental - A dump of all blocks modified since the last backup was taken.
M[UMPS]
The Massachusetts General Hospital Utility Multi-Programming System. This
system was developed in the late 1960s to handle storage, retrieval, and manipulation
of large amounts of medical data. It is one of only four ANSI standard languages.
node
An element of a global array which is addressed by the name common to all
members of the array and a unique subscript.
parameters
User-specified options for a device.
partition
An area of memory which consists of a logical grouping of the local symbol table,
current routine edit buffer, and work areas used by the system and job. This space
expands and shrinks based on the current job’s requirements.
programmer mode
A system mode which enables you to directly enter M commands to the interpreter.
You must enter a valid UCI and programmer access code (PAC) in order to access
programmer mode.
Prompt
A system-generated message which requires user input.
routines
library Routines - Utility programs that are accessible to all system users.
system manager routines - Utility programs that can be accessed only via the
Manager’s UCI (MGR).
special variables
A group of variables ($ZA, $ZB, and $ZC) that has special meaning to MSM and is
used to specify status information about the results of the last operation performed.
string
Any set of ASCII characters.
Subscript
A numeric-interpreted or string-interpreted value which is appended to a local or
global variable and which identifies a specific element or node in an array.
Subscripts must be enclosed in parentheses. Multiple subscripts are separated by
commas.
SYSGEN
The system generation utility which is used to define configurations to MSM. At
system startup, MSM uses the configurations to initialize the system with the
specified parameters.
terminator
A set of control characters which is used to terminate a READ operation. MSM uses
a default value of line feed, carriage return ($C(10,13), but allows you to modify this
value by using proper parameters associated with the current device.
%TRANS
The data transfer utility which permits communication between MSM and any ANSI
standard M system.
The three-letter designation (uppercase) for a work area within the MSM system.
Each UCI created has its own unique routine and global directory.
variable
A symbolic name for a location where data is stored. MSM uses the following types
of variables:
global variable - A variable that is stored in arrays for permanent storage on disk.
local variable - A variable that is stored only in memory.
special variable - A variable that holds special meaning to the MSM system.
volume
A file or entire disk in which data (both globals and routines) is stored.
volume group
A collection of one or more volumes grouped together to form a single storage area
for routines, globals, SBP areas, spool space, and so on.
$ %HELP utility 2
%HL utility 108
$HOROLOG 4, 6 %INDEX utility 25
$TEST special variable 111 %INDSTR utility 28
$ZCRC function 23 %LOGON utility 109
$ZDATE function %MDMP utility 88
Return four-year digit 110 %MFUNC utility 123
%MODESET utility 110
% %MTCHK utility 114
%NEWED utility 29
%D utility 7 %OS utility 79
%DEBUG utility %PARTSIZ utility 116
Invoking 98 %RCHANGE utility 31
%DEVUSE utility 86 %RCMP utility 32
%DH utility 121 %RCOPY utility 35
%DI utility 8 %RD utility 36
%DO utility 9 %RDEL utility 37
%ECHO utility 13 %RELOAD utility 38
%ER utility 102 %RPRT utility 39
%ERRCODE utility 106 %RR utility 40
%ET utility 4, 107 %RS utility 42
%FGR utility 51 %RSAND utility 43
%FGS utility 52 %RSE utility 44
%FL utility 4 %RSEL utility 45
%FLIST utility 49 %RSIZE utility 47
%GCH utility 54, 126, 146 %SDEV utility 117
%GCHANGE utility 60 %SI utility 90
%GCOPY utility 63 %SP utility 92
%GD utility 65 %SQRT utility 124
%GDEL utility 68 %SS utility 94
%GE utility 4, 69, 144 %T utility 10
%GEDIT utility 71 %TI utility 11
%GL utility 53, 72 %TO utility 12
%GR utility 73 %VIDEO utility 119
%GS utility 74
%GSE utility 75
%GSEL utility 76
^
%GSIZE utility 5, 6, 78 ^%GCMP utility 61
%GUCI utility 87 ^%ZSTIME utility 48
%HD utility 122
Z
ZSAVE
Date
And time
Display
^%ZSTIME utility 48