DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 10150 (0x27a6) Types: TextFile Names: »INFO.T«
└─⟦b8af24a88⟧ Bits:30005796 CR80 Disc Pack ( MINICAMPS ) └─ ⟦this⟧ »GENS.D!SYSGEN.D!FMS.D!INFO.T«
*********************************************************************** INFORMATION ABOUT THE SUBMITTAL TO SSD/SCL OF: CSS/920 NAME: FMS (Link Directory) VS 0402 DATE: 820331 RESPONSIBLE PROGRAMMER : GMC & MAC. PROGRAM SOURCE LANGUAGE : SWELL. PREFIXES INCLUDED : @**GENS.D*SWELLPREFIX.D*GENERALPARAMS.S @**GENS.D*SWELLPREFIX.D*MONITORNAMES.S @**GENS.D*SWELLPREFIX.D*COMONPARAMS.S @**GENS.D*SWELLPREFIX.D*DRIVERPARAMS.S @**GENS.D*SWELLPREFIX.D*DISKDRVPARAMS.S @**GENS.D*SWELLPREFIX.D*TESTPARAMS.S @**GENS.D*SWELLPREFIX.D*FMSPARAMS.S @**GENS.D*SWELLPREFIX.D*VOL_STRUCTURES.S DATABASE(S) INCLUDED : None. SPECIAL REQUIREMENTS : The FMS makes use of the Coroutine Monitor. BINDINGS TO OTHER MODULES: The CR File System is a single program, made up of several submodules. A copy of the link modules of each of these submodules is kept in this directory. The link modules from the various submodules are bound together to form an object program by using the AMOS linker. This may be done by using one of the command files SINGLE.D*LINK.J, BIG_SINGLE.D*LINK.J, DUAL.D*LINK.J, SSD.D*LINK.J, or DORA.D. The main difference between these command files is the configuration parameters that they cause to be used under the compilation of the main module (INIT) and the versions of the other submodules used in the linking. A fuller description of how to perform the linking is given below, under OTHER INFORMATION. The FMS also communicates with disk drivers and possibly DMA drivers. The former places some restraints on the position, within main memory, to which the FMS may be loaded. For, the disk drivers and the FMS processes must lie in the same memory section. Further, the FMS's Disk Cache (which takes up most of the FMS process space) must lie in that part of memory accessible to the Disk Interface. BELOW IS GIVEN A COMPLETE FILE LIST OF THIS DIRECTORY WITH EXPLANATIONS OF THE CONTENTS OF EACH FILE. NAME AND SUFFIX CONTENTS --------------- ------------------------------------------------------ INFO.T This file. CTRL.L Command Controller link submodule, with minimum facilities. CTRL_CR801.L Command Controller link submodule, for file, TQM and CRAM handlers. CTRL_WITH_DMA.L Command Controller link submodule, which can communicate with remote users. FM.L File Manager link submodule, with minimum facilities. FM_WITH_DD.L File Manager link submodule, with dual disk facilities. DCM.L Disk Cache Manager link submodule, with minimum facilities. DCM_WITH_DD.L Disk Cache Manager link submodule, with dual disk facilities, which reports dual disk errors via completion codes. DCM_WITH_DD_OC.L Disk Cache Manager link submodule, with dual disk facilities, which reports dual disk errors via the OC. DCM_CR801.L Disk Cache Manager link submodule, with functions necessary for CR801 included. EXCEPTIONS.L Exception Handler link submodule. IO.I Source file, containing import declarations, for the Initialisation submodule. MY_SYSTEM.D A model system directory, as described below. SINGLE.D Directory containing job, source, object and print files for a standard single-processor version of the FMS. BIG_SINGLE.D Directory containing job, source, object and print files for a single-processor (with 32K disk RAM) version of the FMS. SSD.D Directory containing job, source object and print files for the SSD system FMS. DORA.D Directory containing job, source, object and print files for the DORA (quadruple-processor) version of the FMS. FIKS.D Directory containing job, source, object and print files for a dual processor version of the FMS, with 190 CAPS, as opposed to the standard of 90. DUAL.D Directory containing job, source, object and print files for a standard dual-processor version of the FMS. TO GENERATE THE PROGRAM USE : @*CRP0004*AMOS.D*FMS.D*V0103.D*LINK_ALL.J THIS VERSION CLOSES C P E C O NO: XXX DOCUMENT NO: CSS/920/SPS/0001 OTHER INFORMATION: There follows a detailed explanation of how to link the FMS, and some information relevant to system generation. There should be a subdirectory within this directory containing all the configuration dependant files. This directory can have any name, in practice, but during this explantion we will assume it is called MY_SYSTEM.D. The AMOS Command Interpreter and various utility programs are used to make the File System. These are described in greater detail in the following documents : (1) CR80 AMOS, Command Interpreter, User's Manual, CSS/381/USM/37 (2) CR80 AMOS, Directory Utility Package, User's Manual, CSS/932/USM/0036 (3) CR80 AMOS, Utility, Editor, User's Manual, CSS/102/USM/0021 (4) CR80 AMOS, SWELL Compiler, User's Manual, CSS/415/USM/0047 (5) CR80 AMOS, Linker, User's Manual, CSS/416/USM/0048 (6) CR80 AMOS, System Generator, User's Manual, CSS/121/USM/0023 To construct the FMS, for a particular hardware/software configuration, requires 5 steps. 1. Editing of the file MY_SYSTEM.D*INIT.S. This is a SWELL source file, which is the primary source file for the INIT submodule of the FMS. It should be a copy of the standard primary source file for the Initialisation submodule of the FMS, except for the names of some of the source files that are included. The names of the standard prefix files should be changed, if they do not lie in the directory @**GENS.D*SWELLPREFIX.D. The line %SOURCE CONFIG.S should be changed to %SOURCE MY_SYSTEM.D*CONFIG.S 2. Editing of the file MY_SYSTEM.D*LINK_CMDS.T, which will be used in step (5). The editing is necessary to define : which versions of the various submodules are to be used, the size of the workarea, the version number and the number of messages. This file should be as follows : PROGNAME: FMS PROCNAME: FILSYS VERSION: <version number> L: 1 MAIN: MY_SYSTEM.D*INIT.L SUB: <file id of the required version of the Disk Cache Manager> SUB: <file id of the required version of the Command Controller> SUB: <file id of the required version of the File Manager> [SUB: <file id of the required version of the CRAM>] [SUB: <file id of the required version of the TQM>] SUB: EXCEPTIONS.L O: MY_SYSTEM.D*FMS.C P: MY_SYSTEM.D*FMS.P WORKAREA: <a number, equal to the process space available to the FMS (as defined in the last paragraph of this document) minus the combined size of the permanent variables, temporary variables, constants and IO area of the FMS (all of which are best found by performing a trial linking, using any value for the workarea)> MESSAGES: 2 + <nbr of remote ports> + 2*<nbr of dcbs> UTILITY: NO FDS: 1 IOCBS: 2 STREAMS: 1 TLES: 6 3. Editing of the file MY_SYSTEM.D*CONFIG.S. This is a SWELL source file used in the compilation of the FMS Initialisation submodule. It defines a number of constants, which fall into three categories : those which define the external environment (eg. number of DMAs), those which define the internal coroutine structure (eg. number of file handlers) and those which define the size or number of particular internal FMS data structures (eg. number of FCBs). The meaning of each constant is given within the file, in the form of comments. This editing may be done by means of the editor, described in ref (3). 4. Compiling of the Initialisation submodule, with the configuration defined in MY_SYSTEM.D*CONFIG.S. This may be done by means of the SWELL compiler, described in ref (4). 5. Linkimg of the FMS, using the AMOS linker, described in ref (5), and the link commands in the file MY_SYSTEM.D*LINK_CMDS.T. These 5 steps will result in the FMS object program being in the file MY_SYSTEM.D*FMS.C and the listing from the linking (which may be needed for maintenance or debugging purposes) being in the file MY_SYSTEM.D*FMS.P. The job file MY_SYSTEM.D*LINK.J may be used to perform steps 4 and 5. It should be invoked from this directory. This file is as follows : SWELL I:MY_SYSTEM.D*INIT.S O:DUAL.D*INIT.L P:DUAL.D*INIT.P L:1 LINK COM:MY_SYSTEM.D*LINK_CMDS.T If step 4 has been performed previously, and there are no changes to the configuration parameters, then only step 5 need be performed. This can be done by submitting the following command to the CMI, ref (1), : LINK COM:MY_SYSTEM.D*LINK_CMDS.T Having linked the FMS, it will then normally be combined with other components to form a 'system', by use of the CR80 System Generation program, described in ref (6). But as explained, under the heading 'BINDINGS TO OTHER MODULES', there are constraints on where the FMS may lie, within physical main memory, and there are also constraints upon its size. Assuming that the standard AMOS Root process is being used in the system, and that the disk buffers lie in the lowest addresses of the highest memory section, then the CDC disk drivers should be the first processes after root, then should come the FMS and then the floppy disk drivers. Further, the process size of the FMS should be such that the disk drivers and FMS lie in the same section, and such that the disk cache part of the FMS lies within the memory space accessible to the Disk Interface : if this is not so, then the disk error 'subbus overrun', completion code #44A, will occur. For performance reasons, it is best if the disk cache is as large as possible, and hence the FMS process as large as possible, within these constraints. END OF INFO.T «a5»