The Tape System for Gnosis is described in three sections that follow. These sections discuss the details of tape operation and the actual operator interface to these functions.
The Gnosis tape library functions a little differently than the VM tape library. In Gnosis a tape must be in the library before it can be assigned to a user. The user has access to a capability that will assign an available tape to a user when he/she requests it. Once assigned, the tape belongs to that user until it is released. When released, the tape returns to the pool of available tapes and may be reassigned to another user. The tape library capability makes sure that tapes are assigned to a single user at a time (it is up to the users to share a tape by explicit action on their part), and that a user may (_never) request a tape to be mounted to which he/she does not have access.
Two types of tapes are introduced into the Gnosis tape library. The first type is a scratch tape. This tape is labelled and then made available for any user to claim for use. Because it is labelled when it is introduced to the library, no data can be read from this tape by the user who claimed it.
The second type of tape is a private tape. This tape is introduced into the library without writing a label on it. It may only be claimed by the owner that presented to tape to the human acting as tape librarian because the tape is assigned a password when it is introduced into the Gnosis tape library. This password is given to the owner of the tape so he/she can claim it from the Gnosis tape library for use.
A private tape may be labelled when it is introduced. This would be the case if the tape was intended as a tape to be exported to another system.
NOTE that a blank tape should not be entered into the Gnosis tape library. Such a tape can never be mounted by a user. All tapes mounted for users must have some data on them (either a label or some user data) so that the tapes can be verified when they are mounted.
The available librarian functions are:
Once the VOLUME ID and description are entered, the tape is mounted and labelled. The operator will have to switch to the Tape Operator function to respond to the mount. The mechanics of running the various Tape Manager functions will be described later.
A tape must be introduced into the library (_before) it can be used by a Gnosis user. This is a departure from the procedures used with the VM library.
The operator is prompted for a system number. The only number that is currently acceptable is 85.
Interaction with VM
When a Gnosis task requests a tape mount, the Tape Manager task assigns an available drive and issues a mount message to the terminal. Under VM it is necessary for the VM operator to attach a tape drive to the Gnosis virtual machine at the designated address before mounting the tape and responding to the mount request.
On a real machine it is only necessary to mount the tape on the designated drive and respond to the mount request message.
ADD (Seldom if ever used)
Inform the Tape Manager process that the tape unit indicated is now online. The unit is not available for allocation. This command merely allocates table space in which the Tape Manager keeps track of the drive status.
There is no command to delete a drive. However, if the drive is not made available for use (via the SET command), it will not be assigned to a Gnosis task.
Example
This command changes the status of a Gnosis tape drive. A drive in the UP state will be assigned to a Gnosis task. A drive in the DOWN state will not be assigned to a Gnosis task.
A drive that is in use may not be set to the DOWN state. However, a drive in the MOUNTING state (a user requesting a tape mount on the drive) may be set to the DOWN state. This will cause the mount request to be repeated on another drive.
A drive in the DOWN state, and not in use, may be taken offline (detached by the VM operator) for maintenance.
Example
SET 481 UP
When a task requests a tape, the Tape Manager assigns a drive (from those in the UP state that are not in use) and issues a MOUNT REQUEST message on the terminal. After the tape has been mounted by the human operator (and attached to the Gnosis virtual machine if under VM), The human operator enters the "MOUNT unit-number" command to inform the waiting task that the tape is ready for use. The tape label is validated by the waiting task.
Example
On those occasions where the tape cannot be located, after repeated attempts to mount the tape it becomes apparent that the tape label is not valid, or the drive fails to mount the tape properly, the NOMOUNT command is used to inform the waiting task that it must reissue the request.
Example
This command will cause all outstanding requests to be listed at the terminal. The form of the display is identical to the original mount request message.
Example
PLEASE MOUNT VOLUME 555555 on unit 486 with NORING
The status of all drives known by the Gnosis Tape Manager task is displayed on the terminal.
Example
481 AVAILABLE 654321 (no longer in use but reel is still mounted)
482 AVAILABLE (available with no known tape mounted)
483 DOWN (unit is online but not available)
484 UNAVAILABLE (unit is not online)
485 MOUNTING 666666 (a mount request is outstanding)
PLEASE MOUNT VOLUME xxxxxx ON DRIVE xxx WITH RING/NORING
ACTION - Mount the requested tape on the drive indicated. Enter the "MOUNT unit-number" command with unit-number equal to the drive indicated. Example: MOUNT 481.
ACTION - NONE
ACTION - NONE.
ACTION - retype the MOUNT command with the correct unit-number.
ACTION - NONE
ACTION - retype the MOUNT command with the correct unit-number.
ACTION - Issue a correct command.
ACTION - NONE
There are many positive aspects to this type of operation, but there may also be some confusion. For instance, after "logon" there may not be any sort of greeting or herald. If Gnosis crashed (thus breaking the terminal connection) and the terminal is reconnected (via logon) the task is in the exact state it was at the time of the crash (usually waiting for input). The task actually does not know that Gnosis crashed. It is usually necessary to "poke" the task to find out what it is (was at the time of the crash) doing. A null input (just type carriage return) will get the task to repeat its prompt.
The Tape Manager task is a menu driven concurrent activity task. There are two functions (tape operator and tape librarian) that may be active at the same time. The terminal is switched between these two activities through a main menu. The ESCAPE key is used to affect the switch. The best thing to do when logging on to the Tape Manager task after a crash is to press the ESCAPE key, which will present the main menu. The desired activity is selected by entering a number. Usually the Tape Operator activity is selected.
Logoff is accomplished from the main menu. Select the logoff activity by number (usually 0) and the terminal will be disconnected. This does not affect any activities that are running, it merely disconnects the terminal in such a way as to present the main menu when the terminal is reconnected via logon. Reset of the terminal (power off) will also disconnect the terminal but the main menu will not appear at logon (press the ESCAPE key in this case to see the main menu). Examples will be presented later.
1. LOGON to GNOTAPE:2686;tape.op
2. Select the Tape Operator function (enter a 2).
3. Type "STATUS" to see the state of all tape drives.
4. Wait for the bell to ring (indicating some action required).
5. When the following message appears:
1. Attach a tape drive to GNOSIS2 at the indicated address (yyy).
2. Verify that userid GNOSIS2 has access to the indicated volume (xxxxxx).
3. Mount the tape on the indicated drive (yyy).
4. Enter the command "MOUNT yyy".
1. Detach the tape drive from GNOSIS2
1. LOGON to GNOTAPE:2686;tape.op
2. Select the Tape Operator function (enter a 2).
3. Type "STATUS" to see the state of all tape drives.
4. Wait for the bell to ring (indicating some action required).
5. When the following message appears:
1. Mount the tape on the indicated drive (yyy).
2. Switch the drive to Gnosis. If the request is for some drive that cannot be switched to Gnosis, then change the status of the Gnosis drives (via the SET command) to make sure that the one that can be switched to Gnosis is the one that is available. The requestor will then ask for a mount on that drive.
3. Enter the command "MOUNT yyy".
The Tape Manager Task consists of three parts; (1) The main menu, (2) The tape operator function, (3) The tape librarian function. The main menu is always active and can be reached at any time by pressing the ESCAPE key. The two activities (operator and librarian) are activated from the main menu by entering a number that corresponds to that activity. Once the activity is selected the terminal is switched to that activity. If the other activity has some output for the terminal (such as a mount request while in the librarian activity), the bell will sound. Pressing the ESCAPE key will take the terminal to the main menu. The activity with unseen output will be indicated by an "*".
To switch to the activity with the output, enter the activity number from the main menu. The terminal will be connected to that activity.
The terminal can be switched at any time (you need not wait for a bell) between the activities. Simply press ESCAPE and then enter type activity number from the main menu.
Example of main menu with one active function
Current date and time
1 Tape Library Function
2 Tape Operator Function ACTIVE
Enter selection number ___
This screen greets the operator when first logging on to the userid GNOTAPE.
The "ACTIVE" indicates that the tape operator function is active. To switch to that activity and wait for mount requests, simply enter a "2" followed by carriage return. NOTE since the function is already active, there will be no prompt when the terminal is switched to it. Simply press the carriage return key and the function will reissue its prompt.
All commands described in the previous section are available from this prompt.
To start a tape librarian function simply enter a 1 followed by carriage return.
The ESCAPE key will always take the terminal to the Main menu.
DO NOT cancel (use a negative number) the Tape Operator function unless instructed to do so by a Gnosis systems person. If you need the terminal, simply logoff by entering a "0" (followed by carriage return). This disconnects the terminal but leaves the functions active.
Example of main menu reached via ESCAPE while connected to the librarian function when a bell rings
Current date and time
1 Tape Library Function ACTIVE
2 Tape Operator Function ACTIVE *
Enter selection number ___
Entering a 2 will switch the terminal to the tape operator function where the message that was waiting (usually a mount request message) will print out.
FSTAPOPF(1;sb,m,allocator,mountfile,meter ==>c;FSTAPOP,FSTAPOPDOM) - Create Master Full Screen Tape Operator
METER is a meter that will outlast the FSTAPOP instance as it will be used as the meter for ACCESSF. The spacebank for ACCESSF comes from the TAPEKEY node slot 11.
The top area of the screen shows the defined drives (via DEVALOC (p2,devalloc)) and their status. If more than 8 drives are available then PF8 and PF7 can be used to scroll through the drives.
The message area of the screen (below the list of drives with their status but above the command input area) will show a history of the last 100 messages (other than mount operations) that users have sent to the tape operator using the TAPEKEY(10) operation. The slave operators may not show all the messages. New messages are highlighted.
PF9 and PF10 are used to review old messages. When a message is pushed off the screen (acknowledged) highlighting is removed.
Commands may be entered in the command input area but this is not necessary under normal conditions. As a result the commands are limited.