Trailing-Edge
-
PDP-10 Archives
-
BB-PBQUC-BM_1990
-
help/keep.hlp
There are no other files named keep.hlp in the archive.
KEEP command
The KEEP command protects a fork from being cleared from memory.
Format
@KEEP (FORK) fork
where:
fork is one of the following: Fork name
Fork number
Default - the current fork
Characteristics
Characteristics of Kept Forks
The KEEP command gives a fork a "kept" status. A kept fork
has these characteristics:
o A kept fork is not reset when another program is brought
into memory. Normally, when a program is run, it
replaces the fork currently in memory. However, if the
program in memory is in a kept fork and a new program is
run, the new program is placed in a new fork. This
allows you to have several programs in memory.
o A kept fork is not cleared from memory with the RESET
command unless one of these RESET arguments is
specified: the fork name, a period or an asterisk.
o A kept fork can be restarted by typing the kept fork
name as an EXEC command. The kept fork name can be
abbreviated to the point where it is unique from EXEC
commands and other kept fork names. ESCAPE recognition
and question mark help also function with kept fork
names.
The KEEP command sets the kept fork to restart at its
starting address when the kept fork name is given as a
command. For information on changing the fork's restart
address see Hints, Setting the Kept Fork's Restart
Address.
o A kept fork is named after the program it contains.
Forks are numbered in the order in which they were
created. In multiforking-class commands the fork name
and number are interchangable.
Inferior Forks
Any inferior forks created by a kept fork are also kept.
Hints
Keeping Forks Automatically
Place SET PROGRAM KEEP commands in your LOGIN.CMD or
COMAND.CMD file for programs that you normally place in kept
forks. Then when you load the program, the system
automatically keeps the fork and notifies you with the
message [Keeping FORK-NAME].
The SET PROGRAM command applies only to the current EXEC
level. If you want your SET PROGRAM commands to be in
effect after a PUSH command, put the commands into your
COMAND.CMD file. The COMAND.CMD file is executed
automatically after every PUSH command.
Kept Forks Continued Using the Fork Name
The KEEP command sets the fork to be restarted at its
starting point when the fork name is given as a command.
So, if a program that was kept with the KEEP command is
running in a background fork, and you type the kept fork
name, execution of the program is canceled and the program
returns to its start address, which is usually the program's
prompt.
With the SET PROGRAM KEEP command, you have to specify the
point at which the fork will restart when the fork name is
given as a command. The starting point can be the program's
continue, reentry, or start address. The command SET
PROGRAM KEEP CONTINUE gives the fork name the same function
as the CONTINUE /NORMALLY command. So, if a program that
was kept with the SET PROGRAM KEEP CONTINUE command is
running in a background fork, and you type the kept fork
name, execution of the program continues and your terminal
is placed at program level.
More Information
The KEEP command is one of the TOPS-20 multiforking-class
commands. For more information about multiforking, see the
section Running Multiple Programs in the TOPS-20 User's
Guide.
Restrictions
Limited Number of Forks
There is a limited number of forks available on a system.
When all forks are in use, existing users cannot add forks
and new users cannot log in. Therefore, KEEP only necessary
forks and return idle forks to the system with the UNKEEP or
RESET commands.
Related Commands
INFORMATION FORK-STATUS for displaying the fork status
RESET for clearing forks from memory
UNKEEP for changing a kept fork to an
unkept fork
CONTINUE, FORK, FREEZE, other multiforking-class
INFORMATION PROGRAM-STATUS, commands
SET NAME, and SET PROGRAM
Examples
1. Display the fork status with the INFORMATION FORK-STATUS
command. Then, give the KEEP command to make the current
fork a kept fork and redisplay the fork status.
@INFORMATION FORK-STATUS
=> EDIT (1): HALT at 6254, 0:00:00.5
FILCOM (2): ^C from IO wait at 700272, 0:00:00.3
@KEEP
@INFORMATION FORK-STATUS
=> EDIT (1): Kept, HALT at 6254, 0:00:00.5
FILCOM (2): ^C from IO wait at 700272, 0:00:00.3
2. Display the fork status, and KEEP the FILCOM fork. Then
verify the new fork status.
@INFORMATION FORK-STATUS
=> EDIT (1): Kept, HALT at 6254, 0:00:00.5
FILCOM (2): ^C from IO wait at 700272, 0:00:00.3
@KEEP FILCOM
@INFORMATION FORK-STATUS
=> EDIT (1): Kept, HALT at 6254, 0:00:00.5
FILCOM (2): Kept, ^C from IO wait at 776721, 0:00:00.3