top - download
⟦3270ab5e5⟧ Wang Wps File
Length: 111655 (0x1b427)
Types: Wang Wps File
Notes: LKSAA Part 1
Names: »4248A «
Derivation
└─⟦91ced00d4⟧ Bits:30006032 8" Wang WCS floppy, CR 0384A
└─ ⟦this⟧ »4248A «
WangText
$…00……00……00……00…<…0a……00……00…<…0c…<…07…;…0a…;
:…0c…:…06…9…0a…9 8…0d…8…01…7…09…7…0b…7…00…7…01…6…08…6…0b…6…02…6
5…09…5…02…4…09…4…00…4…06…4…07…3…09…3…0b…3…0d…3…0f…3…02…2…0b…2…05…1…0b…1…0c…1…02…1 1…07…0…09…0…0a…0…0b…0…0c…0…0d…0…0e…0…00……86…1 …02… …02… …02… …02…
Issue 1.5
LKSAA - VOLUME II SYS/84-06-15
Part 1
TECHNICAL PROPOSAL Page #
2 COMPUTER SYSTEM ..................................
24
2.1 HARDWARE .....................................
26
2.1.1 Introduction .............................
26
2.1.2 X-Local Area Network (optional) ..........
28a
2.1.2.1 General Description of X-Net ........
28a
2.1.2.2 Basic Implementation of the Optional
Local Area Network ...................
31
2.1.2.3 Extension Capabilities of the Option
for Local Area Network ...............
32
2.1.2.4 Utilization of another Local Area
Network ..............................
34
2.1.3 Central Communication System .............
35
2.1.3.1 General Description ..................
35
2.1.3.1.1 The Processor Units (PU) .........
39
2.1.3.1.2 The Channel Units (CU) ...........
40
2.1.3.1.3 Bus Structure ....................
42
2.1.3.1.4 Watchdog System ..................
45
2.1.3.2 LKSAA Processor and Channel Units
(Basic Implementation) ..............
46
2.1.3.2.1 Rack Layout ......................
52
2.1.3.3 Extension Capabilities ...............
54
2.1.3.4 Dualization of External Communication
Lines ................................
54
2.1.4 Equipment Matrix for the Computing
System ..................................
56
2.1.5 System Capacity and Connectivity
of Computer System ......................
58
2.1.5.1 Local Area Network (Option) .........
58
2.1.5.2 Central Communication System ........
58
2.1.5.2.1 Process Capacity ................
58
2.1.5.2.2 Random Access Memory ............
61
2.1.5.2.3 Peripheral Disk Memory ..........
63a
2.1.5.2.4 Terminal Equipment ..............
64a
2.1.5.2.5 Off-Line Cryptographic Equipment
64a
2.1.5.2.6 External Lines Via On-Line
Cryptographic Equipment .........
64a
2.1.5.2.7 External Lines Bypassing the
On-Line Cryptographic equipment ..
65c
2.1.5.2.8 Public Telephone Net .............
65d
2.1.5.2.9 High Speed Optical Data Link .....
65e
2.2 SOFTWARE .....................................
66
2.2.1 System Software .........................
66
2.2.1.1 Standard Operating System ...........
66
2.2.1.1.1 Overview of DAMOS Operational
Software ........................
70
2.2.1.1.2 Kernel ..........................
71
2.2.1.1.2.1 Resource Management .........
73
2.2.1.1.2.2 Process Management ..........
74
2.2.1.1.2.3 Process Hierarchy ...........
77
2.2.1.1.2.4 Memory Management ...........
79
2.2.1.1.2.5 Process Communication .......
80
2.2.1.1.2.6 CPU Management ..............
80
2.2.1.1.2.7 Processing Unit Management ..
80
2.2.1.1.2.8 Transport Mechanisms ........
81
2.2.1.1.2.8.1 Basic Transport Service
. 81
2.2.1.1.3 DAMOS Input/Output ..............
82
2.2.1.1.4 File and Message Management
System ..........................
84
2.2.1.1.4.1 Device and Volume Handling ..
84
2.2.1.1.4.2 Directories .................
85
2.2.1.1.4.3 Files .......................
85
2.2.1.1.4.3.1 File Types ..............
85
2.2.1.1.4.3.2 File Commands ...........
85
2.2.1.1.4.4 User Handling ...............
86
2.2.1.1.4.5 Disk Integrity ..............
86
2.2.1.1.4.5.1 Security ................
86
2.2.1.1.4.5.2 Redundant Disks .........
86
2.2.1.1.4.5.3 Bad Sectors .............
87
2.2.1.1.4.6 Access Methods ..............
87
2.2.1.1.4.6.1 Unstructured Access .....
87
2.2.1.1.4.6.2 Indexed Sequential Access
88
2.2.1.1.4.7 Message Management System ...
89
2.2.1.1.5 Terminal Management System ......
89
2.2.1.1.5.1 Transfer of I/O Data ........
90
2.2.1.1.5.2 User Handling ...............
90
2.2.1.1.5.3 Security ....................
90
2.2.1.1.5.4 Hardware Categories .........
91
2.2.1.1.5.4.1 Terminal Controllers ....
91
2.2.1.1.5.4.2 Lines ...................
92
2.2.1.1.5.4.3 Units ...................
92
2.2.1.1.6 System Initialization ...........
93
2.2.1.1.7 System Status and Control .......
93
2.2.1.1.7.1 Main Functions ..............
94
2.2.1.1.7.1.1 On-Line Diagnostics .....
95
2.2.1.1.7.1.2 Line Monitoring and
Control .................
95
2.2.1.1.7.1.3 Handling of Technical
Errorreports ............
98
2.2.1.1.7.1.4 Operator Commands to an
On-Line PU ..............
98
2.2.1.1.7.1.5 Off-Line PU Operation ...
99
2.2.1.1.8 ZVA System Functions ............
100
2.2.1.2 General Maintenance Software ........
100
2.2.2 General Development and Maintenance
Software .................................
101
2.2.2.1 Programming Languages ................
101
2.2.2.2 Utility Software .....................
101
2.2.2.3 Binder ...............................
102
2.2.2.4 Test Tools ...........................
102
2.2.3 Highlevel Operating System (HIOS) ........
103
2.2.4 Security System .........................
105
2.2.4.1 Access Control .......................
105
2.2.4.2 Error Processing .....................
105
2.2.4.2.1&2 User Errors and System Errors ..
105
2.2.4.2.3 Post-Mortem-Protocol .............
105
2.2.4.2.4 Restart ..........................
106
2.2.4.3 Checkpoint, Recovery and Restart .....
107
2.2.4.3.1 Integrity ........................
107
2.2.4.3.2 Central Recovery Functions .......
107
2.2.4.3.3 Checkpoints ......................
109
2.2.4.3.4 Recovery .........................
113
2.2.4.3.4.1 Failure Types ................
113
2.2.4.3.4.2 Recovery Actions .............
114
2.2.4.3.4.3 Recovery Level ...............
115
2.2.4.3.4.4 Applications Recovery
Actions ......................
116
2.2.5 Application Software .....................
117
2.2.5.1 Message Correction Programs ..........
123
2.2.5.2 Message Processing ...................
123
2.2.5.1 Message Processing Programs ........
123
2.2.5.2.2 Storage ..........................
123
2.2.5.2.3 Transformation and
Transmission .....................
123
2.2.5.3 Network Management ...................
124
2.2.5.3.1 Configuration Management .........
124
2.2.5.3.2 Changes ..........................
124
2.2.5.4 Log ..................................
124
2.2.5.5 Statistics ...........................
124
2.2.6 Diagnostic Programs ......................
125
2.2.6.1 Off-Line Diagnostic Program ..........
125
2.2.6.2 On-Line Diagnostic Programs ..........
125
2.3 AVAILABILITY REQUIREMENTS ....................
126
2.3.1 General Considerations ...................
126
2.3.2 Recovery Procedures ......................
128
2.3.3 Fallback Procedures ......................
129
2.3.4 Recovery Times ...........................
130
2.3.5 Overall System Availability ..............
130
2.3.6 Mean-Time-Between-Failure (MTBF) .........
133
2.3.7 Mean-Time-To-Repair (MTTR) ...............
136
2.4 INSTALLATION .................................
140
2.4.1 FMZ Installations ........................
140
2.4.2 Radio Control System .....................
141a
2.4.2.1 Radio Control Center .................
141a
2.4.2.2 TX Station ...........................
141a
2.4.2.1 RX Station ...........................
141b
2.4.3 AE - Installations (option) ..............
141b
2.4.4 Typical Layout ...........................
141b
2.4.5 Installation and Cabling Requirements ....
153
2.4.5.1 General ..............................
153
2.4.5.2 FMZ Rooms ............................
153
2.4.5.3 Cable Routing to AE-Workstations .....
154b
2.4.5.4 AE Workstations or Cells (Option) ....
154b
2.4.5.5 Radio Control Centre .................
154b
2.4.6 Physical Location of the Equipment in
the FMZ ..................................
154c
2.5 DOCUMENTATION ................................
155
2.5.1 Documentation Requirement Analysis .......
155
2.5.1.1 General Requirements .................
155
2.5.1.2 Program Documentation Requirements ...
155
2.5.1.3 Work Procedures Requirements .........
156
2.5.1.4 Operational Procedures Requirements
157
2.5.2 Documentation Proposal ...................
157
2.6 METHODS AND TOOLS ............................
159
2.6.1 System Design and Hardware Configuration
. 159
2.6.2 Software Design, Development
and Integration ..........................
159
2.6.2.1 Development Method ...................
159
2.6.2.1.1 System Development
Baselines ........................
159
2.6.2.1.2 System Requirement Baseline ......
161
2.6.2.1.3 System Design Baseline ...........
161
2.6.2.1.4 Preliminary Design Baseline ......
161
2.6.2.1.5 Detailed Design Baseline .........
163
2.6.2.1.6 Implementation Baselines .........
164
2.6.2.1.6.1 Code and Unit Test
Baseline .....................
164
2.6.2.1.6.2 Subsystem Integration and
Test Baseline ................
167
2.6.2.1.7 System Verification Baseline .....
169
2.6.2.1.8 System Acceptance Baselines ......
169
2.6.2.1.9 Implementation Strategy ..........
170
2.6.2.2 Software Package Design ..............
171
2.6.2.3 Software Modularity ..................
173
2.6.2.4 Structure of the PDS .................
177
2.6.2.5 Package Design Standard ..............
182
2.6.3 Configuration Control ....................
186
2.6.4 Project Management .......................
186
2.7 SECURITY ...................................
187
2.7.1 Security Assurance Via Hardware ..........
187
2.7.1.1 Principal Hardware Architecture ......
187
2.7.1.2 Memory Mapping .......................
188
2.7.1.3 CPU States ...........................
190
2.7.1.3.1 Instruction Execution ............
191
2.7.1.4 Monitor Instruction ..................
191
2.7.1.5 Interrupts ...........................
192
2.7.1.5.1 External Interrupts ..............
192
2.7.1.5.2 Internal Interrupts ..............
192
2.7.1.5.3 Interrupt Handling ..............
193
2.7.1.6 Integrity Checks .....................
197
2.7.1.6.1 Passive Checks ...................
197
2.7.1.6.2 Active Checks ....................
197
2.7.1.7 Configuration Control ................
197
2.7.2 Security Assurance via Software ..........
198
2.7.2.1 Summary ..............................
198
2.7.2.2 Terminal Security ....................
199
2.7.2.2.1 Objectives .......................
199
2.7.2.2.2 Man Machine Interface ............
199
2.7.2.2.2.1 Security Attributes ..........
200
2.7.2.2.2.2 Initiation and Termination....
201
2.7.2.2.2.3 Security Attributes of
Users and Terminals ..........
202
2.7.2.2.3 Authentication ...................
203
2.7.2.2.4 Sign On ..........................
204
2.7.2.2.5 Sign Off .........................
204
2.7.2.2.5.1 Sign Off Command .............
204
2.7.2.2.5.2 Automatic Sign Off ...........
205
2.7.2.2.5.3 Terminal Blocking ............
205
2.7.2.2.6 Security Split ...................
206
2.7.2.2.6.1 Security Attributes Line .....
206
2.7.2.2.6.2 Security Command/Response.....
207
2.7.2.2.7 Change of Password .............
207
2.7.2.2.8 Relation to Security Model .....
207
2.7.2.3 Security Audit .......................
208
2.7.2.3.1 Objectives .......................
208
2.7.2.3.2 Auditing Events ..................
208
2.7.2.3.2.1 Terminal Activities ............
209
2.7.2.3.2.2 Communication Lines ..........
209
2.7.2.3.2.3 Local Devices ................
209
2.7.2.3.3 Protection of Auditing Data ......
210
2.7.2.3.4 Audit Trail Analysis .............
210
2.7.2.4 Security Administration...............
210
2.7.2.4.1 Security Data ....................
210
2.7.2.4.1.1 Security Tables...............
211
2.7.2.4.2 Protection of Security Data.......
211
2.7.2.4.3 Manipulation of Security Data.....
212
2.7.2.4.4 Security Transactions.............
213
2.7.3 Security Assurance of the
Integrated System ........................
213
2.7.3.1 Summary ..............................
213
2.7.3.2 Systems Architecture .................
216
2.7.3.2.1 Summary ..........................
216
2.7.3.2.2 DAMOS Operating System ...........
216
2.7.3.2.2.1 DAMOS Functions ..............
217
2.7.3.2.2.1.1 Kernel Functions .........
219
2.7.3.2.2.1.2 General File Management
…02… System ...................
221
2.7.3.2.2.1.3 System Status and
Control...................
221
2.7.3.2.2.2 Process Concept ..............
223
2.7.3.2.2.3 Object Concept ...............
229
2.7.3.2.2.3.1 Access to Objects ........
229
2.7.3.2.2.3.2 Object Types .............
230
2.7.3.2.2.3.3 Logical Object Level .....
231
2.7.3.2.2.4 Memory Protection ............
231
2.7.3.2.4.1 Views ......................
232
2.7.3.2.4.2 Process Layout .............
233
2.7.3.2.4.3 System Mode and System Level
233
2.7.3.2.3 Trusted Computer Base Software....
234
2.7.3.2.3.1 Security Kernel ..............
234
2.7.3.2.3.2 Trusted System Processes .....
237
2.7.3.2.3.3 Trusted Utilities ............
237
2.7.3.2.3.4 Trusted Application
Processes ................ ..
238
2.7.3.2.4 Protection and Encapsulation
of Trusted Computer Base .........
239
2.7.3.2.4.1 Protection of TCB against
Nontrusted Software ............
239
2.7.3.2.4.2 Internal Separation of TCB
Modules ..........................
240
2.7.3.2.5 Security Model ...................
240
2.7.3.2.5.1 Object .......................
241
2.7.3.2.5.2 Security Attributes ..........
243
2.7.3.2.5.3 Access Control ...............
244
2.7.3.2.5.3.1 Mandatory Access Control..
245
2.7.3.2.5.3.2 Discretionary Access
Control ..................
245
2.7.3.2.5.3.3 General Access Control ...
245
2.7.3.2.6 Enforcing Security or
Untrusted Software ...............
245
2.7.3.3 Covert Channel Analysis ..............
246
2.7.3.3.1 Covert Storage Channels ..........
246
2.7.3.3.2 Timing Channelse .................
248
2.7.3.4 Mapping Security .....................
248
2̲ ̲ ̲C̲O̲M̲P̲U̲T̲E̲R̲ ̲S̲Y̲S̲T̲E̲M̲
The computer system proposed for the LKSAA, will be
the very flexible, modular, and versatile CR80 computer,
which has been used with great success in many military
and commercial projects.
While most military and governmental systems require
specially tailored configuration in order to fulfil
the requirements, many commercial systems are delivered
using standard configurations.
These standard configurations encompass a broad range
of physical characteristics to meet the requirements
of the smaller stand-alone user and those of the largest
multi-installation network applications. The configurations
offer
- a 50:1 range in instruction execution rate varying
from 0.6 mips to 30 mips.
- a 1000:1 range in memory capacity from 512K bytes
to 512 megabytes.
- a 80:1 range in processing power utilizing one
CPU or up to 16 interconnected multiprocessors
with a maximum of 5 CPUs each.
- a 400:1 range in connectivity through Peripheral
controllers accommodating a variety of terminations
with as many as 960 peripherals or up to 4096 communictation
lines.
Flexible variation in the size and structure of the
CR80 systems are permitted by the unusual degree of
hardware and software modularity. The hardware essentially
consists of fast transfer buses joined to each other
by adapters which allow units on one bus to access
those on another. Dualization at the internal level
and multiple redundancy at the system level provide
a CR80 hardware architecture which is exploited by
the DAMOS software operating system and programs to
survive operational failure of individual components.
Reliability, which is increasingly becoming of concern
in real-time and distributed network applications,
is achieved in the CR80 computer systems by applying
unique architectural concepts. The CR80 hardware/software
architecture treats all
multiprocessors as equal elements not absolutely dedicated
to a specific role. Fault tolerance and backup are
achieved through a redundance scheme without preassignment
of system functions to specific processors. This is
in marked contrast to more common rigid dualized configurations
often encountered in dedicated applications with on-line
master/slave arrangements, or off-line backup with
switchover facility.
2.1 H̲A̲R̲D̲W̲A̲R̲E̲
2.1.1 I̲n̲t̲r̲o̲d̲u̲c̲t̲i̲o̲n̲
In this section a general overview of the hardware
in the Computing System for LKSAA is presented.
In addition to the Computing System, LKSAA includes
the Terminal Equipment in offices, see chapter 4, the
Terminal Equipment in Communications Centre, see chapter
3 and a separate computer system to control the Online
and Offline Cryptos, see chapter 6.
In the basic implementation, the Terminal Equipment
in Offices is directly connected to the Computing System.
Alternatively, these terminals could be connected to
a local area network, which increases the growth capabilities
of the system. As an option, Christian Rovsing A/S
propose a local area network, the X-Net, for this purpose.
This optional X-Net is described in section 2.1.2.
The basic direct connection of these terminals to the
Central Communication System is included in the description
of the latter, which is found in section 2.1.3.
The interface to the terminal equipment in the Communications
Centre is also described in section 2.1.3.
Figure 2.1.1-1
Hardware System Overview
2.1.2 L̲o̲c̲a̲l̲ ̲A̲r̲e̲a̲ ̲N̲e̲t̲w̲o̲r̲k̲ (Optional)
The basic option for the local area network includes
interface to 10 Terminals in Offices.
This option is based on Christian Rovsing A/S unique
X-Net concept for local area network. In section 2.1.2.1
a general description of the X-Net, and its building
blocks are given.
Section 2.1.2.2 describes the necessary hardware for
the basic option.
Section 2.1.2.3 describes the extension capabilities.
The impact on the System if another local area network
is selected, is described in section 2.1.2.4
2.1.2.1 G̲e̲n̲e̲r̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ ̲o̲f̲ ̲X̲-̲N̲e̲t̲
The optional local area network is implemented using
CR's unique X-NET concept.
In the following the general features and characteristics
of the X-NET will be highlighted in order to show how
perfect the net fits this application.
The X-NET bus is a serial bus employing Time Division
Multiplexing to share the capacity between the various
users. Data travels on the X-NET bus at a max. rate
of 0.8192 Mbits per second.
The X-NET uses a HDLC-like protocol to ensure that
data either gets uncorrupted through or the user is
informed of fault in the network.
To optimize the utilization of the available bandwidth,
a Dynamic Bandwidth Allocation for the various users
is implemented.
When the application requires higher data rates, up
to 8 X-Nets may be used in parallel, thus adding up
to a total transfer rate of 6.5536 Mbps.
In order to meet requirements for high functional availability,
each branch may be dualized, i.e. the branch contains
2 buses.
Physically each bus in a non-dualized X-NET consists
of a pair of cables running through the site. Thus
a dualized X-Net bus uses 2 pairs of cables.
The units and elements included in one non-dualized
X-NET branch are shown on FIG. 2.1.2-1.
In a Dualized X-Net System, data is transferred between
each remote terminal and one Processor Unit (PU) within
a Computing System by the one X-Net bus which is active.
The other X-Net bus is connecting the remote terminal
to the other PU. This bus is in stand-by mode. Only
one bus is actively transmitting at a time.
The remote terminals are connected to the X-NET buses
by X-NET Terminal Adapters (XTA's). The XTA is a microprocessor-controlled
unit. The application S/W is down-line loaded from
the Communication System through the X-Net bus.
Where data is transferred serially between the remote
terminal and the XTA, the transfer rate is up to
9.6 Kbps.
In a dualized system the XTA is connected to both X-NET
buses but as explained above it is only communicating
on one bus at a time.
The traffic on the X-NET bus(es) is controlled by the
X-NET controller (XCT).
The X-NET Amplifying and Branching Unit (XAB) is used
for extending the bus-length and for creation of subbranches.
When remote terminals are placed so far from the Communication
System that a modem connection is required, this modem
connection is established using an X-NET Communication
Port link (XCP-link). The X-NET behind the XCP-link
has its own controllers but is in fact considered a
subbranch of the X-NET branch to which it is attached.
The X-Net bus(es) is connected to the Processors Units
through the Interface Adapter modules (TIA's).
All modules described above are connected to the X-NET
buses by an X-NET wall outlet (XWO). This XWO provides
galvanic isolation from the bus and features protection
to the bus for component failures in the attached modules,
thus allowing the bus-communication to continue independent
of single-point-failures.
If however communication on an X-NET bus is made impossible
due to H/W failure, communication will be handed over
to the dual X-NET bus, in a dualized system.
Figure 2.1.2-1
X-Net Structure and Units
2.1.2.2 B̲a̲s̲i̲c̲ ̲I̲m̲p̲l̲e̲m̲e̲n̲t̲a̲t̲i̲o̲n̲ ̲o̲f̲ ̲t̲h̲e̲ ̲O̲p̲t̲i̲o̲n̲a̲l̲ ̲L̲o̲c̲a̲l̲ ̲A̲r̲e̲a̲ ̲N̲e̲t̲w̲o̲r̲k̲
In the pilot project, where up to 10 terminals shall
be connected to the Central Communication System, and
where there is no requirements for high availability,
a single X-Net is proposed for this option.
For the interface to the current IBM word processing
systems, refer to section 4.
As the Local Area Network enters areas outside the
shielded computer and communication area, a TEMPEST
version of the X-NET is proposed.
In this configuration, the X-net bus cables are run
in a metallic pipe and branched off in junction boxes
to the XTA-boxes, which include the XTA-module.
A terminal is connected to the X-net by a signal cable
to a XTA-box.
The XTA Box which is used when connecting a terminal
to the X-net contains one XWO (X-net wall outlet),
one XTA, a filtered CANNON DB 25s connector and a power
supply with power line filtering.
Mechanical dimensions:
Length: 300mm
Width: 210mm
Height: 110mm
The XWO, XTA and the power supply are existing X-net
system elements which in conjunction with the box will
be upgraded to meet TEMPEST requirements.
The XCT (X-net controller), which control data transport,
allocation of guaranteed minimum bandwidth, adaptive
bandwidth allocation and network fault detection, is
placed in the shielded computer and communication area,
wherefore no TEMPEST shielding is required.
2.1.2.3 E̲x̲t̲e̲n̲s̲i̲o̲n̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲ ̲o̲f̲ ̲t̲h̲e̲ ̲O̲p̲t̲i̲o̲n̲ ̲f̲o̲r̲ ̲L̲o̲c̲a̲l̲ ̲A̲r̲e̲a̲
̲N̲e̲t̲w̲o̲r̲k̲
The capacity, and/or availability of the basic option
can be upgraded by implementation of one or more of
the following extensions:
a) More terminal equipment to be added:
For each terminal to be added, an XTA is reuired.
On each X-net up to 254 XTAs may be addresssed.
However, a maximum of 64 XWOs may be attached to
a section of a X-net (a section consists of a pair
of cables both terminated at each end). If more
than 64 XWOs are required on one X-Net, X-net Amplifier
and Braching Units (XBAs), are used to interconnect
several sections. The XBA is also used if branching
points are required in the network or where the
extension is more than 0.8 to 1.2 Km. The maximum
coverage is a circle of 5 Km in diameter.
Dependent of the requirement to data throughput,
an increasing amount of terminals may also require
that more than one X-net is used. Up to 8 X-nets
may be connected to the system. The X-nets are
interfaced to each other by aid of X-net communication
port. Each X-net requires a X-net Controller (XCT).
Dependant of the traffic volume between the Central
Communication System (CCS) and the Terminal Equipment,
a STI/TIA (ref. secton 2.1.3) may be required in
each Processing Unit of the CCS and each X-Net.
The requirements to the thoughput to the CCS affects
also the requirement to memory capacity in the
CCS.
b) The Local Area Network shall be extended to non-neighbouring
buildings, so encryption is required:
The required amount of the up to 8 X-nets are moved
to the non-neighbouring buildings. As under a)
the interconnection of the X-Nets is performed
by aid of XCPs, but cryptographic equipment is
used on the interconnecting data link.
c) Increased availability of the Local Area Network
is required:
One or more of the X-Nets in the Local Area Network
may be dualized to increase the availability. In
the CCS this requires an additional TIA per STI,
and the dualized set of X-Nets requires their own
XCTs.
When utilizing dualized X-Nets, another version
of the XTA is used. It contains the additional
XWO necessary for interfacing to the redundant
X-Net.
The XAB Box to be used when:
1) an X-net branch is established
2) signals on the X-net needs to be restored (amplified)
is housed in a box, which is the same size as the XTA-box
and connected to the X-net in the same way. However,
this box has no terminal-connection.
The XAB Box contains two XWO's (X-Net Wall Outlets),
one XAB (X-Net Amplifier and Branching Unit) and a
power supply with line filtering.
Mechanical dimensions:
Length: 300mm
Width: 210mm
Height: 110mm
The XWO, XAB and the power supply are existing X-net
system elements which in conjunction with the box will
be upgraded to meet TEMPEST requirements.
The XCP/XCT Box is used when more than one X-Net is
required, e.g. when a local and a remote X-net are
connected via a CRYPTO/MODEM link.
The XCP- and the XCT-modules can be housed in the same
box, the XCP/XCT-box. The XCP-module provides the interface
to the crypto-link to remote sub-
branches, and to additional X-Nets.
In the main net-end, where the XCT can be situated
in the shielded computer and communications area an
XCP/XCT-box version 1 is used. It contains only the
XCP-module.
In the remote net-end, an XCP/XCT-box version 2 is
used. It contains both modules, as an X-net controller
is required for the remote subbranch.
The XCP/XCT Box version 1 contains 1 XWO (X-net wall
outlet), 1 MP…0e…2…0f… (Multi purpose Multi processor), 1 filtered
CANNON DB 25s connector and a power supply with power
line filtering.
The XCP/XCT Box version 2 is a XCP/XCT Box version
1 with 1 XWO and 1 XCT (X-net controller) added.
Mechanical dimensions (version 1 & 2)
Length: 515mm
Width: 370mm
Height: 110mm
The XWOs, MP…0e…2…0f…, XCT and power supply are existing X-net
system elements which in conjunction with the box will
be upgraded to meet TEMPEST requirements.
2.1.2.4 U̲t̲i̲l̲i̲z̲a̲t̲i̲o̲n̲ ̲o̲f̲ ̲a̲n̲o̲t̲h̲e̲r̲ ̲L̲o̲c̲a̲l̲ ̲A̲r̲e̲a̲ ̲N̲e̲t̲w̲o̲r̲k̲
Both hardware and software of the CR80 System is constructed
in a modular way in order to easily adapt new interfaces.
The Software Input-Output Control System consists also
of a number of levels in order to make the external
logic on a lower level transparent to a higher level.
The terminal application process interface to a Format
Handler, which controls the format layout, i.e. the
application does only know the logal items on a VDU
Format.
A set of protocols and handlers exists for each type
of device.
Additions of a new Local Area Network will thus require
a new set of protocols and handlers to be attached
in parallel to the existing sets together with the
addition of one or more hardware interface modules,
depending on the type of the Local Area Network selected.
Thus the modular structure of the CR80 System allows
easy addition of a new type of interface simply by
adding new hardware and software modules.
2.1.3 C̲e̲n̲t̲r̲a̲l̲ ̲C̲o̲m̲m̲u̲n̲i̲c̲a̲t̲i̲o̲n̲ ̲S̲y̲s̲t̲e̲m̲
2.1.3.1 G̲e̲n̲e̲r̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
The Central Communication System is a CR80 configuration
specially modelled to meet the LKSAA requirements.
The Central Communication System (CCS) is completely
dualized in order to create a processor with a very
high availability.
Figure 2.1.3-1 is showing the structure of the CCS.
In normal operation one of the Processing Units (PU's)
is active and the other is in stand-by. The PU serves
the processing and supports the interface to the optional
Local Area Net.
The Channel Units (CU's), which serves the traffic
to terminals in the communication centre and the discs,
are contructed to be dualized units contained within
one physical crate. Each I/O controller module is supported
by the two independent data busses A and B.
Each I/O controller module can be accessed through
both bus A and bus B, though it is only accessed through
one bus at a time from the PU which has claimed access
most recently.
In the CU the power supply is completely dualized as
well.
A watchdog processor (physically placed in one of the
CU's) monitors and controls the PU's. In case of failures,
the watchdog processor will perform switch-over to
the stand-by PU.
Figure 2.1.3-1
Central Communication System Structure
The PU's and CU's are constructed by means of the modular
CR80 computer system by use of various standard modules
(printed circuit boards) organized in units which are
interconnected by galvanic isolated transfer buses
structured as illustrated below, and shortly described
in the following:
Figure 2.1.3-2
CR80 Transfer Bus Structure
The CR80 System Units are housed in 19" crates (Card
Magazine) for installation in standard 19" rack as
shown in Figure 2.1.3-3
Figure 3.1.3-3
CR80 Processor Unit & Channel Unit
Mechanical Layout
2.1.3.1.1 T̲h̲e̲ ̲P̲r̲o̲c̲e̲s̲s̲o̲r̲ ̲U̲n̲i̲t̲s̲ ̲(̲P̲U̲)̲
The PU is a multiprogrammable multiprocessor (up to
5 Central Processor Units, CPUs) utilizing virtual
memory and demand paging.
The PU is highly flexible because the selectance of
contained modules can be changed. The modules are interfaced
via a dual bus structure for reduction of bus contention
as shown in FIG. 2.1.3-4.
Figure 2.1.3-4
2.1.3.1.2 T̲h̲e̲ ̲C̲h̲a̲n̲n̲e̲l̲ ̲U̲n̲i̲t̲s̲ ̲(̲C̲U̲)̲
The Channel Units contain the CR80 I/O controller modules
for interfacing towards peripheral equipment, communication
lines etc. The CU has an internal dual transfer bus
structure to ensure that no single failure can stop
operation of more than one I/O controller as shown
in figure, 2.1.3-5.
Figure 2.1.3-5
The transfer buses, data bus A and data bus B, are
connected to two different PU's to ensure continuous
access to the controller modules (CTRL, LTU). The characteristics
of data bus A and data bus B correspond to the internal
buses of the PU.
The CIA-modules constitute the interface between the
word oriented internal transfer buses and the byte
oriented data channels.
The I/O controller modules are all based on the same
principle for interfacing to the channel unit bus structure
and for the external interfaces as illustrated in FIG.
2.1.3-6.
Figure 2.1.3-6
The interface to the CR80 system employs a multiported
RAM memory through which the data is exchanged. The
program for the CPU of the controller module is either
resident in PROM chips or is down loaded from the CR80.
The DISK CTRL and PARALLEL CTRL modules employ PROM's
while the Line Termination Modules (LTU) used for interfacing
communication lines, terminals etc., are loaded with
programs from the CR80 meaning that different protocols
can be supported without hardware changes.
On the LTU communication between the bus inteface and
the microprocessor section is done via a RAM area,
called the shared RAM.
The bus interface contains two independent I/O bus
ports implemented by physically separate IC packages.
Thus no interface chip can simultaneously cause failure
of both ports. each port of the LTU has a 6 bit configurable
controller number, as well as an interrupt priority
setting. The only requirement is that the LTU must
be assigned an I/O number distinct from I/O controller
numbers located within the same channel unit.
Furthermore, the I/O interface circuitry contains:
- An Interface Control (including Interrupt Logic)
- An address Counter
- A Sequencer (micro programmed)
The microprocessor part contains:
- A system RAM
- A Bootload PROM
- A microprocessor section
When a LTU is addressed the Interface Control takes
over the control of the LTU. It handles all accesses
from a PU, and ensures that no new access is started
before the currrent one is finished. Upon address recognition,
the Interface Control gives a start signal to the Sequencer.
The Sequencer is controlled by a microprogram. This
program handles the access to the shared RAM, Loading
of the Address Counter, parity control and the hand
shaking between a PU and the microprocessor section
when sharing the shared RAM area. Part of the addressing
bits are by the Sequencer decoded as an instruction
to the LTU.
The Address Counter is a 16 bit up/down counter which
holds the next address in shared RAM to be accessed
from a PU. The loading is as mentioned controlled by
the sequencer which when it detects a "Load Address"
Counter" instruction, loads the address counter withn
the contents of the I/O bus Data lines.
The Microprocessor part of the LTU runs the communication
parts transforming data to/from the Shared Ram Area.
The Firmware Programs controlling the microprocessor
are resident in the System RAM which is a M x 9 bit
(8 bit data + 1 bit parity) dynamic RAM, where MIS
8,16 or 32K depending on LTU TYPE.
The Firmware is loaded to the system RAM by a Multi
Step Bootload Procedure. The PU issues a "boot load"
command to the LTU. This puts the LTU in bootload
mode, having the effect that all microprocessor section
reads are performed in the bootload PROM ("shadow"
PROM) and all writes are done to the system RAM. the
bootload PROM is a "shadow PROM" because the PROM in
the bootload mode during read operations occupies the
8K lower bytes of the system RAM. The microprocessor
now executes the programs resident in the PROM starting
with an offline Diagnostic Test Program. If the test
reveals no failures then the PROM resident bootload
program is executed. If the test detects a failure,
no bootloading is performed. The Bootload Program takes
care of loading the LTU Firmware from the Shared RAM,
to which it has been loaded from a PU, to the system
RAM. Handshaking between a PU and the microproccessor
part during bootload is performed via a status word
in the shared RAM. When the bootload has finished,
the LTU is set in normal mode by a "programmed clear"
command from the PU, and the LTU starts executing the
firmware program.
The microprocessor section contains hardware necessary
to serve the serial communication channels:
- Serial input/output circuitry, which converts parallel
data to serial data for transmission and vice versa
for reception.
- DMA circuitry for fast data transfer between serial
input/output circuitry and shared RAM.
- Synch. and asynchronus operation.
- Timer circuitry for generating the different baud
clocks for each channel. Baud rates are under Software
control. (50 - 9,6 KBd on all 4 channels 0 - 48
KBd on 2 channels)
- Parallel I/O circuitry giving an extended set of
control signals on the communication lines.
Dependant on the complexity of the protocol for which
the LTU shall be used, a number of the lower levels
of the protocol may be handled by the LTU.
Via The Transceiver block, the electrical conversion
between TTL level signals and line level signals and
vice versa is performed.
The physical interface to the peripherals, communication
lines etc., is an adaptor module located at the rear
of the CU Crate. For interfacing to communication
line, a special adaptor module (LIA-S) is available.
An optional version of this module is able to select
a spare LTU module to be used instead of a failing
module. The spare LTU can be back up for a number
of active LTU's (n out of n+1 redundancy).
As the Internal Bus Structure is dualized, the power
input is taken from two separate sources to ensure
that a failure in one power source cannot stop the
CU Operation.
2.1.3.1.3 B̲u̲s̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲
A CR80 computing system is organized around several
buses, which are described in this section.
A schematic overview showing the interconnection of
the different buses and units are given in Figure 2.1.3-7.
Figure 2.1.3-7
CR80 Bus Structure
Internal in a Processing Unit two buses are available
for data transfer. Electrically and functionally they
are identical, the only differences are related to
the type of module which are connected to them.
To the Processor Bus, the CPU's and Memory are connected,
and to the Channel Bus, DMA modules and memory are
connected.
The two buses are located on each motherboard, mounted
in the back of the PU-Crate.
Internal in a Channel Unit two buses are used for data
transfer, Data Bus A and Data Bus B. The buses are
identically, and further use the same signals as the
Processor and Channel Buses. These two buses are located
on each motherboard, mounted in the rear of the CU-crates.
The Data Channel is a flat cable bus connecting the
buses of a PU (Processing Bus and Channel Bus) with
one of the Data Buses of each CU. The transfer rate
on the Data Channel is up to 0.6 M words/sec.
This is done by means of the Data Channel interface
modules (MAP-MIA), CIA-A & CIA-B.
The Configuration Control Bus is used in the Watchdog
Subsystem. The traffic on the configuration control
bus are directives from the Watchdog about switching
of LTU's and information to the Watchdog concerning
the Crate Power Supply Voltage Levels. Also automatic
switch-over between active and stand-by processor are
performed and monitored by the watchdog.
2.1.3.1.4 W̲a̲t̲c̲h̲d̲o̲g̲ ̲S̲y̲s̲t̲e̲m̲
The Watchdog (WD) consists of four parts:
o A Normal LTU
o A Watchdog Controller Adapter (WCA)
o A Configuration Control Bus Adaptor (CCA)
o Colsole Terminals
The interconnection is shown below:
Figure 2.1.3-8
The Watchdog is used only for local supervision and
control, within the PU.
2.1.3.2 L̲K̲S̲A̲A̲ ̲P̲r̲o̲c̲e̲s̲s̲o̲r̲ ̲a̲n̲d̲ ̲C̲h̲a̲n̲n̲e̲l̲ ̲U̲n̲i̲t̲s̲ ̲(̲B̲a̲s̲i̲c̲ ̲I̲m̲p̲l̲e̲m̲e̲n̲t̲a̲t̲i̲o̲n̲)̲
In this section the basic configuration of each PU
and CU is shown.
Fig. 2.1.3-9 shows the configuration of a PU. The 2
PU's are equipped identically.
The figures 2.1.3-10, -11, -12, -13 and -14 show how
the CU's are equipped. It can be seen, how the peripherals
and terminals in the Communication Centre and the Teletex
Terminals in offices are connected to the 5 CU's.
Note that figures 2.1.3-9 through 2.1.3-15 shows the
configuration of a system without dualization of external
lines. The final correct drawings will be part of the
Systems Design Document.
Note: STI and TIA are part of the Optional Local Area
Network
Figure 2.1.3-9
PROCESSING UNIT
PU #1 & 2
CONFIGURATION DRAWING
Note: One set of DISK CTRL, DCA and DISKDRIVE are optional
Figure 2.1.3-10…01…Channel Unit…01…CU#1
Configuration Drawing
Figure 2.1.3-11
Channel Unit
CU#2
Configuration Drawing
Figure 2.1.3-12
Channel Unit
CU#3
Configuration Drawing
Figure 2.1.3-13
Channel Unit
CU# 4
Configuration Drawing
Figure 2.1.3-14
Channel Unit
CU# 5
Configuration Drawing
2.1.3.2.1 R̲a̲c̲k̲ ̲L̲a̲y̲o̲u̲t̲
The proposed Rack Layout is shown on figure 2.1.3-15.
The Units presented in figure 2.1.3-1 can be identified
as separate physical units placed in the racks.
Each rack has an individual mains switch unit and the
design of the racks provides a good, structued appearance
with easy maintenance access.
The 300 MB Disk Drives are enclosed in a separate cabinets.
Figure 2.1.3-15
Central Communications System
Rack Layout
INTENTIONALLY LEFT BLANK
2.1.3.3 E̲x̲t̲e̲n̲s̲i̲o̲n̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲
Due to the modular structure of the CR80 System, it
is very easy to extend the system see figure 2.1.3.3-1.
The processing capacity can be extended by addition
of more CPU's and Memory, and additional disk drives
can be connected.
The system connectivity (number of attached terminal
equipment and external lines) can be increased by addition
of I/O controlling unit (LTU's, PAR CTRL's).
2.1.3.4 D̲u̲a̲l̲i̲z̲a̲t̲i̲o̲n̲ ̲o̲f̲ ̲E̲x̲t̲e̲r̲n̲a̲l̲ ̲C̲o̲m̲m̲u̲n̲i̲c̲a̲t̲i̲o̲n̲ ̲L̲i̲n̲e̲s̲
To avoid that failures in the LTUs result in loss of
characters, a dualization of the LTU's connected to
the external lines is proposed.
In this case the LIAs to be used will have a selector
for outgoing traffic while the incoming traffic is
received by both LTU cahnnels.
This LIA will have a negligable failure rate. Considering
the overall MTBF for the communication channel, up
to the public or private circuit the crypto, which
has a MTBF which is very low, will be the vulnerable
item.
To implement the dualization of the 18 LTU's for external
communication, additional 13 LTU's are required.
In this case the number of spare channels is reduced
to 2 Teletex Channels.
Additionally 1 crate with interfacing equipment, PSUs
and fan is also required for the installation of the
LTUs.
FIGURE 2.1.3.3-1…01…CR80 FATOM - Fault Tolerant Multiprocessor
2.1.4 E̲q̲u̲i̲p̲m̲e̲n̲t̲ ̲M̲a̲t̲r̲i̲x̲ ̲f̲o̲r̲ ̲t̲h̲e̲ ̲C̲o̲m̲p̲u̲t̲i̲n̲g̲ ̲S̲y̲s̲t̲e̲m̲
2.1.5 S̲y̲s̲t̲e̲m̲ ̲C̲a̲p̲a̲c̲i̲t̲y̲ ̲a̲n̲d̲ ̲C̲o̲n̲n̲e̲c̲t̲i̲v̲i̲t̲y̲ ̲o̲f̲ ̲C̲o̲m̲p̲u̲t̲e̲r̲ ̲S̲y̲s̲t̲e̲m̲
2.1.5.1 L̲o̲c̲a̲l̲ ̲A̲r̲e̲a̲ ̲N̲e̲t̲w̲o̲r̲k̲ ̲(̲O̲p̲t̲i̲o̲n̲)̲
In the basic implementation a Local Area Network is
not included. It is included as an option which may
give interface to 10 terminals in offices.
2.1.5.2 C̲e̲n̲t̲r̲a̲l̲ ̲C̲o̲m̲m̲u̲n̲i̲c̲a̲t̲i̲o̲n̲ ̲S̲y̲s̲t̲e̲m̲
2.1.5.2.1 P̲r̲o̲c̲e̲s̲s̲ ̲C̲a̲p̲a̲c̲i̲t̲y̲
Each PU contains 2 CPU/CACHE to form a multiprocessor
system. This gives a typical execution speed of 1.1
M instructions per sec.
The CPU part of the CPU/CACHE module is a general purpose
processing unit with a 16 bit word length and capable
of addressing 2K x 64 words of memory.
The standard instruction repertoire has more than 220
basic arithmetic, logic, transfer and special instructions
including bit, byte, word and multiple word manipulations.
Internal context registers include 8 general purpose
accumulators or index registers and 9 special purpose
registers. Instructions are provided to save and load
all registers minimizing overhead during context switching.
Instructions can be addressed directly or indexed;
data is always addressed relative to the Base Register.
Instructions are addressed in 16 bit words. Data may
be addressed in multiples of bits, bytes or words.
Two ALU's (Arithmetic Logic Units) are included, allowing
address and data manipulations to be performed simultaneously,
or allowing address calculations involving three elements
to be performed in one cycle when employing base register
addressing.
The micro-instruction cycle time is 250 ns.
The CPU may execute in two states:
- USER state, and
- SYSTEM state
In the system state, the CPU will further be at one
of 15 system levels which are numbered 1 through 15.
In user state, the level is 0.
In U̲S̲E̲R̲ ̲s̲t̲a̲t̲e̲, the CPU is not allowed to execute any
priviledged instructions and it is subject to the memory
access protection mechanism of the MAP module.
In S̲Y̲S̲T̲E̲M̲ ̲s̲t̲a̲t̲e̲, the CPU is not subject to the memory
access protection mechanism of the MAP module.
For those of the instructions which may be executed
on levels 1 to 14, a memory write protection mechanism
based on a BOUND register applies: the CPU only allows
write operations to locations with effective logical
addresses lower than or equal to the current value
of the BOUND register. This mechanism is implemented
in the CPU alone (not involving the MAP module).
Instructions which may only be executed on level 15
(highest level) are subjected neither to the MAP module
nor to the BOUND register memory protection mechanisms.
In the CR80 system, four types of vectored interrupts
exist:
- Module Interrupts
- CPU Interrupts
- Power Failure Interrupts
- Real-Time Interrupts
And two types unvectored interrupts:
- Fast Timer Interrupt
- Termination (Error) Interrupts
The interrupts are resolved by hardware within the
Memory MAP module.
T̲h̲e̲ ̲C̲A̲C̲H̲E̲ ̲M̲e̲m̲o̲r̲y̲ ̲p̲a̲r̲t̲ of the CPU/CACHE consists of
a 1k x 38 bit static memory directly connected and
accessible from the CPU without using the processor
bus.
Fundamentally, the CACHE memory provides a small high
speed buffer containing copies of most recently accessed
memory locations in the PU.
The CACHE memory algorithm used is the "write through
algorithm", which stores all of a CPU's "reads" from
Main Memory via the processor bus in its CACHE memory
and refers all the CPU's "writes" directly to Main
Memory with its CACHE memory updating itself in parallel
if it contains the specified address.
The CACHE memory also monitors the "write" accesses
done by other CPU's on the processor bus and by DMA's
on the channel bus, and in case it contains the specified
address, it is erased in the CACHE memory.
The above together with the "write through algorithm"
ensures that the contents of addresses stored in PU
memory and the CACHE memories of CPU's are always identical.
When context switching on the CPU takes place, normally
associated with change of CPU logical memory view,
the complete CACHE memory content is erased.
The efficiency of the CACHE memory relies on the basic
principle that, in the step by step execution of a
program, a CPU-originated read operation at an address
has a high probability of being repeated, and therefore
can be found in the CACHE memory after the first access
to it.
Two advantages when using CACHE memories are obtained:
- Loading of the Processor Bus is reduced, allowing
for the use of more CPU's before bus contention
occurs. The max number of CPU/CACHE's to be connected
without risk of continuous bus contention has been
raised to 5, compared to 2 if CPU's without CACHE
memory had been used.
- Average access time when performing memory read
operations is reduced, as reads from CACHE is faster
than from Main Memory, thus improving the speed
of each CPU.
Generally, the presence of the CACHE memory is only
visible to the programmer in terms of improved execution
speed, as no CACHE handling software is required.
M̲u̲l̲t̲i̲p̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲P̲e̲r̲f̲o̲r̲m̲a̲n̲c̲e̲ ̲E̲n̲h̲a̲n̲c̲e̲m̲e̲n̲t̲,
U̲t̲i̲l̲i̲z̲i̲n̲g̲ ̲C̲P̲U̲/̲C̲A̲C̲H̲E̲
The calculated benefits from using the CPU's with CACHE
memory in the PE are as follows.
Based on analysis and measurements on the distribution
of 12147 instructions of DAMOS Kernel programs, it
was found that the average instruction has 1.98 memory
references.
With one CPU/CACHE in a PU, and assuming a negligible
frequency of memory-write-operations initiated by other
address sourcing modules than the CPU's, the overall
CPU efficiency (80% HIT RATE) will improve 40% due
to faster memory access, relative to a CPU without
CACHE memory. The CPU/CACHE, on average (80% HIT RATE),
uses 28% of the processor-bus bandwidth.
Thus, some improvement of the throughput will result
with a single CPU/CACHE in a PU, but the main advantage
is that a greater number of CPU's can be used in a
single PU without heavy processor-bus contention.
2.1.5.2.2 R̲a̲n̲d̲o̲m̲ ̲A̲c̲c̲e̲s̲s̲ ̲M̲e̲m̲o̲r̲y̲
Each PU is equipped with 1.5M word of Random Access
Memory, which serves as virtual working memory.
The memory management is controlled by the MAP function
of the MAP module.
The concept is that of "Logical-to-Physical Address
Translation". The amount of memory required by a process
is defined to be its "view" or "logical address space".
This space may be as large as 2 x 64 1K pages. The
areas of physical storage assigned to the process are
defined to be its "physical address space". The address
translation function which converts the addresses in
the logical space to the addressees in the physical
space is called the view for that user. The view is
implemented by two Translation Tables which each contains
64 entries. Each of these entries defines the physical
address of a logical 1K word memory page.
The view is totally under control of the system software.
Each 1K page can be read and/or write protected.
The CR80 Advanced Multiprocessing Operating System
(DAMOS) determines what these maps are to be, and then
relays this information to the address translation
hardware. The figure 2.1.5-1 shows the logical-to-physical
address translation.
The mapping ensures total integrity, security, and
protection against interference by other users, e.g.
programs being debugged while the system is running
in actual on-line operation. Beyond being able to read
and/or write protected, each 1K page separately can
be marked "absent" giving rise to a page fault interrupt
when accessed. This feature is utilized in DAMOS to
implement an efficient Virtual Memory System allowing
Application Software requiring a large accessable address
space to run on smaller memory size CR80 computers.
The page fault interrupt issued when a page not resident
in memory is addressed by a CPU will initiate that
the page is rolled into memory from discs.
Figure 2.1.5-1…01……01…Address Sourcing Device Logical Address Space
Each of the up to 5 possible CPU's in a Processing
Unit works with its own private pair of Translation
Tables. One is allocated for p̲r̲o̲g̲r̲a̲m̲, i.e. the collection
of machine instructions compiled to perform a certain
function, while the other is allocated for the d̲a̲t̲a̲,
i.e. the collection of constants and variables and
data required to execute the function.
The Memory Map address translation circuitry can contain
64 translation tables. This means that change of user
(process switch) on a CPU, and the associated change
of view, often can be done just by changing the CPU's
Translation Table pointers (TTR pair) not having to
load the Translation Tables of the user view. This
feature is used by DAMOS for always having its Translation
Tables resident in the Memory Map.
In addition to the memory management function, the
MAP module performs the following functions:
- Timing and control
- Processor- and Channel Bus Authority control (arbitration)
- Datachannel interface
- Interrupt Preprocessing
- Bootstrap PROM
- PU-initialization and selfcheck control
2.1.5.2.3 P̲e̲r̲i̲p̲h̲e̲r̲a̲l̲ ̲D̲i̲s̲k̲ ̲M̲e̲m̲o̲r̲y̲
To be able to store 14 days of traffic at upper limit
337M byte of long term disk storage is required in
1990 and 545M byte for 1995.
As the requirement for short term storage is 15 to
40M bytes, the Central Communication System is equipped
with 4 300M byte disk drives. Optionally one additional
300M byte disk drive is proposed for off-line storage.
The disk drives are equipped with exchangeable disks.
One additional disk is provided.
The 4 basic 300M byte disks are working 2 and 2 in
parallel, and are used for storage of uncompleted message
transfers and for a short time archivation of processed
messages, as well as for long time storage of the latest
14 days traffic.
The optional Off-line storage may be used to store
traffic, where a longer time storage is desired. Messages
to be stored in this way are copied from the On-line
storage.
The disk controllers for the 4 or 5 disk drives are
situated in CU #1, and CU #5.
Based on the upper limit traffic load for 1990, the
number of disk accesses can be calculated as follows:
N̲u̲m̲b̲e̲r̲ ̲o̲f̲ ̲D̲i̲s̲c̲ ̲A̲c̲c̲e̲s̲s̲e̲s̲
Incoming msgs at peak hour load:308 6160
Outgoing msgs at peak hour load:462 2310
̲ ̲ ̲ ̲ ̲ ̲
Total Disk Access per peak hour 8470
Total per second 2.4
Per busy second 12
The calculation is based on 20 Disk Accesses per message
for incoming messages used for message analysis, conversion
and local distribution. For outgoing messages 5 disk
accesses is estimated for preparation, conversion and
transmission. Furthermore the number of accesses in
busy second, is obtained by multiplying the load per
second during peak hours by 5.
Similarly the number of accesses for telex preparation
can be calculated:
N̲u̲m̲b̲e̲r̲ ̲o̲f̲ ̲D̲i̲s̲k̲ ̲A̲c̲c̲e̲s̲s̲e̲s̲
Pages per peak hour: 285 1425
Total per second 0.4
Total per busy second 2
The total no. of disk accesses in busy second thus
becomes 14, while the possible amount is 50, corresponding
to approximately 30% utilization.
2.1.5.2.4 T̲e̲r̲m̲i̲n̲a̲l̲ ̲E̲q̲u̲i̲p̲m̲e̲n̲t̲
The Central Communication System is equipped to give
connectivity to the following terminals:
In Communications Centre:
12 VDU's (i.e. 1 spare channel)
(excluding the VDU connected to the Watchdog,
i.e. 1 spare channel)
12 Printers (i.e. 3 spare channels)
1 OCR (i.e. 3 spare channel)
4 Papertape Readers (i.e. no spare channels)
4 Papertape Punch (i.e. no spare channels)
1 High Speed Printer
2 Document Printing Systems
(i.e. 6 spare channels, 2 LTU's have been used for
redundancy purposes)
1 Colour Graphic System
In Offices:
20 Telexstations (i.e. 2 spare channels)
1 IBM 5520
1 IBM 6580
The types of terminals are as specified in section
3.2.
2.1.5.2.5 O̲f̲f̲-̲L̲i̲n̲e̲ ̲C̲r̲y̲p̲t̲o̲g̲r̲a̲p̲h̲i̲c̲ ̲E̲q̲u̲i̲p̲m̲e̲n̲t̲
The Central Communication System is equipped with interfaces
for 4 Off-line cryptos. The interfaces for these cryptos
(key loading and message information) will be designed
in accordance with the specifications in the RFP, part
1, annex 10.8.
The Central Communication System will generate a command
to the crypto system , which in turn will present the
requested key information to the Off-line crypto.
When key loading has taken place and the Central Communication
System has transmitted the "Program V", as specified
in the RFP, part 1, annex 10.8, the encryption starts
with the first character. After the last character
has been encrypted 15 x K will be added to terminate
the message.
The Encrypted Message is then stored on a secured area
of the disc until transmission takes place. Off line
Encrypted Messages received by the Central Communication
System are handled in a similar way for decryption
and may be stored on disc prior to distribution or
handled by the operator in accordance with operational
rules.
If the incoming message header indicates a key store
number (bereichkennzeichen), then this will be communicated
to the Crytpto System, which selects the proper key.
If the keying information contained in the header of
an incoming message does not correspond to a key known
by the Central Communication System, the messages will
be routed to the text correction position for manual
handling.
An Off-line encrypted message may be transmitted or
received from a leased telegraph circuit, an HF radio
circuit or telex, and it may further be superencrypted
by one of the On-line cryptos.
2.1.5.2.6 O̲n̲-̲L̲i̲n̲e̲ ̲C̲r̲y̲p̲t̲o̲ ̲E̲q̲u̲i̲p̲m̲e̲n̲t̲
There are two types of On-line cryptos.
ELCROTEL E4s is assumed to be used on telegraph/telex
lines, while ELCROBIT 96 will be used on permanent
leased/public telephone lines.
2.1.5.2.6.1 I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
In the RFP, part 1, section 1.13, it is stated that
X21/X24 and X26 or X27 interface specifications must
be supported. For this reason crypto will not be used
on teletex lines.
The LTU's are for this application programmed for interface
with X 21/X 24 with automatic dialing facilities in
which case the LTU's each support 4 channels.
X21/X24 Electrical Interfaces is implemented in the
LIA.
2.1.5.2.6.2 E̲L̲C̲R̲O̲T̲E̲L̲ ̲E̲4̲s̲
The E4s will be connected to HF radios, leased telegraph
circuits or the telex network. During set-up of the
connection, the E4s are bypassed until the exchange
of answer-back functions between the two stations has
taken place.
As soon as the connection is verified, and if encryption
is required the E4s is switched into the line and the
key is loaded by the crypto system. A second answer-back
exchange is performed in order to ensure that the two
cryptos are synchronized on the same key.
Once this has taken place, data will be transferred
with the distant station.
2.1.5.2.6.3 E̲L̲C̲R̲O̲B̲I̲T̲ ̲9̲6̲
The EB 96 will not be supported.
The Central Communication System will handle the filtering
of messages so that messages, which does not fulfil
the security requirements for transmission on open
non-en`crypted lines wil be rejected. A rejected message
will cause an alarm at the security operators console,
indicating the reason for rejection and the message
identification.
The Central Communication System is equipped to give
connectivity to the following communication channels:
30 Leased Telegraph Channels
10 Permanent Circuit
6 Radio Channels
10 Telex Circuits
6 Teletex Circuits (i.e. 1 spare channels)
Within each of the above groups, the same communication
protocol shall apply to all channels respectively circuits.
(The COREU and WUI protocol is handled on a higher
level of the software).
For the Automatic Call (X21/X24) the following procedure
is foreseen:
a) O̲u̲t̲g̲o̲i̲n̲g̲ ̲C̲a̲l̲l̲
The address of the called unit is transmitted as
selection signals to the DCE, which in turn will
return with the called line identification (it
is assumed that the telex/teletex net supports
this function), which is compared with the address.
If the message must be encrypted the Central Communication
System will request the Crypto System to present
the corresponding key to the crypto used on that
link, and to switch the crypto into the line.
The Crypto System loads the proper key and sends
a command to the switching panel to switch the
crypto into the line.
The Crypto System gets an acknowledge and status
from the switching panel, analyses the status for
correctness and transmits an acknowledgement to
the Central Communication System, which initial
sizes synchronization of the crypto.
If the message shall be transmitted unencrypted,
the Central Communication System sends a dummy
request to the Crypto System and a request to verify
status of the switching panel for that particular
line. Upon receipt of an acknowledgement from the
Crypto System the message will be transmitted on
the open line.
When crypto synchonization is achieved, data will
be released for transmission. It is assumed that
the crypto signals this condition by the 'ready
for data' - state.
b) I̲n̲c̲o̲m̲i̲n̲g̲ ̲C̲a̲l̲l̲
Upon receipt of the calling line identification,
the Central Communication System analyze the call
in order to identify, whether the line shall be
set-up with crypto or not. When this has taken
place the Central Communication System and the
Crypto System will react as explained in 2.1.5.2.6a.
For the other Communication Channels a similar procedure
will apply, except that for channels without automatic
call the selection state and DCE provided information
is ommitted.
2.1.5.2.7 External Lines Bypassing The On-Line Cryptographic
E̲q̲u̲i̲p̲m̲e̲n̲t̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲ ̲ ̲
Messages are required to be transmitted either via
the cryptos or directly to the same line bypassing
the crypto.
There are several cases to consider:
1. Off-line encrypted message
a. Via crypto
b. Directly to permanently leased line or HF radio
c. Via telex
2. Plain language message:
a. Via crypto
b. Directly to permanent leased line or HF radio.
c. Via telex
d. Via public telephone net or teletex
Connections to telex and other communication lines
or HF link, which require set-up in plain language,
will be performed through bypassing of the crypto units.
The criteria for sending a message without encryption
must by very strict. All of the following criteria
must be met:
a. Message must be unclassified
b. Message destination must be non-restricted
c. Message must be marked unencrypted
d. Message must be released by security operator
e. Acknowledge of switch position from Crypto System
must be received by the ZVA
The Central Communication System will handle the filtering
of messages so that messages, which do not fulfil the
security requirements for transmission on open non-encrypted
lines will be rejected. A rejected message will cause
an alarm at the security operators console, indicating
the reason for rejection and the message identification.
2.1.5.2.8 P̲u̲b̲l̲i̲c̲ ̲T̲e̲l̲e̲p̲h̲o̲n̲e̲ ̲N̲e̲t̲
Future connection to the public telephone net can be
established through the Line Terminnation Units (LTU),
which can be down-loaded to use different protocols
and speeds.
LTU's are available with HDLC, SDLC, BSC and many other
protocols.
Modems operating at 1200, 2400 and 4800 bps with auxiliary
back-channel facitilies (V26 bis and V27 ter) can be
controlled by the LTU's.
Dial-up is controlled in accordance with CCITT Rec.
V25.
Data Rate selection and backward-channel facilities
are in accordance with CCITT Rec. V24.
In order to establish a call, the operator must either
specify the total number to be dialed or the destination.
If destination is used, a look-up in an address table
will be performed by the Software and the number will
be automatically communicated to the LTU, which will
convert the digits one by one to V24 binary code, thereby
establishing the call. When the connection has been
established, the LTU will transmit the message using
the required protocol.
Interconnection to future digital telephone networks
(ISDN) will also be possible.
As a detailed CCITT recommendations for ISDN (future
I-recommendations) are unavailable, until 1985 the
non-recurrent cost cannot be estimated.
2.1.5.2.9 H̲i̲g̲h̲ ̲S̲p̲e̲e̲d̲ ̲O̲p̲t̲i̲c̲a̲l̲ ̲D̲a̲t̲a̲ ̲L̲i̲n̲k̲
The Interface to the 64 kbit/s Optical Data Communication
Net is not included in this proposal.
The proposed CR80 System is due to its modularity well
prepared for such future extension.
Such interface to a 64K bit/s line is possible by the
addition of one or more LTU's of a type specially suitable
for this interface. The Interface Adaptors will have
the opticl interface.
Due to the high data rate each LTU can only be equipped
with one channel.
Additionally this extension will require adjustment
of the softwre package for traffic handling, e.g. a
larger buffer size my be required. This means also
that more memory may be required.
The capacity of the proposed LKSAA System enables extension
to support 4 lines at 64 K bit/s by addition of hardware
and change of software.
As a detailed Interface Specification is unavailable,
the non-recurrent cost cannot be estimated.
The recurrent cost for LTU's and LIA's will be of the
same order of magnitude as for the other LTU's and
LIA's used in the system.
Such interface to a 64 kbit/s line is possible by the
addition of one or more LTU's of a type specially suitable
for this interface. The Interface Adaptors will have
the optical interface.
Due to the high data rate each LTU can only be equipped
with one channel.
Additionally this extension will require adjustment
of the software package for traffic handling, e.g.
a larger buffer size may be required. This means also
that more memory may be required.
The capacity of the proposed LKSAA System enables extension
to support 4 lines at 64 kbit/s by addition of hardware
and change of software.
As a detailed CCITT recommendations for ISDN C coming
I-recommendations unavailable until 1985, the non-recurrent
cost cannot be estimated.
The recurrent cost for LTU's and LIA's will be of the
same order of magnitude as for the other LTU's and
LIA's used in the system.
2.2 S̲O̲F̲T̲W̲A̲R̲E̲
The proposed system is already developed for NATO and
this Operating System as well as Application Software
exists as tested and integrated packages.
2.2.1 S̲y̲s̲t̲e̲m̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲
2.2.1.1 S̲t̲a̲n̲d̲a̲r̲d̲ ̲O̲p̲e̲r̲a̲t̲i̲n̲g̲ ̲S̲y̲s̲t̲e̲m̲
The CR80 Advanced Multi Processor Operating system
DAMOS is the standard operating system for memory mapped
CR80 systems.
DAMOS is divided into operational and support software.
DAMOS includes a virtual memory operating system kernel
for the mapped CR80 series of computers.
DAMOS fully supports the CR80 architecture which facilitates
fault tolerant computing based on hardware redundancy.
DAMOS supports a wide range of machines from a single
Processing Unit (PU) with 1 CPU and 128 K words of
main memory, and up to a maximum configuration with
16 PU's where each PU has 5 CPU's and 16 M words of
virtual memory and a virtually unlimited amount of
peripheral equipment including backing storage.
DAMOS is particularly suited for use in real time systems
but also supports other environments such as software
development and batch. The main objectives fulfilled
in DAMOS are: high efficiency, flexibility, and secure
processing.
DAMOS is built as a hierarchy of modules, each performing
its own special task. The services offered by DAMOS
include CPU, PU, and memory management. Demand paging
is the basic memory scheduling mechanism, but process
swapping is also supported. Other levels of DAMOS
provide process management and interprocess communication,
basic device handling and higher level device handling
including handling of interactive terminals, communication
lines, and file structured backing storage devices.
Multilevel security is an integral part of the DAMOS
Design. All objects such as message segments, files,
devices, terminals are referenced indirectly by application
and system processes, and each access is checked according
to manadatory and discretionary access rules.
The Reference Monitor Concept is thus used throughout
DAMOS. A complete overview of the security system may
be found in section 2.7.
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
DAMOS
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲
OPERATIONAL SUPPORT
SOFTWARE SOFTWARE
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲
- Kernel
- resource management - development operating
system
- directory functions - system generation software
- process management - maintenance and diagnostic
- memory management programs
- process communica-
tion
- device management
- device handling
- error processing
- real time clock
- PU management
- Transport Mechanisms
- Input/output system
- File Management
- Magtape Management
- Terminal Management
Database Monitoring System
- Initialization
System Status and Control
System Functions
Figure 2.2.1.1-1…01…DAMOS Software Overview
DAMOS provides an operating system kernel which integrates
supervisory services for real time, interactive and
batch systems.
The DAMOS standard operational software is described
in sections 2.2.2.1.1.1 - 2.2.2.1.1.11 The description
is divided into the following areas:
- Overview of DAMOS
- Kernel,
which describes the DAMOS operating system kernel
components
- DAMOS Input/Output,
which describes the DAMOS standard interfaces to
peripheral I/O equipment, the DAMOS disk file management,
magnetic tape file management (optional), terminal
and communication line management systems and Database
Monitoring and Control System (optional)
- System initialization
- System Status and Control
- Common System Functions
2.2.1.1.1 O̲v̲e̲r̲v̲i̲e̲w̲ ̲o̲f̲ ̲D̲A̲M̲O̲S̲ ̲O̲p̲e̲r̲a̲t̲i̲o̲n̲a̲l̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲
DAMOS may be visualized as the implementation of a
set of abstract data types and a corresponding set
of tools for creating and manipulating instantanions
(objects) of these types.
The major components in DAMOS are the Kernel, the File
Management System, the Magnetic Tape File Management
System (optional), the Terminal Management System,
the Database Monitoring and Control System (optional)
and the System Status and Control.
The DAMOS Kernel exists in one incarnation for each
processing unit (PU). The data types and functions
implemented by the Kernel are:
D̲a̲t̲a̲ ̲T̲y̲p̲e̲ F̲u̲n̲c̲t̲i̲o̲n̲
CPUs CPU management and scheduling
processes process management
virtual memory segments memory management
PU's PU management
synchronization elements inter process communication
device device management and
basic device access
methods
ports basic transport service
The Kernel also provides facilities for
- processing of errors
- centralized error reporting
- a data transfer mechanism
- a PU service module
The File Management System (FMS) implements files on
disks. The FMS provides functions for manipulating
and accessing files and controls a group of disks units.
The FMS may exist in several incarnations in each
PU where each incarnation controls its own devices.
The Terminal Management System (TMS) is similar to
the FMS. It provides functions for manipulating and
accessing communication lines and terminals including
line printers. The objects accessed via the TMS are
called units. A unit may be an interactive terminal,
a line printer or a virtual circuit. The TMS controls
a group of communication devices attached via LTUs,
LTUXs or a parallel controller.
The TMS may exist in several incarnations in each PU,
each incarnation controlling its own devices.
The Magnetic Tape File Management System handles files
on magnetic tape units.
The Database Monitoring and Control System provides
and controls functions for manipulating of the Database
System.
The System Status and Control Starts, allocates resources
to the CCIS Processes.
A common security policy and hierarachical resource
management strategy is used by the Kernel, the FMS,
the DMCS and the TMS. These strategies have been designed
with the objective of allowing multiple concurrent
higher level operating systems to coexist in PU in
a secure and independent manner.
2.2.1.1.2 K̲e̲r̲n̲e̲l̲
The DAMOS Kernel is a set of reentrant program modules
which provide the lowest level of system service above
the CR80 hardware and firmware level.
The Kernel consists of the following components:
- Resource Management,
which administers resources in a coherent way
- Directory Functions,
which provide a common directory service function
for the other Kernel components. It also performs
all access authorizations to objects upon request
from the other modules.
- Process Manager,
which provides tools for CPU management, process
management and scheduling
- Page Manager,
which provides memory management tools and implements
a segmented virtual memory
- Process Communication Facility,
which provides a mechanism for exchange of control
information between processes
- Device Manager
which provides a common set of device related functions
for device handlers and a standard interface to
device handlers
- Device Handlers,
which control and interface to peripheral devices
- Error Processor,
which handles errors detected at the hardware and
Kernel level and provides a general central error
reporting mechanism
- Real Time Clock
for synchronization with real time
- PU Manager,
which provides functions for coupling and decoupling
PUs
- Transport Mechanisms
which provides general mechanisms for exchange
of bulk data between processes and device handlers.
The following subsections describe the main Kernel
functions:
- resource management
- process management
- memory management
- process communication
- CPU management
- PU management
- Transport Mechanisms
The security functions are described in section 2.7.
2.2.1.1.2.1 R̲e̲s̲o̲u̲r̲c̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
The goal of DAMOS Resource Management is to implement
a set of tools which enables the individual DAMOS modules
to handle resources in a coherent way. This again,
will make it possible for separate operating systems
to implement their own resource policies without interference.
Further built-in deadlock situations will be avoided.
The resource management module governs anonymous resources,
such as control blocks. Examples of resource types
are:
- process control blocks
- segment control blocks
- synchronization elements
- PU directory entries
Each type of resource is managed independently from
all other types.
The resources are managed in a way that corresponds
to the hierarchical relationships among processes.
Two operating systems which have initially got disjoint
sets of resources, may delegate these resources to
their subordinate processes according to separate and
non-interfering strategies. For example, one operating
system may give all its subordinate processes distinct
resource pools, i.e. there will not be any risk of
one process disturbing another. On the contrary, the
other operating system may let all its subordinate
processes share a common pool, i.e there may be a much
better resource utilization at the cost of the risk
for deadlock among these processes.
2.2.1.1.2.2 P̲r̲o̲c̲e̲s̲s̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
Process Management is concerned with long term control
of processes (e.g. their creation and deletion from
the system).
A process may be defined as an incarnation of the data
transformations obtained by execution of a program
in a given context. A context is taken to mean a set
of CPU registers (CPU resident or saved) and the two
memory translation tables describing the logical data
space seen when the process is executing.
A process is represented by a Process Control Block
(PCB). It is identified by an object descriptor as
described in Directory Functions.
Each process competes with other processes for the
system resources such as processor power, physical
memory, I/O service, etc.
During the lifetime of a process it undertakes different
process states. Figure 2.2.2.1.1.2.2-1 shows the process
states in conjuction with long and medium term scheduling,
and the process management functions which cause transitions
between them.
See figure in section 2.7.3.2.2-1
1: The process is subject to CREATE PROCESS
2: The process is subject to DELETE PROCESS
3: The process is subject to RESUME PROCESS
4: The process is subject to PASSIVATE PROCESS
or
RETIRE
Figure 2.2.1.1.2.2-1
Process Management
The process state ACTIVE may be further refined by
the short term scheduling (dispatching) as depicted
in figure 2.2.2.1.1.2.2-2.
See figure in section 2.7.3.2.2.2-2
The events which cause transitions between the different
active states are:
1: The process is scheduled by the dispatcher
2: The process is preempted by the dispatcher
3: The process is blocked awaiting some event
4: A previous awaited event occurs
Figure 2.2.1.1.2.2-2
Active Process States
2.2.1.1.2.3 P̲r̲o̲c̲e̲s̲s̲ ̲H̲i̲e̲r̲a̲r̲c̲h̲y̲
Processes are organized in a hierarchical manner as
shown in figure 2.2.2.1.1.2.2-3.
See figure in section 2.7.3.2.2.2-3
Figure 2.2.1.1.2.2-3
Process Hierarchy
A process may create subordinate processes. These are
called child processes in relation to the creator process,
which in turn is called their parent process.
The purpose of having a process hierarchy is to enable
implementation of multiple operating systems each having
supreme control over the processes of its process subtree.
The following process management routines are available
to the user:
CREATE PROCESS
which intiates a new process instance to run on
a specific processor pool. The new process is given
access to specified resource pools, and inherits
a set of object descriptors at the discretion of
the creator. The new process does not get execution
time before its parent process calls Resume Process.
RESUME PROCESS
which activiates a process which was either just
created or was previously passivated.
PASSIVATE PROCESS
which deactivates a process, that is the process
is temporarily withdrawn from the dispatching
CLEAN UP PROCESS
which catches a child process and terminates its
activities. Among other things, its possible child
processes are cleaned up and deleted, and outstanding
process activities (I/O requests, process communication)
are cancelled.
DELETE PROCESS
which removes a previously cleaned process from
the system. The resources occupied by the process
are returned to the caller (its parent process)
RETIRE
which passivates the caller and sends possible
error information to its parent process.
GET PROCESS ATTRIBUTES
which returns the current attributes of a child
process
CHANGE PROCESS ATTRIBUTES
which changes specified attributes of a child process.
The attributes may relate to the dispatching of
the process (e.g. its priority), or to the page
manager parameters for the process (e.g. the size
of its working set).
2.2.1.1.2.4 M̲e̲m̲o̲r̲y̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
The addressing mechanism of the CR80 limits the address
space seen by a process at any one time to a window
of 2 x 64K words. Due to the virtual memory concept
of DAMOS a process may, however, change the "position"
of the window, thus leading to a practically unlimited
addressing capability.
The finest granularity of the virtual memory known
to a process is a segment. Segments can be created
and deleted. They have unique identifiers and may
have different sizes. A process which has created
a segment may allow others to share the segment (restricted
by security constraints) by explicitly identifying
them and stating their access rights to the segment.
The Page Manager implements virtual memory. The actual
space allocated in a Processing Unit to a process may
be only a few segments, while the logical address space
is the full 2 x 64k words. Whenever addressing of
a segment, that is not in physical memory, is attempted,
the Page Manager will bring in the addressed segment.
2.2.1.1.2.5 P̲r̲o̲c̲e̲s̲s̲ ̲C̲o̲m̲m̲u̲n̲i̲c̲a̲t̲i̲o̲n̲
Synchronization of processes and communication between
them is supported in DAMOS by objects called Synchronization
Elements (synch elements) which are referred to by
symbolic names and may thus be known by processes system-wide.
In DAMOS a process cannot "send" a block of data directly
to another process identified by name. The exchange
must be done using a synch element. Communication between
processes is restricted by security constraints.
2.2.1.1.2.6 C̲P̲U̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
The CPUs in a processing unit may be pooled and a given
process is allocated processing power from one such
pool. In this way CPUs can be dedicated processes.
2.2.1.1.2.7 P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲U̲n̲i̲t̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲
The DAMOS Kernel provides facilities for managing the
logical connections between the individual Processing
Units attached to a Supra Bus.
PUs may be connected logically into groups. The number
of PUs in a group may vary from 1 to 16. Two groups
may be merged, the result being a new PU-group.
Objects are identified by symbolic names having either
local or global scope. They are accessible from all
PUs in the group where they reside.
PU Management provides functions for inclusion of a
PU in a PU-group.
A logical connection between two PUs is not established
until both have received an include request from the
opposite. When trying to connect two PU-groups, conflicts
between the use of global names may arise. Therefore,
a connection is only established if the scope of all
names can be maintained.
The PU Management is designed to allow graceful degradation
when purposely closing a PU or isolating a faulty PU.
It is possible from a PU to force a member out of
its common group. All PUs in the group are informed
to break their logical connection to the designated
PU. As a consequence all global objects residing in
the isolated PU are thereafter unknown to the group.
If not faulty, the isolated PU continues executing
its local processes and is ready to receive new include
requests.
2.2.1.1.2.8 T̲r̲a̲n̲s̲p̲o̲r̲t̲ ̲M̲e̲c̲h̲a̲n̲i̲s̲m̲s̲
2.2.1.1.2.8.1 B̲a̲s̲i̲c̲ ̲T̲r̲a̲n̲s̲p̲o̲r̲t̲ ̲S̲e̲r̲v̲i̲c̲e̲
Basic Transport Service (BTS) is a module within DAMOS
which enables processes to communicate in a uniform
manner, whether they are located:
1) in the same CR80 processor unit
2) in computers connected via a supra bus, running
the same operating system
3) in computers connected via a communication line,
running independent operating systems.
2.2.1.1.3 D̲A̲M̲O̲S̲ ̲I̲n̲p̲u̲t̲/̲O̲u̲t̲p̲u̲t̲
DAMOS supports input/output (I/O) from user programs
at different levels.
Device control is exercised via the Device Manager
functions. Data is transfered between the user process
and the device handler using a port in the user process
and a port in the device handler.
At a higher level DAMOS offers a more structured I/O
facility under the DAMOS I/O System (IOS).
The IOS provides a uniform, device independent interface
for user processes to
- disk files
- magnetic tape files
- interactive terminals
- communication lines
- line printers
The IOS is a set of standard interface procedures through
which a user communicates with a class of DAMOS service
processes known as General File Management Systems.
General File Management Systems include:
- the File Management System which implements disk
files
- the Magnetic Tape File Management System for magnetic
tape files
- the Terminal Management System for communication
lines, interactive terminals and printers.
- The Database Controller System for communication
with the Database Management System.
The General File Management Systems provide functions
which are classified as:
- device handling
- user handling
- file handling
- file access
The common file access functions provided by the IOS
are readbytes for input and appendbyte and modifybytes
for output.
Figure 2.2.1.1.3-1
Interrelationship of IO System
and General File Management Systems
These basic functions are used for transfer of blocks
of data.
On top of these functions the IOS provides a stream
I/O facility where the IOS handles the blocking and
buffering of data.
2.2.1.1.4 F̲i̲l̲e̲ ̲a̲n̲d̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲S̲y̲s̲t̲e̲m̲
The File Management System (FMS) is responsible for
storing, maintaining, and retrieving information on
secondary storage devices (disks).
The number and kind of devices attached to the FMS
is dynamically reconfigurable.
The following subjects are described in the following:
- devices and volumes
…02…- directories
- files
- users
- integrity
- access methods
All accesses via FMS by user processes are security
checked.
2.2.1.1.4.1 D̲e̲v̲i̲c̲e̲ ̲a̲n̲d̲ ̲V̲o̲l̲u̲m̲e̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲
The file system may be given commands concerning:
- Management of peripheral devices.
Devices may be assigned to and deassigned from
the file system dynamically. Instances of device
handlers are at the same time created or deleted.
- Management of volumes.
Volumes may be mounted on and dismounted from specific
devices.
2.2.1.1.4.2 D̲i̲r̲e̲c̲t̲o̲r̲i̲e̲s̲
The file system uses directories to implement symbolic
naming of files. If a file has been entered into a
directory under a name specified by the user, it is
possible to locate and use it later on. Temporary
files do not need to be named. A file may be entered
into several directories, perhaps under different names.
Since a directory is also considered a file, it can
itself be given a name and entered into another directory.
This process may continue to any depth, thus enabling
a hierarchical structure of file names.
2.2.1.1.4.3 F̲i̲l̲e̲s̲
2.2.1.1.4.3.1 F̲i̲l̲e̲ ̲T̲y̲p̲e̲s̲
The file system supports two different organizations
of files on disk. A contiguous file consists of a
sequence of consecutive sectors on the disk. The size
of a contiguous file is fixed at the time the file
is created and cannot be extended later on. A random
file consists of a chain of indices giving the addresses
of areas scattered on the volume. Each area consists
of a number of consecutive sectors. The number of
sectors per area is determined at creation time, whereas
the number of areas may increase during the lifetime
of the file.
2.2.1.1.4.3.2 F̲i̲l̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
The commands given to the file system concerning files
may be grouped as:
- Creation and removal of files.
A user may request that a file is created with
a given set of attributes and put on a named volume.
- Naming of files in directories.
A file may be entered into a directory under a
symbolic name. Using that name it is possible
to locate the file later on. The file may also
be renamed or removed from the directory again.
- Change of access rights for a specfic user group
(or the public) vis a vis a file. The right to
change the access rights is itself delegatable.
2.2.1.1.4.4 U̲s̲e̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲
The file management system may be given commands concerning:
- Creation and Removal of users (processes)
2.2.1.1.4.5 D̲i̲s̲k̲ ̲I̲n̲t̲e̲g̲r̲i̲t̲y̲
2.2.1.1.4.5.1 S̲e̲c̲u̲r̲i̲t̲y̲
The protection of data entrusted to the file management
system is handled by two mechanisms:
The first mechanism for access control is based on
the use of Access Control Lists (ACL). There is an
ACL connected to each file. The ACL is a table which
describes the access rights of each individual user
group (one being the public) to the corresponding file.
Whenever a user tries to access a file, the ACL is
used to verify that he is indeed allowed to perform
this access.
The second mechanism for access control is based on
a security classificatio system. Each user and each
file is assigned a classification. The user classification
is recorded in the user control block and the file
classification is recorded on the volume. An access
to a file is only allowed if the classification levels
of the user and the file match to each other.
2.2.1.1.4.5.2 R̲e̲d̲u̲n̲d̲a̲n̲t̲ ̲D̲i̲s̲k̲s̲
The FMS allows use of redundant disk packs, which are
updated concurrently to assure that data will not be
lost in case of a hard error on one disk.
The FMS allows exclusion of one of the two identical
volumes, while normal service goes on on the other
one. After repair it is possible to bring up one volume
to the state of the running volume, while normal service
continues (perhaps with degraded performance).
The bringing up is done by marking a raw copy of the
good disk to that which should be brought up. While
the copying takes place all read operations are directed
to both disks.
2.2.1.1.4.5.3 B̲a̲d̲ ̲S̲e̲c̲t̲o̲r̲s̲
The FMS is able to use a disk pack with bad sectors,
unless it is sector 0.
The bad sectors are handled by keeping a translation
table on each volume from each bad sector to an alternative
sector.
While using redundant disks the translation tables
of the two disks must be kept identical to assure that
all disk addresses can bve interpreted in the same
way. If bad sectors are detected while bringing up
a disk, they are marked as such on both disks and both
translation tables are updated accordingly.
2.2.1.1.4.6 A̲c̲c̲e̲s̲s̲ ̲M̲e̲t̲h̲o̲d̲s̲
The file management system implements two access methods
to files:
2.2.1.1.4.6.1 U̲n̲s̲t̲r̲u̲c̲t̲u̲r̲e̲d̲ ̲A̲c̲c̲e̲s̲s̲
For transfer purposes a file is considered simply as
a string of bytes. It is, therefore, a byte string
which is transferred between a file and a user buffer.
The user can directly access any byte string in a file.
The commands which are implemented by this access methods
are:
READBYTES - Read a specified byte string
MODIFYBYTES - Change a specified byte string
APPENDBYTES - Append a byte string to the end of
the file.
2.2.1.1.4.6.2 I̲n̲d̲e̲x̲e̲d̲ ̲S̲e̲q̲u̲e̲n̲t̲i̲a̲l̲ ̲A̲c̲c̲e̲s̲s̲
CRAM is a multi-level-index indexed sequential file
access method. It features random or sequential (forward
or reverse) access to records of 0 to n bytes, n depending
on the selected block size, based on keys of 0-126
bytes. The collating sequence is using the binary value
of the bytes so e.g. character strings are sorted alphabetically.
CRAM is working on normal contiguous FMS files which
are initialized for CRAM use by means of a special
CRAM operation.
The CRAM updating philosophy is based on the execution
of a batch of related updatings, which all together
forms a consistent status change of the CRAM file,
being physically updated as a single update by means
of a LOCK operation. That is, after such a batch of
updates, all these updated may either be forgotten
(by means of the FORGET operation) or locked (by means
of the LOCK OPERATION). Both operations are performed
without critical regions, i.e. without periods of CRAM
data base inconsistency.
For convenience, CRAM supports subdivision of the CRAM
file in up to 255 subfiles, each identified by a subfile
identifier of 0-126 byte (as a key).
CRAM keeps track of the different versions of the CRAM
data base by means of a 32 bit version number, which
is incremented every time CRAMNEWLOCK (the locking
operation) is called. This version number can only
be changed by CRAMNEWLOCK (and CRAMINIT), but if the
user intends to use it for some sort of unique update
version stamping, it is delivered by the operations
CRAMNEWOPEN, CRAMNEWLOCK, CRAMFORGET and CRAMNEWVERSION.
2.2.1.1.4.7 M̲e̲s̲s̲a̲g̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲S̲y̲s̲t̲e̲m̲
M̲essage M̲anagement S̲ystem contains facilities for storage
of messages and similar items on disk and manipulation
of these messages and items.
Each item is stored in an entity called Common Information
File. The main difference between a CIF and an ordinary
file is that CIFs are relatively small, and that they
are subject to very intense activity during a relatively
short period after their creation. After that period
they will be stored permanently, and will be subject
to very low activity. MMS will optimize storage of
and access to itmes according to the activity level.
2.2.1.1.5 T̲e̲r̲m̲i̲n̲a̲l̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲S̲y̲s̲t̲e̲m̲ ̲
The TMS is a service process which manages devices
characterized by serial blockwise access. Examples
of such devices are:
- interactive terminals (screen or hardcopy)
- data communication equipment (modems)
- line printers
- card readers
In the following, the phrase "terminal" is used as
a common term for any device of this category.
Terminals may be attached to LTUs, LTUXs (via TDX)
and parallel interfaces.
The TMS performs the following main functions:
- terminal related security validation
- access control for terminals
- collecting of statistical information
- management of terminals
- transfer of I/O data between terminal device
handlers and user processes.
All accesses via TMS by user processes are security
checked.
The following subsections define:
- transfer of I/O data
- user handling
- hardware categories
2.2.1.1.5.1 T̲r̲a̲n̲s̲f̲e̲r̲ ̲o̲f̲ ̲I̲/̲O̲ ̲D̲a̲t̲a̲
The TMS enables user processes to perform I/O communication
with terminals.
I/O to terminals is identical to I/O to backing store
files from the point of view of the user process.
The same IOS basic procedures are used (appendbytes,
modifybytes, readbytes) and direct as well as stream
I/O can be used.
It provides the greatest flexibility for the user process.
This flexibility is obtained at the expense of an additional
overhead, as all I/O requests from the user process
will have to pass the TMS.
I/O is aimed at terminals which will be connected to
varying processes with different security profiles.
The terminals in question will normally be local or
remote interactive hardcopy or screen terminals.
2.2.1.1.5.2 U̲s̲e̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲
Before a user process can make use of the TMS functions,
it must be logged on to the TMS by means of th Useron
command. This command must be invoked by a process
which is already known by the TMS, either through another
Useron command or because it is the parent process
for the TMS.
In the Useron command the calling process grants some
of its TMS resources to the process which is logged
on to the TMS in the Useron command.
When a user process seizes to use the TMS, its TMS
resources must be released by a call of Useroff.
2.2.1.1.5.3 S̲e̲c̲u̲r̲i̲t̲y̲
The protection of data entrusted to the Terminal Management
System is handled by two mechanisms:
The first mechanism for access control is based on
the use of Access Control Lists (ACL). There is an
ACL connected to each line. The ACL is a table which
described the access rights of each individual user
group (one being the public) to the corresponding line.
Whenever a user tries to access a line the ACL is used
to verify that he is indeed allowed to perform this
access.
The second mechanism for access control is based on
a security classifications system. Each user and each
line is assigned a clasification. The user classification
is recorded in the user control block and the line
classification is recorded in the line control block,
classification levels of the user and the line match
to each other.
2.2.1.1.5.4 H̲a̲r̲d̲w̲a̲r̲e̲ ̲C̲a̲t̲e̲g̲o̲r̲i̲e̲s̲
The TMS recognizes the following categories of equipment:
- T̲e̲r̲m̲i̲n̲a̲l̲ ̲C̲o̲n̲t̲r̲o̲l̲l̲e̲r̲ which is a line controller
interfacing one or more lines.
- L̲i̲n̲e̲, which is a group of physical signals
capable of sustaining one simplex or duplex
data stream.
- U̲n̲i̲t̲, which is a terminal device connected
to a line.
If more than one unit is connected to a given line,
the line is called multiplexed line.
2.2.1.1.5.4.1 T̲e̲r̲m̲i̲n̲a̲l̲ ̲C̲o̲n̲t̲r̲o̲l̲l̲e̲r̲s̲
Terminal controllers may dynamically be assigned and
deassigned by the parent process for the TMS.
A controller can either be assigned as an active or
as a stand-by controller.
A stand-by controller is a device which normally is
not active, but which may take over in case of a failure
in an active controller.
When an active controller is assigned for which a stand-by
is available, this must be defined in the assignment
command.
The process which assigned a controller is its initial
owner.
Ownership of a controller may be transfered to another
user process which is logged on to the TMS.
When a controller is assigned, the TMS creates a corresponding
device handler.
2.2.1.1.5.4.2 L̲i̲n̲e̲s̲
The owner of a controller may assign lines to the controller.
When a line is assigned the TMS calls the device handler
for the controller to that effect.
2.2.1.1.5.4.3 U̲n̲i̲t̲s̲
The owner of a controller with lines assigned to it
may create units on the lines.
Units can be created for file mode I/O or communication
mode I/O.
A unit created for file I/O may be a multiple or single
access unit.
Single access units can only be accessed by the owner
whereas multiple access units may be accessed by a
number of user processes.
When the owner creates a unit, an access path to the
unit is established. The owner may from now on access
the unit by the IOS functions readbytes for input -
and appendbytes, and modifybytes for output.
Other users may obtain access to a multiple access
unit in different ways as described in the following.
The creator of a unit may offer it to another user
by means of the TMS OFFER function. The user to which
the unit is offered obtains access to the unit by the
ACCEPT function.
The creator of a unit may define a symbolic name -
a unit name - for the unit. A unit name is syntactically
identical to an FMS file name.
Other users may obtain access to the named unit by
the LOOKUP ̲UNIT command which corresponds to the FMS
commands getroot, lookup and descent.
2.2.1.1.6 S̲y̲s̲t̲e̲m̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲
When a CR80 memory mapped PU is master cleared, a boot
strap loader is given control.
The boot strap loader is contained in a programmed
read-only memory which is part of the MAP module. Having
initialized the translation tables of the MAP module,
the boot strap loader is able to fetch a system load
module from a disk connected to the PU.
An initialization module which is part of the load
module initalizes the DAMOS kernel and the DAMOS Root
process.
The Root process possesses all the PU resources. Root
creates and intializes a File Management System, a
Terminal Management System and a System Status and
Control System.
2.2.1.1.7 S̲y̲s̲t̲e̲m̲ ̲S̲t̲a̲t̲u̲s̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲
The SSC package starts, allocates resources to, monitors
and controls the ZVA on-line and off-line system through
interaction between the two PUs, the peripherals, the
watchdog, and the operator.
The on-line modes of operation handled are:
- a dualized system consisting of one active PU and
associated peripherals and a stand-by PU
- a degraded system consisting of one active PU and
associated peripherals and an off-line PU and associated
peripherals
In the degraded system the SSC controls the off-line
operations:
- software development and test
- table generation
- maintenance and diagnostics
- offline utilities
The monitoring of the active and the standby system
includes:
- reception of error reports from other packages
- reception of hardware status from crates
- display of system status
- execution of on-line diagnostics programs
The control of the dualized and degraded system includes:
- physical connection of hardware modules
- allocation of resources to other packages e.g.
external and terminal lines
- execution of operator commands
The start-up of the dualized and degraded system includes:
- all forms of initialization
- ordered switchover to a stand-by processor and
corresponding recovery and restart actions
- recovery/restart actions during an emergency switchover
or after a total system error
2.2.1.1.7.1 M̲a̲i̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
The SSC functions are separated in 3 groups:
- on-line functions
- off-line operation
- watchdog functions
The on-line functions include the ZVA top level operating
system COPSY, which
- is the parent of all non-DAMOS processes
- handles allocation of all types of resources, including
specification of security and access control
- determines hardware and software reconfiguration
after the reception of an error report or an operator
command
- implements logical access - and distribution control
on lines.
2.2.1.1.7.1.1 O̲n̲-̲L̲i̲n̲e̲ ̲D̲i̲a̲g̲n̲o̲s̲t̲i̲c̲s̲
Generally the on-line diagnostics test programs aim
at limiting the effect of an error by
- timely detection of errors
- reporting the error condition
Specifically the test programs participate in meeting
the availability and integrity of operation requirements.
The test programs operate as low priority tasks together
with the application software.
A specific test program to verify system integrity
through a checksumming of read-only system software
is available. The program is executed on request from
the system management and periodically.
2.2.1.1.7.1.2 L̲i̲n̲e̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲
Line Monitoring and Control are divided into four areas:
- Terminal Monitoring and Control (TEMCO)
- Device Monitoring and Control (DEMCO)
- Circuit Monitoring and Control (CEMCO)
- Watchdog Monitoring and Control (WAMCO)
a) T̲e̲r̲m̲i̲n̲a̲l̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲T̲E̲M̲C̲O̲)̲
TEMCO monitors and controls LTU lines to Alphanumeric
and Graphic Terminals.
The TEMCO functions are divided into three areas:
- Execution of logical control on behalf of other
packages e.g. access control.
- Monitoring of connections to the terminals
and subsequent execution of control
The control includes the user initiated events:
- sign on/off
- specification of functional capabilities and
security attributes
- transaction handling
- error reports
b) D̲e̲v̲i̲c̲e̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲D̲E̲M̲C̲O̲)̲
DEMCO monitors and controls LTU lines to Stand
Alone Devices
The stand alone devices handled are:
- Line Printer
- Teletype
- Optical Character Reader
- Paper Tape Reader
- Paper Tape Punch
The DEMCO functions are divided into three areas:
- Execution of logical control on behalf of other
packages e.g. access control
- Monitoring of connections to the SADs and subsequent
execution of control
- Start and Retire Device Handling Control Processes
c) C̲h̲a̲n̲n̲e̲l̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲C̲E̲M̲C̲O̲)̲
CEMCO monitors and controls LTU lines to External
Circuits.
No Circuits are handled in the initial configuration.
The CEMCO functions are divided into three areas:
- Execution of logical control on behalf of other
packages e.g. access control (accept/non accept
of input on a line)
- Monitoring of the connection to the EXCs and
subsequent execution of control.
The monitoring includes the reception of error
reports.
- Start and Retire Circuit Protocol Processes.
d) W̲a̲t̲c̲h̲d̲o̲g̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲W̲A̲M̲C̲O̲)̲
The WAMCO functions include
- sending of keep-alive messages from active/standby
PUs to the watchdog.
- monitoring of the WDP, WDP-VDU and WDP-ROP
physical state
and subsequent actions, which may be
- reinsertion of a device
- handling of a WDP ̲VDU connected directly
to the PU
- display the WDP ̲ROP paper out condition at
the WDP ̲VDU configuration display
- reception of monitoring information from the
WDP.
2.2.1.1.7.1.3 H̲a̲n̲d̲l̲i̲n̲g̲ ̲o̲f̲ ̲T̲e̲c̲h̲n̲i̲c̲a̲l̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲s̲
This section covers error handling in general and includes
the following topics:
- error detection
- error types
Technical errors are detected during:
- System calls or asyncronously
- Instruction execution
- Validity checks
- WDP monitoring
Errors detected during system calls have one of the
following types:
- SW errors:
- resource error
- security violation
- illegal parameter error
- informative completion code
- HW errors:
- TMS connection error
- FMS connection error
- CESE error (Central error reporting synchronization
element)
2.2.1.1.7.1.4 O̲p̲e̲r̲a̲t̲o̲r̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲ ̲t̲o̲ ̲a̲n̲ ̲O̲n̲-̲L̲i̲n̲e̲ ̲P̲U̲
Operator commands control the ZVA hardware and software
configuration. The execution of the control is shared
between the SSC in the active PU and the WDP. The SSC
in the active PU directs in the WDP to execute hardware
control.
The basis for execution of operator commands is status
information displayed on the operator VDU and detailed
error reports printed at the operator printer.
The following types of operator functions are foreseen:
- start-up of all modes of the system
- ordered close down of the system
- switch-over from Active PUs to the Standby PU
- device control
- connection of devices to buses
- enable/disable operational use of a device/line
- control of line attributes (e.g. speed)
- load of new software
- print of software versions
- define generation of trace information
- print system status
- adjust time
- commands directly to the watchdog
2.2.1.1.7.1.5 O̲f̲f̲-̲L̲i̲n̲e̲ ̲P̲U̲ ̲O̲p̲e̲r̲a̲t̲i̲o̲n̲
The SSC provides a command interface to the support
software package (SSP) and the offline package (OLP)
in the off-line PU and allocates resources to enable
the off-line operations.
The SSP commands includes low level M&D (maintenance
and diagnostic) commands to the MAP and MIA (MAP interface
processor).
2.2.1.1.8 Z̲V̲A̲ ̲S̲y̲s̲t̲e̲m̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
Monitors are implemented in the software package common
system functions. Possible special LKSAA requirements
can be implemented as an option.
2.2.1.2 G̲e̲n̲e̲r̲a̲l̲ ̲M̲a̲i̲n̲t̲e̲n̲a̲n̲c̲e̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲
General maintenance software consist of High Level
Operating System for system development and maintenance
as well as compilers, test tools, maintenance and diagnostic
software. This is described in details in the following
sections.