|
|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 39168 (0x9900)
Types: TextFile
Names: »incsaveinp«
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
└─⟦b2ec5d50f⟧
└─⟦2cfec6318⟧ »incsys«
└─⟦this⟧
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt.
└─⟦0364f57e3⟧
└─⟦70d387dbb⟧ »incsys«
└─⟦this⟧
(
mode list.yes
incsaveman=compose
global incsaveman
mode list.no
)
*se$* $pl 297,21,240,13,4$
$pn 0,0$$lw 170$ $ld 12$
$sb @,6$
$ps0$
$nl$
H.C.Ørsted Institute
$nl$
Computer Department
$nl$
Universitets parken 5
$nl$
DK-2100 København Ø
$nl$$nl17$
$ct$
RC8000
Incrementalsavesystem
"incsaveman"
$nl$
$nl$
Viggo Kørst
$nl$
$nl10$
$qr$
$nl$
november 1980
$nl$
80-6
$nl$
revised januar 1981
$pn 5,1$
$ps0$
$rj$$nl$
1. CONTENTS
$nl$
-----------
$nl$$nl$
1. Contents....................................... 2
$nl$
$nl$
2. General description............................ 3
$nl$$nl$
3. Description of MTPOOL.......................... 5
$nl$$nl$
4. Description of SAVECAT......................... 6
$nl$$nl$
5. Program descriptions
$nl$$nl$
@@@
Incload....................................... 7
$nl$@@@
Incsave....................................... 8
$nl$@@@
Initsavecat................................... 11
$nl$@@@
Initmtpool.................................... 12
$nl$@@@
Inittempcat................................... 13
$nl$
@@@
Listmtpool.................................... 14
$nl$@@@
Looksave...................................... 15
$nl$@@@
Updmtpool..................................... 17
$nl$
$nl$$nl$
Appendix 1 : Example of output from incsave
$nl$$nl$
Appendix 2 : Example of output from listmtpool
$nl$$nl$
Appendix 3 : Example of output from looksave
$rh 1, GENERAL DESCRIPTION$
$ps0$
2. GENERAL DESCRIPTION
$nl$
-----------------------
$nl$$np$
This manual contains a description of an incrementalsavesystem
and a description of the programs in the system.
The purpose of the system is to create as large as possible security
for catalog entries and bs-files, so that they can be reestablished after a usererror
or systemerror. The main program of the system is incsave.
To explain how the system works and is used, it is easiest to give an
example of the use.
$nl$$np$
The example is taken from
the H. C. Ørsted Institute, where it was developed.
$nl$$nl$
Example:
$nl$
-------
$nl$$np$
When the system is started there are three catalogs which must be
initialised. These are initialised and created by the following three
FP-commands:
$nl$$nl$
inittempcat
$nl$
$nl$
initmtpool total.10 all.24
$nl$
$nl$
initsavecat hashentries.217 bittsize.1
$nl$
$nl$$np$
The first call initialises the catalog TEMPCAT. This is a catalog containing
all entries and bs-files
which are on the last used savetape. If the last used savetape was a totalsave
the TEMPCAT contains only -1 in all words.
$nl$$np$
The catalog contains a record for each entry and this record has exactly
the same format as a record in a usual catalog like MAINCAT(catalog).
$nl$$np$
The second call initialises the MTPOOL. MTPOOL contains a record for each
tape used by the system. (After the example there is a exact description
of the content of each record.)
The MTPOOL is by the specified call
created and initialised with 10 tapes for totalsave and 14 tapes for
dailysave.
$nl$$np$
The third call initialises and creates a hashcatalog named SAVECAT. In
the catalog
there is a description for each catalog entry and bs-file which is saved
by the system. In SAVECAT a record describing an entry contains a bittable.
An exact description of the SAVECAT is given below.
$nl$$nl$$np$
When these three files have been initialised, the system is ready for use. One way
of using it is to make a normal dailysave every day and
a total save every forthnight. This can be done by the following FP-commands:
$nl$
$nl$@@@@@@A usual dailysave : lp= incsave
$nl$$nl$
@@@@@@A total save : lp=incsave total.yes
$nl$$np$
To make a daily save it is normally necessary to mount 2 magnetic
tapes. ▶0f◀One is used for the dailysave and the other is used to tranfer
catalog entries and bs-files from the previous tape.
Hereby it is only necessary to mount two tapes,
when for example a whole disc is to be restored.
$nl$$np$
The files transfered from the previous savetape to the new savetape,
are the files which do not exist on disc or drum.
By this stategy a file saved by the system
will be saved every time a save is made until a totalsave. When a totalsave
is made all files will be on that tape and it is not necessary
to transfer files to the next dailysavetape.
$nl$$np$
If a user wants to find the tapes containing his files the program
looksave can be used. If a systemerror happens and a disc or drum
has to be restored the operator can find the tapes to use by calling the
program listmtpool.
$nl$$np$
The program incload is included in the system due to the following problem:
If the system is used on an installation with only one magnetic tape
station, it is not possible to transfer files from another tape.
Instead the operator can load the previous savetape with the FP-command: incload
std.yes.
Hereby files which are not on disc or drum will be
loaded. Existing files will not be changed.
$nl$$nl$$nl$
$rh 1,DESCRIPTION OF MTPOOL $
$ps0$
3. DESCRIPTION OF MTPOOL.
$nl$
-------------------------
$nl$$np$
The MTPOOL has for each tape used by the incrementalsavesystem
a record with the following format:
$nl$$nl$
@@@@@@@@@@wordno@@@@@@@@@@@@@@@@@@@@@content@@@@@@@@@@@@@@@@@
$nl$
@@@@@@@@@------------------------------------------------------
$nl$$nl$
@@@@@@@@@@@@1@@@@@@@@@@@@@@@@@@@@@@@@@tapeno
$nl$
@@@@@@@@@@@@2@@@@@@@@@@@@@@@@@@@@@@@@
$nl$
@@@@@@@@@@@@3@@@@@@@@@@@@@@@@@@@@@@@@ tapename
$nl$
@@@@@@@@@@@@4@@@@@@@@@@@@@@@@@@@@@@@@
$nl$
@@@@@@@@@@@@5@@@@@@@@@@@@@@@@@@@@@@@@
$nl$
@@@@@@@@@@@@6@@@@@@@@@@@@@@@@@@@@@@@@ date of last use
$nl$
@@@@@@@@@@@@7@@@@@@@@@@@@@@@@@@@@@@@@ daily/total (last used)
$nl$$np$
The first word in the MTPOOL contains the number of records in the MTPOOL.
$nl$$nl$$nl$
$rh 1,DESCRIPTION OF SAVECAT$
$ps0$
4. DESCRIPTION OF SAVECAT
$nl$
-------------------------
$nl$
$np$
This catalog is a hashcatalog, where one segment is a hashentry. The catalog
entries and bs-files are inserted in this hashcatalog when they are saved on
a tape.
$nl$$np$
An entry in the hashcatalog has the following format:
$nl$$nl$
@@@@@@@@@@@@wordno@@@@@@@@@@@@@@@@@@@@@content
$nl$
@@@@@@@@@@@---------------------------------------
$nl$$nl$
@@@@@@@@@@@@@@1@@@@@@@@@@@@@@@@@@@@@@@@hashkey
$nl$
@@@@@@@@@@@@@@2@@@@@@@@@@@@@@@@@@@@@@@@entryname
$nl$
@@@@@@@@@@@@@@3@@@@@@@@@@@
$nl$
@@@@@@@@@@@@@@4
$nl$
@@@@@@@@@@@@@@5
$nl$
@@@@@@@@@@@@@@6@@@@@@@@@@@@@@@@@@@@@@@@lowerbase
$nl$
@@@@@@@@@@@@@@7@@@@@@@@@@@@@@@@@@@@@@@@upperbase
$nl$
@@@@@@@@@@@@@@8@@@@@@@@@@@@@@@@@@@@@@@@permkey,area or entry
$nl$
@@@@@@@@@@@@@@9@@@@@@@@@@@@@@@@@@@@@@@@bittable
$nl$$nl$$np$
The size of the bittable must correspond to the number of tapes in
MTPOOL. The bittable is used in the following way: If bitnumber 1 is 1
this will indicate that the entry is on tape mtsa0002.
$nl$$np$
The first word of each hashentry contains information about the number of entries
on this segment.
$nl$$np$
$rh 1,INCLOAD $
$ps0$
5. PROGRAM DESCRIPTION
$nl$
-----------------------
$nl$$nl$
INCLOAD
$nl$
-------
$nl$$np$
The program input catalog entries and bs-files from magnetic tape
files generated by the program INCSAVE or SAVE.
The program is completely identical with the utility program LOAD
except for the following parameter:
$nl$$np$
std.(yes/no)
$nl$$nl$
Standard is std.yes
$nl$$nl$
In this case only files which does not exist on disc or drum
are loaded.
$nl$
$nl$
If std.no is specified all files and bs-entries are loaded. This is
all files specified in the call of load.
$nl$$nl$
For further description se RCSL No: 31-D494 LOAD
$nl$
$rh 1,INCSAVE $
$ps0$
$nl$
INCSAVE
$nl$
-------
$nl$$nl$
The program output catalog entries and bs-files to magnetic tape
files for later loading by the program INCLOAD.
$nl$$np$
The program will only save those catalog entries and bs-files which
have been changed, since
a date specified in the call of the program - or a date specified in one
of the systemfiles used by the system.
$nl$$nl$
Example:
$nl$
--------
$nl$$nl$
All existing catalog entries and bs-files are output on the oldest
magnetic tape used for total save in the MTPOOL by the FP-command:
$nl$
$nl$
@@@@@@@@@@
incsave total.yes
$nl$$np$
All catalog entries and bs-files which are changed since the last call of the system
or existing on the newest dailysavetape are output on the oldest magnetic tape, used for
dailysave with the FP-command:
$nl$
$nl$
@@@@@@@@@@
incsave
$nl$
$nl$
$nl$$nl$
Call:
$nl$
-----
$nl$$nl$
@@@@@@@@@@
( <outfile> = )
$nl$
@@@@@@@@@@@@@@@
incsave
@@
( <tapeparameter> )
@@@ ( <savespec> )
$nl$$nl$
@@@@@@@@@@@@@@@
<tapeparameter>::= tape.<tapename>
$nl$$nl$
@@@@@@@@@@@@@@@
<savespec>::= ( <sincespec> ) ( <stdspec> )
$nl$
@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@
( <totalspec> ) ( <listspec> )
$nl$
@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@
( <segmspec> )
@@@@@@@@@@@
$nl$
@@@@@@@@@@@@
<sincespec>::= since.(last/<date>)
$nl$$nl$
@@@@@@@@@@@@
<stdspec> ::= std.(yes/no)
$nl$$nl$
@@@@@@@@@@@@
<totalspec>::= total.(yes/no)
$nl$$nl$
@@@@@@@@@@@@
<listspec> ::= list.(yes/no)
$nl$$nl$
@@@@@@@@@@@@
<segmspec> ::= segm.<integer>
$nl$$nl$
@@@@@@@@@@@@
<date> ::= <year> <mounth> <day> <hour> <minut>
$nl$$nl$
@@@@@@@@@@@@
<year> ::= <integer>
$nl$$nl$
@@@@@@@@@@@@
<mounth> ::= <integer>
$nl$$nl$
@@@@@@@@@@@@
<day> ::= <integer>
$nl$$nl$
@@@@@@@@@@@@
<minut> ::= <integer>
$nl$$nl$$nl$
Function:
$nl$
---------
$nl$$np$
The parameters are checked.
$nl$
The program is normally used for system purpose and there are two main
different ways to call the program.
In the first way the program is used to output all catalog entries and
bs-files on magnetic tape files.( In the following called
totalsave)
$nl$$np$
The other way of calling the program is dailysave.
Here all catalog entries and bs-files which have been changed since a specified
date or since the last call of the system are output to magnetic tape files.
$nl$$np$
In both cases the program functions in the following way:
$nl$
All auxillary catalogs are searched through to find the entries and files
to be saved.
The entries in the auxillary catalog to be saved are inserted
in a catalog called TEMPCAT.
This catalog is sorted by the procedure mdsortproc
(RCSL No: 28-D4 (p1) )
in alfabetic order.
When this is done the program will find the magnetic tape to
be used for the save.
This is done if the tapename is not specified in the call in the MTPOOL.
This MTPOOL contains a description of each tape used by the system.
$nl$$np$
When the magnetic tape is found, all entries in TEMPCAT are output to
the first
file on that tape.
After this the entries in TEMPCAT are inserted in the hashcatalog SAVECAT.
SAVECAT is organised with a description of each catalog entry.
This description contain a bittable where a bit indicates whether the entry
is on the tape indicated by that bit or not.
If bitnumber one is 1 this indicates that the entry is one tape number
2.
$nl$$np$
When all entries that were output to the magnetic tape are inserted in the
SAVECAT, the bs-file MTPOOL is updated. MTPOOL contain a description of
the magnetic tapes used by the system. The information
updated, is the date when the save was done.
$nl$$np$
The last function of the program is to output the three bs-files MTPOOL, SAVECAT
and TEMPCAT on the tape.
$nl$$nl$$nl$
Function of the parameters:
$nl$
---------------------------
$nl$
since.(last/(<date>)
@@@
Standard since.last
$nl$
If <date> is specified only those catalog entries and bs-files which
were changed since that date are output on magnetic tape.
$nl$$nl$
std.(yes/no)
@@@ Standard std.yes
$nl$
This indicates that the files from the previous savetape are also
output on the magnetic tape used to day. ( This is only the case if
the previous savetape was a dailysavetape.)
$nl$
std.no indicates that only the catalog entries and bs-files changed
since the specified date are output on magnetic tape.
$nl$$nl$
list.(yes/no)@@@
Standard list.yes
$nl$
Specifies that all saved entries are listed.
$nl$$nl$
total.(yes/no)@@@
Standard is total.no.
$nl$
Specifies wether the save is a totalsave or a dailysave
$nl$$nl$
segm.<integer>@@@
Standard segm.8
$nl$
Specifies how many segments the blocks on the magnetic tape
contains.
$nl$$nl$$nl$
Error messages:
$nl$
---------------
$nl$
*** Wrong since specification
$nl$
*** Wrong total specification
$nl$
*** Wrong standard specification
$nl$
*** Wrong list specification
$nl$
*** Wrong date specification
$nl$
*** Wrong segm specification
$nl$
*** Mtpool does not exist
$nl$
*** Creation of temporary savecat not ok
$nl$
*** Dumpcat does not exist
$nl$
*** Creation of temporary mtpool not ok
$nl$
*** Tempcat does not exist
$nl$
*** Creation of temporary tempcat not ok
$nl$
*** The catalog can not be sorted result of mdsortproc = <integer>
$nl$
The result and explanation of mdsortproc is showed.
$nl$
After all these errors the save is stopped
$nl$
$rh 1, INITSAVECAT $
$ps0$
$nl$
INITSAVECAT
$nl$
-----------
$nl$$nl$The program is used to initialise the hashcatalog SAVECAT.
$nl$$nl$
Example:
$nl$
--------
$nl$
The SAVECAT is created with scope user, with a size of 217
hashentries and a bittable size of 1 word by the FP-command:
$nl$
@@@@@@@@@@@@@@@
initsavecat hashentries.217 bittsize.1
$nl$$nl$$nl$
Call:
$nl$
-----
$nl$
@@@
( <outfile> ) = initsavecat hashentrie.<integer> bittsize.<integer>
$nl$$nl$
Function:
$nl$
---------
$nl$$np$
If the SAVECAT does not exist it is created and initialised
in the following way:
$nl$
The first word of each segment of the catalog is set to 0 and all other
words of the catalog are set to -1.
$nl$$nl$$nl$
Function of parameters:
$nl$
-----------------------
$nl$
hashentries.<integer>@@@
Standard hashentries.217.
$nl$
Specifies the number of segments the catalog contain.
$nl$$nl$
bittsize.<integer>@@@
Standard bittsize.1
$nl$
Specifies the number of magnetic tapes used in the system.
That is if bittsize is 1 the the highest number of tape to use is 24.
If bittsize is not specified, it is first controlled whether the MTPOOL
exist and if it does then the bittable size is set according to that.
That means if the MTPOOL contains 48 magnetic tapes the bittable size is
set to 2 words.
$nl$
$nl$
$nl$
Error messages:
$nl$
---------------
$nl$
*** Param error
$nl$
$nl$
*** Dumpcat does allready exist.
$nl$
If SAVECAT exist nothing is done, because it could have serious
consequences if a catalog describing a system used in a year for
example was initialised. If you want to initialise SAVECAT it must
not exist.
$nl$
$nl$
*** Connect error =
$nl$
The output file does not exist or is reserved by another process. The result
of the fpprocedure connect output is showed.
$nl$
$nl$
*** Creation of savecat not ok.
$nl$
The catalog can not be created or it can not be permanented.
$rh 1,INITMTPOOL $
$ps0$
$nl$
INITMTPOOL
$nl$
----------
$nl$
The program initialises and creates the MTPOOL.
$nl$$nl$
Example:
$nl$
--------
$nl$
MTPOOL is created with 10 totalsavetapes and 14 dailysavetapes
by the FP-command:
$nl$
$nl$
initmtpool total.10 all.24
$nl$$nl$
Call:
$nl$
-----
$nl$
( <outfile> ) = initmtpool total.<integer> all.<integer>
$nl$
$nl$
Function:
$nl$
---------
$nl$
$np$
The program creates and initialises the MTPOOL with the specified number
of magnetic tapes. It is created so that the tape names and numbers
are inserted in the MTPOOL. The date indication is set to 0 which
indicates that the tapes is not used yet.
$nl$$nl$$nl$
Functions of parameters:
$nl$
------------------------
$nl$
total.<integer>@@@
Standard total.10.
$nl$
Specifies that the savesystem is going to be used with 10 totalsavetapes.
$nl$
all.<integer>@@@
Standard all.24
$nl$
Specifies how many tapes there are to be inserted in the MTPOOL at all.
NOTE: This number have to be greater than that specified by total.<integer>.
$nl$$nl$$nl$
Error messages:
$nl$
---------------
$nl$
*** Param error
$nl$
NOTE: This can happen if the integer specified by all.<integer>
is not greater
than the integer specified by total..
$nl$
*** Mtpool does exist.
$nl$
MTPOOL is only created if it does not exist, because it could have
to big concequence to remove an existing MTPOOL.
$nl$
*** Mtpool can not be created
$nl$
Creation af MTPOOL is not ok or it is not possible to permanent a created
MTPOOL.
$nl$
*** Connect error =
$nl$
The outfile does not exist or is reserved by an other process. The result of
the FP-procedure connect output is showed.
$rh 1,INITTEMPCAT $
$ps0$
INITTEMPCAT
$nl$
-----------
$nl$$np$
The program is used to create and initialise TEMPCAT.
$nl$
$nl$
Call:
$nl$
----
$nl$
inittempcat
$nl$$nl$$nl$
Function:
$nl$
---------
$nl$
The program creates TEMPCAT and insert -1 in every word of TEMPCAT.
$nl$
$nl$$nl$
Error mesages:
$nl$
--------------
$nl$
*** Tempcat does exist
$nl$
*** Creation of tempcat not ok
$nl$
Tempcat can not be created or permanented.
$rh 1,LISTMTPOOL$
$ps0$
LISTMTPOOL
$nl$
----------
$nl$
The program is used to list the MTPOOL.
$nl$$nl$
Call:
$nl$
-----
$nl$
( <outfile> ) = listmtpool
$nl$$nl$$nl$
Function:
$nl$
---------
$nl$
$np$
The information in the MTPOOL is listed. This information can be used
if some files are going to be loaded. It can also be used if it
is necessary to insert or remove a tape from the MTPOOL or if it is
necessarry to change some information there.
$nl$$nl$$nl$
Error message:
$nl$
--------------
$nl$
*** Mtpool does not exist
$nl$
*** Connect error =
$nl$
$rh 1,LOOKSAVE $
$ps0$
LOOKSAVE
$nl$
--------
$nl$$nl$
This program is used to lookup an entry in the catalog SAVECAT.
$nl$$nl$
Example:
$nl$
--------
$nl$
The entry vko is looked up in SAVECAT and the last dailysavetape and last totalsavetape
where the entry exist is printed
by the following FP-command:
$nl$
@@@@@@@@@@
looksave vko
$nl$
The entry vko is looked up in SAVECAT and all magnetictapes where it exist
are listed by the FP-command:
$nl$
@@@@@@@@@@
looksave all.yes vko
$nl$
$nl$
$nl$
Call:
$nl$
-----
$nl$
@@@@
( <outfile> ) = looksave <allspec> <scopespec> <basespec>
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
<entryspec>
$nl$
$nl$
@@@@
<allspec>::= ( all.(yes/no) )
$nl$
@@@@
<scopespec>::= ( scope. (login/user/project/own) )
$nl$
@@@@
<basespec>::= ( base.<integer>.<integer> )
$nl$
@@@@
<entryspec>::= ( <entryname> )
$nl$$nl$$nl$
Function:
$nl$
---------
$nl$$np$
After a check of existense of MTPOOL and SAVECAT the program finds the
entry in SAVECAT and interpretes the bits in the bittable belonging to
the entry in SAVECAT.
$nl$
The program will output
$nl$
*** entry <entryname> does not exist in savecat
$nl$
if the file does not exist in SAVECAT or the entry
base are such that it is not visible for the process.
$nl$
$nl$
To this rule there is one exeption as it is possible to specify
under which base the entry is.
$nl$
$nl$
$nl$
Function of parameter:
$nl$
----------------------
$nl$$nl$
all.(yes/no) Standard all.no.
$nl$
Specifies whether all the magnetic tapes where the <entryname>
exist should be listed.
$nl$
scope.(login/user/project/own) Standard scope.own.
$nl$
Specifies under which scope the <entryname> in SAVECAT is searched.
If scope.own is specified the program searches all the entries specified
by <entryname> in SAVECAT which are visible for the process.
$nl$
base.<integer>.<integer>
$nl$
Specifies under which base the <entryname> is searched.
$nl$
<entryname>
$nl$
Specifies which entry looksave shall lookup in SAVECAT.
$nl$
$nl$
$nl$
Error messages:
$nl$
---------------
$nl$
*** Dumpcat does not exist
$nl$
The program can not read in SAVECAT.
$nl$
*** Mtpool does not exist
$nl$
*** Connect error =
$nl$
The outfile does not exist or is reserved by an other process.
The result of the FP-procedure connect output is shown.
$nl$
$nl$
$rh 1,UPDMTPOOL $
$ps0$
UPDMTPOOL
$nl$
---------
$nl$
The program is used to insert or remove a magnetic tape entry in MTPOOL.
$nl$$nl$
Example:
$nl$
--------
$nl$
The tapes entry mtsa0001 is removed from the MTPOOL by the following
FP-command:
$nl$
$nl$
@@@@@@@@@@
updmtpool tape.mtsa0001 remove.yes
$nl$
The magnetic tape entry mtsa0001 is inserted in the MTPOOl by the following
FP-command:
$nl$
$nl$
updmtpool tape.mtsa0001
$nl$$nl$$nl$
Call:
$nl$
-----
$nl$
$nl$
( <outfile> = updmtpool <tapespec> <removespec>
$nl$
@@@@@@@@@@@@@@@@@@@@@@@
<datespec> <nospec> <totalspec>
$nl$
$nl$
@@@@
<tapespec>::= tape.<tapename>
$nl$
@@@@
<removespec>::= remove.(yes/no)
$nl$
@@@@
<datespec>::= (date.<date>)
$nl$
@@@@
<nospec> ::= no.<integer>
$nl$
@@@@
<totalspec>::= ( total.(yes/no) )
$nl$
@@@@
<date>::= <year> <mounth> <day> <hour> <minut>
$nl$
@@@@
<year>::= <integer>
$nl$
@@@@
<mounth>::= <integer
$nl$
@@@@
<day> ::= <integer>
$nl$
@@@@
<hour> ::= <integer>
$nl$
@@@@
<minut> ::= <integer>
$nl$$nl$$nl$
Function:
$nl$
---------
$nl$$np$
The program updates the MTPOOL. It can be done in three different ways:
$nl$
1. It can remove a tape entry from the MTPOOL.
$nl$
This is done by specifing remove.yes in the call. When the program has to
remove a tape from the MTPOOL the bit belonging to that tape is also
removed from all entries in SAVECAT. The tape is removed in the following
way:
$nl$
In the record in MTPOOL belonging to the tape -1 is inserted in all words
of that entry except the tapename. In this way the tape will never be used to
a dailysave or totalsave.
$nl$
$nl$
2. It can insert a tape in the MTPOOL.
$nl$
This is done with the command updmtpool tape.<tapename> and the other parameter
to the call indicating whether it is going to be used to totalsave tape or
dailysavetape
.
$nl$
This may require that the SAVECAT has to be reorganised.
This can be a small change
if the bittable in the entries in SAVECAT can hold one more bit. If the bittable
can not contain the new bit the program has to make the size of each
savecatentry 1 word larger. This is the case if there are 24 tapes in the MTPOOL
and one more tape is inserted.
$nl$
$nl$
3. It can change the information about an existing tape in the MTPOOL.
$nl$
This is the case if updmtpool is called with an existing tapename and
without
remove.yes. When this is the case it may be specified what to insert.
$nl$$nl$$nl$
Function of parameters:
$nl$
-----------------------
$nl$
tape.<tapename>
$nl$
Is used to specify which tape to do something about.
$nl$
remove.(yes/no) Standard remove.no.
$nl$
Specifies if the tape is going to be removed or not.
$nl$
date.<date> Standard date.0 0 0 0 0.
$nl$
Specifies the date information in the record of the tapeentry in the MTPOOL.
The date 0 indicates that this is the oldest tape in the MTPOOL and probabaly
is going to be used to the next save.
total.(yes/no) Standard total.no.
$nl$
Specifies if the tape is going to be a totalsavetape or a dailysavetape.
$nl$$nl$$nl$
Error messages:
$nl$
---------------
$nl$
*** Mtpool does not exist
$nl$
*** Creation of temporary mtpool not possible
$nl$
A temporary MTPOOL is created so that if the process calling the program
is going down nothing will happen to the MTPOOL.
$nl$
*** The date specification is wrong
$nl$
*** Dumpcat does not exist
$nl$
*** Creation of temporary savecat not possible
$nl$
*** Param error
$nl$
*** It is not possible to rename mtpool
$nl$
*** It is not possible to rename savecat
$nl$
***
Tapename does not exist in MTPOOL
$nl$
$nl$
$rh 1, $
$sj$
$pl 297,0,280,0,0$
$pn 0,0$
$lw 185$
$ps0$
\f
Appendix 1 : Example of output from incsave
\f
page 1
savelabel: save mtsa0021 001 vers. 171180.09 s=8 mtsa0021
allist 3 3.disc3 120 129 d.801114.1635
allstatel 2 2.disc3 120 129 d.801009.1633
alutproc 8 2.disc2 120 129 d.800909.1707
alw 24 3.disc3 120 129 d.801114.1623
alw 4 3.disc3 2020 2029 d.801114.1533
ap1 16443 3.disc3 -8388607 8388605 d.801116.1203
ap2 2 3.disc1 -8388607 8388605 d.801116.1246
ap3 1 3.disc3 -8388607 8388605 d.801116.1243
atinit 1 2.disc2 120 129 d.801114.1618
bits 1 3.disc2 0 1999 d.801113.1454
bittxt 8 3.disc2 20 29
cdes 84 3.disc1 2020 2029 d.801112.1208
cdiv 14 3.disc1 2020 2029 d.801114.1528
cgutil 63 3.disc3 0 1999 d.801115.1159
coreproc 7 2.disc3 120 129 d.801009.1459
crb crb 3.cardreader -8388607 8388605 d.781104.2036
crc crc 3.cardreader -8388607 8388605 d.781104.2036
crd crd 3.cardreader -8388607 8388605 d.781104.2036
cryprog 189 3.disc3 120 129 d.801114.1624
desc 200 3.disc3 180 189 d.801114.1551
describe 119 3.disc1 0 8388604 d.801112.1302
describeinp 6 2.disc1 2020 2029 d.801112.1208
discdata 4 3.disc2 120 129 d.801114.1139
discjob 1 3.disc2 120 129 d.801114.1136
discrete 164 2.disc2 120 129 d.680101.0443
discrlist 142 2.disc2 120 129 d.801114.1216
elht 2 3.disc 50020 50029 d.801113.1246
findill 21 3.disc1 0 8388604 d.801113.1433
gamerecords 84 3.disc 60000 60009
hcorder01 9 3.disc2 60 69 d.801115.1236
hcorder03 9 3.disc2 60 69 d.801114.1025
houstona pl 3.terminal2 140 149 d.801006.1327
houstont 2 2.disc2 140 149 d.801112.1258
houstt 28 2.disc2 140 149 d.801112.1301
in1besk 20 3.disc2 180 189 d.801112.1359
inbesk 20 3.disc2 180 189
inc1desc 30 3.disc1 180 189 d.801115.2101
incarb 3 3.disc1 -8388607 8388605 d.801114.1052
incdesc 31 3.disc3 180 189 d.801116.1125
incre1bs 17 3.disc3 180 189 d.801112.1422
increbs 17 3.disc2 180 189 d.801112.1411
incsave 207 3.disc3 -8388607 8388605 d.801114.0955
invk12 111 3.disc3 180 189 d.801112.1527
ionloop 2 2.disc3 120 129 d.800909.1738
it246tcl 1 2.disc 50020 50029 d.801112.1352
it246tf 1 2.disc 50020 50029 d.801112.1350
it26dcl 1 2.disc 50020 50029 d.801112.1355
it26df 1 2.disc 50020 50029 d.801112.1348
it35dbr 1 2.disc 50020 50029 d.801112.1353
itpf 1 2.disc 50020 50029 d.801112.1405
jobfil 1 3.disc2 180 189 d.801114.1542
jocontract 63 3.disc3 60 69 d.801115.1156
kk1 1 3.disc1 2020 2029 d.801112.1432
kklistopt3 20 2.disc3 2020 2029 d.801112.1459
kklp 25 3.disc3 2020 2029 d.801112.1451
kkmon8003 97 3.disc1 2020 2029 d.801112.1513
kkmon8004 18 2.disc3 2020 2029 d.801112.1424
kkmonclear 1 3.disc1 2020 2029 d.801112.1447
kkmonlist3 2453 3.disc3 2020 2029 d.801112.1460
kkmonret3 29 2.disc3 2020 2029 d.801001.1659
kkmonret4 7 3.disc1 2020 2029 d.801112.1040
$ps0$ page 2
savelabel: save mtsa0021 001 vers. 171180.09 s=8 mtsa0021
kkmontest 108 3.disc1 2020 2029 d.801112.1431
kkopt3 20 2.disc3 2020 2029 d.801021.1307
kkopt4 6 3.disc1 2020 2029 d.801112.1105
kktmontest 71 3.disc1 2020 2029 d.801112.1422
kl5378 2 2.disc3 50020 50029 d.801112.1343
kl5379 2 2.disc3 50020 50029 d.801112.1344
kl5380 2 2.disc3 50020 50029 d.801112.1345
kl5381 2 2.disc3 50020 50029 d.801112.1346
kl5382 2 2.disc3 50020 50029 d.801112.1347
kl5383 2 2.disc3 50020 50029 d.801112.1349
kl5384 2 2.disc3 50020 50029 d.801112.1350
kl5385 2 2.disc3 50020 50029 d.801112.1351
kl5386 2 2.disc3 50020 50029 d.801112.1352
kl5387 2 2.disc3 50020 50029 d.801112.1354
kl5388 2 2.disc3 50020 50029 d.801112.1355
kl5389 2 2.disc3 50020 50029 d.801112.1357
kl5390 2 2.disc3 50020 50029 d.801112.1406
kl5nr 0 3.drum 50000 59999
libman 56 3.disc1 2020 2029 d.801114.1535
link8000 6 2.disc1 2020 2029 d.800115.1423
listhc01 126 3.disc2 60 69 d.801115.1236
listhc03 96 3.disc3 60 69 d.801114.1024
listhcøman 63 3.disc1 0 8388604
listman 3 3.disc1 0 8388604 d.801027.1624
listmaninp 4 2.disc1 2020 2029 d.801114.1535
listmtpool 33 3.disc2 180 189 d.801113.1619
looksave 50 3.disc3 -8388607 8388605 d.801116.1202
lp lp 3.printer -8388607 8388605 d.801116.1257
m2901 10 3.disc2 60 69 d.800529.1251
mcatinit 131 2.disc3 2020 2029 d.800611.0833
mcentral 97 2.disc1 2020 2029 d.801112.1453
mdef 29 2.disc1 2020 2029 d.801112.1452
mdisc 156 2.disc1 2020 2029 d.800611.0830
mfpaline 128 2.disc1 2020 2029 d.800611.0831
mfpasub 158 2.disc3 2020 2029 d.800611.1253
mhost 82 2.disc1 2020 2029 d.800611.1253
micasm01 112 3.disc3 0 1999 d.801115.1234
micasm03 126 3.disc2 0 1999 d.801113.1234
moncatinit 131 2.disc3 2020 2029 d.800611.0833
moncentral 84 2.disc1 2020 2029 d.800625.0801
mondef 28 2.disc1 2020 2029 d.800611.1252
mondisc 156 2.disc1 2020 2029 d.800611.0830
monfpaline 128 2.disc1 2020 2029 d.800611.0831
monfpasub 158 2.disc3 2020 2029 d.800611.1253
monhost 82 2.disc1 2020 2029 d.800611.1253
monprocfnc1 84 2.disc3 2020 2029 d.800623.1454
monprocfnc2 246 2.disc3 2020 2029 d.800612.1131
monprocs 175 2.disc1 2020 2029 d.800611.1253
mons1 81 2.disc3 2020 2029 d.800611.0832
mons2 95 2.disc3 2020 2029 d.800611.1255
montabinit 23 2.disc1 2020 2029 d.800611.1254
mprocfnc1 84 2.disc1 2020 2029 d.800623.1454
mprocfnc2 246 2.disc1 2020 2029 d.801112.1453
mprocs 184 2.disc1 2020 2029 d.801112.1453
ms1 81 2.disc3 2020 2029 d.800611.0832
ms2 95 2.disc3 2020 2029 d.800611.1255
mtabinit 25 2.disc1 2020 2029 d.801112.1453
orcbinp 4 2.disc1 2020 2029 d.801114.1528
orcbprog 63 3.disc1 0 8388604
pendown 1 3.disc2 140 149 d.801112.1619
penup 1 3.disc2 140 149 d.801112.1619
pl pl 3.plotter -8388607 8388605 d.781104.2036
$ps0$ page 3
savelabel: save mtsa0021 001 vers. 171180.09 s=8 mtsa0021
plotend 1 3.disc2 140 149 d.801112.1619
plotxy 10 3.disc2 140 149 d.801112.1619
*** entry reserved: primospool
*** entry reserved: primotest
ptre tre 3.reader -8388607 8388605 d.781104.2036
ptrf trf 3.reader -8388607 8388605 d.781104.2036
ptrn trn 3.reader -8388607 8388605 d.781104.2036
ptro tro 3.reader -8388607 8388605 d.781104.2036
r nrz 3.ttape 60 69 d.800528.1251
r nrz 3.ttape 630 639 d.801003.1443
r1 nrz 3.ttape 60 69 d.800528.1251
rdcos bs 3.rdsin 610 619
rdreal bs 3.rdsin 610 619
rdsqrt bs 3.rdsin 610 619
rydgen1 182 2.disc3 120 129 d.801114.1636
rydgen1txt 24 2.disc3 120 129 d.801114.1624
rydseg 9 2.disc2 120 129 d.801010.1252
rydstruct 18 2.disc2 120 129 d.800731.1445
ryglobal 2 2.disc2 120 129 d.800731.1451
rymac 63 3.disc3 120 129 d.801114.1620
ryproc 11 2.disc2 120 129 d.800731.1255
setplotstep 1 3.disc2 140 149 d.801112.1619
simarb 4 3.disc3 180 189 d.801113.1642
spiral 107 2.disc2 140 149 d.801112.1619
spiraltxt 2 2.disc2 140 149 d.801112.1516
stateloop 2 2.disc3 120 129 d.800909.1740
statevar 1 2.disc3 120 129 d.800507.1437
swt 1 2.disc2 140 149 d.801029.1435
t1looksave 18 3.disc2 180 189 d.801113.1010
t20 lp 3.terminal20 120 129 d.800620.1129
t22 lp 3.terminal22 120 129 d.800620.1327
t2901dec 2 3.disc2 60 69 d.801114.1501
t2901dir 17 3.disc2 60 69 d.801115.1143
t2901init 5 3.disc2 60 69 d.801114.1520
t2901proc 19 3.disc2 60 69 d.801115.1228
t290xasm 63 3.disc2 60 69 d.801112.1455
taldiscr 120 3.disc2 120 129 d.801114.1112
talgprog 322 3.disc1 2020 2029 d.801113.1433
tall 24 3.disc 50020 50029 d.801113.1306
tall1 24 2.disc 50020 50029 d.801113.1226
tcgorder010 117 3.disc3 60 69 d.801114.1443
tcgorder030 104 3.disc3 60 69 d.801114.1023
tdescribe 49 3.disc1 2020 2029 d.801112.1302
tdiscdata 4 3.disc2 120 129 d.801113.1617
tek4006a pl 3.terminal2 140 149 d.801008.1322
term tw 3.terminal -8388607 8388605 d.781104.2036
tfindill 1 2.disc1 2020 2029 d.801113.1433
tincload 59 3.disc1 180 189 d.800829.1334
tincsave 111 3.disc3 180 189 d.801116.1215
tinitdumcat 7 3.disc3 180 189 d.801112.1506
tinittemcat 4 3.disc3 0 1999 d.801112.1456
tlistmtpool 6 3.disc 180 189 d.801113.1618
tlooksave 18 3.disc3 180 189 d.801113.1621
toutshortcl 1 2.disc1 2020 2029 d.801024.1042
tpe tpe 3.punch -8388607 8388605 d.781104.2036
tpf tpf 3.punch -8388607 8388605 d.781104.2036
tplot 210 3.disc2 140 149 d.801112.1422
tplotxy 10 2.disc2 140 149 d.801112.1747
tpn tpn 3.punch -8388607 8388605 d.781104.2036
tpo tpo 3.punch -8388607 8388605 d.781104.2036
tpt tpt 3.punch -8388607 8388605 d.781104.2036
tre tre 3.reader -8388607 8388605 d.781104.2036
$ps0$ page 4
savelabel: save mtsa0021 001 vers. 171180.09 s=8 mtsa0021
trf trf 3.reader -8388607 8388605 d.781104.2036
trn trn 3.reader -8388607 8388605 d.781104.2036
tro tro 3.reader -8388607 8388605 d.781104.2036
tupdmtpool 27 3.disc3 180 189 d.801112.1510
u80 lp 3.terminal31 0 8388604 d.800929.1139
vko1 32 3.disc3 180 189 d.801116.1256
mtpool 1 3.disc3 -8388607 8388605
savecat 217 3.disc3 -8388607 8388605
tempcat 13 3.disc3 -8388607 8388605
entries = 192 segm= 26819
$ps0$
\f
Appendix 2 : Example of output from listmtpool
List of mtpool
--------------
1 mtsa0001 total used 800823.0914
2 mtsa0002 total used 800909.1105
3 mtsa0003 total used 801011.1002
4 mtsa0004 total used 801011.1202
5 mtsa0005 total used 801022.0917
6 mtsa0006 total used 801022.1100
7 mtsa0007 total used 801031.0922
8 mtsa0008 total used 801104.1614
9 mtsa0009 total used 801111.1515
10 mtsa0010 total used 801111.1605
11 mtsa0011 daily used 801105.0858
12 mtsa0012 daily used 801106.0937
13 mtsa0013 daily used 801107.0915
14 mtsa0014 daily used 801110.1048
15 mtsa0015 daily used 801110.1450
16 mtsa0016 daily used 801112.0917
17 mtsa0017 daily used 801113.0930
18 mtsa0018 daily used 801114.0955
19 mtsa0019 daily used 801115.1360
20 mtsa0020 daily used 801116.1113
21 mtsa0021 daily used 801028.1000
22 mtsa0022 daily used 801030.0936
23 mtsa0023 daily used 801103.1355
24 mtsa0024 daily used 801104.1219
$ps0$
\f
Appendix 3 : Example of output from looksave
invk12 scope.*** area 180 189
on mtsa0020 daily save tape date 801116.1113
on mtsa0010 total save tape date 801111.1605
$ef$
finis
▶EOF◀