Classic Computing

 

 

Digital Standard MUMPS

Before the advent of PCs, networks and all of that, my company ran their software on PDP11s using DSM-11

 

The DSM-11 SYSGEN procedure . . . 

Booting DSM-11...

DSM-11 Version 4.0
Now running the baseline system.

Please enter today's date <19-May-92> 12-dec-99
Is today Sunday ? <Y> 

Please enter time [ HH:MM:SS ] > 09:30
Is this 9:30 AM in the Morning ? <Y> 

>D ^SYSGEN


System generation for DIGITAL Standard MUMPS

Type ? for HELP at any time

PART 1: SYSGEN
-------

1.1 Would you like extended help [Y OR N] ? <N> Y

Extended help will be supplied with each question you are asked

System Generation involves creating a database file 
(called a configuration) which completely describes 
the hardware devices present on your computer system,
and details all software options which you request.

You may create as many configurations as you like. When the 
DSM-11 system is booted you are then allowed to choose which 
configuration you would like to run.

On any question asked during SYSGEN, you may enter

^ to return to the previous question
? for additionnal help

If a value appears between angle brackets, <>, this is a default 
value. Entering RETURN will cause the default value to be used
as the answer to the question

Press RETURN to continue 

Enter the name of the configuration that you wish to edit or create.
If a configuration with this name is not already defined, a new configuration
will be created. To modify an existing configuration, simply enter the name 
of that configuration.

The name must not exceed 12 characters or be the value 0
You will use this name whenever you wish to refer to this configuration
Type * to see a list of existing configurations.

1.2 Enter the configuration identifier <DUMMY> *

Defined configurations are:

DUMMY
VIXEN

1.2 Enter the configuration identifier <DUMMY> 

Enter the type of processor for this configuration. The answer should
be in the form:

11/XX if the processor is a PDP-11/XX
MICRO if the processor is a MICRO/PDP-11

Processors supported include all PDP-11's numbered from the 11/23 to the 
11/70, and including the MICRO/PDP-11.

1.5 Enter the processor type <11/73> 

This Machine has 3840 K Bytes of Memory

Press <RETURN> to accept the default value of the number of K Bytes
that you want this configuration to have.

If you wish to specify a different value for the memory size, enter
that value in K BYTES. The value must be at least 128 K Bytes but
not more than 3840 (Unibus) or 4088 (Q-bus), and a multiple of 8.

1.6 How many K Bytes do you wish this configuration to have ? <3840> 

PART 2: DISK INFORMATION
-------

Please enter all the disk drives in your system using the form:

DRIVETYPE=NUMBER OF DRIVES

Press RETURN to end the list


The following disks are found in your configuration:

RA81=1

You must enter all the names and numbers of the disk drives on the 
system you are configuring. For example, if your system has 2 RL01's
and 1 RL02 enter:

DISK DRIVES > RL01=2
DISK DRIVES > RL02=1
DISK DRIVES > <RETURN>

To delete a drive from the list enter:

DRIVETYPE=0

Type "*" to get a list of supported drives
Type "L" to get a list of devices already entered

2.1 DISK DRIVE > L


The following disks are found in your configuration:

RA81=1

2.1 DISK DRIVE > 

PART 3: SYSTEM DEVICES
-------

Enter the number of Magnetic Tape drives that you have on the system.

3.1 How many Magnetic Tape Units are there (Max = 4) ? <1> 

Enter the type of magnetic tape drive. The supported types are:

TU80 TS03 TS11 TSV05 TU10 TE16 TU16 TU45 TU77 TK25
TU81 TK50

The following rules apply when configuring tape drives:

If unit 0 is TS11/TU80/TSV05, all units must be TS11/TU80/TSV05 or MU.
If unit 0 is TS03/TU10, other units can be TU10/TS03, TS11/TU80/TSV05, or MU.
If unit 0 is TE16/TU16/TU45/TU77, other units can be TE16/TU16/TU45/TU77, MU,
or TS11/TU80/TSV05.

3.2 What type is magnetic tape unit 0 ? <TSV05> 

The VECTOR address is an octal number in the range 0 to 770 and 
is generally a multiple of 10.

If you do not know the VECTOR address of this hardware device,
contact your DIGITAL FIELD SERVICE representative or use
the AUTOCONFIGURE option of SYSGEN in baseline mode.

Enter the VECTOR address, in OCTAL, for Tape Unit 0 <224> 

The CONTROL and STATUS REGISTER (CSR) address is an octal number
in the range of 160000 to 177540. 

If you do not know the VECTOR address of this hardware device,
contact your DIGITAL FIELD SERVICE representative or use the
AUTOCONFIGURE option of SYSGEN in baseline mode.

Enter the CSR address, in OCTAL, for Tape Unit 0 <172520> 

Enter the number of LP11 line printer controllers in this configuration

3.3 How many LP11's are there (max = 8) ? <0> 

Enter the number of DL11 single line asynchronous controllers in this 
configuration. Do not include the console DL.

3.4 How many DL11's are there (max = 17) ? <0> 

Enter the number of DEQNA ETHERNET controllers in this configuration.

3.7 How many DEQNA's are there (max = 4) ? <0> 

Enter the number of DZ11 8-line asynchronous multiplexors in this configuration.

3.11 How many DZ11's are there (max = 20) ? <1> 

Enter the VECTOR address, in OCTAL, for DZ11 controller #0 <300> 
Enter the CSR address, in OCTAL, for DZ11 controller #0 <160100> 

Enter the number of DHV11 8-line asynchronous multiplexors in this 
configuration.

3.12 How many DHV11's are there (max = 20) ? <0> 

Enter the number of RX02 dual-density diskette controllers in this 
configuration. (Note that one controller supports two diskette drives.)

3.14 How many RX02's are there (max = 1) ? <0> 

Enter the number of TU58 cassette tape controllers in this configuration.
(Note that one controller supports two cassette drives.)

3.15 How many TU58's are there (max = 1) ? <0> 

Enter the number of DUP12/ synchronous line controllers in this configuration.
These devices are only used with the BISYNC protocol emulator product.

3.17 How many DUP11's are there (max = 4) ? <0> 

PART 4: NETWORK CONFIGURATION
-------

PART 6: ASSIGN DEVICE NUMBERS
-------

PART 7: SOFTWARE OPTIONS
-------

SEQUENTIAL DISK PROCESSOR (SDP) is a facility which provides access to
disk storage as a sequential medium for storing and retrieving data.

7.1 Include support for SEQUENTIAL DISK PROCESSOR [Y OR N] ? <Y> 

JOURNAL provides an on-line trace of all database writes which, when
coupled with the BACKUP utility can provide total database recovery
in the event of a system failure.

7.2 Include support for JOURNAL [Y OR N] ? <N> 

Spooling is a facility which allows multiple jobs to simultaneously


7.3 Include support for SPOOLING [Y OR N] ? <N> 

INTERJOB COMMUNICATIONS (JOBCOM) allows two DSM-11 jobs to communicate
via assigned JOBCOM channels using MUMPS READ/WRITE commands.

7.4 Include support for INTERJOB COMMUNICATIONS [Y OR N] ? <Y> 

Each JOBCOM channel is a pair of pseudo-devices that communicate
via a single RING BUFFER. There are 32 device numbers (224-255)
reserved for a total of 16 channels. Each pair consists of an
even numbered device (the receiver), and the following odd 
numbered device (the transmitter).

How many communication channels do you want ? <16> 

Each JOBCOM channel requires a RING BUFFER of 2 to 255 bytes.
RING BUFFERS are INPUT/OUTPUT intermediate storage buffers for data being
transferred from one job to another. When the RING BUFFER is filled,
the job transmitting the data must be placed in a wait Q until the
receiving job has removed some of the data. While it may be desireable
to increase communications speed by increasing RING BUFFER size, this
must be traded against memory space considerations.

Enter the default size you would like for JOBCOM ring buffers.
RING BUFFERS will use memory most efficiently if specified in
multiples of 64 bytes.

Enter the size, in bytes, for each RING BUFFER channel ? <64> 

LOADABLE DRIVERS provide space for device drivers which may be loaded
or unloaded dynamically while the system is running. It may also
be used for your own special purposes.

TU58, RX02, and BISYNC drivers are all provided as LOADABLE DRIVERS.
If you plan to use these devices, you must select this option.

7.5 Include support for LOADABLE or USER DRIVER SPACE [Y OR N] ? <N> 

MAPPED ROUTINES allow you to lock a set of DSM-11 routines into memory
thereby reducing the system overhead required to load a routine into
a user's partition when the routine is called. This can greatly increase
system performance in situations in which application users are sharing
the same routines. However, you must reserve memory space in which to
load these mapped routines.

7.6 Include support for MAPPED ROUTINES [Y OR N] ? <N> 

Translation provides a flexible way to logically change the access and
storage of globals. 
An entry in the Translation Table specifies where all operations of
a global are to take place (LOCK, READ, SET/KILL). In a simple
translation, all the operations are to the same place. In a complex
translation, the location of each operation is specified, and you
have the ability to specify multiple SET/KILL locations.

7.7 Include support for TRANSLATION TABLE [Y OR N] ? <N> 

DSM-11 allows up to seven MOUNTABLE VOLUME SETS to be resident on the
system at any one time. These volume sets are complete and independent 
databases. A VOLUME SET may consist of one or more disk packs, and 
may have 1 or more UCI's. There is always at least one volume set, 
the SYSTEM VOLUME SET (S0) mounted on a DSM-11 system.

7.8 Include support for MOUNTABLE DATABASE VOLUME SETS [Y OR N] ? <Y> 

Total System Exec size: 90.53 K Bytes

PART 8: MEMORY BUFFER ALLOCATION
-------

Space remaining for Buffers and Partitions: 3749.44 K Bytes

Each terminal requires two RING BUFFERS of 2 to 255 bytes.
RING BUFFERS are used for INPUT and OUTPUT intermediate storage for 
data being transmitted and received. When the RING BUFFER is filled,
the job transmitting the data must be placed in a wait Q until the
the terminal has received some of the data. While it may be desireable
to maximize a job's IO throughput by increasing RING BUFFER size, this
must be traded against memory space considerations.

The default ring buffer size is the size of buffer acquired when a terminal
is first opened. A different buffer size may be selected at open time via
an optionnal OPEN parameter. Memory will be most efficiently used if specified
in multiples of 32 bytes.

RING BUFFER sizes may not be less than 32 bytes or exceed 255 bytes.

8.2 Enter the default terminal RING BUFFER size <128> 

RING BUFFER POOL is the memory space from which terminal and JOBCOM RING
BUFFERS are allocated when a device is opened or logged into. Space is 
allocated in bytes, and the RING BUFFER pool must hold at least 2 
default-sized RING BUFFERS. Your system will require a total of 2 RING
BUFFERs for EACH active terminal and for each active JOBCOM channel.

8.3 Enter the number of bytes to allocate to RING BUFFER space <2176> 

Space remaining for Buffers and Partitions: 3747.31 K Bytes
Maximum space that can be used for Buffers: 2047.00 K bytes

DISK-TAPE cache blocks are 1 KB block buffers used for DISK, TAPE, JOURNAL,
VIEW, DMC block mode, TU58, RX02, BISYNC, and all SEQUENTIAL disk operations.
Since disk operations where data is shared for global access is especially 
optimized by large disk caches, it is advisable to allocate as much space as 
possible for cache buffers. Memory space considerations must be weighed 
against the number of cache blocks. Room for three partitions plus space for
a journal overhead (if Journal was selected) must be available. Also, system 
constraints require that total buffer allocation space does not exceed the 
value shown above.

You must allow for 7 cache blocks plus the number of buffers selected for
Journal.

8.4 Enter the number of DISK-TAPE cache blocks to allocate <2047> 

PART 9: SYSTEM DATA STRUCTURES
-------

Space allocated for DISK-MAP and BAD BLOCK TABLE: 33152 Bytes
Space allocated to GLOBAL VECTOR TABLE: 4096 Bytes
Space allocated to SYMBOL TABLE REPACKER: 16384 Bytes
Space allocated to ERROR PACKET SAVE AREA: 1536 Bytes
Space remaining for Data Structures + Partitions: 1646.44 K Bytes

The LOCK TABLE is the system data structure which holds the list
of all data elements that have been locked via the LOCK and
ZALLOCATE commands. A job requesting a LOCK must wait for
space in the LOCK TABLE if the LOCK TABLE is full. Allocation of
of memory to the LOCK TABLE should be made as a tradeoff between 
remaining memory space and the number of data elements expected to
be concurrently LOCKED.

9.1 Enter the number of bytes to allocate to the LOCK TABLE <512> 

Your system is allowed up to 8 concurrently mounted database volume
sets. Each volume set appears as a single logical database
and may consist of one or more disks. Volume Set 0, (S0) of which 
the system disk is the first volume, remains mounted at all times.
Up to 7 additional volumes sets, however, may be mounted and 
dismounted as SETS 1 through 3 (S1-S3). You may specify that space 
be reserved for one, two or three additional UCI tables. The only 
reason for not specifying the maximum is to save memory (1024 
bytes/UCI table), at the cost of limiting the number of concurrently
mounted volume sets. Notice that this limitation does not
apply to the mounting of disks for VIEW-only (as is required to
prepare new volumes for backup, etc.), because disks mounted
for VIEW-only are not database structures, and no global or routine
access is allowed to or from those disks.

9.2 Enter the number of ADDITIONAL mountable VOLUME SETS <0> 

PART 10: JOB PARTITION DEFINITION
--------

PARTITIONs are allocated in 1024 byte increments.

The following PARTITIONs have been defined:

GARBAGE COLLECTOR system job 1 KB
Job #1 (to guarantee one 10 K byte PARTITION) 10 KB

Space remaining for PARTITION allocation: 1633.00 K bytes

Default-sized PARTITIONs will be used for logins and JOB commands that 
do not specify PARTITION size. The size of a partition is expressed
in 1 K Byte increments.

10.1 Enter the default PARTITION SIZE in 1 K Byte increments <16> 

PARTITIONS are allocated in 1024 byte increments. The minimum
usable size is 1 K Bytes and the maximum is 16 K Bytes.
Fixed-size partitions may be defined, if desired. However, the system 
can automatically allocate space for a new partition from the DYNAMIC 
PARTITION POOL whenever a job is started by login or JOB command.

The maximum number of partitions that may be defined in the system is 63.


10.2 Enter fixed PARTITION sizes (in increments) and the number of each.
A <CR> in the size field will terminate the session.

PARTITION size number of each
______________ ____________________

Space remaining for PARTITION allocation: 1633.00 K bytes

The remainder of memory is assigned to the DYNAMIC PARTITION POOL

PART 11: DATABASE PARAMETERS
--------

WRITE CHECK will cause DSM-11 to read every block it writes to disk
immediately following the write to see if the block was written 
correctly and attempt to correct any errors detect. The system will 
inform the system manager if there was an error. Selecting this 
feature will give you immediate information on the status of disk 
writes, however, it does increase disk IO overhead.

11.1 Enable WRITE CHECK after every DISK WRITE [Y OR N] ? <Y> 

Configuration KAYS default global characteristics are:

8 Bit Subscripts: Yes
Journaling: No
Collating sequence: Numeric

%-Global protection:
System: RWD World: R Group: R UCI: RWD

Non-% Global protection:
System: RWD World: NONE Group: NONE UCI: RWD


Default global characteristics are applied to all newly created globals
on a configuration-wide basis. While these are the default characteristics,
globals may still be created with different characteristics using
the utility, ^%GLOMAN.

Enter Y if you wish to change the default
Enter N if you wish to leave the defaults unchanged

11.2 Change the DEFAULT GLOBAL CHARACTERISTICS [Y OR N] ? <N> 

PART 12: BASIC SYSTEM PARAMETERS
--------

DUAL-PORTING allows two CPUs to dynamically interleave requests to
the same disk. UDA disks that are dual ported require a flag in
memory so that the disk driver knows whether to release control of
a particular unit after its disk transfer has completed. Your answer 
should be a series of unit numbers, separated by commas, or the word
"NONE".

12.0 Enter the UDA disk units, separated by commas,
that you wish to be DUAL-PORTED <NONE> 

VIEW DEVICE protection restricts the use of device 63
to the SYSTEM MANAGER account and LIBRARY UTILITIES.

12.1a Restrict the use of the VIEW BUFFER [Y OR N] ? <N> 

VIEW COMMAND protection restricts the use of the
view command to change memory. With this protection,
only the SYSTEM MANAGER account and LIBRARY UTILITIES
may use the VIEW command to change memory locations.

12.1b Restrict the use of the VIEW COMMAND [Y OR N] ? <N> 

The $VIEW function allows users to examine memory locations.
Protecting the $VIEW function restricts its use to
the SYSTEM MANAGER account and LIBRARY UTILITIES.

12.1c Restrict the use of the $VIEW FUNCTION [Y OR N] ? <N> 

The JOB command allows users to start jobs, including jobs
in different UCIs and volume sets than the originating one.
Protecting this capability means that only the SYSTEM MANAGER
account and LIBRARY UTILITIES may start a job in UCIs other
than the originating UCI.

12.1d Restrict the use of the JOB COMMAND to start jobs
in different UCIs and VOLUME SETS [Y OR N] ? <N> 

ZUSE PROTECTION will allow the use of the ZUSE command only from
the SYSTEM MANAGER account and LIBRARY UTILITIES with names that
begin with the % character.

12.2 Restrict the use of the ZUSE command [Y OR N] ? <N> 

LOGIN SEQUENCE ECHO will cause all characters typed during login
to be echoed on the terminal.

12.3 Echo the LOGIN SEQUENCE [Y OR N] ? <Y> 

The APPLICATION INTERRUPT key, when enabled, will cause an <INRPT>
error to occur. The error may then be trapped with an error processor 
and handled as a special event.

When a terminal device is first OPENED it is given the system-wide
default APPLICATION INTERRUPT key. An OPEN command parameter allows
you to define 1 or more INTERRUPT keys for that specific terminal.

The APPLICATION INTERRUPT key may also be used to LOG in to a
non-AUTOBAUDED terminal. The RETURN key may be used to LOG
in to any terminal.

The key must be a control character with a decimal value between
0 and 31.

12.4 Enter the ASCII DECIMAL value 
of the default APPLICATION INTERRUPT KEY <3> 

The PROGRAMMER ABORT key is available only to programmers logged
into DSM-11 in DIRECT mode. When pressed, the key will cause
an <ABORT> error to occur. Any error processing routines will
be bypassed and the execution of any application code will be
terminated.

The key must be a control character with a decimal value between
0 and 31.

12.5 Enter the ASCII DECIMAL value
of the default PROGRAMMER ABORT KEY <8> 

DSM-11 will restart automatically when power is restored 
following a power outage, if memory is still intact. If the power
outage is more than momentary, however, main memory will be
erased unless it is either core or supported by batteries.
Often, however, machines without either of these features can
recover because the outage did not destroy memory. The time
delay is necessary to allow disk drives to become ready. If you
wish to restart under operator control, set the time to 0.
Otherwise enter a time interval up to 500 seconds.
Note that if power-fail restart occurs while magtape journaling
is in progress, operator intervention will be demanded.

12.6 Enter the number of seconds to delay
SYSTEM RESTART after a POWER FAILURE <40> 

The TELEPHONE DISCONNECT DELAY allows a time delay between logout
and telephone line disconnect. This is very useful in dial-up
environments where it is necessary to log out of one UCI and into
another. If the DELAY is set to 0, DSM-11 will disconnect the
telephone line immediately following logout. The maximum allowed
value is 250 seconds.
12.7 Enter the number of seconds to delay TELEPHONE 
DISCONNECT after LOGGING OUT of a MODEM CONTROLLED LINE <15> 

The number of significant digits returned from a division operation 
will affect both accuracy and speed of computation

Increasing the number of significant digits will increase the degree
of accuracy, but will also require more processor time.

DSM-11 supports computations which yield between 10 and 31 significant
digits.

12.8 Enter the number of
SIGNIFICANT DIGITS to include in DIVISION computations <12> 

The FREQUENCY of the computer's POWER SOURCE is either 50 HZ or 60 HZ
The information about frequency is used by DSM-11 to accurately keep
the time.

12.9 Is the LINE FREQUENCY 60 HZ [Y OR N] ? <N> 

Enter the 3-character password that will let users enter Programmer Mode.
Use of control characters (ASCII value < 32), while allowable, could,
conflict with the meaning of those characters to the system.
(See your User's Guide for more information on these special characters.)

12.10 Enter the 3-character Programmer Access Code (PAC) > 

Incorrect response - enter '?' for more information

12.10 Enter the 3-character Programmer Access Code (PAC) > XXX


Please enter your initials > KRM

Enter comment (max. 200 chars.) > CAPTURED SYSGEN WITH EXTENDED HELP

The system global ^SYS has been built by SYSGEN.
^SYS is a reserved global and should not be altered.

 
(C) Kevin Murrell, January 2000