User Tools

Site Tools


using_multiple_interactive_programs_on_twenex

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
using_multiple_interactive_programs_on_twenex [2021/03/17 00:22] – [Using Multiple Interactive Programs on TWENEX] hc9using_multiple_interactive_programs_on_twenex [2021/03/17 01:09] (current) – [Multiforking] hc9
Line 9: Line 9:
 The functions described in this tutorial are equivalent to those on Unix systems invoked with the Ctrl-Z key and commands like fg, jobs, etc. The functions described in this tutorial are equivalent to those on Unix systems invoked with the Ctrl-Z key and commands like fg, jobs, etc.
  
-There are two ways to run multiple interactive programs(2) in TOPS-20:+There are two ways to run multiple interactive //programs((It is only necessary to use these methods when you wish to use two or more user programs at the same time. Running a user program from EXEC without first running PUSH or KEEP will overwrite the user program address space and destroy the session state of the previously running program. However, EXEC commands generally do not disturb user program address space. You can halt an active program (with ^C^C), run several EXEC commands (e.g. DIRECTORY, HELP, TYPE), and return to your original program (with CONTINUE) in the state you left it.))// in TOPS-20:
  
   - Push/Pop: From an interactive session you run another program, then return to the first program when the called program is complete.   - Push/Pop: From an interactive session you run another program, then return to the first program when the called program is complete.
Line 20: Line 20:
 <file config EXEC> <file config EXEC>
  
-  *^C ! Return from program session to EXEC +  *^C ! Return from program session to EXEC 
-   ^C ! (only single ^C will echo).+  ^C ! (only single ^C will echo).
  
-  @PUSH ! Start child EXEC instance.+  @PUSH ! Start child EXEC instance.
  
-   TOPS-20 Command processor 7(4168)-1 +   TOPS-20 Command processor 7(4168)-1 
-   @MM                     ! Start a program in the child EXEC.+  @MM                   ! Start a program in the child EXEC.
  
-  ... ! Use program then exit.+  ... ! Use program then exit.
  
-  @POP ! Terminate child EXEC and return to +  @POP ! Terminate child EXEC and return to 
-   ! parent EXEC.+   ! parent EXEC
 + 
 +  @CONTINUE(3) ! Return to original program session. 
 +  * ! Depending on the program you may 
 +  ! continue entering commands or 
 +  ! refresh the display.
  
-  @CONTINUE(3) ! Return to original program session. 
-  * ! Depending on the program you may 
-  ! continue entering commands or 
-  ! refresh the display. 
 </file> </file>
  
Line 44: Line 45:
  
 <file config EXEC> <file config EXEC>
 +  *^C ! Return from program session to EXEC
 +  ^C ! (only single ^C will echo).
  
-  *^C Return from program session to EXEC +  @KEEP Create separate address space for 
-   ^C (only single ^C will echo).+   new program.
  
-  @KEEP ! Create separate address space for +  @MM                   Start new program.
-  ! new program.+
  
-  @MM                     Start new program.+  ... Use program.
  
-  ... Use program.+  MM>^C Return from second program to EXEC.
  
-  MM>^C Return from second program to EXEC.+  @INFORMATION FORK-STATUS 
 +  List forks in current EXEC. 
 +  ! (Current fork marked with "=>".)
  
-  @INFORMATION FORK-STATUS(3) +      TECO (1): Kept, ^C from IO wait at TYI+3, 0:00:00.0 
-  ! List forks in current EXEC+   => MM (2): ^C from IO wait at $COMND+3, 0:00:00.0
-   ! (Current fork marked with "=>".)+
  
-      TECO (1): Kept, ^C from IO wait at TYI+3, 0:00:00.0 +  @FORK TECO ! Switch to original program's fork 
-   => MM (2): ^C from IO wait at $COMND+3, 0:00:00.0+  ("TECO").
  
-  @FORK TECO Switch to original program's fork +  @CONTINUE Return to original program session.
-  ! ("TECO").+
  
-  @CONTINUE Return to original program session.+  ... Use original program.
  
-  ... Use original program.+  *^C Return to EXEC.
  
-  *^C ! Return to EXEC.+  @INFORMATION FORK-STATUS 
 +   => TECO (1): Kept, ^C from IO wait at TYI+3, 0:00:00.
 +      MM (2): ^C from IO wait at $COMND+3, 0:00:00.0
  
-  @INFORMATION FORK-STATUS +  @FORK MM ! Switch to second program fork ("MM").
-  => TECO (1): Kept, ^C from IO wait at TYI+3, 0:00:00.0 +
-      MM (2): ^C from IO wait at $COMND+3, 0:00:00.0+
  
-  @FORK MM ! Switch to second program fork ("MM"). +  @CONTINUE ! Resume second program session.
- +
-  @CONTINUE ! Resume second program session.+
  
 </file> </file>
  
 +^EXEC snippet, and end-note link:^
 +|//@INFORMATION FORK-STATUS((EXEC commands and options may be abbreviated to the minimum unique prefix, for example:
 +<file config EXEC abbreviated>
 +  CONTINUE => CONT
 +  INFORMATION FORK-STATUS => IN FO
 +</file>))//|
 ===== More Information ===== ===== More Information =====
  
-More information can be found in TOPS-20 User's Guide(1) sections 8.6 "Running Programs Without Destroying Memory" and 8.7 "Running Multiple Programs".+More information can be found in TOPS-20 User'//Guide((TOPS-20 User's Guide. Available on Twenex.org in file DOC:USERS.MEM or on the WWW at http://tilt.twenex.org/.))// sections 8.6 "Running Programs Without Destroying Memory" and 8.7 "Running Multiple Programs".
  
 ===== Notes ===== ===== Notes =====
  
-(1TOPS-20 User's Guide. Available on Twenex.org in file DOC:USERS.MEM or on the WWW at http://tilt.twenex.org/.+<del>[1TOPS-20 User's Guide. Available on Twenex.org in file DOC:USERS.MEM or on the WWW at http://tilt.twenex.org/.</del>
  
-(2It is only necessary to use these methods when you wish to use two or more user programs at the same time. Running a user program from EXEC without first running PUSH or KEEP will overwrite the user program address space and destroy the session state of the previously running program. However, EXEC commands generally do not disturb user program address space. You can halt an active program (with ^C^C), run several EXEC commands (e.g. DIRECTORY, HELP, TYPE), and return to your original program (with CONTINUE) in the state you left it. +<del>[2It is only necessary to use these methods when you wish to use two or more user programs at the same time. Running a user program from EXEC without first running PUSH or KEEP will overwrite the user program address space and destroy the session state of the previously running program. However, EXEC commands generally do not disturb user program address space. You can halt an active program (with ^C^C), run several EXEC commands (e.g. DIRECTORY, HELP, TYPE), and return to your original program (with CONTINUE) in the state you left it.</del>
- +
-(3) EXEC commands and options may be abbreviated to the minimum unique prefix, for example:+
  
 +<del>[3] EXEC commands and options may be abbreviated to the minimum unique prefix, for example:
 +</del>
 <file config EXEC abbreviated> <file config EXEC abbreviated>
- +  CONTINUE => CONT 
-  CONTINUE => CONT +  INFORMATION FORK-STATUS => IN FO
-   INFORMATION FORK-STATUS => IN FO +
 </file> </file>
  
using_multiple_interactive_programs_on_twenex.1615940570.txt.gz · Last modified: 2021/03/17 00:22 by hc9