\toctexentry {9}{\RTLnumber {}}{Preface}{\RTLnumber {v}} \toctexentry {0}{\RTLnumber {1}}{System Components and Memory Layouts}{\RTLnumber {1\foliodelim 1}} \toctexentry {1}{\RTLnumber {1.1}}{Static Components}{\RTLnumber {1\foliodelim 1}} \toctexentry {2}{\RTLnumber {1.1.1}}{Trap Vectors}{\RTLnumber {1\foliodelim 2}} \toctexentry {2}{\RTLnumber {1.1.2}}{System Communication Area}{\RTLnumber {1\foliodelim 2}} \toctexentry {3}{\RTLnumber {1.1.2.1}}{User Error Byte}{\RTLnumber {1\foliodelim 6}} \toctexentry {3}{\RTLnumber {1.1.2.2}}{Job Status Word (JSW)}{\RTLnumber {1\foliodelim 8}} \toctexentry {2}{\RTLnumber {1.1.3}}{Interrupt Vectors}{\RTLnumber {1\foliodelim 10}} \toctexentry {2}{\RTLnumber {1.1.4}}{Background Job}{\RTLnumber {1\foliodelim 12}} \toctexentry {3}{\RTLnumber {1.1.4.1}}{RUN Command}{\RTLnumber {1\foliodelim 12}} \toctexentry {3}{\RTLnumber {1.1.4.2}}{R Command}{\RTLnumber {1\foliodelim 15}} \toctexentry {3}{\RTLnumber {1.1.4.3}}{VRUN Command}{\RTLnumber {1\foliodelim 15}} \toctexentry {3}{\RTLnumber {1.1.4.4}}{V Command}{\RTLnumber {1\foliodelim 15}} \toctexentry {3}{\RTLnumber {1.1.4.5}}{.CHAIN Request}{\RTLnumber {1\foliodelim 15}} \toctexentry {2}{\RTLnumber {1.1.5}}{Resident Monitor (RMON)}{\RTLnumber {1\foliodelim 17}} \toctexentry {2}{\RTLnumber {1.1.6}}{System Device Handler}{\RTLnumber {1\foliodelim 18}} \toctexentry {2}{\RTLnumber {1.1.7}}{I/O Page}{\RTLnumber {1\foliodelim 19}} \toctexentry {1}{\RTLnumber {1.2}}{Dynamic Components}{\RTLnumber {1\foliodelim 20}} \toctexentry {2}{\RTLnumber {1.2.1}}{Device Handlers and Free Space}{\RTLnumber {1\foliodelim 21}} \toctexentry {2}{\RTLnumber {1.2.2}}{Foreground and System Jobs}{\RTLnumber {1\foliodelim 22}} \toctexentry {3}{\RTLnumber {1.2.2.1}}{Differences Between Foreground and Background Jobs}{\RTLnumber {1\foliodelim 23}} \toctexentry {3}{\RTLnumber {1.2.2.2}}{FRUN Command}{\RTLnumber {1\foliodelim 24}} \toctexentry {3}{\RTLnumber {1.2.2.3}}{Starting Foreground and System Jobs}{\RTLnumber {1\foliodelim 26}} \toctexentry {3}{\RTLnumber {1.2.2.4}}{Foreground Stack}{\RTLnumber {1\foliodelim 27}} \toctexentry {3}{\RTLnumber {1.2.2.5}}{Foreground Impure Area}{\RTLnumber {1\foliodelim 28}} \toctexentry {2}{\RTLnumber {1.2.3}}{User Service Routine (USR)}{\RTLnumber {1\foliodelim 29}} \toctexentry {3}{\RTLnumber {1.2.3.1}}{Structure}{\RTLnumber {1\foliodelim 29}} \toctexentry {3}{\RTLnumber {1.2.3.2}}{Execution}{\RTLnumber {1\foliodelim 31}} \toctexentry {3}{\RTLnumber {1.2.3.3}}{USR Swapping with Unmapped Systems}{\RTLnumber {1\foliodelim 32}} \toctexentry {2}{\RTLnumber {1.2.4}}{Keyboard Monitor (KMON)}{\RTLnumber {1\foliodelim 36}} \toctexentry {3}{\RTLnumber {1.2.4.1}}{DCL Command Processing}{\RTLnumber {1\foliodelim 36}} \toctexentry {3}{\RTLnumber {1.2.4.2}}{CCL Command Processing}{\RTLnumber {1\foliodelim 37}} \toctexentry {3}{\RTLnumber {1.2.4.3}}{Adding New Commands Through UCL}{\RTLnumber {1\foliodelim 38}} \toctexentry {3}{\RTLnumber {1.2.4.4}}{User Commands First (UCF) Feature}{\RTLnumber {1\foliodelim 39}} \toctexentry {3}{\RTLnumber {1.2.4.5}}{Passing Commands Through the Chain Area}{\RTLnumber {1\foliodelim 40}} \toctexentry {3}{\RTLnumber {1.2.4.6}}{Character Case Handling}{\RTLnumber {1\foliodelim 40}} \toctexentry {1}{\RTLnumber {1.3}}{Determining Components Size}{\RTLnumber {1\foliodelim 41}} \toctexentry {2}{\RTLnumber {1.3.1}}{Size of the USR}{\RTLnumber {1\foliodelim 41}} \toctexentry {2}{\RTLnumber {1.3.2}}{Size of KMON}{\RTLnumber {1\foliodelim 41}} \toctexentry {2}{\RTLnumber {1.3.3}}{Size of RMON}{\RTLnumber {1\foliodelim 41}} \toctexentry {2}{\RTLnumber {1.3.4}}{Size of Device Handlers}{\RTLnumber {1\foliodelim 41}} \toctexentry {0}{\RTLnumber {2}}{Resident Monitor (RMON)}{\RTLnumber {2\foliodelim 1}} \toctexentry {1}{\RTLnumber {2.1}}{Terminal Service}{\RTLnumber {2\foliodelim 1}} \toctexentry {2}{\RTLnumber {2.1.1}}{Output Ring Buffer}{\RTLnumber {2\foliodelim 1}} \toctexentry {3}{\RTLnumber {2.1.1.1}}{Storing a Character in the Output Ring Buffer}{\RTLnumber {2\foliodelim 2}} \toctexentry {3}{\RTLnumber {2.1.1.2}}{Removing a Character from the Output Ring Buffer}{\RTLnumber {2\foliodelim 3}} \toctexentry {2}{\RTLnumber {2.1.2}}{Input Ring Buffer}{\RTLnumber {2\foliodelim 3}} \toctexentry {3}{\RTLnumber {2.1.2.1}}{Storing a Character in the Input Ring Buffer}{\RTLnumber {2\foliodelim 4}} \toctexentry {3}{\RTLnumber {2.1.2.2}}{Removing a Character from the Input Ring Buffer}{\RTLnumber {2\foliodelim 5}} \toctexentry {2}{\RTLnumber {2.1.3}}{High-Speed Ring Buffer}{\RTLnumber {2\foliodelim 5}} \toctexentry {2}{\RTLnumber {2.1.4}}{Terminal I/O Limitations}{\RTLnumber {2\foliodelim 6}} \toctexentry {2}{\RTLnumber {2.1.5}}{Control Functions}{\RTLnumber {2\foliodelim 6}} \toctexentry {3}{\RTLnumber {2.1.5.1}}{CTRL/C}{\RTLnumber {2\foliodelim 6}} \toctexentry {3}{\RTLnumber {2.1.5.2}}{CTRL/O}{\RTLnumber {2\foliodelim 7}} \toctexentry {3}{\RTLnumber {2.1.5.3}}{CTRL/S and CTRL/Q}{\RTLnumber {2\foliodelim 7}} \toctexentry {3}{\RTLnumber {2.1.5.4}}{CTRL/B, CTRL/F, and CTRL/X}{\RTLnumber {2\foliodelim 7}} \toctexentry {2}{\RTLnumber {2.1.6}}{SET Options Status Word, .TCFDF}{\RTLnumber {2\foliodelim 8}} \toctexentry {1}{\RTLnumber {2.2}}{Clock Support and Timer Service}{\RTLnumber {2\foliodelim 9}} \toctexentry {2}{\RTLnumber {2.2.1}}{SB Systems Without Timer Service}{\RTLnumber {2\foliodelim 9}} \toctexentry {2}{\RTLnumber {2.2.2}}{Systems with Timer Service}{\RTLnumber {2\foliodelim 9}} \toctexentry {1}{\RTLnumber {2.3}}{Queued I/O System}{\RTLnumber {2\foliodelim 11}} \toctexentry {2}{\RTLnumber {2.3.1}}{I/O Channel Format}{\RTLnumber {2\foliodelim 11}} \toctexentry {2}{\RTLnumber {2.3.2}}{I/O Queue (.QELDF)}{\RTLnumber {2\foliodelim 13}} \toctexentry {2}{\RTLnumber {2.3.3}}{Completion Queue}{\RTLnumber {2\foliodelim 18}} \toctexentry {3}{\RTLnumber {2.3.3.1}}{.SYNCH Considerations}{\RTLnumber {2\foliodelim 21}} \toctexentry {2}{\RTLnumber {2.3.4}}{Flow of Events in I/O Processing}{\RTLnumber {2\foliodelim 21}} \toctexentry {3}{\RTLnumber {2.3.4.1}}{Issuing the Request}{\RTLnumber {2\foliodelim 22}} \toctexentry {3}{\RTLnumber {2.3.4.2}}{Queuing the Request}{\RTLnumber {2\foliodelim 22}} \toctexentry {3}{\RTLnumber {2.3.4.3}}{Performing the I/O Transfer}{\RTLnumber {2\foliodelim 24}} \toctexentry {3}{\RTLnumber {2.3.4.4}}{Completing the I/O Request}{\RTLnumber {2\foliodelim 24}} \toctexentry {1}{\RTLnumber {2.4}}{Scheduling in Multi-Job Systems}{\RTLnumber {2\foliodelim 25}} \toctexentry {2}{\RTLnumber {2.4.1}}{User and System State}{\RTLnumber {2\foliodelim 26}} \toctexentry {3}{\RTLnumber {2.4.1.1}}{Switching to System State Asynchronously}{\RTLnumber {2\foliodelim 27}} \toctexentry {3}{\RTLnumber {2.4.1.2}}{Switching to System State Synchronously}{\RTLnumber {2\foliodelim 29}} \toctexentry {3}{\RTLnumber {2.4.1.3}}{Returning to User State}{\RTLnumber {2\foliodelim 30}} \toctexentry {2}{\RTLnumber {2.4.2}}{Context Switching in Multi-Job Systems}{\RTLnumber {2\foliodelim 31}} \toctexentry {2}{\RTLnumber {2.4.3}}{Blocking Conditions}{\RTLnumber {2\foliodelim 32}} \toctexentry {3}{\RTLnumber {2.4.3.1}}{How the Monitor Blocks a Job}{\RTLnumber {2\foliodelim 33}} \toctexentry {3}{\RTLnumber {2.4.3.2}}{\$SYSWT Monitor Routine}{\RTLnumber {2\foliodelim 34}} \toctexentry {3}{\RTLnumber {2.4.3.3}}{How the Monitor Unblocks a Job}{\RTLnumber {2\foliodelim 36}} \toctexentry {2}{\RTLnumber {2.4.4}}{Scheduler Operations}{\RTLnumber {2\foliodelim 36}} \toctexentry {3}{\RTLnumber {2.4.4.1}}{How the Monitor Requests a Scheduling Pass}{\RTLnumber {2\foliodelim 36}} \toctexentry {3}{\RTLnumber {2.4.4.2}}{Characteristics of a Runnable Job}{\RTLnumber {2\foliodelim 36}} \toctexentry {3}{\RTLnumber {2.4.4.3}}{\$RQTSW Monitor Routine}{\RTLnumber {2\foliodelim 36}} \toctexentry {3}{\RTLnumber {2.4.4.4}}{How the Scheduler Works}{\RTLnumber {2\foliodelim 37}} \toctexentry {2}{\RTLnumber {2.4.5}}{Implications for Completion Routines}{\RTLnumber {2\foliodelim 37}} \toctexentry {1}{\RTLnumber {2.5}}{System Jobs}{\RTLnumber {2\foliodelim 38}} \toctexentry {2}{\RTLnumber {2.5.1}}{Characteristics}{\RTLnumber {2\foliodelim 38}} \toctexentry {2}{\RTLnumber {2.5.2}}{Logical Names}{\RTLnumber {2\foliodelim 38}} \toctexentry {2}{\RTLnumber {2.5.3}}{Job Number}{\RTLnumber {2\foliodelim 38}} \toctexentry {2}{\RTLnumber {2.5.4}}{Priority}{\RTLnumber {2\foliodelim 38}} \toctexentry {2}{\RTLnumber {2.5.5}}{Design Considerations}{\RTLnumber {2\foliodelim 39}} \toctexentry {3}{\RTLnumber {2.5.5.1}}{Scheduling Considerations}{\RTLnumber {2\foliodelim 39}} \toctexentry {3}{\RTLnumber {2.5.5.2}}{Space Considerations}{\RTLnumber {2\foliodelim 39}} \toctexentry {2}{\RTLnumber {2.5.6}}{Programmed Requests}{\RTLnumber {2\foliodelim 40}} \toctexentry {2}{\RTLnumber {2.5.7}}{Message Handling}{\RTLnumber {2\foliodelim 40}} \toctexentry {2}{\RTLnumber {2.5.8}}{Monitor Commands}{\RTLnumber {2\foliodelim 41}} \toctexentry {3}{\RTLnumber {2.5.8.1}}{SRUN and FRUN Commands}{\RTLnumber {2\foliodelim 41}} \toctexentry {3}{\RTLnumber {2.5.8.2}}{LOAD and UNLOAD Commands}{\RTLnumber {2\foliodelim 41}} \toctexentry {3}{\RTLnumber {2.5.8.3}}{SUSPEND and RESUME Commands}{\RTLnumber {2\foliodelim 42}} \toctexentry {3}{\RTLnumber {2.5.8.4}}{SHOW JOBS Command}{\RTLnumber {2\foliodelim 42}} \toctexentry {2}{\RTLnumber {2.5.9}}{Interchanging Between System Jobs}{\RTLnumber {2\foliodelim 42}} \toctexentry {1}{\RTLnumber {2.6}}{Data Structures}{\RTLnumber {2\foliodelim 42}} \toctexentry {2}{\RTLnumber {2.6.1}}{Fixed Offsets}{\RTLnumber {2\foliodelim 42}} \toctexentry {3}{\RTLnumber {2.6.1.1}}{Configuration Word (\$CNFG1)}{\RTLnumber {2\foliodelim 48}} \toctexentry {3}{\RTLnumber {2.6.1.2}}{Low-Memory Protection Bitmap (\$LOWMA)}{\RTLnumber {2\foliodelim 49}} \toctexentry {3}{\RTLnumber {2.6.1.3}}{DCL and IND Indirect File Status Word (\$STATW)}{\RTLnumber {2\foliodelim 51}} \toctexentry {3}{\RTLnumber {2.6.1.4}}{Second Configuration Word (\$CNFG2)}{\RTLnumber {2\foliodelim 51}} \toctexentry {3}{\RTLnumber {2.6.1.5}}{System Generation Features Word (\$SYSGE)}{\RTLnumber {2\foliodelim 53}} \toctexentry {3}{\RTLnumber {2.6.1.6}}{Transparent Spooler (SPOOL) Status Word (\$SPSTA)}{\RTLnumber {2\foliodelim 54}} \toctexentry {3}{\RTLnumber {2.6.1.7}}{IND Control Status Byte (\$INDST)}{\RTLnumber {2\foliodelim 55}} \toctexentry {3}{\RTLnumber {2.6.1.8}}{Pointer to the End of the Impure Area (\$IMPLO)}{\RTLnumber {2\foliodelim 56}} \toctexentry {3}{\RTLnumber {2.6.1.9}}{Default Editor (\$PROGD)}{\RTLnumber {2\foliodelim 56}} \toctexentry {3}{\RTLnumber {2.6.1.10}}{Default FORTRAN Compiler (\$PROGF)}{\RTLnumber {2\foliodelim 56}} \toctexentry {3}{\RTLnumber {2.6.1.11}}{Job Slots on the System (\$JOBS)}{\RTLnumber {2\foliodelim 56}} \toctexentry {3}{\RTLnumber {2.6.1.12}}{Third Configuration Word (\$CNFG3)}{\RTLnumber {2\foliodelim 57}} \toctexentry {3}{\RTLnumber {2.6.1.13}}{KMON{\slash }UCF Interface Word (CLI.FL{\slash }CLI.TY)}{\RTLnumber {2\foliodelim 58}} \toctexentry {2}{\RTLnumber {2.6.2}}{Impure Area}{\RTLnumber {2\foliodelim 58}} \toctexentry {2}{\RTLnumber {2.6.3}}{Device Tables}{\RTLnumber {2\foliodelim 64}} \toctexentry {3}{\RTLnumber {2.6.3.1}}{\$PNAME Table}{\RTLnumber {2\foliodelim 65}} \toctexentry {3}{\RTLnumber {2.6.3.2}}{\$STAT Table}{\RTLnumber {2\foliodelim 66}} \toctexentry {3}{\RTLnumber {2.6.3.3}}{\$DVREC Table}{\RTLnumber {2\foliodelim 66}} \toctexentry {3}{\RTLnumber {2.6.3.4}}{\$ENTRY Table}{\RTLnumber {2\foliodelim 66}} \toctexentry {3}{\RTLnumber {2.6.3.5}}{\$DVSIZ Table}{\RTLnumber {2\foliodelim 66}} \toctexentry {3}{\RTLnumber {2.6.3.6}}{\$HSIZE Table}{\RTLnumber {2\foliodelim 67}} \toctexentry {3}{\RTLnumber {2.6.3.7}}{\$UNAM1 And \$UNAM2 Tables}{\RTLnumber {2\foliodelim 67}} \toctexentry {3}{\RTLnumber {2.6.3.8}}{\$OWNER Table}{\RTLnumber {2\foliodelim 67}} \toctexentry {3}{\RTLnumber {2.6.3.9}}{\$PNAM2 Table}{\RTLnumber {2\foliodelim 68}} \toctexentry {3}{\RTLnumber {2.6.3.10}}{Adding a Device to the Tables}{\RTLnumber {2\foliodelim 68}} \toctexentry {0}{\RTLnumber {3}}{Memory Mapping}{\RTLnumber {3\foliodelim 1}} \toctexentry {1}{\RTLnumber {3.1}}{Default System Memory Layouts}{\RTLnumber {3\foliodelim 2}} \toctexentry {2}{\RTLnumber {3.1.1}}{Mapped System Memory Layout}{\RTLnumber {3\foliodelim 2}} \toctexentry {1}{\RTLnumber {3.2}}{Default Job Mapping}{\RTLnumber {3\foliodelim 5}} \toctexentry {2}{\RTLnumber {3.2.1}}{Privileged Mapping Environment}{\RTLnumber {3\foliodelim 7}} \toctexentry {3}{\RTLnumber {3.2.1.1}}{Privileged Background Job}{\RTLnumber {3\foliodelim 8}} \toctexentry {3}{\RTLnumber {3.2.1.2}}{Privileged Foreground or System Job}{\RTLnumber {3\foliodelim 8}} \toctexentry {2}{\RTLnumber {3.2.2}}{Virtual Mapping Environment}{\RTLnumber {3\foliodelim 8}} \toctexentry {3}{\RTLnumber {3.2.2.1}}{Selecting Virtual Mapping}{\RTLnumber {3\foliodelim 11}} \toctexentry {3}{\RTLnumber {3.2.2.2}}{A Virtual Background Job}{\RTLnumber {3\foliodelim 11}} \toctexentry {3}{\RTLnumber {3.2.2.3}}{A Virtual Foreground or System Job}{\RTLnumber {3\foliodelim 12}} \toctexentry {2}{\RTLnumber {3.2.3}}{Completely Virtual Mapping Environment}{\RTLnumber {3\foliodelim 13}} \toctexentry {3}{\RTLnumber {3.2.3.1}}{V{\slash }VRUN Keyboard Command}{\RTLnumber {3\foliodelim 14}} \toctexentry {3}{\RTLnumber {3.2.3.2}}{Nonseparated I-D Space Completely Virtual Environment}{\RTLnumber {3\foliodelim 15}} \toctexentry {4}{\RTLnumber {3.2.3.2.1}}{Automatic Job Running}{\RTLnumber {3\foliodelim 15}} \toctexentry {4}{\RTLnumber {3.2.3.2.2}}{Stopping Automatic Job Running }{\RTLnumber {3\foliodelim 15}} \toctexentry {3}{\RTLnumber {3.2.3.3}}{Separated I-D Space Completely Virtual Environment}{\RTLnumber {3\foliodelim 16}} \toctexentry {3}{\RTLnumber {3.2.3.4}}{Chaining in the Completely Virtual Environment}{\RTLnumber {3\foliodelim 17}} \toctexentry {3}{\RTLnumber {3.2.3.5}}{Completely Virtual Background Job}{\RTLnumber {3\foliodelim 18}} \toctexentry {3}{\RTLnumber {3.2.3.6}}{Completely Virtual Foreground{\slash }System Job}{\RTLnumber {3\foliodelim 18}} \toctexentry {1}{\RTLnumber {3.3}}{Kernel, User, and Supervisor Processor Modes}{\RTLnumber {3\foliodelim 23}} \toctexentry {1}{\RTLnumber {3.4}}{How Programs Control Mapping}{\RTLnumber {3\foliodelim 29}} \toctexentry {2}{\RTLnumber {3.4.1}}{Physical Address Regions}{\RTLnumber {3\foliodelim 29}} \toctexentry {3}{\RTLnumber {3.4.1.1}}{Local Regions}{\RTLnumber {3\foliodelim 30}} \toctexentry {3}{\RTLnumber {3.4.1.2}}{Global Regions}{\RTLnumber {3\foliodelim 30}} \toctexentry {3}{\RTLnumber {3.4.1.3}}{Handler Global Regions}{\RTLnumber {3\foliodelim 31}} \toctexentry {2}{\RTLnumber {3.4.2}}{Virtual Address Windows}{\RTLnumber {3\foliodelim 31}} \toctexentry {3}{\RTLnumber {3.4.2.1}}{The Static Window}{\RTLnumber {3\foliodelim 32}} \toctexentry {3}{\RTLnumber {3.4.2.2}}{Dynamic Windows}{\RTLnumber {3\foliodelim 33}} \toctexentry {2}{\RTLnumber {3.4.3}}{Program's Logical Address Space (PLAS)}{\RTLnumber {3\foliodelim 33}} \toctexentry {2}{\RTLnumber {3.4.4}}{Mapping and Context Switches with Virtual and Privileged Jobs}{\RTLnumber {3\foliodelim 33}} \toctexentry {1}{\RTLnumber {3.5}}{Introduction to the Extended Memory Programmed Requests}{\RTLnumber {3\foliodelim 35}} \toctexentry {1}{\RTLnumber {3.6}}{Extended Memory Data Structures}{\RTLnumber {3\foliodelim 36}} \toctexentry {2}{\RTLnumber {3.6.1}}{Region Definition Block}{\RTLnumber {3\foliodelim 37}} \toctexentry {3}{\RTLnumber {3.6.1.1}}{Region Status Word (R.GSTS)}{\RTLnumber {3\foliodelim 38}} \toctexentry {3}{\RTLnumber {3.6.1.2}}{.RDBDF Macro}{\RTLnumber {3\foliodelim 39}} \toctexentry {3}{\RTLnumber {3.6.1.3}}{.RDBBK Macro}{\RTLnumber {3\foliodelim 40}} \toctexentry {2}{\RTLnumber {3.6.2}}{Region Control Block}{\RTLnumber {3\foliodelim 40}} \toctexentry {2}{\RTLnumber {3.6.3}}{Global Region Control Block}{\RTLnumber {3\foliodelim 41}} \toctexentry {3}{\RTLnumber {3.6.3.1}}{Global Region Control Block Status Byte (GR.STA)}{\RTLnumber {3\foliodelim 42}} \toctexentry {2}{\RTLnumber {3.6.4}}{Window Definition Block}{\RTLnumber {3\foliodelim 42}} \toctexentry {3}{\RTLnumber {3.6.4.1}}{Window Status Word (W.NSTS)}{\RTLnumber {3\foliodelim 45}} \toctexentry {3}{\RTLnumber {3.6.4.2}}{.WDBDF Macro}{\RTLnumber {3\foliodelim 46}} \toctexentry {3}{\RTLnumber {3.6.4.3}}{.WDBBK Macro}{\RTLnumber {3\foliodelim 47}} \toctexentry {2}{\RTLnumber {3.6.5}}{Window Control Block}{\RTLnumber {3\foliodelim 48}} \toctexentry {2}{\RTLnumber {3.6.6}}{Mapping Context Area (MCA) Region}{\RTLnumber {3\foliodelim 50}} \toctexentry {2}{\RTLnumber {3.6.7}}{I/O Queue Element}{\RTLnumber {3\foliodelim 54}} \toctexentry {2}{\RTLnumber {3.6.8}}{Free Memory List}{\RTLnumber {3\foliodelim 54}} \toctexentry {1}{\RTLnumber {3.7}}{Flow of Control Within Each Programmed Request}{\RTLnumber {3\foliodelim 54}} \toctexentry {2}{\RTLnumber {3.7.1}}{Defining the Memory Mapping Context: .CMAP, .GCMAP, .MSDS}{\RTLnumber {3\foliodelim 54}} \toctexentry {2}{\RTLnumber {3.7.2}}{Creating a Local Region: .CRRG}{\RTLnumber {3\foliodelim 56}} \toctexentry {2}{\RTLnumber {3.7.3}}{Creating and Attaching to a Global Region}{\RTLnumber {3\foliodelim 56}} \toctexentry {2}{\RTLnumber {3.7.4}}{Attaching to an Existing Global Region}{\RTLnumber {3\foliodelim 57}} \toctexentry {2}{\RTLnumber {3.7.5}}{Detaching from a Global Region}{\RTLnumber {3\foliodelim 57}} \toctexentry {2}{\RTLnumber {3.7.6}}{Creating a Window: .CRAW}{\RTLnumber {3\foliodelim 58}} \toctexentry {2}{\RTLnumber {3.7.7}}{Mapping a window to a Region: .MAP}{\RTLnumber {3\foliodelim 59}} \toctexentry {2}{\RTLnumber {3.7.8}}{Getting the Mapping Status: .GMCX}{\RTLnumber {3\foliodelim 60}} \toctexentry {2}{\RTLnumber {3.7.9}}{Unmapping a Window: .UNMAP}{\RTLnumber {3\foliodelim 61}} \toctexentry {2}{\RTLnumber {3.7.10}}{Eliminating a Local Region: .ELRG}{\RTLnumber {3\foliodelim 62}} \toctexentry {2}{\RTLnumber {3.7.11}}{Eliminating a Global Region}{\RTLnumber {3\foliodelim 62}} \toctexentry {2}{\RTLnumber {3.7.12}}{Automatic Global Region Elimination}{\RTLnumber {3\foliodelim 63}} \toctexentry {2}{\RTLnumber {3.7.13}}{Eliminating a Window: .ELAW}{\RTLnumber {3\foliodelim 63}} \toctexentry {1}{\RTLnumber {3.8}}{Typical Extended Memory Applications}{\RTLnumber {3\foliodelim 64}} \toctexentry {2}{\RTLnumber {3.8.1}}{Completely Virtual Environment (VRUN)}{\RTLnumber {3\foliodelim 64}} \toctexentry {2}{\RTLnumber {3.8.2}}{Minimizing Low-Memory Usage}{\RTLnumber {3\foliodelim 64}} \toctexentry {2}{\RTLnumber {3.8.3}}{Large Buffers or Arrays in Extended Memory}{\RTLnumber {3\foliodelim 66}} \toctexentry {2}{\RTLnumber {3.8.4}}{Multi-User Program}{\RTLnumber {3\foliodelim 67}} \toctexentry {2}{\RTLnumber {3.8.5}}{Work Space in Extended Memory}{\RTLnumber {3\foliodelim 68}} \toctexentry {3}{\RTLnumber {3.8.5.1}}{Enabling the XM Feature of the .SETTOP Programmed Request}{\RTLnumber {3\foliodelim 68}} \toctexentry {3}{\RTLnumber {3.8.5.2}}{Program ad Virtual High Limits and the Next Free Address}{\RTLnumber {3\foliodelim 69}} \toctexentry {3}{\RTLnumber {3.8.5.3}}{Non-XM .SETTOP}{\RTLnumber {3\foliodelim 69}} \toctexentry {3}{\RTLnumber {3.8.5.4}}{XM .SETTOP}{\RTLnumber {3\foliodelim 71}} \toctexentry {3}{\RTLnumber {3.8.5.5}}{XM .SETTOP and Privileged Jobs}{\RTLnumber {3\foliodelim 72}} \toctexentry {3}{\RTLnumber {3.8.5.6}}{XM .SETTOP and Virtual Jobs}{\RTLnumber {3\foliodelim 74}} \toctexentry {3}{\RTLnumber {3.8.5.7}}{.SETTOP and Completely Virtual Jobs}{\RTLnumber {3\foliodelim 76}} \toctexentry {3}{\RTLnumber {3.8.5.8}}{Summary of .SETTOP Action}{\RTLnumber {3\foliodelim 78}} \toctexentry {2}{\RTLnumber {3.8.6}}{Directly Modifying Address Page Registers (APRs)}{\RTLnumber {3\foliodelim 83}} \toctexentry {1}{\RTLnumber {3.9}}{Hardware Concepts}{\RTLnumber {3\foliodelim 84}} \toctexentry {2}{\RTLnumber {3.9.1}}{Virtual and Physical Addresses with Extended Memory Hardware}{\RTLnumber {3\foliodelim 84}} \toctexentry {2}{\RTLnumber {3.9.2}}{Circumventing the 32K-Word Address Limitation}{\RTLnumber {3\foliodelim 84}} \toctexentry {2}{\RTLnumber {3.9.3}}{Concept of Pages}{\RTLnumber {3\foliodelim 85}} \toctexentry {2}{\RTLnumber {3.9.4}}{Relocation}{\RTLnumber {3\foliodelim 86}} \toctexentry {2}{\RTLnumber {3.9.5}}{Active Page Register (APR)}{\RTLnumber {3\foliodelim 87}} \toctexentry {3}{\RTLnumber {3.9.5.1}}{Page Address Register (PAR)}{\RTLnumber {3\foliodelim 88}} \toctexentry {3}{\RTLnumber {3.9.5.2}}{Page Descriptor Register (PDR)}{\RTLnumber {3\foliodelim 89}} \toctexentry {2}{\RTLnumber {3.9.6}}{Converting a 16-Bit Address to an 18- Or 22-Bit Address}{\RTLnumber {3\foliodelim 92}} \toctexentry {2}{\RTLnumber {3.9.7}}{Status Registers}{\RTLnumber {3\foliodelim 94}} \toctexentry {1}{\RTLnumber {3.10}}{Restrictions and Design Implications}{\RTLnumber {3\foliodelim 94}} \toctexentry {2}{\RTLnumber {3.10.1}}{PAR1 Restriction}{\RTLnumber {3\foliodelim 94}} \toctexentry {2}{\RTLnumber {3.10.2}}{PAR2 Restriction}{\RTLnumber {3\foliodelim 95}} \toctexentry {2}{\RTLnumber {3.10.3}}{Programmed Requests}{\RTLnumber {3\foliodelim 95}} \toctexentry {2}{\RTLnumber {3.10.4}}{Synchronous System Traps}{\RTLnumber {3\foliodelim 95}} \toctexentry {3}{\RTLnumber {3.10.4.1}}{TRAP, BPT, And IOT Instructions}{\RTLnumber {3\foliodelim 96}} \toctexentry {3}{\RTLnumber {3.10.4.2}}{Traps to 4 and 10, and FPU Traps}{\RTLnumber {3\foliodelim 97}} \toctexentry {3}{\RTLnumber {3.10.4.3}}{Memory Management Faults}{\RTLnumber {3\foliodelim 97}} \toctexentry {3}{\RTLnumber {3.10.4.4}}{Memory Parity Errors}{\RTLnumber {3\foliodelim 97}} \toctexentry {1}{\RTLnumber {3.11}}{Debugging an Extended Memory Application}{\RTLnumber {3\foliodelim 98}} \toctexentry {1}{\RTLnumber {3.12}}{Extended Memory Example Program}{\RTLnumber {3\foliodelim 98}} \toctexentry {1}{\RTLnumber {3.13}}{Procedure to Create and Map a Global Region}{\RTLnumber {3\foliodelim 98}} \toctexentry {0}{\RTLnumber {4}}{Multiterminal Feature}{\RTLnumber {4\foliodelim 1}} \toctexentry {1}{\RTLnumber {4.1}}{Components of a Multiterminal System}{\RTLnumber {4\foliodelim 1}} \toctexentry {1}{\RTLnumber {4.2}}{Hardware Background Information}{\RTLnumber {4\foliodelim 2}} \toctexentry {1}{\RTLnumber {4.3}}{What is the Console Terminal?}{\RTLnumber {4\foliodelim 4}} \toctexentry {1}{\RTLnumber {4.4}}{Connecting Handlers to Terminal Lines}{\RTLnumber {4\foliodelim 5}} \toctexentry {2}{\RTLnumber {4.4.1}}{Monitor Support}{\RTLnumber {4\foliodelim 7}} \toctexentry {3}{\RTLnumber {4.4.1.1}}{Terminal Hooks Data Structure, THOOKS}{\RTLnumber {4\foliodelim 7}} \toctexentry {3}{\RTLnumber {4.4.1.2}}{Terminal Output Enable Routine, MTOENB}{\RTLnumber {4\foliodelim 8}} \toctexentry {3}{\RTLnumber {4.4.1.3}}{Terminal Line Break Routine, MTYBRK}{\RTLnumber {4\foliodelim 9}} \toctexentry {3}{\RTLnumber {4.4.1.4}}{Terminal Modem Control Routine, MTYCTL}{\RTLnumber {4\foliodelim 9}} \toctexentry {3}{\RTLnumber {4.4.1.5}}{Terminal Modem Status Routine, MTYSTA}{\RTLnumber {4\foliodelim 10}} \toctexentry {2}{\RTLnumber {4.4.2}}{Connecting a Serial Interface Printer Handler (LS)}{\RTLnumber {4\foliodelim 11}} \toctexentry {2}{\RTLnumber {4.4.3}}{Connecting a Serial Communications Handler (XL)}{\RTLnumber {4\foliodelim 12}} \toctexentry {1}{\RTLnumber {4.5}}{Using Two or More Terminals}{\RTLnumber {4\foliodelim 12}} \toctexentry {2}{\RTLnumber {4.5.1}}{A Separate Terminal for Each Job}{\RTLnumber {4\foliodelim 12}} \toctexentry {2}{\RTLnumber {4.5.2}}{Multiterminal Applications}{\RTLnumber {4\foliodelim 12}} \toctexentry {1}{\RTLnumber {4.6}}{Introduction to Multiterminal Programmed Requests}{\RTLnumber {4\foliodelim 13}} \toctexentry {1}{\RTLnumber {4.7}}{Multiterminal Data Structures}{\RTLnumber {4\foliodelim 14}} \toctexentry {2}{\RTLnumber {4.7.1}}{Terminal Control Block (TCB)}{\RTLnumber {4\foliodelim 14}} \toctexentry {3}{\RTLnumber {4.7.1.1}}{Format}{\RTLnumber {4\foliodelim 14}} \toctexentry {3}{\RTLnumber {4.7.1.2}}{Patching a TCB}{\RTLnumber {4\foliodelim 24}} \toctexentry {2}{\RTLnumber {4.7.2}}{Asynchronous Terminal Status (AST) Word}{\RTLnumber {4\foliodelim 25}} \toctexentry {1}{\RTLnumber {4.8}}{Using the Multiterminal Programmed Requests}{\RTLnumber {4\foliodelim 26}} \toctexentry {2}{\RTLnumber {4.8.1}}{Attaching a Terminal: .MTATCH}{\RTLnumber {4\foliodelim 26}} \toctexentry {2}{\RTLnumber {4.8.2}}{Getting Terminal Status: .MTGET}{\RTLnumber {4\foliodelim 27}} \toctexentry {2}{\RTLnumber {4.8.3}}{Setting Terminal Characteristics: .MTSET}{\RTLnumber {4\foliodelim 27}} \toctexentry {2}{\RTLnumber {4.8.4}}{Getting Characters: .MTIN}{\RTLnumber {4\foliodelim 28}} \toctexentry {2}{\RTLnumber {4.8.5}}{Printing Characters: .MTOUT}{\RTLnumber {4\foliodelim 28}} \toctexentry {2}{\RTLnumber {4.8.6}}{Printing a Line: .MTPRNT}{\RTLnumber {4\foliodelim 29}} \toctexentry {2}{\RTLnumber {4.8.7}}{Resetting CTRL/O: .MTRCTO}{\RTLnumber {4\foliodelim 29}} \toctexentry {2}{\RTLnumber {4.8.8}}{Getting System Status: .MTSTAT}{\RTLnumber {4\foliodelim 29}} \toctexentry {2}{\RTLnumber {4.8.9}}{Detaching a Terminal: .MTDTCH}{\RTLnumber {4\foliodelim 30}} \toctexentry {1}{\RTLnumber {4.9}}{The Console as a Special Case}{\RTLnumber {4\foliodelim 30}} \toctexentry {1}{\RTLnumber {4.10}}{Interrupt Service}{\RTLnumber {4\foliodelim 30}} \toctexentry {2}{\RTLnumber {4.10.1}}{Local Terminals}{\RTLnumber {4\foliodelim 31}} \toctexentry {2}{\RTLnumber {4.10.2}}{Remote Terminals}{\RTLnumber {4\foliodelim 31}} \toctexentry {1}{\RTLnumber {4.11}}{Polling Routines}{\RTLnumber {4\foliodelim 32}} \toctexentry {2}{\RTLnumber {4.11.1}}{Time-Out Routine for DL Terminals}{\RTLnumber {4\foliodelim 32}} \toctexentry {2}{\RTLnumber {4.11.2}}{DZ Remote Line Polling Routine}{\RTLnumber {4\foliodelim 32}}