top - download
⟦3a547a8a3⟧ Wang Wps File
Length: 27743 (0x6c5f)
Types: Wang Wps File
Notes: Message Management Stm.
Names: »1074A «
Derivation
└─⟦b3a67856d⟧ Bits:30006040 8" Wang WCS floppy, CR 0065A
└─ ⟦this⟧ »1074A «
WangText
…0b……07……09……02……09……06……09……07……08……0c……08……0d……08……02……08…
…02…CPS/SDS/003
…02…OKH/810801…02……02…
MESSAGE MANAGEMENT SYSTEM
…02……02…CAMPS
4̲ ̲ ̲P̲A̲C̲K̲A̲G̲E̲ ̲D̲E̲S̲I̲G̲N̲
4.1 P̲A̲C̲K̲A̲G̲E̲ ̲O̲V̲E̲R̲V̲I̲E̲W̲
4.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
An overview of MMS functions is given in figure 4.1.1-1.
MMS contains the following subpackages:
- CIF Handling Subpackage
- CIF Storage and Retrieval Subpackage
- Checkpoint and Recovery Subpackage.
4.1.1.1 C̲I̲F̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
This subpackage performs all functions for manipulation
of CIFs in Short Term Storage.
4.1.1.1.1 S̲h̲o̲r̲t̲ ̲T̲e̲r̲m̲ ̲S̲t̲o̲r̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
Performs allocation and deallocation of Short Term
Storage disk space to CIFs.
Performs purge of deallocated blocks when appropriate,
of section 2.2.2.6.2.
Performs threshold monitoring and accounting functions
for Short Term Storage.
4.1.1.1.2 S̲e̲c̲u̲r̲i̲t̲y̲ ̲C̲o̲n̲t̲r̲o̲l̲
Contains the control functions associated with security
profiles, ref. section 2.2.2.6.
4.1.1.1.3 C̲I̲F̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
Execute the following commands from application processes:
- Create CIF
- Create New CIF Version
- Create View
- Create Fields
- Get View Attributes
- Change Attributes
- Remove View
4.1.1.1.4 C̲I̲F̲ ̲I̲/̲O̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
Execute the I/O commands:
- Read View
- Write View
4.1.1.1.5 I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
Perform the start up functions in MMS.
4.1.1.2 S̲t̲o̲r̲a̲g̲e̲ ̲a̲n̲d̲ ̲R̲e̲t̲r̲i̲e̲v̲a̲l̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
This subpackage performs the functions associated with
storage and retrieval of CIFs. The management of Intermediate
and Long Term Storage is the responsibility of the
subpackage.
4.1.1.2.1 S̲t̲o̲r̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
- Copying of CIFs to and from Intermediate and Long
Term Storage.
- Freeing of space in Intermediate Storage when a
CLEAR command is issued.
- Reorganizations of Intermediate Storage.
4.1.1.2.2 D̲i̲r̲e̲c̲t̲o̲r̲y̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
Performs management of Online CIF Directory and Long
Term Storage Directories.
4.1.1.2.3 C̲o̲m̲m̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲
Executes the following application process commands:
- Store
- Retrieve
- Dump
- Clear
In addition, it performs unloading of a CIF to Intermediate
Storage when its use has terminated.
4.1.1.2.4 S̲t̲o̲r̲a̲g̲e̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲ ̲a̲n̲d̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲
Performs threshold and accounting functions for Intermediate
Storage.
4.1.1.3 C̲h̲e̲c̲k̲p̲o̲i̲n̲t̲ ̲a̲n̲d̲ ̲R̲e̲c̲o̲v̲e̲r̲y̲
This subpackage manages the checkpoint arrays described
in section 2.2.2.2, and executes the commands.
- Save
- Restore
Fig. 4.1.1-1…01…MMS Functions
4.1.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲
MMS is implemented as a set of coroutines within the
File Management Process. Ref. figure 2.1.1-1.
There are three types of coroutines:
a) M̲e̲s̲s̲a̲g̲e̲ ̲H̲a̲n̲d̲l̲e̲r̲ ̲C̲o̲r̲o̲u̲t̲i̲n̲e̲
This type of coroutine executes commands from application
processes. There is a number of incarnations of
the coroutine, so that several commands can be
processed in parallel. Each coroutine can execute
commands associated with any of the 3 subpackages.
b) C̲h̲e̲c̲k̲p̲o̲i̲n̲t̲ ̲T̲r̲a̲n̲s̲m̲i̲s̲s̲i̲o̲n̲ ̲C̲o̲r̲o̲u̲t̲i̲n̲e̲
Transmits checkpoints to standby PU via the SSC
checkpoint transmission process. There is only
one incarnation of the coroutine. It belongs entirely
to Checkpoint and Recovery Subpackage.
c) D̲i̲s̲k̲ ̲P̲u̲r̲g̲e̲ ̲C̲o̲r̲o̲u̲t̲i̲n̲e̲
Purges deallocated disk blocks before they can
be reused. There is one incarnation of this coroutine.
It belongs entirely to CIF Handling Function subpackage.
The subpackage functions are implemented as a set of
procedures called from the coroutines. The Message
Handler Coroutines execute commands on behalf of all
subpackages.
The structure is shown on figure 4.1.2-1.
Fig. 4.1.2-1…01…MMS Software Structure
4.1.3 D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲
The main flow is shown on figure 4.1.3-1.
The FMS Command Reception Coroutine receives commands
at the FMS synchronization elements (ref. figure 2.1.1-1)
and sends them to the Message Handler Coroutines via
a semaphore. The first idle coroutine will get the
command and start executing it. It will do so by calling
the appropriate subpackage procedures.
If the subpackage procedures shall read or write on
disk, they do so via the FMS Disk Cache Manager coroutines.
The Disk Purge Coroutine is activated when a disk block
of sufficiently high security is deallocated.
The Checkpoint Transmission Coroutine is activated
by the SAVE and RESTORE commands. Termination of the
transmission is awaited in a response semaphore before
processing proceeds.
4.1.3.1 U̲p̲d̲a̲t̲e̲ ̲L̲o̲c̲k̲o̲u̲t̲
The CIF Handling Subpackage shall assure that two Write
View commands on the same CIF can not be executed concurrently.
Fig. 4.1.3-1…01…Data Flow and Control Logic
4.1.4 P̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲
This section describes data which are shared by the
subpackages.
4.1.4.1 C̲o̲m̲m̲a̲n̲d̲ ̲O̲p̲e̲r̲a̲t̲i̲o̲n̲s̲
A set of operation buffers are used by the FMS Command
Handler to store received commands and queue them to
the Message Handler Coroutine Semaphore.
The command buffer is a parameter to the call of subpackage
procedures and is again used to generate a response
to calling application process.
4.1.4.2 C̲I̲F̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲B̲l̲o̲c̲k̲s̲
Each active CIF is described by a CIFCB. The CIFCB
is mainly managed by CIF Handling Subpackage, but contains
control variables for the two other subpackages as
well.
The format is shown in section 4.2.1.4.1.
4.1.4.3 V̲i̲e̲w̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲B̲l̲o̲c̲k̲s̲
Each active view is described by a VCB. The same remarks
apply as for CIFCB. The VCB format is shown in section
4.2.1.4.6.
4.1.5 C̲o̲m̲m̲o̲n̲ ̲D̲a̲t̲a̲
This section describes data shared with other packages.
They are:
- Command Parameter Record Formats
- Checkpoint Transmission Buffers
4.1.5.1 C̲o̲m̲m̲a̲n̲d̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲ ̲R̲e̲c̲o̲r̲d̲ ̲F̲o̲r̲m̲a̲t̲s̲
These are the formats of some of the Command Parameter
Blocks used in the commands to MMS described in section
4.1.6.
4.1.5.1.1 V̲i̲e̲w̲ ̲A̲t̲t̲r̲i̲b̲u̲t̲e̲s̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲ ̲R̲e̲c̲o̲r̲d̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
APPLICATION CONTROL
INFORMATION (cf 2.2.1.4.4)
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
SECURITY PROFILE
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
CIF ID
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
VERSION
INDICATOR
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
SI RI
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD
INFORMATION
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
SI: Storage and Retrieval Information
RI: Recovery Information
4.1.5.1.2 F̲i̲e̲l̲d̲ ̲I̲n̲f̲o̲r̲m̲a̲t̲i̲o̲n̲ ̲E̲l̲e̲m̲e̲n̲t̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
A
FIELD TYPE CS R R
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
ALLOCATED LENGTH
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
USED LENGTH
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
R: 1 Field group is referenced by
View
AR: 0 Read Access Only
1 Read and Write Access
FIELD TYPE: 0 Temporary Field
1 Permanent Field
ALLOCATED LENGTH: The number of bytes allocated to
the
field.
USED LENGTH: The number of bytes which have been
written to the field.
CS: Creation Status: 0: Not Existing
1: Field included
from
predecessor
view.
2: New field
created.
4.1.5.1.3 F̲i̲e̲l̲d̲ ̲I̲n̲f̲o̲r̲m̲a̲t̲i̲o̲n̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
NO. OF ELEMENTS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD INFORMATION
ELEMENTS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
NO. OF ELEMENTS: The number of elements in FIELD
INFORMATION ELEMENTS. Must not
exceed 16.
Field Information is part of the View Attributes Parameter
Record, see 4.1.5.1.1.
4.1.5.1.4 F̲i̲e̲l̲d̲ ̲L̲i̲s̲t̲ ̲E̲l̲e̲m̲e̲n̲t̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD GROUP ID
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD BYTE ADDRESS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
RECORD LENGTH
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD BYTE ADDRESS: Denotes a relative byte number
within the field. Must be even.
RECORD LENGTH: Number of bytes to be transferred
to or from the field. Must be
even
4.1.5.1.5 F̲i̲e̲l̲d̲ ̲L̲i̲s̲t̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
NO. OF ELEMENTS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
FIELD LIST ELEMENTS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
NO. OF ELEMENTS: The number of elements in FIELD LIST
ELEMENTS.
Field List is a parameter to READ VIEW and WRITE VIEW
commands. See 4.1.6.2.2.
4.1.5.1.6 C̲I̲F̲ ̲I̲D̲ ̲L̲i̲s̲t̲ ̲E̲l̲e̲m̲e̲n̲t̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
CIF ID
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
VERSION
INDICATOR
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
S
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
S: Area for return of STORE TIME
4.1.5.1.7 C̲I̲F̲ ̲I̲D̲ ̲L̲i̲s̲t̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
NO OF ELEMENTS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
CIF ID
List Elements
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
CIF ID List is a parameter in DUMP CIF SEQUENCE command.
See 4.1.6.2.3.4.
4.1.6 I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
4.1.6.1 E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
Not applicable.
4.1.6.2 M̲e̲s̲s̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
G̲e̲n̲e̲r̲a̲l̲ ̲C̲o̲m̲m̲u̲n̲i̲c̲a̲t̲i̲o̲n̲ ̲P̲r̲o̲t̲o̲c̲o̲l̲
All application process access to MMS must be performed
via Message Monitor within CSF. Each access consists
of a command sent to one of the Storage and File Management
Process synchronization elements and a reply sent by
MMS to the Message Monitor answer synchronization element
of the application process. The communication flow
is shown on figure 4.1.6.2-1.
A command to MMS consists of up to 3 parts, as shown
on figure 4.1.6.2-2.
a) C̲o̲m̲m̲a̲n̲d̲ ̲B̲o̲d̲y̲
This is always present. It is sent in the process
communication information element to the SFM synchronization
element. The standard part contains various control
information, which is independent of the command.
The parameter part contains command dependent
information.
b) C̲o̲m̲m̲a̲n̲d̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲ ̲B̲l̲o̲c̲k̲
Is used for some commands where the parameter information
is too voluminous to be held in the process communication
information element. The parameter block is a
consecutive area in the data space of the sending
application process.
c) A̲p̲p̲l̲i̲c̲a̲t̲i̲o̲n̲ ̲D̲a̲t̲a̲ ̲B̲u̲f̲f̲e̲r̲
Is only present for read/write commands. It is
a consecutive area in the application data space
of the sending process.
Execution of a command usually results in updating
the Command Parameter Block and Application Data Buffer,
if present.
Having terminated command execution, MMS returns a
reply formatted as command body, where parameter part
now contains return parameters, including a completion
code. The completion code tells if the command was
executed as requested, or the reason why it was not.
Fig. 4.1.6.2-1…01…MMS Process Communication Scheme
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
COMMAND BODY COMMAND CODE
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
COMMAND BODY
STANDARD PART
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
COMMAND BODY
PARAMETER PART
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
COMMAND
PARAMETER BLOCK COMMAND
DEPENDANT
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
APPLICATION ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
DATA BUFFER
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
Fig. 4.1.6.2-2…01…GENERAL MMS COMMAND STRUCTURE
4.1.6.2.1 C̲I̲F̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
4.1.6.2.1.1 C̲r̲e̲a̲t̲e̲ ̲C̲I̲F̲
Input:
Command Body: Security Profile
Command Parameter
Block: CIF Attributes, as described below
Output:
Command Body: Completion Code
View Ref.
Command Parameter
Block: Completed Attributes, as described
below.
The CIF Attributes input parameter is a View Attributes
Parameter record (see section 4.1.5.1.1) with the following
fields filled in by calling application:
- Application Control Information
- Recovery Information:
1: Recoverable CIF
0: Non-Recoverable CIF
- Field Information (see section 4.1.5.1.3).
Contains a Field Information Element (see section
4.1.5.1.2) for each field of the new CIF. If ALLOCATED
LENGTH is non-zero, it will be used to allocate
initial disk space for the field. USED LENGTHS
is ignored. FIELD TYPE specifies for each field
whether it is permanent or temporary. CS, AR and
R fields are ignored.
A CIF will be created with the specified attributes.
A view referencing the CIF will be generated too.
It will reference all field groups of the CIF and
have Read- and Write access to all fields. The CIF
attributes parameter will be updated to contain the
view attributes for the generated view.
The CIF ID field is only relevant if at least one of
the fields is permanent. The version indicator is
set to one, and used length of each field is set to
zero.
4.1.6.2.1.2 C̲r̲e̲a̲t̲e̲ ̲N̲e̲w̲ ̲C̲I̲F̲ ̲V̲e̲r̲s̲i̲o̲n̲
Input:
Command Body: View Ref. Previous Version.
Command Parameter
Block: CIF Attributes, as specified below.
Output:
Command Body: Completion Code
View Ref., New Version
Command Parameter
Block: View Attributes, new version.
The input view must reference the latest version of
the CIF, and the CIF must be permanent.
A new CIF version will be generated together with a
view referencing it. The attributes will be copied
from previous version, except for:
a) VERSION INDICATOR is increased by one.
b) ALLOCATED LENGTH of each field is taken from the
input CIF Attributes.
c) USED LENGTH of each field is set to zero.
d) The view will reference all fields with read and
write access.
4.1.6.2.1.3 C̲r̲e̲a̲t̲e̲ ̲V̲i̲e̲w̲
Input:
Command Body: View Ref. Predecessor View.
Command Parameter
Block: View Attributes
Output:
Command Body: Completion Code
View Ref., New View
Command Parameter
Block: View Attributes, New View.
For each field group, the corresponding FIELD INFORMATION
ELEMENT in input View Attributes specifies the field
of the new view as follows (see section 4.1.5.1.2):
a) The R field specifies, if the field group shall
be referenced by the view. The new view can only
reference a subset of the field groups referenced
by predecessor view.
b) For those field groups which shall be referenced,
the AR field specifies the access right of the
new view. Write access can only be obtained if
the predecessor view has write access.
c) The CS field specifies if a field reference shall
already be created for the new view. If specified,
subsequent calls of the Create Fields command can
be avoided. Field creation and inclusion is handled
as specified in CREATE FIELDS below. Upon return
of reply, the Command Parameter Block contains
the attributes of the new view.
4.1.6.2.1.4 C̲r̲e̲a̲t̲e̲ ̲F̲i̲e̲l̲d̲s̲
Input:
Command Body: View Ref.
Command Parameter
Block: Field Information
Output:
Command Body: Completion Code
Command Parameter
Block: Updated Field Information
The command specifies for a view previously created
by Create View, how new field references shall be set
in the new view, if not already specified in Create
View. The input parameter contains the specifications.
If the R field is set to one in a Field Information
Element, the CS field specifies, whether the field
shall be included from predecessor view or a new field
shall be added to the field group. In the latter case
ALLOCATED LENGTH may:
- specify that space shall be allocated for the field.
Note that creation or inclusion can only take
place for those field groups which were referenced
in the CREATE VIEW command.
Upon return of reply, the Updated Field Information
will contain the complete field information for the
view.
The command may be called several times for the same
view, but each field group may only be specified once.
Note that inclusion of a field from predecessor view
requires that it still exists.
4.1.6.2.1.5 G̲e̲t̲ ̲V̲i̲e̲w̲ ̲A̲t̲t̲r̲i̲b̲u̲t̲e̲s̲
Input:
Command Body: View Ref.
Output:
Command Body: Completion Code
Command Parameter
Block: View Attributes
The View Attributes are delivered in a View Attributes
Parameter Record, see section 4.1.5.1.1.
4.1.6.2.1.6 C̲h̲a̲n̲g̲e̲ ̲A̲t̲t̲r̲i̲b̲u̲t̲e̲s̲
Input:
Command Body: View Ref.
Security Profile
Change Mask.
Command Parameter
Block: Application Control Information
Output:
Command Body: Completion Code.
The changeable attributes are Security Profile and
Application Control Information. The Change Mask specifies
the words of Application Control Information which
shall be changed. Only a trusted process is allowed
to decrease the Security Profile.
4.1.6.2.1.7 R̲e̲m̲o̲v̲e̲ ̲V̲i̲e̲w̲
Input:
Command Body: View Ref.
Output:
Command Body: Completion Code.
If the view is not subject to storage, it will be deleted.
Those fields which are only referenced by the deleted
view and which are not subject to storage will be deleted
too.
Note that a view referencing a recoverable CIF must
be removed by means of the SAVE command.
4.1.6.2.2 C̲I̲F̲ ̲I̲/̲O̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
4.1.6.2.2.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲
Input:
Command Body: View Ref.
Application Data Buffer Size.
Command Parameter
Block: Field List.
Output:
Command Body: Completion Code
Command Parameter
Block: Updated Field List
Application Data
Buffer: Data read from view.
Reads data from one or more fields as specified in
Field List (see section 4.1.5.1.5). The data are placed
consecutively in Application Data Buffer.
Each field list element contains two variables controlling
the read operation from the field:
a) F̲i̲e̲l̲d̲ ̲B̲y̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲
A byte offset within the field specifying where
to start the read operation. Must be even valued.
b) R̲e̲c̲o̲r̲d̲ ̲L̲e̲n̲g̲t̲h̲
The maximum number of bytes to be read from the
field. A value of zero is allowed. The actual
number of bytes read may be smaller than specified,
as read will not continue beyond USED LENGTH of
the field. Must be even valued.
After the read operation each field list element will
be updated as follows:
c) Record Length will contain number of bytes actually
read. It may be zero, if field was empty or if
application data buffer could not hold more data.
d) Field Byte Address will be increased by Record
Length and will thus point to the first byte after
the bytes read. This will particularly facilitate
a sequence of read operations from a field.
Note that the most efficient read operation is obtained,
if read operations are started on sector boundaries
(512 bytes) within fields, and if complete sectors
are read. Moreover, efficiency is likely to be increased,
if the field groups specified in field list are consecutive.
4.1.6.2.2.2 W̲r̲i̲t̲e̲ ̲V̲i̲e̲w̲
Input:
Command Body: View Ref.
Application Data Buffer Size
Command Parameter
Block: Field List
Application Data
Buffer: Data to be written
Output:
Command Body: Completion Code
Command Parameter
Block: Updated Field List
Writes data from the application data buffer to one
or more fields, as specified by field list (see section
4.1.5.1.5).
Each field list element contains two variables controlling
the write operation:
a) F̲i̲e̲l̲d̲ ̲B̲y̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲
A byte offset within the field specifying where
to start the write operation. It is allowed to
start write anywhere in the field, even beyond
USED LENGTH of the field. Must be even valued.
b) R̲e̲c̲o̲r̲d̲ ̲L̲e̲n̲g̲t̲h̲
The number of bytes to be written to the field.
Must be even valued.
After the write operation each field list element will
be updated as follows:
c) Field Byte Address will be increased by Record
Length. This will particularly facilitate a sequence
of write operations to a field.
Moreover USED LENGTH and possibly ALLOCATED LENGTH
of the field will be updated, if data are written beyond
the previous value. Cf. section 2.2.1.3.4.
The most efficient write operation is obtained if write
operations are started on sector boundaries (512 bytes)
and if complete sectors are written.
4.1.6.2.3 S̲t̲o̲r̲a̲g̲e̲ ̲a̲n̲d̲ ̲R̲e̲t̲r̲i̲e̲v̲a̲l̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
4.1.6.2.3.1 S̲t̲o̲r̲e̲
Input:
Command Body: View Ref
Output:
Command Body: CIF ID
View ID
Completion Code
Requests that the referenced view be stored.
When the command has been completed, the view is retrievable
from Online Storage by the returned CIF ID, View ID
4.1.6.2.3.2 R̲e̲t̲r̲i̲e̲v̲e̲
Input:
Command Body: CIF ID
View ID
Command Parameter
Block. Type
Dump File Ref
Dump Segment ID
Output:
Command Body: View Ref
Command Parameter
Block: View Attributes.
Requests retrieval of a view specified by CIF ID and
View ID.
Type defines whether retrieval shall be done from Online
Disk or from a Long Term Storage volume. In the latter
case, dump file and dump segment shall be specified.
The Dump File Ref. is the one returned by I/O system
on a look-up command for the dump file.
4.1.6.2.3.3 I̲n̲i̲t̲ ̲D̲u̲m̲p̲
Input:
Command Body: Dump File Ref.
Output:
Command Body: Dump Segment Id
Completion Code.
Prepares the referenced file for a dump. The file
must have been looked up by an I/O system command.
4.1.6.2.3.4 D̲u̲m̲p̲ ̲C̲I̲F̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲
Input:
Command Body: Dump File Ref
Command Parameter
Block: CIF ID List.
Output:
Command Body: Number of CIFs dumped.
Completion Code.
Command Parameter
Block: Updated CIF ID List.
Dumps the CIFs specified in the list to the specified
dump file.
The CIF ID list is updated in the following way:
For each dumped CIF, the STORE TIME of the CIF is inserted
in the corresponding CIF ID list element. If STORE
TIME is zero, the CIF is still referenced by views
with update access and can thus still be subject to
store requests.
The command may be issued a number of times during
a dump.
4.1.6.2.3.5 T̲e̲r̲m̲i̲n̲a̲t̲e̲ ̲D̲u̲m̲p̲
Input:
Command Body: Dump File Ref
Output:
Command Body: Completion Code.
Terminates a dump and closes the dump file. It must
however be dismantled by a call to I/O System.
4.1.6.2.3.6 C̲l̲e̲a̲r̲
Input:
Command Body: Clear Time
Output:
Command Body: Completion Code.
Requests that CIFs which reside in Intermediate Storage
and have STORE TIME smaller than Clear Time are removed.
4.1.6.2.4 C̲h̲e̲c̲k̲p̲o̲i̲n̲t̲ ̲a̲n̲d̲ ̲R̲e̲c̲o̲v̲e̲r̲y̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
4.1.6.2.4.1 S̲a̲v̲e̲
Input:
Command Body: Recovery Level.
Command Parameter
Block: Checkpoint View Ref List,
Application process Data
Remove View Ref. List.
Output:
Command Body: Completion Code.
Requests the views of the Checkpoint View Ref list
to be checkpointed together with the Application Process
Data, and the views of the Remove View Ref list to
be removed afterwards.
4.1.6.2.4.2 R̲e̲s̲t̲o̲r̲e̲
Input: None
Output:
Command Body: Completion Code
Command Parameter
Block: Application Process Data.
Reads the next checkpoint from checkpoint array, restores
the CIF and the views contained in it, and returns
application process data from the checkpoint.
4.1.6.2.5 S̲t̲o̲r̲a̲g̲e̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲ ̲a̲n̲d̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
4.1.6.2.5.1 S̲e̲t̲ ̲T̲h̲r̲e̲s̲h̲o̲l̲d̲ ̲V̲a̲l̲u̲e̲s̲
Input:
Command Body: Short Term Storage Thresholds
Intermediate Storage Thresholds
Output:
Command Body: Completion Code
4.1.6.2.5.2 G̲e̲t̲ ̲T̲h̲r̲e̲s̲h̲o̲l̲d̲ ̲W̲a̲r̲n̲i̲n̲g̲
Input None
Output
Command Body: Warning Type
Completion Code
The command is kept by MMS until a Threshold is exceeded.
Then it is returned with indication of which thresholds
were exceeded.
4.1.6.2.5.3 G̲e̲t̲ ̲S̲t̲o̲r̲a̲g̲e̲ ̲O̲c̲c̲u̲p̲a̲n̲c̲y̲
Input None
Output
Command Body Number of free blocks in STS
Number of free sectors in IS
4.2.1 C̲I̲F̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
4.2.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲
An overview of CIF Handling Subpackage is shown on
figure 4.2.1.1-1.
4.2.1.1.1 S̲h̲o̲r̲t̲ ̲T̲e̲r̲m̲ ̲S̲t̲o̲r̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
S̲hort T̲erm S̲torage is an ordinary contiguous file allocated
by FMS. Apart from initial allocation of the file,
FMS does not access STS. The size of STS is a system
generation parameter.
The STS Storage Management utilizes a two level storage
allocation scheme using blocks and sectors. STS is
subdivided into blocks of equal size. A block consists
of a number of sectors, each of 512 bytes. A sector
is the smallest addressable unit on a disk volume.
The blocksize is a system generation parameter and
may range from 2 to 8 sectors.
Blocks are numbered from 1 to NO. OF BLOCKS.
4.2.1.1.1.1 S̲h̲o̲r̲t̲ ̲T̲e̲r̲m̲ ̲S̲t̲o̲r̲a̲g̲e̲ ̲A̲l̲l̲o̲c̲a̲t̲i̲o̲n̲
This section describes the allocation and deallocation
of blocks in STS.
Free blocks are described in the F̲ree B̲lock M̲ap. FBM
is a bit array of length NO OF BLOCKS. The bit corresponding
to a block is set, if the block is not allocated to
a CIF.
When storage is allocated to a CIF, either when the
CIF is created or when it is extended, one or more
blocks are allocated and reserved for the CIF. The
blocks allocated to a CIF are described in the CIF
Block List of the CIF. The blocks allocated to a CIF
will be selected in such a way, that they are physically
as close as possible to each other. When blocks are
deallocated from a CIF, they may be freed at once,
and thus transferred to FBM. The blocks may, however,
be subject to purge before reuse. Blocks which must
be purged are described in the P̲urge B̲lock M̲ap, which
is a bit array of length NO OF BLOCKS. When the block
has actually been purged, it is transferred from PBM
to FBM.
Each block is at a given time in one of the following
states:
a) Allocated to a CIF
b) Free
c) Subject to Purge
Block state transitions are shown on figure 4.2.1.1.1-1.
Fig. 4.2.1.1-1…01…CIF Handling Functions
Fig. 4.2.1.1.1-1…01…Block State Transitions