top - download
⟦9ebed7634⟧ Wang Wps File
Length: 9884 (0x269c)
Types: Wang Wps File
Notes: FIX/1200/PSP/0067
Names: »3399A «
Derivation
└─⟦3b8d69e90⟧ Bits:30005794 8" Wang WCS Floppy ( A0306A )
└─ ⟦this⟧ »3399A «
WangText
3399A…02…FIX/1200/PSP/0067
…02… OK/830307…02……02…#
MTCB ̲INIT PROCEDURE PSP
…02……02…FK 7809
MTCB ̲INIT PROCEDURE PSP
FIX/1200/PSP/0067
Ove Kaastrup
Carl H]gstedt
AMC (6)
CR (3)
FILE (2)
FIKS Manager 830307
1
830307
…0f…3399A…02… FIX/1200/PSP/0067
…02… OK/830307…02……02…R
MTCB ̲INIT PROCEDURE PSP
…02……02… …0e…
830307 All Issue 1 of Document
3399A…02… FIX/1200/PSP/0067
…02… OK/830307…02……02…i
MTCB ̲INIT PROCEDURE PSP
…02……02…FK 7809
…01…T̲A̲B̲L̲E̲ ̲O̲F̲ ̲C̲O̲N̲T̲E̲N̲T̲S̲
1 SCOPE ......................................... 1
1.1 INTRODUCTION .............................. 1
1.2 Abbreviations ............................. 2
2 APPLICATBLE DOCUMENTS ......................... 3
3 MODULE SPECIFICATION .......................... 4
3.2 Interface Description ..................... 8
3.3 Processing ................................ 9
3.4 Data Organization ......................... 12
3.5 Storage Allocation ........................ 12
3.6 Performance Characteristics ............... 12
3.7 Limitations ............................... 12
3.8 Error Codes/Error Locations ............... 13
3.9 Listing References ........................ 13
4 QUALITY ASSURANCE ............................. 13
5 PREPARATIONS FOR DELIVERY ..................... 14
1 S̲C̲O̲P̲E̲
This document contains a detailed product specification of the MTCB data layout program MTCB
̲INIT.
1.1 I̲N̲T̲R̲O̲D̲U̲C̲T̲I̲O̲N̲
The MTCB Monitor (ref. I), which supports communication of messages among subsystems, has
a load data area containing the MTCB pool and reservation tables.
The data area is loaded and pointers preset by the initialization program MTCB ̲INIT.
The program is loaded at system initialization time at a background program, and when it
has finished executing it is removed.
The size of pools and tables are determined by parameters defined in the critical region
CONFIG.
1.2 A̲b̲b̲r̲e̲v̲i̲a̲t̲i̲o̲n̲s̲
Please refer to Data Interface Reference Manual, chapter l.2 (ref.II).
2 A̲P̲P̲L̲I̲C̲A̲T̲B̲L̲E̲ ̲D̲O̲C̲U̲M̲E̲N̲T̲S̲
I FIX/1256/PSP/0066 MTCB MONITOR PSP
II FIX/0100/MAN/0004 FIKS DATA I/F REF.
3 M̲O̲D̲U̲L̲E̲ ̲S̲P̲E̲C̲I̲F̲I̲C̲A̲T̲I̲O̲N̲
The basis for the initialization is a data record found in the critical region CONFIG. The
region is loaded at a fixed location in memory: offset = F780 on page 0. The offsets to
the parameters and flags in the critical region are declared in the prefix file CONFIG ̲TYPE.S.
The MTCB Data record has the following composition:
MTCB1 =
RECORD
PMTCB, "page of MTCB data
OFFS, "offset in this page of MTCB
data
SMTCB, "size in words
MPCB, "Max PCB index allowed
MPROC, "Max number of processes that
may use the MTCB monitor
NMTCB, "number of MTCB's in pool
NIMF, "number of IMF areas available
NPDB, "number of PDB file available
MTCB ̲THRESH, "Threshold for nonprintedged
callers.
PDB ̲THRESH:INTEGER "Threshold for nonpriviledged
callers.
END;
CONFIG also contains pointers to the next free areas in memory. (Each time a monitor or a
program is loaded, the ESP updates the pointers to the next free areas on pages 0, 1 and
2).
The MTCB data area is placed on page 1 and the offset is calculated by MTCB ̲INIT to the next
free word on page 1.
The 2 first words in MTCB1 are updated.
When the entire MTCB data area is laid out, the ESP-pointers are updated by the process.
C̲o̲m̲m̲o̲n̲ ̲d̲a̲t̲a̲
The MTCB Monitor has a local data area containing:
Tables to control interface to processes
Pool of MTCB's
Reserve table for IMF areas
Reserve table for PDB files
Resource table for MTCB and PDB
The MTCB data is based at MTCB base. This means that all pointers are relative to this base.
The first 17 words from MTCB base to MTCB base +16 have a fixed layout as shown below. They
are descriptors for the rest of the MTCB data area, the layout of which is site dependent.
MTCB2=
RECORD
MPCB, "max. PCB index allowed
PPCBI[, "pointer PCB index [
MPROC, "max. # processes calling MTCB
PSAAR1, "pointer save area # 1
SAARWUS "# save area words used
NSUBSYS, "max # subsystems
PUPMASK, "pointer update masks
PMTCB, "pointer MTCB pool
IFFMTCB, "index first free MTCB
PIMF, "pointer IMF list
NIMF, "# IMF areas
IFFIMT, "index first free IMF area
PPDB, "pointer PDB list
NPDB, "# PDB files
IFFPDB, "index first free PDB file
SEM:INTEGER; "global semaphore
END;
3.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
MTCB ̲INIT is an initialization program and it has no interface to other subsystems.
The process accesses the critical region CONFIG:
The MTCB data record (MTCB ̲1) is read, and the following pointers are updated:
PMTCB (The page on which the MTCB data is laid out)
OFFS (The offset to the data areas)
TOP ̲OF ̲MEMORY (When the data area is laid out, the pointers to next the free memory areas
on pages 0, 1 and 2 are updated).
M̲e̲m̲o̲r̲y̲ ̲A̲c̲c̲e̲s̲s̲
The MTCB data area is laid out on page 1.
The size of the area is site dependant, and is determined by the parameters in the critical
region CONFIG.
3.3 P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲
Fig. 3.3 shows the main flow in the process.
In ref. I chapt. 3.4 the complete layout of the MTCB data are is shown.
This chapter contains a brief description of the processing in MTCB ̲INIT. For details please
refer to ref.I and to source listings.
In the description below, the numbers refer to fig. 3.3
Main events are:
l. The record MTCB ̲1, containing the configuration parameters for the MTCB data area is
copied from critical region CONFIG.
pointers to free memory areas (TOP ̲OF ̲MEMORY) are copied from CONFIG:
2. Page number and offset to data area (the 2 first words in MTCB ̲1) are updated in CONFIG.
The size of the MTCB data area is calculated and pointer to next free memory on page
1 is updated in CONFIG (TOP ̲OF ̲MEMORY).
S̲i̲z̲e̲ ̲o̲f̲ ̲d̲a̲t̲a̲ ̲a̲r̲e̲a̲:̲ Size of MTCB ̲2 (ref. chapt. 3.1, common data) + (Number of subsystems
+ 1) + (16 x no. of processes) + Number of IMF areas + Number of PDB files + Number of
process control blocks + (9 x number of MTCB's) + Size of resource data record (4 words).
3. Basic pointers and parameters used by the MTCB Monitor and placed in the first 17 words
of the data area are updated (MTCB ̲2). The pointers are extractions of MTCB ̲1 from CONFIG.
4. The resource data record is updated:
MTCB ̲THRESH :the value from MTCB ̲1 is inserted
MTCB ̲COUNT = 0
PDB ̲THRESH :the value from MTCB ̲1 is inserted
PDB ̲COUNT = 0
5. The area reserved for MTCB's and the PCB indexed table is filled with zeros.
6. A linked list of free MTCB's is created:
The first word in each MTCB is updated with the next MTCB number. The last MTCB has
no links.
7. The IMF reservation list is updated as a linked list. Each word in the list represents
a specific area on the IMF file. Each word is updated with the offset to the following
word on the list. The last word is reset.
8. The PDB reservation list is updated as a linked list (as in 7).
9. The global semaphore located in MTCB ̲2 is reset.
10. The program is terminated by call of MON TERMINATE.
FIG. 3.3
MTCB ̲INIT flow chart
3.4 D̲a̲t̲a̲ ̲O̲r̲g̲a̲n̲i̲z̲a̲t̲i̲o̲n̲
The process data area consists of 4 records:
CONFIG (region name)
MTCB ̲DATA (MTCB ̲1)
TOM (TOP ̲OF ̲MEMORY, 3 words)
RESOURCE ̲DATA (4 words)
The final layout of the MTCB data area is shown in ref. 1 chapt. 3.4.
3.5 S̲t̲o̲r̲a̲g̲e̲ ̲A̲l̲l̲o̲c̲a̲t̲i̲o̲n̲
Program size : 253 words
Process size : 311 words
3.6 P̲e̲r̲f̲o̲r̲m̲a̲n̲c̲e̲ ̲C̲h̲a̲r̲a̲c̲t̲e̲r̲i̲s̲t̲i̲c̲s̲
N/A
3.7 L̲i̲m̲i̲t̲a̲t̲i̲o̲n̲s̲
N/A
3.8 E̲r̲r̲o̲r̲ ̲C̲o̲d̲e̲s̲/̲E̲r̲r̲o̲r̲ ̲L̲o̲c̲a̲t̲i̲o̲n̲s̲
L̲A̲B̲E̲L̲ R̲A̲I̲S̲E̲D̲ ̲B̲Y̲ ̲C̲A̲L̲L̲ ̲O̲F̲:
1 MON REGION, RENTER
2 MON REGION, RGETN
3 MON REGION, RGETN
4 MON REGION,RPUT
5 MON REGION,RPUT
6 MON REGION, RPUT
7 MON REGION,RLEAVE
0 MON TERMINATE
3.9 L̲i̲s̲t̲i̲n̲g̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Please refer to chapt. 5.
4 Q̲U̲A̲L̲I̲T̲Y̲ ̲A̲S̲S̲U̲R̲A̲N̲C̲E̲
N/A
5 P̲R̲E̲P̲A̲R̲A̲T̲I̲O̲N̲S̲ ̲F̲O̲R̲ ̲D̲E̲L̲I̲V̲E̲R̲Y̲
G̲e̲n̲e̲r̲a̲t̲i̲o̲n̲ ̲o̲f̲ ̲O̲b̲j̲e̲c̲t̲ ̲C̲o̲d̲e̲ ̲F̲i̲l̲e̲:
. Copy the source directory of the actual version into a work directory.
. Activate the command file MTCB ̲DATAINIT.CR
. Activate the command file MTCB ̲DATAINIT.CP
. Activate the command file MTCB ̲DATAINIT.LO
The object code ready for installation is now available in the file MTCB ̲DATAINIT.C.
L̲I̲S̲T̲I̲N̲G̲S̲
The compilation and linker printfiles may be obtained by activating the command file MTCB
̲DATAINIT.PP.