DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦b80defe35⟧ TextFile

    Length: 80768 (0x13b80)
    Types: TextFile
    Names: »D12«

Derivation

└─⟦53be6501e⟧ Bits:30005867/disk02.imd Dokumenter (RCSL m.m.)
    └─⟦this⟧ »D12« 

TextFile





















                               RC 8000 
                                System Architecture 




















                                Third Edition
A/S REGNECENTRALEN                 April 1979
     Information Department   RCSL 42-i 1221\f

  F_   Tecnical Editor:     Inge Borch
Author:              Henning Christensen 
       Text Editor:         David McLeod 
 
 
 
 
 
 
KEYWORDS:   RC 8000, basic hardware structure, basic software  
structure, operating systems, programming languages,
application programs, typical user systems.  
 
 
ABSTRACT:This manual describes the structure of the RC 8000  
System, and gives an outline of some of the possible 
applications in data processing and data communications
                    systems.
 
 
 
 
 
 
 
 
 
 
 
 
 
Reservation 
 
 
 
 
 
 
 
 
 
 
 
Copyright   A/S Regnecentralen, 1979 
Printed by A/S Regnecentralen, Copenhagen\f

                 Table of Contents 

 
                  1   INTRODUCTIONPage 5
            
           2   RC 8000 HARDWARE                                         6
                      2.1 Central Processing Unit  7
               2.2 System Bus      10
               2.3 Internal Store         11
               2.4 Magnetic Disc Storage      12
               2.5 General Device Controller  13
               2.6 Basic Models          14
            
3   RC 8000 SYSTEMS SOFTWARE                           16
    3.1 The Monitor   17
    3.2 The System Process >s>       19
    3.3 BOSS Operating System        20
    3.4 MIPS/TS Operating System                       22
             3.5 I/O System 24
 
4   RC 8000 PROGRAMMING LANGUAGES      26
    4.1 ALGOL        26
    4.2 FORTRAN      27
    4.3 BASIC/COMAL28
    4.4 SLANG  29
                   
5   RC 8000 OPERATIONAL SOFTWARE      30
    5.1 File Processor       30
    5.2 Utility Programs      31
    5.3 Data Management Systems      31
    5.4 Various other Packages  33
            
           6   RC 8000 APPLICATION SOFTWARE34
               6.1 RC Financial Control  35
               6.2 RC Payroll  35
               6.3 RC Production and Inventory Control 36
               6.4 RC System 80  36
               6.5 RC NET  37
            
           7   TYPICAL RC 8000 APPLICATIONS39
               7.1 Small Financial and Production Control System  39
               7.2 Service Center System  41
                      7.3 Telephone Directory Inquiry System   44\f

  1        I_N_T_R_O_D_U_C_T_I_O_N_ 
        
           
            The RC 8000 is a reliable and flexible computer system. Due to
           modular construction the RC 8000 System can be configured to co-
           ver the range from a minicomputer with only a few peripherals to
            a medium scale host computer serving a comprehensive set of ter-
          minals and satellite systems. An RC 8000 System can be expanded
          without extensive replacement of hardware and software just as
          well as already existing RC equipment can be utilized. For in-
          stance, an RC 3600 or an RC 6000 can be upgraded to an RC 8000
          System. 
            
            
            
            
            
            
            
            
            
            
           FOTO
            
            
            
            
            
            
            
            
            
           TYPICAL RC 8000 INSTALLATION
            
           An RC 8000 System is composed of both hardware and software. The
           hardware, utilizing MSI and LSI technology, supplies the relia-
bility and simplicity of operation. The superimposed software
supplies the flexibility and wide capability. 
            
           The division of tasks between hardware and software assures the
           best performance for the lowest cost, with each component contri-
buting those performance elements for which it is best suited. 
            
           This manual describes how the hardware and software are combined
into the RC 8000 System. \f

 2         R_C_ _8_0_0_0_ _H_A_R_D_W_A_R_E_ 
 
      
            
           An RC 8000 System has 4 major hardware components: the central
           processing unit, internal storage, the I/O device controller and
           the magnetic disc storage channel. A real system can contain one
           or more of each of these components. The units are interconnected
            by a databus, the RC 8000 System Bus, which effects all transmis-
           sion of data between the connected units. The data bus may be
           considered as an independent system component since none of the
          connected units have special priority to use the bus. 
            
            
            
            
            
            
            
            
            
            
                                  TEGNING 1. 
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
           The controllers perform all the routine tasks associated with
           the operation of peripheral devices. The central processor can
           thus spend more time on computing activity. As a result of this
          organization, the overall performance of an RC 8000 System is
          substantially higher than the nominal performance data of the
          central processor seems to indicate. \f

          The data bus architecture gives a general and flexible structure
          providing the possibility of expanding the system to comprise se-
          veral central units and several controllers, all connected to the
          same data bus. 
           
In the following sections, the individual hardware components
will be described in more detail. The chapter is concluded with a
          view on the product structuring within the RC 8000 Systems. 
           
 
2.1       C_e_n_t_r_a_l_ _P_r_o_c_e_s_s_i_n_g_ _U_n_i_t_ 
           
          The RC 8000 Central Processing Unit executes program instructions
          which are fetched from the internal store at the time of process-
          ing. The unit contains registers and circuits for arithmetic lo-
          gic, general control and interrupt control. 
           
 
           
           
           
           
           
           
           
          tegning
 
           
           
           
           
           
           
           
           
           
           
           
           
           
          An optimum of flexibility and speed is the result of combining
          general microprogramming capability with special hardware fea-
          tures such as instruction prefetch, i.e. fetching the next in-
          struction from the internal store while the former instruction is
          being executed. \f

           The processing functions are alike for all processing units,
whereas the instruction execution times depend on the relation-
ship between functions implemented by microprogramming and func-
 tions implemented by hardware features. 
 
A group of processors has been designed that are mainly micropro-
grammed. These processors have typical instruction execution ti-
mes of 3 to 20 usec. They are the bases of the compact models of
RC 8000 Computers. 
 
Another group of processors has been designed that have more func-
tions implemented by hardware features. These processors have
typical instruction execution times of 1 to 3 usec. They are the
bases of the larger models of RC 8000 Computers. 
 
All units have a 24-bit word single address instruction format
with 64 basic instructions. Each instruction has a 12-bit dis-
placement and 16 address modifications including relative, index-
ed and indirect addressing modes. 12-bit half-words are the
smallest data units which can be addressed directly. 
 
The RC 8000 Central Processing Units use 4 working registers,
three of which also function as index registers. This means, that
the full instruction set is available for immediate address mo-
difications and the number of empty transfers of registers to the
internal store is greatly reduced. 
 
The data formats comprise 12-bit half-words and 24-bit full-
words for integer arithmetic. 48-bit double-words are used for
floating point and extended range integer arithmetic. 
 
The instruction set is very versatile and includes facilities
for half-word operations and word comparison which aids data
manipulation. Logical operations permit setting and testing of
single bits. Also included is an escape facility, which can cause
programmed action on preselected types of instructions. This is a
valuable tool for program debugging, emulation of special instruc-
tions etc. The various addressing modes allow dynamic relocation
of programs. This means, that programs can be executed in any
part of the internal store and can thus be moved around in the
store when that is needed. 
 
A program protection system combined with a real-time clock and
a powerful interrupt system provides facilities for multiprogram-
ming operation (see chapter 3).  \f

           Program protection is obtained by means of limit registers and
           privileged instructions. Whenever the execution of an instruction
           implies a store access, the store address is checked against the
limit registers to prevent interference between different pro-
grams. Furthermore, some privileged instructions are reserved for
supervisor programs. If an ordinary user program attempts to exe-
cute a privileged instruction an interruption of the program
occurs. 
            
           The interrupt system has the capability of interrupting the pro-
           gram execution. Internal interrrupts, that is interrupts caused
           within the processor, have 8 levels while external interrupts
from the peripherals have up to 248 levels on the larger models.
            
The real time clock, which has a resolution of 0.1 msec, drives
an interval timer, which causes the regular interrupts for the
multiprogramming operation. 
            
            
 
 
 
 
 
 
 
 
 
 
 
 
foto 
 
 
 
 
 
 
 
 
 
CENTRAL PROCESSING UNIT AND INTERNAL STORE - module structure\f

T_ 2.2       S_y_s_t_e_m_ _B_u_s_ 
                   
           The unified system bus is the backbone of the RC 8000 System. All
&_           system units are connected to the same bus and communicate by a
           uniform communication protocol. This simplifies the interfacing
           between the various units, since each unit interfaces only to the
           data bus. Code conversions for specific peripherals are performed
           by the associated controllers and channels. 
 
            
            
            
            
            
            
            
            
            
                              TEGNING 6. 
T_            
            
            
            
            
            
            
            
            
            
            
            
                   
           An asynchronous, fully interlocked request/acknowledge - hand-
           shake - communication technique is employed. A data bus transfer
           carrying one dataword and one address word in parallel is com-
           pleted in 0.3 usec. This means a data bus throughput of 3.3 mil-
lion words per sec. 
            
           The RC 8000 System Bus is an independent part of the system with
an autonomous bus control unit. No unit connected to the bus, not
even the central processor, has special priority. If a connected
unit needs to use the bus, it sends a bus request. When the bus
is ready, the requesting unit is granted bus control. The next
unit to use the bus is selected immediately after, so that a new
unit is ready when the current user is finished. \f

           The asynchronous transmission mode implies that data transfer
            between two units will be as fast as possible for any combina-
           tion of units. The actual speed of transmission is set by the
           maximum transfer rate for the slower of the two units. Thisalso
           means that internal store modules with different cycle times can
T_           be used in the same RC 8000 System.   
            
           The RC 8000 System Bus architecture just described secures a
           very efficient utilization of hardware resources and provides
           the flexible and modular basis, which guarantees the user an
open-ended system adaptable to almost any foreseeable future
           application. For instance several independent central processors
           can be connected to one system bus and share all peripheral
           facilities. 
            
            
 2.3       Internal store  
            
           The RC 8000 Internal Store is built of modules and the size can
           be from 64 Kwords to 4 million words depending on the model.
            
            
                  
            
            
            
            
            
            
            
            
            
            
                              TEGNING 6. 
            
            
            
            
&_            
            
            
            
            
            \f

T_                The internal store is available in either semiconductor or magne-
           tic core memory, - or combinations of the two. 
            
The store access width is 1 word consisting of 24 data bits and 3
parity bits (or a 6-bit correction code) generated and checked by
a dedicated store control unit. A single word in the store can be
read in 0.55 (0.6) usec, whereas reading or writing a sequence of
words requires 0.9 (0.7) usec per word corresponding to 1.1 (1.4)
mill. words per second - the bracket values relating to semicon-
ductor memory. 
            
            
2.4        M_a_g_n_e_t_i_c_ _D_i_s_c_ _S_t_o_r_a_g_e_
            
           The RC 8000 uses magnetic disc backing storage. Disc storage mo-
           dules are connected to the system bus by means of a "Disc Storage
           Channel". The central unit can initiate a channel program which
         is then exceuted by the disc storage channel. In this way it is
         possible to transfer data to and from the backing storage without
         engaging the central processor during the entire transmission. 
 
 
 
 
 
 
 
 
TEGNING
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 \f

                  Disc storage modules (disc drives) with capacities of 10, 21, 33,
         66, 124 and 248 Mbytes are available. 4 disc modules can be daisy
         chained to one RC 8000 Disc Storage Channel and up to 4 channels
         can be connected to the system bus (depending on the model).  
            
           Fully developed this means a total disc storage capacity of al-
           most 4000 Mbytes. The transmission rate to and from the disc sto-
rage is 1.2 Mbytes per sec. The average access time depends on
the actual disc drive, typically it is 30 to 40 msec. Data can
be read or written on one disc per channel at a time whereas head
positioning etc. can be performed in parallel on more than one
disc. 
            
            
T_  2.5      G_e_n_e_r_a_l_ _D_e_v_i_c_e_ _C_o_n_t_r_o_l_l_e_r_ 
            
           All "slow" peripherals such as line printers, card readers, ter-
minals and communication equipment are handled by an RC 8000
General Device Controller. It controls all the attached periphe-
rals autonomously. For instance, a transfer of data from a stack
of data cards to the backing storage will be initiated by the
central processor. Thenthe device controller will take over and
via the system bus complete the transfer without further engage-
ment from the central unit. 
 
 
 
 
 
 
 
 
TEGNING
 
 
 
 
 
 
 
 
 
 
 
 \f

           In fact, the device controller is an RC 3600 Minicompouter with
           its own system software which enables it to perform code conver-
           sions, peripheral operation controls, terminal polling and so on.
Although a "real" computer the device controller can not execute
any user program, but is dedicated to mediate the contact between
the RC 8000 System and the peripheral devices. One device control-
ler is capable of handling an extensive set of peripherals, yet
further controllers may be connected to the RC 8000 System (de-
pending on model). 
 
The RC 8000 General Device Controller can transmit and receive
data via the RC 8000 System Bus at a rate of 600 K bytes per se-
cond. As an exception to the general structure, the RC 8000/15
(the smaller system) has its device controller connected by an
arrangement which causes the transfer rate to be 10 K bytes per
second. 
 
The device controller, being a specially equipped RC 3600 Mini-
computer, is available with core or semiconductor memory. 
 
 
  2.6       Basic models 
             
          The opportunities available with the hardware equipment have
          been structured in basic modelsof the RC 8000 Systems as a con-
          venient entry to decision making in the choice of modules. The
concept of the basic models brings about a natural ranging of
features while maintaining flexibility in configurating. 
           
                   Actually the basic configurations themselves are assembled from
modules and provide the open-ended issue which was outlined in
the description of the system bus structure. The main reason for
the configuration of basic models is found in the effort to
assure that any system configuration will perform as an entity,
and meet throughput expectations as well. An uncritical urge for
specific aspects without the care of matching and balancing the
other system aspects accordingly might easily cause poor system
utilization.  
 
Consequently each of the basic models features a certain range of
ascepts which does not violate the system entity. The significant
parting line follows differences of the central processing units,
which sucessivly effects the range of internal store, the support
of disc storage channels and general device controllers. 
 \f

Yet due to the modular structure supplementary modules can be
added to any of the basic models and thereby yield an extensive
range of aspects. For instance by adding a central processing
unit equal to the current one, or, by replacing the current one
with a more powerful central processing unit. 
 
Based on the description given in the privious sections, the
basic models are characterized as follows: 
           
          RC 8000   Model           15     35   35S     45   45S     55 55S
           
          CENTRAL   RC              8002     8004         8005       8006
          UNIT     instruc. time
usec.-average6.22.3 1.2
 
 INTERNALsemi+  0   + 0    + 0  +
STOREcore + 0  + 0  + 0
size
K words64 64 - 512 64 - 4096

DISC           
CHANNEL   No.   11 - 4
 
DEVICENo.11 - 8
CONTROL-  trans.rate  
LER        K bytes/sec.10600
 
 
+ = included; 0 = option 
 
With the hardware described above it is possible to perform va-
rious data processing tasks, but with hardware alone those tasks
will be complicated and subject to many limitations. The great
flexibility and wide capability that characterizes the RC 8000
System is acheived when the hardware is supplemented by systems
software. 
 
 
 
 
 
 
 
 
 
 \f

      3        R_C_ _8_0_0_0_ _S_Y_S_T_E_M_S_ _S_O_F_T_W_A_R_E_ 
             
            
            The main goal of the RC 8000 Systems Software is to achieve the
            most efficient use of computer resources under any run-mode a-
            long with ease of operation. 
            
           Regarding general efficiency in computers systems, one of the pri-
mary factors is the utilization of the central processor. Usual-
ly, the attention of the central processing unit is only required
during a fraction of the total time spent for executing an ordi-
nary program job. Most of the time the central processing unit is
waiting for some input/output operations to be completed. 
            
            
                   
  
            
            
                                      Tegning 
            
            
            
            
           This is evidently a poor utilization of the capacity of the cen-
           tral processing unit. 
            
           A solution to this problem is to let the central unit switch its
           attention among a number of jobs. While some job is waiting for
           an I/O operation to be completed, the central unit may perform
           computations for other jobs. 
            
            
                 
            
            
            
            
            
            
            
  
           In order to perform in this way, a number of jobs must be present
           in the internal store simultaneously (or available on disc to be
fechted into the internal store succesively). The central proces-
sor will then appear as a number of processors. 
 \f

                  The users, all running jobs at the same time, will experience it
           as if they each had their own processor. This virtual multiproces-
sing action is the principle behind the RC Multiprogramming Sys-
tem. 
            
            
T_      3.1      T_h_e_ _M_o_n_i_t_o_r_ 
            
           The Monitor is the software element that implements the RC 8000
           Multiprogramming System. The basic concept within the system is
&_           the "process". A process is generally defined as an area in the
           internal store in which all computational activities pertaining
           to a certain job are performed. In the multiprogramming system,
the attention of the central processor is shared equally among
           all present (or available) processes and they are therefore term-
ed "parallel processes". In this environement, the supervisor
program, the Monitor, controls the following functions:  
            
- Distribution of computing time among parallel processes. 
           - Initiation, execution and termination of processes. 
           - Communication between processes. 
           - Reservation and initiation of sequential input/output data  
               transfer.
- Backing storage catalog handling. 
            
            
            
            
            
            
            
            
            
            
            
            
                  ILLUSTRATION7. 
            
            
            
            
            
            
            
            
&_            \f

           The Monitor program is permanently located in the internal store.
           When it is activated, it can not be interrupted by any other pro-
           gram. It can be regarded as an extension of the hardware facili-
           ties.   
                   
           By means of the interval timer and the interrupt system the Moni-
           tor allocates 25.6 msec of computing time to the processes in
           turn. But if a process is interrupted after say 10 msec in order
to wait for a peripheral, the next process in the queue will be
started.   
            
           Each process has a process description containing a symbolic na-
           me, relationship to other processes, limits of process area in
           the internal store, status and other information necessary for
            the administration of computer resources. A maximum of 21 proces-
           ses can exist simultaneously and by means of a protection system
           it is guaranteed that no process inadvertently operates outside
           its boundaries. 
 
           If communication between parallel processes is wanted, the Moni-
           tor is able to mediate the contact by means of five procedures
           called: send message, wait answer, wait message, send answer and
           wait event. Each process has a queue within the Monitor in which
           it can receive messages from other processes. Using the commu-
           nication procedures it is possible to transfer data from one
           process to another. 
            
           Peripherals are also regarded as a kind of process as the hard-
ware device to the central unit is represented by a driver, a con-
trol program, - and they too are identified by a symbolic name.
The communication procedures can then be used to initiate sequen-
tial data transfer between processes and input/output devices or
to establish a conversation with a terminal. 
            
           Users can retain programs and data permanently on the disc back-
           ing storage which is organized as a collection of named data
           areas. A fixed part of each store is reserved for a catalog de-
           scribing the names and locations of the data areas. The catalog
           can be divided into an unlimited number of nested subcatalogs,
           each with a specific access restriction. 
            
           This hierarchical structure combined with the program protection
system secures privacy of files and at same time allows users to
benefit from common program libraries etc. Data areas are allo-
cated after a strategy that allows extensions and reductions to
be performed when needed and makes reorganization superfluous. \f

  T_     3.2      T_h_e_ _S_y_s_t_e_m_ _P_r_o_c_e_s_s_ _>_s_>_ 
            
           The System Process >s> is the key to the dynamic operating system
           concept of RC 8000. 
&_            
           An operating system is a program that controls the execution of
           other programs, for instance, a batch processing system organiz-
ing a sequential execution of programs, a time sharing system for
           simultaneous programming from a number of terminals or a real-
           time system for updating a database. Usually an operating system
           is made for one, and only one, mode of operation.    
 
           In contrast to this, the Monitor of the RC 8000 has no built-in
assumptions about program scheduling and resource allocation; it
allows any program to initiate other programs in a hierarchical
structure and to execute them according to any strategy desired.
The functions of the Monitor described in the last section provi-
de a general framework for different scheduling strategies.  
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
           After the initial system load the System Process >s> owns all
           computer resources. Users can then, from an aribtrary terminal,
reserve a storage area and start a program. >s> will then imme-
           diately create the process description for the Monitor and the
           process is established. 
 
Such a user process will then run in parallel with >s> whichacts
as a primitive operating system for all the parallel processes A,
B and C it has started itself. \f

T_           The three processes A, B, and C can be termed "child" processes
           of >s>, they can now create their own child processes, D, E, F,
           G and H. The child processes can only be allocated a subset of
           the resources reserved by the parent. The parent acts as operat-
           ing system for the child processes; it can start, modify, stop
and remove its child processes according to any desired strategy.
            
This hierarchy of processes can be expanded in both depth and
width. In the resulting family tree each parent has complete
jurisdiction of its children. In the RC 8000, then, the operating
system concept becomes varied and dynamic. Operating systems can
be written in a suitable high level language, such as ALGOL 7,
and implemented just like any other programs, they can be replac-
ed dynamically enabling the system to switch between various mo-
des of operation and several operating systems can be active
simultaneously. 
            
            
T_       3.3      B_O_S_S_ _O_p_e_r_a_t_i_n_g_ _S_y_s_t_e_m_ 
            
           As a child process, >s> can load the more advanced BOSS operating
           system.  BOSS performs a fast and reliable sequential execution
           of jobs and simultaneously allows users to perform editing and
           job entry from up to 50 terminals. All users are recorded in a
&_            user catalog which also includes an accounting system, and each
           user has his own file catalog in order to secure privacy of fi-
les. Jobs can be entered from terminals as well as from paper ta-
           pe and card readers. Output to terminals and printers is spooled
on the backing storage. 
            
                   
            
            
            
            
            
                                      Tegning Boss core og BS 
            
            
            
            
            
            
            \f

                  BOSS administrates the job queue on the backing storage. The
           order of execution is chosen by a priority scheduling algorithm
           in such a way that the ratio between estimated run time and
           waiting time is the same for all jobs in the queue. Up to 20
           jobs can be under execution simultaneously, but only the two
           jobs with the highest priority are present in the BOSS job area
in the internal store. The rest of the jobs are temporarily
           suspended and swapped out on the backing storage. This dynamic
           system secures that small jobs are executed fast and any large
            job is guaranteed execution, but must expect longer waiting
time. Output to terminals and printers is gathered in segments
           on the backing storage and transferred as an entity, when the
job is finished. 
 
A typical terminal communication between a user and BOSS with
login procedure, creation of a program etc. is shown below. 
 
 
 
 
 
 
 
 
 
                 Figur  terminal conversation.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 \f

         3.4       MIPS/TS Operating System 
           
          As another opportunity one may choose the operating system MIPS/
          TS. A powerful operating system aimed at interactive terminal
work for multiuser on-line systems. 
           
          The operating system performs transfers of application programs
to and from backing storage (swap-area) according to need, en-
abling different application programs to utilize the same inter-
nal store area of the computer. Consequently the number of appli-
cations which are accessible by the users is increased without
increasing the size of the internal store. 
           
          The strategy of job execution is implied by a priority scheduling
          algorithm dynamically updated for any application running in the
          system. Applications which are frequently accessed and capable of
          short processing times are given a higher priority than those
          less frequently accessed and requiring longer processing times.
          One batch-like processing job can be run simultaneously in order
to utilize the time not used by interactive processing. This way
          the user is assured of the best possible service while making
optium utilazation of the computer.  
 
 
 
 
 
 
 
 
TEGNING 
 
 
 
 
 
 
 
 
 
 
 
Terminals are treated groupwise with respect to the applications
accessed. A user terminal connection may be established/removed
dynamically with respect to any of the groupings. This structure
 
 \f

          prevents the programn executions from being impeded as the speed
difference between data processing and peripheral operating can
be equalized. 
 
Also the spool function acts towards eliminating speed differen-
cies. The programs are enable quickly to write the data process-
ing results on the disc storage. Consequently the programs can
directly proceed in processing other jobs according to the prio-
rity schedule. The results are then forwarded to the receiving
units controlled by MIPS/TS at a speed which is acceptable to the
          unit in question. 
           
Using a large computer, several MIPS/TS operating systems may be
          established in parallel if desirable. 
           
A terminal communication between a user and MIPS/TS is shown
below: 
 \f

T_       3.5      I_/_O_ _S_y_s_t_e_m_ 
            
           The I/O system is one of the keys to the high performance of the
           RC 8000 Systems. The intelligent peripheral controllers and the
data bus structure is the basis for a standardized I/O programm-
ing system with an efficient allocation of peripheral resources.
    
            
            
            
            
            
            
            
            
            
            
            
            
              Figur i/o system 
            
            
            
            
            
            
            
            
            
            
            
            
           To a job process an input/output operation is a matter of sen-
           ding an I/O request to the Monitor stating the required periphe-
           ral device and the address at which data is to be read or writ-
           ten. The Monitor administrates an I/O request queue and when the
           required device is ready the Monitor initiates a data transfer on
           the data bus by activating a "channel" program. The channel pro-
           grams reside permanently in the internal store and they are exe-
           cuted by the device controller that controls the requested peri-
           pheral device. Once started, the device controller executes the
channel program without further engagement from the central pro-
cessor. The physical control of the peripherals and the necessary
code conversions are performed autonomously by the controllers. \f

T_                This structure with a main processor and separate peripheral pro-
                  cessors can be regarded as a small network, and it is implemented
           as such. The RC 8000 General Device Controller Software includes
a Network Control Program. This means that an RC 8000 System is
prepared right from the start for connection to a data processing
network in which the general device controller will act as a no-
de. Terminal polling, peripheral operation, data transfer on the
system and all the tasks of the general device controller are
performed by a software system quite similar to that of the total
RC 8000 System with its own Monitor and operating systems. Yet
the general device controller is an integrated functional unit
which cannot be accessed by users, although it possesses abili-
ties equal to a "real" computer. 
 
The systems software described until now creates the multipro-
gramming environment in which several users can operate inde-
pendently. In the next chapters we will have a look at the soft-
ware systems available to each user within job processing.\f

T_  4        P_R_O_G_R_A_M_M_I_N_G_ _L_A_N_G_U_A_G_E_S_ 
            
 
           It is of course most convenient to do the programming for the RC
8000 System in a high level programming language. A number of pro-
gramming languages, suitable for different purposes are available
for the RC 8000 System. They are all widely known, but extended
in order to fully utilize the possibilities outlined in the pre-
ceeding chapters. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
         4.1     A_L_G_O_L_ _ 
 
                  The primary high level language for RC 8000 is ALGOL 7, which is
           an RC extension of the general purpose language ALGOL 60. 
            
&_           The most important extension is the implementation of a general
           input/output system. Users are free to choose whether they want
to use standard high level input/output procedures or whether
they want to manipulate the administration of data at the most
basic level. The ALGOL 7 I/O system offers a file system on the
backing storage with sequential access. A dynamic field descrip-\f

tion feature is included in the language as a powerful tool for
the management of records of different types within a single fi-
le. The "context" facility makes it possible to program multi-
terminal on-line systems in ALGOL 7. Coroutines are supported by
this concept too. 
 
Other extensions include case expressions and case statements for
multiple-condition branching, and pattern operators for bit ope-
rations and efficient packing of information. The library proce-
dures provide facilities for performing all the Monitor func-
tions. This combined with the input/output system makes it pos-
sible to program operating systems in ALGOL 7. 
            
                  The ALGOL 7 program source text can be entered from terminals,
backing storage, paper tape, punched cards, magnetic tape, disc
or a combination of these. Input from magnetic tape and discmust
be represented in ISO 7-bit character code with 3 characters per
word. Procedures can be compiled separately and included in the
commom program library. Such a procedure can be called directly
and a copy of the procecure code is copied into the object
program during the compilation. 
 
           The compiler requires 7 Kwords of internal store and a backing
           storage area large enough to hold the object program. An exten-
           sive syntax and type control is performed and all errors can be
                found in one compilation. After a basic time of 2 sec. the trans-
lation speed is about 75 statements per sec. Several programs can
be compiled simultaneously by copies of the compiler loaded into
different parts of the internal store. 
            
           The object program is transferred to the backing storage as a se-
           quence of relocatable segments of 256 words each. The program in-
           cludes an automatic administration of transfers of segments to
           the internal store at runtime. The execution time of a program
           depends on the size of the available storage area. Programs of
           arbitrary size can be executed in a storage area of 3500 words
plus space for variables, but an area of 6000 words plus space
for variables is recommended. Test output can be generated during
           the execution and erroneous programs are executed until the point
           of error is reached. 
            
 
       4.2        F_O_R_T_R_A_N_ 
            
RC FORTRAN is based on the ISO recommendation R 1539 (FORTRAN
IV), it has however been extended to allow the use of the basic\f

ALGOL 7 input/output system and as a result some of the terms de-
fined in the ISO recommendation are not required. A "precompiler"
           for translating these nonexistent terms into RC FORTRAN is avail-
           able. Other extensions include mixed type arithmetics, backwards
           counting in DO statements, pattern operators, DATA initialization
           of common variables anywhere and multiple entries in procedures. 
            
Previously compiled FORTRAN or ALGOL procedures can be inserted
during compilation. The checking of parameters in procedure calls
and of labels in assigned GOTO statements is standard whereas the
check against subscript bounds is optional. 
            
           All other characteristics of the FORTRAN Compiler are equivalent
           to those of the ALGOL 7 Compiler described in section 4.1. 
  
 
         4.3      B_A_S_I_C_/_C_O_M_A_L_ 
            
RC BASIC/COMAL is a structured educational language; it is simple
and comprehensive and yet sufficiently advanced to permit demon-
stration of important programming principles. 
            
           The original BASIC has several deficiencies regarding advanced
           programming. Recent proposals for new and better educational
            languages have been put forth, among them has been the develop-
ment and implementation of COMAL (Common Algorithmic Language).
COMAL possesses all the features that made BASIC popular, in fact
COMAL includes almost all the facilities of BASIC plus a number
of advantageous features. 
            
           Incorporating COMAL and BASIC into RC BASIC/COMAL provides the
following extensions compared to ordinary BASIC: 
            
           IF-THEN-ELSE, REPEAT-UNTIL, WHILE-DO and CASE-OF-WHEN. 
           Eight character variable names. 
           Structured programming without GOTO line number. 
           Interactive program execution. 
           Batch mode program execution. 
           File input/output. 
           Matrix operations. 
           String and string array manipulations. 
           Output formatting. 
           Desk calculator functions. 
            \f

           With these features RC BASIC/COMAL covers the total educational
range from the most introductory level to advanced production
programming training. 
            
 
       4.4      S_L_A_N_G_ 
            
RC SLANG is the assembly language for RC 8000; it has the same
block structure as ALGOL. SLANG is used by RC for coding of basic
software and some times for coding critical procedures. SLANG
           programming gives a marginal increase in processing speed and a
            slight reduction in program size at the expense of readability
and programming time. Furthermore procedures which violate the
conventions of the high level languages can be coded in SLANG.
The SLANG program source text can be entered from terminals, back-
ing storage, paper tape, punched cards, magnetic tape or a com-
bination of these. Input from magnetic tape and backing storage
must be represented in ISO 7-bit character code with 3 charac-
ters per word.  
 
Independent of the programming language, a number of tasks per-
taining to the execution of a job are standard procedures, but
they can be complicated and time consuming to code. For the con-
venience of the user a number of program packages for tasks such
as job control, data management, terminal communication etc. are
available. This kind of software is termed "Operational Software"
and it is dealt with in the following chapter.\f

  5        R_C_ _8_0_0_0_ _O_P_E_R_A_T_I_O_N_A_L_ _S_O_F_T_W_A_R_E
                   
            
       5.1      F_i_l_e_ _P_r_o_c_e_s_s_o_r_.   
            
           When a process is created, the operating system will load a
small control program named the "File Processor" into the job
area. This program is able to load and activate execution of
programs according to the job file specifications made by the
user. These programs may be user programs or compilers, editors
and special utility programs. When a program is executed control
is returned to the File Processor program which then loads the
next program. When the job file is exhausted, control is retur-
ned to the operating system. The example of section 3.3 appears
below, commented in terms of program control. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figur terminal communication 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 \f

           A library of support programs for job control such as conditio-
           nal execution of job steps or job-operation for communication is
           included in the Utility Program Library. 
                   
            
T_       5.2      U_t_i_l_i_t_y_ _P_r_o_g_r_a_m_s_.   
 
           These programs, which can be utilized by any job, cover a number
           of tasks. According to their functions they can be divided in
           three main groups: catalog handling, data handling and job con-
           trol. 
            
           Catalog handling programs are used for creating, changing and
           removing catalog entries on the backing storage as well as
           searching, sorting and listing of user file catalog entries. 
            
           Data handling programs cover tasks such as: copying data from
one storage media to another, simple formatting - headings and
identification - of printer output and editing of text strings,
for instance in program files. 
            
                  Job control programs provide facilities for action, such as:
           termination of a job, repeating one or several job steps, con-
ditional execution of one or several job steps, communication
between job and operator, e.g. mounting of magnetic tapes and
printer control. 
            
           Other utility programs for special purposes may be coded by the
           users and added to the library. 
            
            
         5.3      D_a_t_a_ _M_a_n_a_g_e_m_e_n_t_ _S_y_s_t_e_m_s_ 
            
           Administration of files on the disc backing storage can be im-
           plemented in three levels. The first level is the ALGOL/FORTRAN
           standard input/output system (see section 4.1). The second level
           is provided by the "Backing Storage" program package which con-
tains an indexed sequential file system. At the third level the
"Data Base" package extends the facilities of the Backing Sto-
rage package with a "Connected Files" data base system.   
            
     T_         For data on magnetic tape, the "Magnetic Tape" package  provides
a set of procedures for handling labelled files on magnetic ta-
pes in ALGOL and FORTRAN programs. The labels follow ISO stan-
dards. \f

           The Backing Storage program package provides an indexed sequen-
            tial files system for random access storage media. Fast inspec-
tion, updating or deletion of specific records are made possible
by means of index tables in two levels.  
            
            
            
     T_         File Catalog   File 1    File 2    File 3    File 4 
            
            
            
           File Head   Bucket table   bucket 1   bucket 2   bucket 3 
            
            
            
           Block table   block 1   block 2   block 3   block 4 
            
            
            
     &_         record 1   record 2   record 3   record 4   record 5 
            
            
Each record is uniquely identified by a key. When a certain re-
cord is to be found, the system will search for the key in the
bucket table. This yields a part of the file, a bucket, in which
to continue the search.  Searching in the block table of this
bucket will yield the block in which the record can be found.
The system, which can be used with records of variable length,
as well as records of arbitrary type, includes sorting procedu-
res.  
 
The Connected Files Data Base system is based on two file types
- master files and list files.  The master file records contain
data on entities such as products, production equipment, orders
etc. The list files contain additional data relating to the en-
tities and may, furthermore, express a relationship between the-
se entities. 
 
 
 
                    figur production structure
 
 
 
 
 \f

           A situation, in which three machines are used to produce two dif-
           ferent products, could thus be represented in a data base by two
master files and one list file.  
 
 
 
 
 
 
 
 
The master files are organized index sequentially. They can be
accessed directly by keys or sequentially. A master file record
can be the "mother" for a list. 
 
            
           Master file records 
                               M1        M2        M3 
                
                     P1        P1, M1              P1, M3       Chain 
            
                     P2                  P2, M2    P2, M3 
            
            
    &_                                   List file records
            
            
           The list files are sequential access files, where the recordsare
           organized in chains. The records of a list file will always be
           "daughters" of a record in another file, which may be either a
           master file or a list file. Consequently, the access of a chain
of list file records must always be preceded by an access of a
mother record in a master file, or a list file.  
 
5.4V_a_r_i_o_u_s_ _o_t_h_e_r_ _p_a_c_k_a_g_e_s_.  
 
The "Terminal" package contains a communication procedure for on-
line input/output to terminals in ALGOL programs. 
            
           The "MATH.-STAT." package is a collection of routines covering
tasks such as: Solving of differential equations, linear equa-
tions and matrices, Fourier transforms, descriptive statistics
and many other standard mathematical problems. \f

  6        R_C_ _8_0_0_0_ _A_P_P_L_I_C_A_T_I_O_N_ _S_O_F_T_W_A_R_E_ 
            
 
           With the operational software and programming languages descri-
           bed in the preceding chapter, the users can create their own app-
lication programs. This is, however, often a hard and time con-
suming process. 
            
           RC Application Software offers a line of systems covering a wide
           range of administrative problems within trade and industry. 
            
T_             
 
                    SATELITE                             SERVICE 
                     SYSTEM                              CENTER 
 
 
                                       RC NET 
 
PRODUCTION 
                     FINANCIAL RC 8000            AND INVENTORY
                     CONTROL                               CONTROL 
 
PAY ROLL 
                                           SYSTEM  
&_ 
                  In the light of many years of experience with service bureau
           activities RC has developed a line of reliable and flexible
           application software. The three main systems are: 
            
                     RC Financial Control System
                     RC Payroll System 
                     RC Production and Inventory Control System 
            
           All three systems are built from modules and are adjusted to
           suit individual requirements. Updating, inquiries and small re-
           ports are performed in real time from on-line terminals, while
larger operations of computational or documentary nature are
performed in batches. The system functions may also be divided
between your installation and a service bureau. 
 
                  RC System 80 integrates the functions of the three above men- 
tioned systems into a total administrative data processing sys-
tem. A number of function modules is chosen to fit the current
needs of the organisation, but this is no restriction, the system
can be modified as needed.\f

            RC NET is a data communication system, which enables the incorpo-
            ration of an RC 8000 as a host computer in a larger distributed
network. Utilizing RC NET systems of various manufactorers can
easily be linked to the organisation - and vice versa. 
            
           In the following section the possibilities of the systems are de-
           scribed more thoroughly. But still, within the framework of each
system, the structure and contents of the input and output can be
adjusted to the current and future needs of the organisation. 
            
            
T_       6.1      R_C_ _F_i_n_a_n_c_i_a_l_ _C_o_n_t_r_o_l_ _S_y_s_t_e_m_ 
            
           RC Financial Control System contains modules for fast and reli-
           able performance of the following every day business transactions:
           order registration, invoicing, debtor and creditor accounting,
financial accounting and inventory control.   
 
           Only basic vouchers are used for updating the system and manual
preparation is cut down to merely stating account numbers. The
account plan of the company is kept in the finance module and
account plans for specific groups, balances and budget analyses
are printed periodically or on request. Each module can provide a
number of statistics, surveys and analyses, which makes the RC
Financial Control System a valuable tool for financial manage-
ment. The debtor module for instance can work out customer ana-
lysis and sales statistics for various combinations of products
and customer groups. 
            
            
T_       6.2      R_C_ _P_a_y_r_o_l_l_ _S_y_s_t_e_m_ 
            
           RC Payroll System is the solution to problems such as: payroll
           computations, control of contract and bonus systems, statement
of indirect payroll expenses, reports for taxation authorities,
absentee statistics, holiday allowances and annual status. 
            
           The system comprises the following modules: registration, com-
           putation, administration, and write out. This structure opens
           the possibility of making a number of registration runs with
           associated control output ahead of the final computation and
           administration run. \f

T_      6.3       R_C_ _P_r_o_d_u_c_t_i_o_n_ _a_n_d_ _I_n_v_e_n_t_o_r_y_ _C_o_n_t_r_o_l_ 
            
           RC Production and Inventory Control System is a fast and effici-
ent approach to the management of problems such as: product pur-
chase scheduling, optimizing of stock, analysis of production
loading, and product cost estimates and control. 
            
           In a product network module the products and their composition
                  are recorded. That is, a logical description of how all raw ma-
           terials and subassemblies are composed into the final products.
           In an inventory module all movements in the stock are recorded. A
price calculation module offers fast and precise calculation of
profitability for the products and finally the order module keeps
track of the various kinds of orders flowing to and from the com-
pany. 
            
                  All these modules can produce a variety of lists, surveys, ana-
           lyses and statistics on demand. The structure and contents of
           these output possibilities can be altered when the application
           demands it. 
            
            
T_      6.4       R_C_ _S_Y_S_T_E_M_ _8_0_ 
            
           Each of the three systems mentioned above works with its own da-
           ta base and each system provides facilities for financial ac-
&_           counting. This means that if the same company runs two or all
           three of these systems a certain amount of redundant information
           is stored in the separate databases. Consequently, some events
           will require updating in more than one data base. 
            
           RC System 80 integrates all three systems into one system with a
           single advanced data base to which all subsystems refer. 
            
           RC System 80 is structured as a skeleton system of great flexi-
           bility. The system is composed of basic modules and function mo-
           dules. The basic modules which are used for input, register file
           updating, and output are common to all subsystems. Each applica-
           tion subsystem is built from function modules, which too can be
           common to several subsystems. For instance, the financial accoun-
           ting module will be utilized in the payroll system as well as in
the debtor accounting system. The data base to which all subsys-
tems refer is essentially independent of the applications. Which
makes it simple to expand the system with new subsystems and\f

           function modules as required. Adjustments can be performed using
a subset of the ALGOL programming language. 
            
            
T_       6.5      R_C_ _N_E_T_ 
            
           The introduction of large central computers made it possible to
           perform data processing tasks for several independent users si-
multaneously. For remotely placed users  terminal communication
facilities were developed.  A number of different communication
protocols were the result but they all had in common that the
central computer alone was monitoring the system. This hierarchi-
cal sturcture has several drawbacks: 
            
                  The central computer is heavily loaded by the numerous communi-
           cation methods, the transmission lines are poorly utilized, and
the users may need several types of terminals for different cen-
tral computers. 
            
           The way to solve these problems and at the same time gain a num-
           ber of advantageous facilities for the current systems with built
           in security for future extensions is to adopt the RC NET data net-
           work system. 
            
            
            
T_                                       HOST 
            C 
                     HOST 
                      A 
                 
                             Node 
                              1 
            
                     HOST 
                      B 
            
            
&_ 
 
Within the RC NET network concept an installation with data pro-
cessing capacity is termed a "host". Associated to each host is a
"node" and the nodes are interconnected by communication lines to
form a network. \f

         RC NET is a packet switching network system by which the host
           computers can communicate. A message from one host to another is
           split up into a number of data packets, which are transmitted by
           the network. A main function of the nodes is to keep track of the
hosts currently connected and their location in the network. The
data packets are forwarded from node to node until the node con-
nected to the recieving host is reached. 
 
The X 25 level 2 HDLC (High Level Data Link Control) protocol is
used on the communication lines which connects the nodes, but
other protocols can be adopted for certain lines if it is con-
venient. 
                  
                  A host in RC NET could for instance be an RC 8000 System, an IBM
           system or an RC 3600 Terminal Concentrator. In the RC 8000 Sys-
tem the general device controller is inherently implemented as a
node by means of the Network Control Program (NCP). This program
resides partly in the internal store of the RC 8000 and partly in
the device controller. When an IBM computer system or a terminal
system is connected to RC NET the RC 3600 Minicomputer is used as
the network interface.\f

  7T_Y_P_I_C_A_L_ _R_C_ _8_0_0_0_ _A_P_P_L_I_C_A_T_I_O_N_S_ 
            
 
           Up to this point the basic structure and comprehensive possibili-
ties associated with the RC 8000 Computer System have been accoun-
ted for. In order to get back to what it>s really all about, -
getting things done quickly and reliably, - this paper is con-
cluded with a description of a couple of typical user systems of
varying size, purpose and capacity that are implemented by RC
8000 Systems. That will hopefully add a little substance to the
maybe rather vague exposition in some of the preceding chapters. 
            
                Although they are typical, the three examples below only show a
           fraction of the possible applications for the RC 8000 System *).
RC 8000 has for instance also been succesfully used for on-line
production control, technical computations and front-end systems
for large computer centers. 
            
            
       7.1      S_m_a_l_l_ _F_i_n_a_n_c_i_a_l_ _a_n_d_ _P_r_o_d_u_c_t_i_o_n_ _C_o_n_t_r_o_l_ _S_y_s_t_e_m_ 
                   
           A medium size manufacturing company is expanding rapidly and con-
           sequently the company is faced with growing administrative pro-
           blems. Their sales are rather season dependent which calls for
careful sales and production planning. 
            
           An RC 8000 System is gradually taking over financial control,
           budgeting, payroll administration as well as production andin-
ventory control. The application software - entirely delivered by
RC - is based on the standard systems mentioned in chapter 6. 
                 
                  A vital part of the financial system is the order control. 150-
           200 telephonic orders a day are entered via terminals. Time of
delivery is determined on basis of an end-product stock system
with 4 different types of stock. The factory stock operates with
a time horizon of 13 weeks regarding production plans, reserva-
tion and actual stock. Acknowledgements and delivery notes are
printed automatically. The invoice system records the actual
deliveries and generates back orders if necessary - and the ap-
propriate accounts and stock lists are updated. 2300 costumers
are recorded in the debtor system. For each debtor an "open item"
accounting system  is used. The financial system has a three di-
mensional account registration operating with account number,
organisational unit, and project number as parameters. 
 
*) some of the products shown may at present have been substitu-
ted by new products, as product improvements are continously ac-
hieved.\f

           The budget system comprises rolling five quarter budgets andlong
           term annual budgets. The budgets are checked in the financial sy-
stem and are the basis for the sales control system. 
            
           The approx. 100 employees of the company are registered in theRC
Payroll System. Besides ordinary payroll computations the system
takes care of contract and bonus systems, reports for taxation
authorities, and computation of indirect payroll expenses. 
            
           The advanced order registration system implies a high degree of
           production control. This is obtained by means of the RC Produc-
           tion and Inventory Control System. All the raw materials and
subassemblies which are joined into the 300 different end-pro-
ducts are recorded here. The system is used for product purchase
scheduling, optimizing of stock, analysis of production loading
and product cost estimates and control. 
            
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Konfiguration 
 
 
 
 
 
 
 
 
 
 
 
All these functions are performed by the configuration shown
above. The system comprises an RC 8000/25 Central Processing\f

            Unit, 64 Kwords internal store, two RC 8223 33 Mbyte Disc Stora-
 ge Modules and an RC 8301 General Device Controller. Connected
 to the device controller are an RC 830 Operator Console, 4 RC
 822 Display Terminals and an RC 3641 300 lpm Line Printer. 
                   
            
T_       7.2      S_e_r_v_i_c_e_ _C_e_n_t_e_r_ _S_y_s_t_e_m_ 
            
           This next example shows an RC 8000 System where several users
&_           can operate independently. It could be a large company with many
           divisions or as in this case, a service center which sells data
processing services to a number of independent companies. 
            
           The service offered is a subset of the financial control system
           namely on-line invoicing debtor, creditor, order and stock con-
           trol. Input to the system is entered from terminals placed at
           the users. Invoices are then generated immediately with automa-
tic stock updating, credit limit control etc. Invoicing as well
as inquiries on stock, debtors, order reservations etc., is per-
formed in real time during the day, whereas the daily invoice
journals and other surveys are processed in the batch mode du-
ring the evening. 
                   
The size and complexity of the terminal systems depends on the
customers> needs. The most simple configuration is a single VDU
terminal, such as an RC 822, which is used for input to the sys-
tem. Paper output is gathered at the service center and forward-
ed by mail. 
            
           The next step is to have an RC 822 VDU Terminal and an RC 866
Matrix Printer on a single modem. For a higher throughput rate
the two units can be connected to a modem each. Output can then
be received continously, independent of the input activities,
which is of course not possible with terminal and printer on the
same line. 
            
           One customer has two VDU terminals and a printer. One terminal
           is located at the order-booking office, the other terminal and
the printer is placed in the stock building. Invoices are gene-
rated from both terminals and written out by the printer. 
 
These simple terminal systems are connected to the service cent-
re by modems; the transmission speed is usually 300 bps for the
terminals and 1200 bps for the printers. The figure on the next
page shows the range of terminal configurations mentioned in the
text.  \f

            
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Terminal konfiguration 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Some customers need several terminals and printers to cope with
their sales activities. One of these customers has two RC 822VDU
Terminals and an RC 3637 180 cps Printer connected to an RC 800/2
Terminal Concentrator. Another customer has an RC 800/3 Concen-
trator with 4 VDU terminals and one printer. Both systems are
linked to the service center by 2400 bps lines. 
            
           One very large customer needs 10 terminals and 4 printers. These
           units are connected to an RC 800/22 Concentrator which is linked
to the service center by a 9600 bps line. 
 
Last but not least an RC 3600 Minicomputer which acts as a node
in an RC NET is used as concentrator for 5 different customers
each having one VDU terminal and one printer. \f

T_          A total of 24 customers having 41 VDU terminals and 25 printers
are connected to this RC 8000 system. The total system comprises
an RC Central Processor model 45, 128 Kwords of internal store,
an RC Disc Storage Controller with 4 RC 8224 66 Mbytes Disc Sto-
rage Modules and 2 RC 8301 Device Controllers. 
            
            
            
            
            
            
            
            
            
            
            
            
                              TEGNING11. 
            
            
            
            
&_            
 
 
            
            
                   
            
            
 
 
 
One device controller is used for 16 asynchronous transmission
lines and the peripherals at the service center. These are an RC
830 Operator Console, 2 RC 3616 Magnetic Tape Units for logging
purposes and an RC 3642 600 lpm Line Printer used for customer
output. 
            
                  The second RC 8301 Device Controller has an RC 830 Operator Con-
           sole and handles 8 asynchronous and 4 synchronous transmission
           lines. This second unit is a node in the RC NET network, which
           enables the customers to utilize other service systems which are
           running on other computer systems at the service center. \f

T_       7.3      T_e_l_e_p_h_o_n_e_ _C_o_m_p_a_n_y_ _D_i_r_e_c_t_o_r_y_ _I_n_q_u_i_r_y_ _S_y_s_t_e_m_ 
                   
           This last example shows how an RC 8000 System for a special pur-
           pose can be integreted in a larger data processing framework. By
means of the autonomous network - RC NET - several mainframe com-
puters may be connected in such a way that individual tasks can
be solved with a minimum of interaction with other systems and a
maximum of safety. 
            
           A telephone company, now covering 700,000 subscribers, introduc-
           ed data processing in 1967 by purchasing two RC-GIER Computers.
They took care of processing accounts for subscribers, pay rolls
for employees etc., in batch mode. Around 1970 planning began for
an extended computing center which could handle all the company>s
administrative data processing partly on-line and partly in batch
mode. From one of the major mainframe manufacturers a large sys-
tem was ordered. This system was expected to have enough capacity
to handle a Directory Inquiry - DQ-System, too.  
            
For the on-line administrative system, clusters of VDU terminals
and serial printers were required in each of the 4 administrativ
regions. These were to be connected to the central site by a high
speed star-form network which also should handle the DQ systems
and other future systems. 
            
           The network and terminal system was considered as a selfcontain-
           ed system, logically separated from the main frame systems. The
           RC NET network system was chosen for this part of the project. 
            
             The Directory Inquiery System was developed in parallel with the
           administrative system. In 1974 the results from a pilot project
            were evaluated. 12-13% of the inquiries were answered erroneously
           or were not answered at all and the average response time was a-
           round 7 sec. 
 
                  It was realized that a full implemention of the DQ system, if pos-
           sible at all, would require the entire mainframe capacity. This
           mainframe, which also was intended to handle the administrative
system, was simply not suited for an inquiry system. 
            
           The reaction from the telephone company was to draw up specifica-
tions for a separate DQ system and they invited tenders from a
large number of suppliers. The best benchmark test results were
producedby RC and a contract with RC was signed. In 1977 the\f

           tem was running with two RC 8000 Computers which cost one fifht
of the mainframe originally purchased.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Konfiguration  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
                One of the traditional requirements of telephone companies is an
           extremely high degree of reliability and although RC 8000 is a
           very reliable computer, a twin system was made to secure a sys-
                  tem availability of 99%. Under normal circumstances one RC 8000
             runs the DQ system while the other is updating the data bases.
           In case of a failure in the unit which runs the DQ system, the
           updating unit is cleared and the DQ system restarted on that unit
           within 5 min. \f

                  Each RC 8000 has three 66 Mbytes disc storage modules. One modu-
le is used for the software system and logging purposes, another
is used for a complete subscriber database, and the third is used
for a number of inverted databases where subscribers are arranged
in accordance with the search parameters such as name, occupa-
tion, etc.  
            
The main subscribers database contains very detailed information
on the 700,000 subscribers. It contains not only telephone num-
bers but also information like opening times, private addresses,
mail addresses etc. The database is therefore well suited for
computerized input to telephone book type-setting. 
            
           The two RC 8000 Systems have two device controllers; one is dedi-
cated to the network and acts as a node which routes data within
the network as well as between the two RC 8000 Systems. The other
device controller is used for peripheral facilities such as mag-
netic tape, printer, paper tape reader/punch and a console. The
total system, in fact, contains a third RC 8000 in parallel with
the two others; the third unit is used for program development,
computations, etc. 
 
                  The RC 8000 DQ System can seek information from any combination
of first name, family name, occupation and exact or approximate
address of the 700,000 subscribers. Various ways of spelling are
also considered when the sample of subscribers fitting the given
characteristics is found and presented to the terminal operators.
The system has a busy-hour capacity of 12,000 inquiries per hour;
the average response time is 0.7 sec. with only 2% exceeding 3
sec. and max. response time is 4.5 sec. 
            
           The network is built of RC 3600 Minicomputers acting as terminal
           concentrators, network nodes and mainframe interfaces. At the
           central site the nodes are connected directly by I/O channels
           capable of transmitting at a rate of 5 Mbps. The four remote ad-
ministrative centers are connected to the central site by means
of a star-shaped network consisting of 5 48 Kbps transmission
lines all driven by a single RC 3600. 
            
           Århus is the largest urban area and consequently two 48 Kbps
                  lines are used for this office. The interconnection between the
           two 3600s is made to secure system availability; if one of the
           transmission lines is down, all the traffic can be routed to the
           other line. The Åbenrå office, in fact, belongs to another com-
           pany, but to some extent the two companies have common admini-
stration. The Åbenrå office is therefore connected by a 48 Kbps\f

T_                 
            
            
            
            
            
            
            
            
            
            
            
            
                                        TEGNING 13. 
            
            
            
            
                   
            
            
            
            
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
& \f

           line to the Kolding office which then acts as a node in the net-
           work and routes the data towards the central site. 
            

            
            
             CEMTRAL SITE 
            
Conversion              Order Administration        Development 
T_           Department                                          & technical 
                                                                 service 
            
             7 DQ                    3 DQ      33 Adm.           23 Prog.  
            
            
            
            
            
            
                   
           NETWORK 
            
            
            
               ÅrhusÅbenrå 
            
               27 DQ        Ålborg                   Kolding9 Adm.
                                        Holstebro 

               2 Adm16 DQ                    17 DQ 
                 10 DQ 
                   
              10 Prog.14 Adm.                  12 Adm. 
                               10 Adm. 




           The two computer systems, the DQ and the administrative system,
are served via the network from a total of nearly 200 terminals.
DQ and Adm. terminals are VDU terminals with custom made key-
boards for these two applications. 160 of these dedicated termi-
nals, supplied by RC, are distributed over the 5 district offices
and the central site. 7 DQ terminals at the central site aretem-\f

           porarily used for conversion from the former manual systems to
the new terminal systems. The rest of the terminals named "Prog."
are ordinary VDU terminals used for other applications under the
time sharing system on the administrative system computer and the
third RC 8000. These other applications include program develop-
ment and maintenance, technical computations, budget simulation
etc. 
 
 
Application reports are issued regularly by the RC company. These
reports provide interesting and useful information of users appli-
cations and equipment. To obtain reports on topics that may be of
particular interest to you just ask your RC contact person.  
 \f

T_user input 
                  A_C_T_I_O_N_           Terminal "system output"C_O_M_M_E_N_T_S_ 
 
           BOSS acknowledges 
   LOGINlogin by returning
           PROCEDUREdate and time. We
                              are now connected 
            
           ALGOL source text. 
           COMPOSAL                                   Each line is pre- 
           OF JOB ceeded by an identi-
                      C_O_M_P_O_S_E_R_T_E_X_T_ Afication number.
            
           A missing line is 
           EDITING                                     inserted according  
                                                      to identification 
                                                      number. 
                ENROLLMENT OF                               BOSS returns estima-
                JOB                                         ted finishing time. 
            
           JOB        Output from ALGOL
              OUTPUTcompiler. 
                                                       Output from Object  
                                                       program 
                 
           END OF JOB                                  BOSS returns run
                                                            time and finishing 
                                                       time. 
&_ \f

T_           Input by user 
           A_C_T_I_O_N_       TERMINAL "Output" by system     C_O_M_M_E_N_T_S_ 
                   
           LOGIN PROCEDURE                             Read and written 
                                                       by BOSS 
          
                CALL OF ALGOLRead by File Proces-
                  COMPILER                                    sor 
            
           ALGOL SOURCE                                Read by ALGOL 
           PROGRAM                                     compiler 
            
                  CALL OF OBJECT      C_O_M_P_O_S_E_R_T_E_X_T_ B          Read by File Proces-
           PROGRAM                                     sor 
            
           INPUT DATA                                  Read by Object
                                                       program 
            
           END JOB                                     Read by File Proces-
                                                       sor 
                  START EXECUTION 
            
           ESTIMATED 
                FINISHING TIME 
            
                  OUTPUT FROM    Read and 
           ALGOL COMPILER                             written 
           by BOSS 
           OUTPUT FROM
           OBJECT PROGRAM 
            
           JOB TERMINATED 
&_





T_

&_\f

                    
           \f

«eof»