SY28 0766 0_OS_VS2_System_Logic_Library_Vol_6_Rel_3.7_Jul76 0 OS VS2 System Logic Library Vol 6 Rel 3.7 Jul76
User Manual: SY28-0766-0_OS_VS2_System_Logic_Library_Vol_6_Rel_3.7_Jul76
Open the PDF directly: View PDF .
Page Count: 360
Download | |
Open PDF In Browser | View PDF |
1/ SY28-0766-0 File No. S370-36 Systems OS/VS2 System Logic Library Volume 6 VS2.03.804 VS2.03.805 VS2.03.807 i \ Pages numbered as duplicates in this publication must be retained because each of these pages contains information specific to an individual Selectable Unit. This minor revision incorporates the following Selectable Units: Scheduler Improvements Supervisor Performance #1 Supervisor Performance #2 VS2.03.804 VS2.03.805 VS2.03.807 The selectable unit to which the information applies, is noted in the upper corner of the page. First Edition (July, 1976) This is a reprint of SY28-0718-0 incorporating changes released in the following Selectable Unit Newsletters: SN28-2684 SN28-2689 SN28-2695 (dated May 28, 1976) (dated May 28, 1976) (dated May 28, 1976) This edition applies to Release 3.7 of OS/VS2 and to all subsequent releases of OS/VS2 until otherwise indicated in new editions or Technical Newsletters. Changes arc continually made to the information herein; before using this publication in connection with the operation oflBM systems, consult the latest IBM System/370 Bibliography, GC20-0001, for the editions that are applicable and current. Requests for copies of IBM publications should be made to your IBM representative or to the lllM branch office serving your locality. A form for readers' comments is provided at the back of this publication. If the form has been removed, comments may be addressed to IBM Corporation, Publications Development, Department D58, Building 706-2, PO Box 390, Poughkeepsie, N.Y. 12602. Comments become the property of IBM. ©Copyright International Business Machines Corporation 1976 Preface System Logic Library comprises seven volumes. Following is the content and order number for each volume. OS/VS2 System Logic Library, Volume t contents: SY28-07 t 3 MVS logic introduction Abbreviation list Index for all volumes Volume 2 contents: SY28-07 t 4 Method of Operation diagrams for Communications Task Command Processing Region Control Task (RCT) Started Task Control (STC) LOGON Scheduling Volume 3 contents: SY28-071S Method· of Operation diagrams for System Resources Manager (SRM) System Activity Measurement Activity (MF /1) JOB Scheduling -Subsystem Interface -Master Subsystem -Initiator /Terminator -SW A Create Interface -Converter /Interpreter -SW A Manager -Allocation/U nallocation -System Management Facilities (SMF) -System Log -Checkpoint/Restart Volume 4 contents: SY28-07 t 6 Method of Operation diagrams for Timer Supervision Supervisor Control Task Management Program Management Recovery /Termination Management (R/TM) Volume 5 contents: SY28-07 t 7 Method of Operation diagrams for Real Storage Management (RSM) Virtual Storage Management (VSM) Auxiliary Storage Management (ASM) Volume 6 contents: SY28-0718 Program Organization Volume 7 contents: SY28-0719 Directory Data Areas Diagnostic Aids Please note that if you use only one order number, you will only receive that volume. To receive all seven volumes, you must either use all seven form numbers or, simply the following number: SBOF-8210. If you use SBOF-8210, you will receive all seven volumes. The publication is intended for persons who are debugging or modifying the system. For general information about the use of the MVS system, refer to the publication Introduction to OS/VS Release 2, GC28-0661. How This Publication is Organized This publication contains six chapters. Following, is a synopsis of the information in each section: • Introduction and Master Index - an overview of each of the functions this publication documents, an abbreviation list of all acronyms used in the publication, and a complete index for all seven volumes. • Method of Operation - a functional approach to each of the subcomponents, using both diagrams and text. Each subcomponent begins with an introduction; all the diagrams and text" applying to that subcomponent follow. • Program Organization - a description of module-to-module flow for each subcomponent; a description of each module's function, including entry and exit. The module-to-module flow is ordered by subcomponent. The module descriptions are in alphabetic order without regard to subcomponent. • Directory - a cross-reference from names in the various sUbcomponents to thejr place in the source code and in the publication. • Data Areas - a description of the major data areas used by the subcomponents (only those, however, that are not described in OS / VS Data Areas, SYB8-0606, which is on microfiche); a data area usage table, showing whether a module reads or updates a data area; a control block overview diagram for each subcomponent, showing the various pointer schemes for the control blocks applicable to each subcomponent; a table detailing data area acronyms, mapping macro instructions, common names, and symbol usage table. Preface 3 • Diagnostic Aids - the messages issued, including the modules that issue, detect, and contain the message; register usage; return codes; wait state codes; and Miscellaneous aids. 4 OS/VS2 System Logic Library Volume 6 (VS2 Release 3;7) Corequisite Reading The following publications are corequisites: • OS/VS2 JES2 Logic, SY2S-0622 • OS/VS Data Areas, SYBS-0606 (This document is on microfiche.) • OS/VS2 System Initialization Logic, SY2S-0623 Contents Section 3: Program Organization . . . . . . . . . . . . . . . Module-to-Module Control Flow (See Figure List) . . . . . . Communications Task . . . . . . . . . . . . . . . . . Command Processing (includes Reconfiguration Commands) Region Control Task (RCT) Started Task Control (STC) . . . LOGON Scheduling . . . . . . System Resources Manager (SRM) System Activity Measurement Facility (MF /1) Job Scheduling: Master Subsystem . . Initiator/Terminator SWA Create Interface Converter/Interpreter SWA Manager Allocation/U nallocation System Management Facilities (SMF) System Log . . . . Checkpoint/Restart Timer Supervision Supervisor Control . . Task Management Program Management Recovery /Termination Management (R/TM) Real Storage Management (RSM) Virtual Storage Management (VSM) . Auxiliary Storage Managemnet (ASM) ........ . Module Descriptions Index 6-0 6-1 6-2 6-8 6-22 6-32 6-34 6-36 6-37 6-38 6-39 6-41 6-42 6-45 6-46 6-88 6-89 6-90 6-91 6-114 6-124 6-128 6-189 6-130 6-185 6-200 6-256 I-I Contents 5 Figures Figure 3-1 Figure 3-2 Figure 3-3 Figure 3-4 Figure 3-5 Figure 3-6 Figure 3-7 3-8 Figure Figure 3-9 Figure 3-10 Figure 3-10A Figure 3-10B Figure Figure Figure Figure Figure Figure Figure Figure 3-11 3-12 3-13 3-14 3-15 3-16 3-17 3-18 Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 3-19 3-20 3-21 3-22 3-23 3-24 3-25 3-26 3-27 3-28 3-29 3-30 3-31 3-32 3-33 3-34 3-35 Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figuf(! Figure Figure 3-36 3-37 3-38 3-39 3-40 3-41 3-42 30-43 3-44 3-45 3-46 3-47 3-48 3-49 3-50 3-51 3-52 3-53 Figure 3-54 Figure 3-55 Figure 3-56 Figure 3-57 Figure 3-58 Figure 3-58A Figure 3-58B Figure 3-59 Figure 3-60 6 OS/VS2 System Logic Library Voium~ WTO and WTOR Processing Module Flow (Communication Task) 6-2 DOM Processing Module Flow (Communication Task) 6-4 Attention Interrupt Processing Module Flow (Communication Task) 6-5 External Interrupt Processing Module Flow (Communication Task) 6-6 I/O Complete Processing Module Flow (Communication Task) 6-7 Command Processing Program Organization Overview 6-8 Region Control Task (RCT) Module Flow 6-22 Started Task Control (STC) Module Flow 6-32 LOGON Scheduling Module Flow 6-34 System Resources Manager (SRM) Module Flow 6-36 System Resources Manager (SRM) Mainline Processing Module Flow (VS2.03.807) · 6-36 System Resources Manager (SRM) Command Processing Module Flow (VS2.03.807) 6-36.1 System Activity Measurement Facility (MF/l) Module Flow · 6-37 Master Subsystem Module Flow · 6-38 Initiator/Terminator Module Flow · 6-39 SWA Create Interface Module Flow · 6-41 Converter Module Flow · 6-42 Interpreter Module Flow · 6-44 SW A Manager Module Flow · 6-45 Batch and Dynamic Allocation/Unallocation Module Flow Overview · 6-47 Common Allocation Module Flow Overview · 6-48 IEFAB4AO - Common Unallocation Control · 6-49 IEF AB421 - Common Allocation Control · 6-51 IEFAB434 - Allocate Request to Unit · 6-53 IEFAB436 - Nonspecific Volume Allocation Control · 6-55 IEFAB451 - JFCB Housekeeping Control · 6-56 IEF AB454 - DD Function Control · 6-57 IEFAB469 - JLOCATE · 6-60 IEF AB471 - Generic Allocation Control · 6-61 IEFAB476 - Allocation Via Algorithm 6-63 IEFAB479 - Demand Allocation 6-64 IEF AB485 - Recovery Allocation 6-65 IEFAB486 - Offline/Allocated Device Allocation 6-67 IEFAB490 - Common Allocation Cleanup · 6-71 IEFAB491 - Wait Holding Resources · 6-73 IEFAB493 - VM&V (Volume Mount & Verify) Control · 6-74 IEFBB401 - Initiator/Allocation Interface · 6-75 IEFBB410 - Initiator/Unallocation Interface · 6-77 IEFDB4AO - Dynamic Unallocation Control · 6-80 IEFDB400 - SVC 99 Control 6-81 IEFDB410 - Dynamic Allocation Control 6-84 System Management Facilities (SMF) Recording: Program Organization 6-88 System Log Task Program Organization · 6-89 Checkpoint/Restart Program Organization · 6-90 Timing Services Module Flow · 6-91 Interprocessor Communications ope) Module Flow 6-114 Interruption Handlers Module Flow 6-115 Dispatcher and SCHEDULE Module Flow 6-119 Supervisor Routines Module Flow 6-120 Supervisor Control Recovery Module Flow 6-122 ATTACH, DETACH, and ENQ/RESERVE Module Flow 6-124 DEQ, CHAP, WAIT, and POST Module Flow 6-125 SPIE, EXTRACT, EXIT, and Exit Prolog Module Flow 6-126 STATUS, MODESET, and TESTAUTH Module Flow 6-127 LINK, SYNCH, LOAD, Program FETCH/BLDL Interface Module Flow 6-128 DELETE, IDENTIFY, XCTL Module Flow 6-129 Space Allocatioll/Deallocation Overview Module Flow 6-130 6-131 Page Fault Processing Overview Module Flow 6-132 Page Services Overview Module Flow 6-133 SWAP Overview Module Flow Swap-Out Overview (VS2.03.807) 6-133 Swap-In Overview (VS2.03.807) 6-133.0 6-134 VIO Services Overview Module Flow 6-135 RSM Module Flow - lEAVSQA 6 (VS2.03.807) Figure Figure 3-61 3-62 Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 3-63 3-64 3-65 3-66 3-67 3-68 3-69 3-70 3-71 3-72 3-73 3-74 3-74 Figure Figure Figure Figure Figure Figure Figure Figure Figure 3-75 3-76 3-76 3-77 3-78 3-79 3-80 3-31 3-82 3-83 Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 3-84 3-85 3-86 3-87 3-88 3-89 3-90 3-91 3-92 3-93 Figure 3-94 F~gure Figure 3-95 Figure 3-95 Figure 3-96 Figure 3-96 Figure 3-97 Figure 3-97 Figure 3-98 Figure 3-98 Figure 3-99 Figure 3-99 Figure 3-100 Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 3-100 3-101 3-102 3-103 3-104 3-105 3-106 3-107 3-108 3-109 3-110 3-111 3-112 3-113 3-114 Figure 3-115 Fi~ure 3-116 RSM Module Flow - lEA VEQ R Initial Region Allocation 6-136 RSM Module Flow - lEAVEQR Asynchronous Completion and V =R and V=R Clearing 6-138 RSM Module Flow - IEAVEQR Free V=R Region 6-140 RSM Module Flow - lEAVRELS FREE MAIN Release 6-141 RSM Module Flow - lEA VCSEG,IEAVDSEG 6-143 RSM Module Flow - lEA VPIX 6-144 RSM Module Flow - IEAVGFA 6-145 RSM Module Flow - IEAVPIOP 6-147 RSM Module Flow - IEAVIOCP 6-148 RSM Module Flow - lEA VPSI 6-150 RSM Module Flow - lEA VFXLD and lEA VFXLD Root Exit 6-151 RSM Module Flow - lEA VFREE 6-153 RSM Module Flow - IEAVOUT, IEAVRELS 6-154 RSM Module Flow - lEA VSWIN and lEA VSWIN Root Exit 6-157 RSM Module Flow - lEAVSWIN, lEAVSWIN Root Exit, and lEA VSWIN Post Routine (VS2.03.807) 6-157 RSM Module Flow - lEA VSOUT 6-160 RSM Module Flow - lEA VSOUT Root Exit, lEAVPIOI 6-163 RSM Module Flow - lEA VPIOI (VS2.03.807) 6-163 RSM Module Flow - lEA VAMSI 6-165 RSM Module Flow - lEAVIT AS 6-169 RSM Module Flow - lEA VDLAS 6-171 RSM Module Flow - lEA VTERM 6-173 RSM Module Flow - lEA VRFR 6-175 RSM Module Flow - lEA VRCF 6-178 RSM Module Flow - lEA VRCF Offline Interception and Offline and Offline Completion 6-180 RSM Module Flow - lEA VPFTE 6-182 RSM Module Flow - lEA VPCB 6-183 RSM Module Flow - IEAVINV, IEAVFP, IEAVTRV 6-184 VSM Module Flow 6-185 RTMI Module Flow and Basic Functions Performed 6-189 RTM2 Module Flow and Basic Functions Performed 6-190 Address Space Termination Module Flow 6-192 R/TM Services Module Flow 6-193 R/TM Dumping Services - Formatted Dump Module Flow 6-196 R/TM Dumping Services - Synchronous Unformatted Dump Module Flow 6-198 R/TM Dumping Services - Scheduled Unformatted Dump Module Flow 6-199 Example of Module Flow Diagrams 6-205 I/O Control (VS2.03.807) 6-200 ASSIGN LGN - Phase I 6-206 I/O Subsystem (VS2.03.807) 6-203 ASSIGN LGN - Phase II 6-207,208,209 VIO Control (VS2.03.807) 6-205 TRANSFER LOGICAL PAGE - Phase I 6-210 VIO Group Operators (VS2.03.807) 6-208 TRANSFER LOGICAL PAGE - Phase II 6-6-211,212,213,214,215,216 Recovery (VS2.03.807) 6-210 ASSIGN LOGICAL SEGMENT(s)/RELEASE LOGICAL SEGMENT(s) - Phase I 6-217 Service Routines (VS2.03.807) 6-211 WRITE MESSAGE TO OPERATOR - Phase I 6-218 ASSIGN LOGICAL SEGMENT(s) - Phase II 6-219,220,221 RELEASE LOGICAL SEGMENT(s) - Pahse II 6-222,223,224 SAVE LG - Phase I 6-225 RELEASE LOGICAL GROUP -Phase I 6-226 RELEASELOGICAL GROUP - Phase I 6-227 ACTIV ATE LG - Phase I 6-228 ACTIVATE, SAVE, and RELEASE LG - Phase II 6-229,230,231 INPUT/OUTPUT - Phase I 6-232 INPUT/OUTPUT - Phase I 6-233 INPUT /OUTPUT-Phase II . 6-234,235,236,239 I/O COMPLETE - Phase II 6-238,239 I/O MONITOR - Phase II 6-240 T ASK MODE CONTROLLER (Including WRITE MESSAGE - Phase III) 6-241 RELEASE LOGICAL GROUP - Phase III 6-242 RELEASE LOGICAL GROUP - Phase III 6-243, 244 Contents 7 Figure Figure Figure Figure Figure Figure Figure Figure Figure 8 3-117 3-118 3-119 3-120 3-121 3-122 3-123 3-124 3-125 RELEASE LOGICAL GROUP - Phase III ACTIVATE LG - Phase III ACTIVATE LG - Phase III ACTIVATE LG - Phase III ACTIVATE LG - Phase III ACTIVATE LG - Phase III ACTIVATE LG - Phase III SA VE LG - Phase III SAVE LG - Phase III . . . OS/VS2 System Logic Library Volume 6 (VS2.03.807) 6-245,246 6-247 6-248 6-249 6-250 6-251 6-252 6-253 6-254,256 Section 3: Program Organization. This section describes the physical organization of the object modules that perform the scheduler and supervisor functions for the OS/VS2 operating system. The first part of the section is a collection of charts showing the control flow among the object modules during the operation of the OS/VS2 system. The charts are arranged by subcomponent. The second part describes each object module as follows: • Summarizes the operation of the module. • Names the modules that pass control to it. • Names the modules that receive control from it. The module descriptions are arranged alphameric ally by module name. Section 3: Program Organization 6·1 tf' N o r'-l "< User or System Program WTO/R Macro Instructions r'-l N r'-l '< ~ 9 E (S" t"" a: ~ ~ ~ IEECVCTE IEFJSREO JES2WTO Routine Loc=JES2 User Exit Routine Loc=LPA ..q/~aJls e 1t:F:SSf:it:~anChes Ilia 'the Part 2 Ins'tr(JCtion Macro (D 0'1 / '< Write to Operator Service Loc=LPA r'-l N ::t' (D if ~ w ~ IEEJB840 Write to Programmer Loc=LPA /J:V -Gl / ,/'" /~'V / WTO or WTOR Only IEAVMWTO Multiple Line WTO Service Loc=LPA AlWayS BranChes Ilia the IEFSSREQ Macro I nStrllCtion IEFJSREO JES2 WTO Routine Loc=JES2 Figure 3-1. WTO and WTOR Processing Module Flow (Communication Task) (Part 1 of 2) IEAVMOWR ,IEAVEDSO Dispatcher ..-...-.. Note: With the exception of the wait service routine (I EA VMOWR), control is returned to the calling module beneath where the called module was given control. COMT ASK Wait Service Routine Loc=LPA )I Part 1 / / / / CV lD/~ /" /'" /'" ,/" ~ ....... ....... ....... ........ When control is returned to the wait service routine, instead of continuing processing where it gave up control, it looks for other communication task functions to be performed. If one is found, it is performed. If one is not found, the wait service routine reenters the wait state until the next communication task event control block is posted. Output Pending Bit (UCMPF) ECB = UCMO ECB Other Communication Task Functions IEAVMORO (OREGO) Unconditiona I Message to Inactive Console Loc=LPA IEAVMWSV Oueue Messages to Device Loc=LPA -., IEAVMDSV ~ Device Service Routine Loc=LPA ----- *The control flow of DIDOCS modules is indicated by the DIDOCS trace table in the pageable DCM. F or a description of the DIDOCS trace table, refer to the "Diagnostic Aids" section of this publication. IEAVVCTR Device Controller Loc=SVC72 fI) (D sa. e' := 2740 Console w 1443 Console ::p i ~. a o· := 0\ ~ I T ~ a ........ 2740oe:l IEEC2740 Support Processor Loc=SVC72 IEAV1443 1443 Device Support Processor Loc=SVC72 Figure 3-1. WTO and WTOR Processing Module Flow (Communication Task) (Part 2 of 2) Graphic Console 3284/3286 Console 1052 Console IEAV1052 1052 Device Support Processor Loc=SVC72 IEECVETW 3284/3286 Device Support Processor Loc=SVC72 IEECVET1* Graphic Device Support Processor (DIDOCS) Loc=SVC72 0'1 ;.. o CI) ~ CI) User or System Program DOM Macro IEAVMQWR IEAVEDSO ~ o;spa:~J -= N CI) '< ~ / (D :I r-' ci n° ------ ....--- COMT ASK Wait Service Routine Loc=LPA ECB = UCMDECB r-' ..0: ~ -< <: 2' :I (D '< CI) N ~ ~ ~ / Branch if Needed o 0'1 ,---- I SUBEXIT JES2DOM Routine Loc = JES2 Loc = JES3 Always Branch -j- - - IEAVXDOM Delete Operator Message Service Loc=LPA IEAVMDOM COMTASK DOM Processor Loc=LPA Other Commun ication Task Functions Device Controller Loc=SVC72 IEECVET1 * DIDOCS Router Module Loc=SVC 72 ~ IEECVET7 DIDOCS Message Deletion Loc=SVC72 IEECVETH/P/R!U DIDOCS Devi ce-dependent 1/0 Loc=SVC72 To "1/0 Complete Processi ng" Figure 3-2. DOM Processing Module Flow (Communication Task) When control is returned to the wait service routine, instead of continuing processing where it gave up control, it looks for other communication task functions to be performed. If one is found, it is performed. If one is not found, the wait service routine reenters the wait state until the next communication task event control block is posted. IEAVVCTR ~ w Note: With the exception of the wait service routine (lEAVMQWR), control is returned to the calling module beneath where the called module was given control. *The control flow of DIDOCS modules is indicated by the DIDOCS trace table in the pageable DCM. For a description of the DIDOCS trace table, refer to' the "Diagnostic Aids" section of this publication. ".., Note: With the exception of the wait service routine (JEAVMQWR), control is returned to the calling module beneath where the called module was given control. IEAVMQWR Attention Interrupt IEAVEDSO Dispatcher / IEEBA1 lOS Interrupt Handler / IEAVVCRA IEEBA1 Attention Interrupt Handler / / ./' 1-- 7 ~ COMTASK Wait Service Routine Loc=LPA 1// ./' /'" When control is returned to the wait service routine, instead of continuing processing where it gave up control, it looks for other communication task function to be performed. If one is found, it is performed. If one is not found, the wait service routine reenters the wait state until the next communication task event control block is posted. IEAVMDSV ./' Device Service Queue Loc=LPA Post CT ECB UCMAECB IEAVVCTR Device Controller Loc=SVC72 '2740 Console 1052 Console IEAV1052 IEEC2740 .......... ....... ....... ....... Graphics Console 2540 Console IEAV2540 CI:l (Il n g, = w "0 2740 Device Support Processor Loc=SVC72 1052 Device Support Processor Loc=SVC72 i s o Graphics Device Support Processor (DIDOCS) Loc=SVC72 "The control flow of D IDOCS modules is indicated by the DroOCS trace table in the pageable DCM. For a description of the DIDOCS trace table, refer to the "Diagnostic Aids" section of this publication. aa = N' ~ ~ g, = z: 2540 Device Support Processor Loc=SVC72 IEECVET1" Figure 3-3. Attention Interrupt Processing Module Flow (Communication Task) External Interrupt I ( Console Panel , I IEAVMQWR \ J I External First Level Interrupt Handler 1 ------- IEAVVCRX - CT External Interrupt Handler - IEAVSWCH UCMXECB Note: On return to the Wait Service Routine, if there are no other services needed, the wait service routine reenters the wait state until the next communication task event control block is posted. Figure 3-4. External Interrupt Processing Module Flow (Communication Task) 6-6 COMTASK Wait Service Routine Loc=LPA OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) COMTASK Console Switch Loc=SVC72 IEAVMQWR I/O Interrupt ~ / //7 cc:;J / / // / Wait Service Routine Loc=LPA / / / /// lOS First Level Interrupt Handler 1 // When control is returned to the wait service routine, instead of continuing processing where it gave up control, it looks for other communication task functions to be performed. If one is found, it is performed. If one is not found, the wait service routine reenters the wait state until the next communication task event control block is posted. IEAVMDSV Device Service Queue Loc=LPA Post CT ECB ~- // " ElL " Note: With the exception of the wait service routine (I EAVMQWR), control is returned to the calling module beneath where the called module was given control. " --UCME ~ V ECB *The control flow of DIDOCS modules is indicated by the 0 IDOCS trace table in the pageable DCM. For a description of the DIDOCS trace table, refer to the "Diagnostic Aids" section of this publication. IEAVVCTR / Device Controller Loc=SVC72 I/O Compo ........... 2740 Console ....... 1443 Console ~ ~ IEECVETW IEEC2740 .... 3284/3286 Console • Graphics Console 2540 Conso Ie 1052 Console IEAV1443 IEAV2540 = ~ ..."CI ci ; 3284/3286 Device Support Processor Loc=SVC72 2740 Device Support Processor Loc=SVC72 1443 Device Support Processor Loc=SVC72 o = =. ~. -=.. 2540 Device Support Processor Loc=SVC72 ........ N· = 1052 Device Support Processor Loc=SVC72 Graphics Device Support Processor (DIDOCS) Loc=SVC72 ......... I/O ErrClr cia II' 0'1 ~IEECVET1* IEAVSWCH 1 ~. Figure 3-5. I/O Complete Processing Module Flow (Communication Task) Console Switch Loc=SVC72 1 Cf' 00 Legend: o A ATTACH L LOAD "(See Legend) ~ ir- - P -:WAITI A :.. ~'-Y UNLOAD Command Syntax Scanner L- I BR BR ~\V ~~. (HARDCPY) r- e: BR ~ -- ?' IEE4703D IEE5703D VARY HARDCpy Operand Processor VARY HARDCPY Processor and Message Router (OFF) BR t- =- 3 BR ~ R IEE4303D ~ IEE7203D 0'1 (MSTCONS) '< CI'.l N BR ~ ~ -- Vary Master Console Processor ~ (ON) _ BR i ~ ~ VARY BR .... (NET) Keyword Scan BR - HARDCPY Informational Message Module ISTCFF3D IEE3203D 1M IEE4103D VARY HARDCPY Operand Processor 2 BR .... (1 ) (See Legend) ~ IED1303D (OFFTP; ONTP)_ BR (2) (See Legend) T If VARY is for a range of device addresses ~ BR _ IEEC8904 - ~ BR VARY Range Processor J ~If a ral BR BR t / CN CHANNEL __ CONSOLE ~ ~ Others CPU BR < OFFLINE j) r ONLINE PATH STORAGE (OFFLINE, S ONLINE,S) " t t BR - IEEOS03D (See Legend) IEE9403D MSS Preprocessor Figure 3-6. Command Processing Program Organization Overview (Part 11 of 14) (CONSOLE; OFFLINE; ONLINE) BR (CHANNEL; CPU; PATH; STORAGE} IEE3603D - VARY Preprocessor and Path Availability Checker ... ~ P WA'Tl ~ • device is bein IEE3303D BR BR _ - -7' Syntax Scan/Router for Vary F ..- V (See Part 12) Command Processing Module(s) IEECLEAN VARY CPU/ Channel Cleanup and Recovery Routine BR IEEVCPU (CHANNEL; CPU) ... A LINK "' BALR "' " IEEVWKUP SIGP VARY (Continued) - LINK VARY PATH Command Processor A - LINK (STORAGE) A - VARY STORAGE Processor IEECB900 I'D g. (CN) A . VARY eN Syntax Checker ~BALR_- IF BALR .... F o ciaI» ::I N' I» g. ::I ~ 1.0 Figure 3-6. Command Processing Program Organization Overview (Part 12 of 14) VARY CN Processor IEFAB49C ... - ~ Validate Page Routine IEECB901 W '''BR - IEEVALST ~ , Device Subroutine ... .... ::I l3 IEEVDEV , IEEMPVST tn , VARY CPU Wakeup and Quiet Routine IEEVPTH (PATH) (") - ~ VARY CPU! Channel Processor EOT D.A. and Tape Unloader EOT 9' N o Command Processing Module(s) o (CONSOLE w/keywords) without SMF rJ'} "< rJ'} BR t-J IEE4403D .. rJ'} BR Keyword Scanner for Vary t IEE4203D '< ~ 9 r"'" J6 1 VARY (Continued) [(CONSOLE w/o keywords) w/o SMF; (OFFLINE); (ONLINE) w/o SMF] r;" .. BR J UCME Scan/Router ... Z (See below) i---- I EE2303D r"'" 0: (CONSOLE; ONLINE) • with SMF ~ BR ~ .. (CONSOLE) without keywords SMF VARY Record Handler - BR C :3 ~ if a range of device addresses is being processed BR IEE44030 (CONSOLE) with keywords 0'1 '< BR rJ'} . .. I -1 (See BR t 11) Keyword Scanner for Vary N :::0 ~ ;- ~ w ~ without non-console IEE4903D Z 1 (CONSOLE) . BR U :.-1 CONSOLE Operand Processor (OFFLINE; ONLINE) with console and with or w/o non-console BR BR BR IEE4603D VARY ON LlNE/ with non-console OFFLINE for Console Devices BR IEE3103D VARY ONLINE/ OFFLINE Processor (OFFLINE; ONLINE) with non-console BR BR p IEE1603D WRITELOG BR .1 LOG! WRITELOG Command Processor Log Task I BR~( R Figure 3-6. Command Processing Program Organization Overview (Part 13 of 14) if a range of device addresses is being processed BR (See Part 11) Insert I. This insert provides greater detail of the module flow for the address space creation process. IEAVEMCR . Viaa SCHEDULE ~Macro { Instruction . Global SRB Memory Create I I BALRI oJ~ IEAVEMIN Memory Initialization \ \ BALR \ IEESB606 L IWAIT Macro] nstrl;lction Address Space , Via an ASCBCHAP Macro-Instruction \ JSCB Build \ \ \ \ \ If IEAVEACO BALR r \ Create/F ree 1----- , ," \ IEAVGCAS Pseudo ATTACH IEAOPT01 * Cross-Memory Post Routine (To notify IEAVEMCR that initialization is complete) 1-:;--------* Entry Point ~ - - ( ECB Posted )-1 I ASCB Enqueue IEAVEMCR Memory Create tZl ~ g' = w "0 o 3 ~ o oa § N' ~ 0' = 0'1 N Figure 3-6. Command Processing Program Organization Overview (Part 14 of 14) IEAVAROO Region Control Task A Started Task ('ontrol from IEAVEMIN ( ENTER Via Program Manager (Paeudo ATTACH) ) -' IEAVAROO Set up recovery environment Attach dump task Attach Started Task Control task If an error occurs issue an error message Issue terminal message if user is a terminal user Issue an ABEND Otherwise 6 IEAVSTAO - ..... - ---. ESTAE IEAVEATO ATTACH IEAVEATO - . . .. ATTACH IEAVVWTO WTO IGCOOO9C -- ---- TPUT -- .- IEAVTRT2 ABEND -J Figure 3-7. Region Control Task (RCT) Module Flow (Part 1 of 10) 6-22 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) .Ir IEAVAR01 Route control to wait for work Route control for processing. - .. -- . IEAVAR02 Quiesce IEAVAR03 Restore IEAVAR04 ... Route control for termination. . - Attention Exit Scheduling IEAVAROO Detach Started Task Control task --- Detach Dump task ..- Cancel recovery environment ....- - -.- ~ .- IEAVEEDO DETACH IEAVEEDO DETACH IEAVSTAO ( EXIT - .- ESTAE ) to IEAVTMT Figure 3-7. Region Control Task (RCT) Module Flow (Part 2 of 10) Section 3: Program Organization 6·23 Quiesce from IEAVAR01 ENTER ) i IEAVAR02 Wait for work. If posted for a termination or Attention Exit request, then exit. Otherwise, enqueue on Purge Resource Set subtasks nondispatchable IEAVSY50 -- ... - WAIT .. I EXIT ... \ ~ To IEAVAR01 IEAVENQ1 .. -. - - -.. ~ Obtain and release local lock ---- - If SET LOCK fails, issue ABEND ---- --"" ENQ IEAVSETS STATUS IEAVELK SETLOCK IEAVTRT2 - -~ ABEND IRARMIOO SYSEVENT Notify SRM of quiesce start and address space activity - ~ - --"" 12 SRM IEAVSETS If not continuing set subtasks dispatchable - ~ ... STATUS IEAVENQ1 Dequeue from Purge Resource -- - Exit - --"" ~ .. r -\. DEQ EXIT ) to IEAVAR01 6 Figure 3-7. Region Control Task (RCD Module Flow (Part 3 of to) 6-24 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) ,r I EAVAR02 (continued). Otherwise Purge I/O activity If Purge fails issue ABEND IGC0001 F - ... - IEAVTRT2 - - -- ... - - -.. CALLDISP Otherwise enter the Dispatcher to allow asynchronous exits to be scheduled Stop the dispatching of SRBs Obtain local lock; obtain and release dispatcher lock PURGE SVC ABEND IEAVEDSO Dispatcher IEAVSETS STATUS IEAVELK - SETLOCK IEAVTRT2 If SET LOCK fails, issue ABEND ABEND - SYSEVENT Notify SRM of quiesce completion and address space activity IRARMIOO ... 13 SRM 6 Figure 3-7. Region Control Task (RCf) Module Flow (Part 4 of 10) Section 3: Program Organization 6-25 , IEAVAR02 (continued) If not continuing Release local lock If SET LOCK fails issue ABEND Start SRB dispatching -.. - IEAVELK ·- SETLOCK IEAVTRT2 - ABEND IEAVSETS - STATUS _I Exit \.. EXIT ) to IEAVAR01 Otherwise Swap out address space If swap-out fails issue ABEND - ·- ·- IEAVSOUT Swap-Out IEAVTRT2 ABEND Otherwise IEAVSY50 Enter wait state until add ress space is swapped in -- ..- WAIT ,Ir ( EXIT to IEAVAR01 Figure 3-7. Region Control Task (RCT) Module Flow (Part 5 of 10) 6-26 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) RESTORE from IEAVAR01 ( ENTER ) 1 IEAVAR03 If 1/0 was purged during quiesce, restore it - .- IGCOOO1G RESTORE SVC IEAVELK - Obtain local lock SETLOCK IEAVTRT2 If SET LOCK fails issue ABEND - .- ABEND IEAVSETS - Set subtdsks dispatchable po STATUS IEAVELK Release local lock SET LOCK IEAVTRT2 - If SETLOCK fails issue ABEND ·· ABEND For Quiesce backout -- SYSEVENT Notify SRM that Quiesce failed .- 18 IRARMIOO SRM Otherwise Notify SRM of restore complete address space activity ( EXIT SYSEVENT -.. 19 -· IRARMIOO SRM ) to IEAVAR01 Figure 3-7. Region Control Task (RCT) Module Flow (Part 6 of 10) Section 3: Program Organization 6-27 Attention Scheduler From IEAVAR01 ( ENTER ) + IEAVAR04 -- Obtain local lock IEAVELK ... SET LOCK IEAVTRT2 - If SETLOCK fails issue ABEND Stop subtasks under TCB --- - - Schedule user exit If TGET or TPUT SVR Bs exist, reset the TCB dispatchable Release the local lock ... - ABEND IEAVSETS ..- - - - -- STATUS IEAVEEE2 Stage 2 Exit Effector IEAVSETS STATUS IEAVELK SETLOCK IEAVTRT2 If SETLOCK fails issue ABEND ( ~ EXIT ... ABEND ) to IEAVAR01 Figure 3-7. Region Control Task (ReT) Module Flow (Part 7 of 10) 6-28 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) Attention Exit Prolog and Epilog from IEAVEDSO C ENTER + IEAVAR05 .f If exit was cancelled \. EXIT ) to IEAVEOR Otherwise Enter user key ..- IEAVMODE ·· MODESET IGCOOO9C Issue terminal message and accept reply if requested Reenter key 0 state Get the local lock Get space for the TAlE Release local lock For a GETMAIN error, issue terminal message and exit otherwise 6 ... .. -- · TPUT/TGET IEAVMODE - MODESET IEAVELK ·- SETLOCK IEAVGMOO .. · .. .. - ..- GETMAIN IEAVELK SETLOCK I GC0009C TPUT .. f \. EXIT to IEAVEOR Figure 3-7. Region Control Task (RCT) Module Flow (Part 8 of 10) Section 3: Program Organization 6-29 IEAVAR05 (continued) If exit is cancelled EXIT to IEAVEOR Otherwise IEAVMODE Enter user Key and state MODESET User Attention Exit to IEAVEOR from IEAVEOR C ENTER IEAVAR06 If a TAl E exists, free it -.. -.. Restart subtasks of TeB - . IEAVGMOO FREEMAIN IEAVSETS STATUS ,r ( EXIT ) to IEAVEOR Figure 3·7. Region Control Task (RCT) Module Flow (Part 9 of 10) 6·30 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) Attention Exit Purge from IEAVTSKT ( ENTER ) + IEAVAR07 IEAVELK ... Get local lock . SETLOCK Eliminate TAXES IEAVELK Release local lock ( ! EXIT ~ ~ _ ... SETLOCK ) to IEAVTSKT Attention Exit Request (ST AX) from IEAVESVC ( ENTER IEAVAXOO' IGCOOO9F ... - Validity check parameters -.. IEAVEVAL Val idity Check IEAVTRT2 -- If parameters invalid, issue ABEND If TAXE is to be cancelled free TAXE and Problem Program Save area If a new TAXE is to be· created ( EXIT -...- ..- - ABEND IEAVGMOO FREEMAIN IEAVEFOO Stage 1 Exit Effector ) to IEAVEOR Figure 3-7. Region Control Task (RCT) Module Flow (Part 10 of 10) Section 3: Program Organization 6-31 From Region Control Task via ATTACH r--'------, , I I IEEPRWI2 1 I STC GETPART Routine L~ I _______ ..JI ~ rT--- ________________________________ For START Commands via XCTL ---, -, rb;:,··...........------...r..---IEEVSTAR I I START Command I,." , .........~......,..--...-....---.----! L.~_'_ I I I I __ " ~..J ~ ______________________________ For MOUNT Commands via XCTL ,------ --. ---, I I IEEVMNT1 I I I For LOGON Commands via XCTL r--- I I MOUNT Command I Syntax I Check Routine I ___ JI L __ _ ~ -----, IKJEF LA LOGON Processor I L ___ I I I +____ JI I via XCTL I I via branch IEEVJCL Job Control Language Build IEEVJCL is loaded with IEEVSTAR and IEEVMNT1,! I ----------~ via XCTL via BALR ,----------, I IEEJSWT STC Write JCL Routine via I EESB605 passes control to the Initiator via LINK; the Initiator ATTACH routine, IEFSD263 attaches I EEVMNT2, the STC MOUNT command processor for MOUNT command processing, I EEVMNT2 returns control to IEFSD263 via a branch, IEESB601 BALR SWA and TIOT Initialization for Private Catalogs ---'-"'--- ---, -'", -,' , --.,I I via BALH I IEEVSMSG I STC Message Module IL _ _ _ _ _ _ _ J I I _'", ___ --1 STC FREE REGION I n any case, when the command task has completed processing, the Initiator oversees termination of the problem program ar.d returns control to IEESB605. Exit To Region Control Task Figure 3·8. Started Task Control (STC) Module Flow (Part 1 of 2) 6-32 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) Note: Shaded areas indicate separate load modules. Recovery Processing Recovery/Termination Manager (R/TM) ~ Recovery (Termination Manager (R(TM) J , ,It IEESB665 STC Recovery Exit To attempt r etry; otherwise, IE ESB670 returns to RITM IEEPRTN2 STC Exit Routine IEESB670 Job Scheduling Subroutine Recovery EXIT J ,~ To attempt r etry; otherwise IE ESB665 returns to R(TM IEESB605 Job Scheduling Subroutine , ~ IEEPRTN2 STC Exit Routine Figure 3-8. Started Task Control (STC) Module Flow (Part 2 of 2) Section 3: Program Organization 6-33 r-----l I STC IKJEFLA ~ -IEE-PRWI2! - - ~ XCTL.. ~ r' - ABEND IKJEFLS ' ESTAE Recovery and Retry I IEEPRTN _......I I.- L_-~B--- XCTL -(error) LOGON Initialization --lIoo.. ' ~ r----..&.-~_ ~CALL ABEND ... t - - - - - - - f r----~,.. Attach A XCTL ... I -I I I I _____ .JI L IEEPRTN '-----..I IKJEFLGB IKJEFLB LOGON Scheduler ~ r------, L_!'"£ __ ..J IKJEFLC LOGON Monitor ATTAC~ , ~BENr: -- 1--------1 IKJEFLG Attention Processor - A ttenti on I nterru pt J LOGON monitor and issue WAIT. ESTAI Recovery and Retry - "' IKJEFLGH Message -text (From Part 2) IKJEFLPA IKJEFLL CALL • For LOGOFF or rp.·LOGON only. LOGOFF Processor J • For LOGON, re-LOGON, or LOGOFF. - B CALL ."' ,. CALL -- ,.... Time and Date Processor ... IKJEFLE CALL ~ IKJEFLEA .. Parse/Scan Interface , ,~ IKJEFLI ______X_C_T_L_-1. Terminate and return to STC. POST LOGON/ LOGOFF Verifi cation ,I "' • For LOGOFF only - issue POST to terminate scheduler. CALL -- 0# ."' • Schedule terminal session. - ~ • For LOGON or re-LOGON only - issue POST to schedule terminal session and call IKJEFLH. (To Part 2) 6-34 - -. IKJEFLH CALL POST LOGON Scheduling Module Flow (Part 1 of 2) OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) Installation Exit Interface .. ,. IKJEFLPA CALL Figure 3-9. --- - LOGON Information ~TTAC~ I--R_ou_t....in_e_ _.... ~POST/WAIT o (To Part 2) .. Time and Date Processor ,. I r-- - ---, LlSTBC JI L____ _ (To Part 1) (From Part 1) , - - --, • Schedule terminal session. XCTL I IEESB605 Job Scheduling Subrouti ne • Issue POST to terminate LOGON information routine. Issue WAIT for termination. I I I IKJEFLJ I Pre-TMP Exit ~-----tl CALL IEFSD263 (See "Job Scheduling") • I I I I I I~--~ Terminal I ATTACH I M onl'tor 1-- .___--41 I I ---1"'~1 Program II I • Terminate . I I follOWing I I LOGON or Ie I LOGOFF I ~ I--lb.. __ _ ~ TCAM ...- 1-. (To Part 1) I I I I ~--~ • Re-attach IKJEFLC to process re-LOGON or LOGOFF oommand from terminal. L~m~nd . ..J IKJEFLK Post-TMP Exit I I L ___ ---.J Legend: r----------, Dashed -line boxes surround I I I IL routines that are not documented with the LOGON modules. I I _ _ _ _ _ _ _ ---.J . Figure 3-9. LOGON Scheduling Module Flow (Part 2 of 2) Section 3: Program Organization 6-35 VS2.03.807 fL~~~N~ll __J Issuer BAL IRARMRMR Resource Monitor BAL IRARMCPM CPU Management BAL IRARMIOM I/O Management BAL or SVC IRARMCTL SRM Control IRARMINT SRM Interface BAL ABEND (via RTM) IRARMERR Functional Recovery BAL BAL BAL IRARMEVT SYSEVENT Routers and Processors ~equestedl Service I LRout~---1 BAL IRARMSTM Storage Management r--j I MF/1 L_ f-!-~D -.J BAL Workload Activity Recording IRARMWLM Workload Management Legend: , DaS~ed-l~bO:;S;;u~1 routines that are not II documented with the SRM I L.:odules,_ _ _ _ _ _ Figure 3-10. System Resources Manager (SRM) Mainline Processing Module Flow 6-36 OS/VS2 System Logic Library Volume 6 (VS2.03.807) J VS2.03.807 Set IPS Processing r-setI L --, Command ~o~s~ ,- I BAL ......-----.,.~~I I• L ..J --l IEEMB812 Set IPS Process~ ~ -- - BAL IRARMIPS Read IPS - - __ L04D __ S)_ -- -- -- -- t- ~rl>( IRARMSET Set to New IPS BAL Set Domain Processing r ~0403D I I I Command. BAL L ~~ _ ---1 r I ~ IEE8603D SETDMN Command I I~ L Process~ .J BAL I ..I L -E-O 3D IE 50 Message Module _ I I .J Display Domain Processing Legend: Das~ed-line boxe~u~und II I L " routmes that are not documented with the SRM module:... _ _ _ _ _ I -.J Figure 3-10a. System Resources Manager (SRM) Command Processing Module Flow Section 2: Method of Operation 6-36.1 6-36.2 OS/VS2 System Logic Library Volume 6 (VS2.03.807) ST ART Command .. EXEC Parameters ... ESTAE Routine IRBMFMLN ABEND MFC Mainline (lRBMFMFC) ~ ---------,1:lii0i _ _- y -_ _--.J -Partitioned Data Set .... ~ '-------~ OP C d ST omman (Optional) Continue Termination ~ t BAL BAL Syntax Analyzer (lRBMFANL) _ . SVC MFSTART Mainline (IGX00013) Input Merge (lRBMFINP) L----- ~ continue Termination ESTAE IRBMFDEA SYNCH STIMER Timer Event Initialization Mainline (MFIMAINL) ESTAE Routine IRBMFSDE t BAL I ~ t BAL List Options (MFLISTOP) List of Input Options ABEND _ 4. It Data Control (IRBMFDTA) BAL ! ABEND I"",,'--_ _ _----IT Continue ,11 Termination Termination Processor IIRBMFTMA) BAL ABEND .. FRR IRBMFFUR BAL SVC Initialization Routines ... (lRBMFIOI) (lRBMFICP) (lRBMFIPG) (lRBMFIWK) (lRBMFIHA) (lRBMFIDV) lOS CPU Paging Workload Channel Device Used by: IRBMFDTA IRBMFINP IRBMFRGM IRBMFMFC IRBMFMLN t CALL .. ~ Used by: IRBMFMFC IRBMFINP IRBMFRGM t TCH Event Interval MG Routines CPU Paging Workload Channel Device (lRBMFDCP) (IRBMFDPP) (lRBMFDWP) (lRBMFDHP) (lRBMFDDP) (Console) Message Processor (lRBMFMPR) ~ General Resource Release (\RBMFTRM) ATTACH Report Generator Control (JRBMFRGM) BAL ESTAE Routine IRBMFSAR + ToRTM Report Generator Routines Dynamic Allocation Module (\RBMFALL) CALL TOE Timer Event lOS I nitializationl Termination Module (\RBMFIOI) MFDATA SVC Processor (lGX00014) .. ~ SMF Records ....... ...... CPU Paging Workload Channel Device (lRBMFRCR) (lRBMFRPR) (lRBMFRWR) (IRBMFRHR) (IRBMFRDR) MFROUTER SVC Processor (IRBMFEVT) .t BAL Event MG Routines (This) CPU Channels (lRBMFECH) (Other) CPU Channels (lRBMFTCH) Devices (lRBMFEDV) ~1·=Output Reports Figure 3-11. System Activity Measurement Facility (MF /1) Module Flow Section 3: Program Organization 6-37 From a system routine via the ...CII----------------, IEFSSREO macro instruction ~ -l--l r-I IEFJSREO I Subsystem I Interface A I I ;n;;o~ I-(Pass; I to one of 5 I master subsystem I routines,} L- I Return to system routine -lBA~ ~ t A • IEFJRASP IEFJDSNA IEFJJTRM Subsystem Determination Common Request Router Data Set Name Assignment Subsystem Job Termination IEFJSDTN • + It Subsystem Initiation IEFJWTOM IEFJJCLS IEFJJOBS -.. CALL BALR ---.. JCL to JCLS Conversion CALL Message Writer ATTAC..H~ - JCLS to SWA Converston 1 DETACH1 _ LINK - - -, I Converter (Passes control to one of four data movement routines.) I I nterface 1-------1 L I~erpre~r _ .J IEFJCDLT --- ... ~ BALR '--_ _ _ _--' ,-------A I Return to system routine I i -- - -- , Dashed-line boxes indicate routines that are not documented with the master subsystem routmes. L- ------ - Figure 3·12. Master Subsystem Module Flow 6-38 Direct Write CALL IEFJREAD Sequential Read IEFJWRTE Storage Deletion Routine I Direct Read IEFJDWRT' Pseudo Access Method Control ~- - - ---.f4I SWA Create I ,I CALL ~ IEFJACTL IEFJCNTL - - IEFJDIRD OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) --- I I I I ....J Sequential Write YS2.03.804 From I EFSD263 via ATTACH ENTRY via I EFSSREQ macro IEFIIC IEFJSREQ Subsystem Job Select or Re-enqueue Initiator Interface JEFSD160 is entered via LINK from IEESB605 for START, MOUNT, LOGON commands, via ATTACH from IEEVIPL for master scheduler initialization, via branch from IEFIIC. via branch IEFSD160 I EFDSTBL r------~ Data Set Tree Builder Initiator Initialization From To request and process Part 2 I-_v_ia_b_ra_n_c_h___a_n_o_th_e_r...:.j_ob _ _ _ _ _ _ _ _ _ _ _-J~ via branch A To Part 2 B ~--------------------------~ ~ v;a branch via BALR I EFSD161 For warmstart processing - Job Select I EFDSLST .. Data Set Enqueue Parameter List Builder To begin another step From Part 2 via BALR via branch When IEFJSREQ indicates STOP processing EXIT IEFICPUA ... Assign CPU Task Affinity Step Initiation 1---------1 , IEFSMFIE SMF Exit Caller - IEFSD1Q1 via BALR _ PPT Scan via branch IEFSD102 IEFXB604 Writer Header Record to Job Journal via ~ BALR Data Set Enqueue -- via branch IEFSD162 I EFIMASK ... Allocation Interface via branch via BALR IEFSD103 Journal Write Routine - I Bit Mask Converter I I I I I I I I via IEFSSREQ macro I EFJSREQ Notify Subsystem of Step Initialization via BALR ~- IEFW21SD ~ I ... IEFXB500 via BALR ~~--~--------~ ~----,--~ t-----------I i Device Allocation I I I I I via BALR I ATTACH Interface I L ____ +- ____ J .. IEFICATL OPEN Catalog Interface via B.A.LR , via branch IEFAB820 IEFAB4F5 IEFSD263 via BALR SMF TCTIOT Construction Interface OPEN Private Catalogs ~-----------------~ Initiator ATTACH To Part 2 Figure 3-13. Initiator/Terminator Module Flow (Part 1 of 2) Section 3: Program Organization 6-39 VS2.03.804 Termination Processing From Part 1 B For warmstart processing, for deletion of step when processing has completed, or for an allocation or OPEN catalog error , via branch IEFSD164 IEFBB410 via BALR ... Unallocationl Initiator Interface Step Delete To begin another step , ... C To Part 1 via branch IEFSD166 via IEFSSREQ macro Job Delete and Suspend . IEFJSREQ Job Termination or Re-enqueue For normal termination or warmstart or restart processing. 1 ~ another job To request and process To Part 1 Recovery Processing From Recovery Termination Manager From Recovery Termination Manager , IEFIB620 IEFIB621 ESTAE Exit Routine ESTAE Retry Routine IEFIB620 always returns to RTM indicating whether or not RTM should invoke IEFIB621 for retry. To Step and Job Deletion,IEFSD164 Figure 3-13. Initiator/Terminator Module Flow (part 2 of 2) 6-40 System Logic Library Volume 6 (VS2.03.804) IEFI922B via CALL Build Error Interface From IEFSD263 via ATTACH ENTRY via I EFSSREQ macro IEFIIC IEFJSREQ -"" ~ Initiator Interface IEFSD160 is entered via LINK from IEESB605 for START, MOUNT, LOGON commands, via ATTACH from IEEVIPL for master scheduler initialization, via branch from IEFIIC. via branch IEFSD160 .. via branch To request and process another job .. A To Part 2 B - C From Part 2 via branch via BALR IEFSD161 For warmsta rt processing .. ~ Job Select via branch .. To begin another step ~ 1----IEFSMFI E via BALR .. SMF Exit Caller via via branch IEFSD162 "" via branch IEFSD103 Journal Write Routine ATTACH Interface via BALR I I I via IEFSSREQ macro I I I SMF TCTIOT Construction Interface "' - ... Initiator ATTACH Notify Subsystem of Step Initialization I I via LINK I ... ... IEFW21SD Device Allocation I I I I I via BALR ... IEF ICATL OPEN Catalog Interface I I via LINK IEFAB4F5 IEFSD263 via BALR Bit Mask Converter IEFJSREQ -"" ~ L----~i--..--J via branch IEFAB820 Assign CPU Task Affinity IEFIMASK "" 1 I Allocation Interface via BALR IEFXB500 ~ "' ~ I IEFSD10l Data Set Enqueue "' IEFICPUA ... ----I IEFSD102 Writer Header Record to Job Journal Data Set Enqueue Parameter List Builder Step Initiation PPT Scan ~ BALR via BALR via branch via branch IEFXB604 IEFDSLST _ When IEFJSREQ indicates STOP processing EXIT IEFDSTBL Data Set Tree Builder Initiator Initialization From Part 2 Subsystem Job Select or Re-enqueue ~ OPEN Private Catalogs To Part 2 Figure 3-13. Initiator/Terminator Module Flow (Part 1 of 2) Section 3: Program Organization 6-39 VS2.03.807 Termination Processing From Part 1 B For warmstart processing, for deletion of step when processing has completed, or for an allocation or OPEN catalog error via branch IEFSD164 Step Delete -- IEFBB410 ... via BALR Unallocation/lnitiator Interface To begin another step ... C To Part 1 via branch ~ IEFSD166 Job Delete and Suspend ~ - -- via IEFSSREO macro IEFJSREO ... Job Termination or Re-enqueue via BALR For normal termination or warmstart or restart processing. ILRJTERM To request and process another job ... Clean Up via Data Set Control Blocks. To Part 1 Recovery Processing F rom Recovery Termination Manager From Recovery Termination Manager , It IEFIB621 IEFIB620 IEFI922B via CALL ... ~ ESTAE Exit Routine ESTAE Retry Routine IEF IB620 always returns to RTM indicating whether or not RTM should invoke I EF IB621 for retry. 't To Step and Job Deletion,IEFSD164 Figure 3-13. Initiator/Terminator Module Flow (Part 2 of 2) 6-40 OS/VS2 System Logic Library Volume 6 (VS2.03.807) Build Error Interface From Master Subsystem or Job Entry Subsystem via LINK via LINK foralljob~ J " r - - - - - _ .. ~~B90~ _ I L --, Note: The Interpreter is not part of SWA Create Interface processing -....J I Interpreter _ _ _ _ _ _ _ --l r IEFIB600 I nitiatorlSubsystem SWA Interface IEFXB601 via CALL oL " "" via CALL for restarted jobs "- .. IEFIB605 ~ SWA Reconstruction " -'" ~ SWA Merge ... IEFXB609 via CALL ... .... Data Set Descriptor Record Processor Recovery Processing From Master Subsystem or Job Entry Subsystem via LINK ~ , IEFIB600 In itiatorlSubsystem SWA Interface via ESTAE in _ case of an error ~ .. Recovery/Termination Manager "" IEFIB645 ... SWA Create Exit Routines To attempt retry return to caller; otherwise to RITM. JI' I Return Figure 3-14. SWA Create Interface Module Flow Section 3: Program Organization 6-41 F rom the Job Entry Subsystem or from the Master Subsystem Service Routines t (From Part 2) Y 1 IEFVIND In-stream Procedure De co mpressi on Interface Routine - IEFVGM IEFVH1 Converter Initialization Routine via branch . t t -.. IEZDCODE via branch if comment received GET Routine, Converter ~ IEFVHQ via BALR IEFVHC (To Part 2) +via branch ! For continuation expected Fa, no eontinu.- tion expected IEFVHCB ~ ~ SWA Manager Interface IEFVHR via branch Comment or Continuation Validation Decompression Routine 3 ~ Operator Message Module via branch ~ via branch vi. branch Message Module ... IEFVHA via DCBREAD ~ For JOB, EXEC, DO via branch (To Part 2) IEFVHEB " Verb Identifier rev 2 - Pre-scan Routine ~ E " For NUL.L via branch IEFVHL ~ NULL sta temen t or EO F processor via branch For PROC LIBRARY still being read For JCL statement in PROC " 1 " 2 ~ EOF on PROC; more JCL 3 EOF on PRoe and JCL ~ ~. (To Part 2) ; : In -stream procedure control and GET routine It via branch " For next statement It IEFVINE IIEFVINC IEFVINB Record Compression Routine In -stream Procedure Syntax Check Routine In-stream Procedure Directory Build Routine In-stream Procedure Directory Search Routine OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) C (To Part 2) IEZNCODE Figule 3-J5. Converter Module Flow (part 1 of 2) 6-42 .. IEFVINA For PROC via branch . 1 (From Part 1) For unrecognizable verb (possible command) via branch IEFVHM Command Verb Validation via branch (To Part 2) when no verb is found (From Part 1) via branch IEFVFA IEFVFB via branch via branch Symbolic Parameter Processor Scan Routine (From Part 1) via branch To Job Entry Subsystem to process subsystem data sets (From Part 1) IEFUJV SMF User Exit Routine via branch IEFVHF Post-scan Routine (Termination) via branch via branch To read next JCL card (To Part 1) via branch To Job Entry Subsystem Figure 3-15. Converter Module Flow (part 2 of 2) Section 3: Program Organization 6-43 From SWA Create Interface or JES3 via LINK Service Routines IEFNB903 Interpreter . Initialization Routine .. . IEFVHQ SWA Manager Interface Service Routines IEFVHR IEFVGK Operator Message Module " via branch .. GET Key/Positional Utility Routine IEFVGM . " IEFVGT Message Module - - n IEFVHE Interpreter GET and Route Routine For JOB _ via branch - via branch . Dictionary Search Routine - IEFVDA ... ~ " - Dictionary Entry Routine IEFVGS' EXECUTE Statement Processor -via branch ....- ~ IEFVEA For EXEC _ via branch For DO .- via branch IEFVGI IEFVJA JOB Statement Processor DD Statement Processor Test and Store Utility Routine IEFVDBSD - via branch DSENQ Table Processor ~ IEFNB901 via branch r JCL EOP _ via branch ...- IEFVHH ENQUEUE Routine It IEFVHN Interpreter Termination Routine Via b:'anch to caller Figure 3·16. Interpreter Module Flow 6·44 OS/VS2 SY!item Logic Library Volume 6 (VS2 Release 3.7) IEFUJV ~ SMF User Exit Routine Data Management Interpreter Exit Routine • From or or or or or IEFAB4FF IEFAB4F7 IEFIB621 IEFICATL Scheduler Restart Scheduler SMF via Macro SWAREO IEFOB555 SWA Manager Locate Mode Functions Return to Caller * From I EFSD162 or IEFSD164 or Schedu ler SM F via old interfaces: IEFOMLK1 IEFOMSSS ·IEFOMRAW IEFOBVMS IEFOAGST IEFOASGN IEFOASGO IEFODELE IEFODELO * From I EFSD161 or IEFSD166 or IEFVHO or Scheduler Restart From Data Management Routines via Macro I EFOMR EO via Macro OMNGRIO via BALR It IEFOB580 via BALR OMNGR 10 Macro Interface Handler .. °IEFOB550 SWA Manager Move Mode Functions via Branch ~ IEFOB585 SWA Manager Interface Module Return to Caller Note: * This list is not inclusive; it represents some scheduler rout!i18S and components that frequently use SWA manager routines. Figure 3-17. SWA Manager Module Flow Section 3: Program Organization 6-45 Allocation/Unallocation Module Flow Module flow for AUocation/Unallocation is illustrated in several module flowcharts. Each flowchart is titled according to the major module it represents; they are arranged in alphabetic order, according to the mod ule name. Two overviews are included to illustrate the processing hierarchy of the module flowcharts: an overview of batch and dynamic module flowcharts; and an overview of common allocation module flowcharts. 6-46 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) Batch Allocation/Unallocation Module Flowcharts IEFBB401Initiator/ Allocation Interface I I IEFAB454DO Function Control I I I IEFAB451JFCB Housekeeping Control Dynamic Allocation/Unallocation Module Flowcharts I IEFDB400SVC99 Control IEFBB410Initiator/ Unallocation Interface j I IEFAB421Common Allocation Control IEFAB4AOCommon Unallocation Control IEFAB469JLOCATE I IEFDB410Dynamic Allocation Control IEFDB4AODynamic Unallocation Control I (see common allocation module flow overview) I I IEFAB451JFCB Housekeeping Control I / IEFAB454DO Function Control I I IEFAB421Common Allocation Control I IEFAB4AOCommon Unallocation Control (see common allocation module flow overview) I Notes: Shaded parts of the diagram illustrate the areas of allocation common to both batch and dynamic allocation. The module flowcharts are arranged in alphabetic order. This overview is intended to illustrate the hierarchy of the flowcharts; it does not indicate calling sequence between modules. IEFAB469JLOCATE Figure 3-1S. Batch and Dynamic A11ocation/Unallocation Module Flow Overview Section 3: Program Organization 6-47 IEFAB421Common Allocation Control I I IEFAB434Allocate Request to Unit IEFAB436Nonspecific Volume Allocation Control I IEFAB471Generic Allocation Control IEFAB491Wait Holding Resources IEFAB485Recovery Allocation IEFAB490Common Allocation Cleanup 1 I IEFAB434Allocate Request to Unit I IEFAB434Allocate Request to Unit IEFAB479 Demand Allocation I IEFAB4AOCommon Unallocation Control I IEFAB434Allocate Request to Unit I IEFAB436Nonspecific Volume Allocation Control I I I IEFAB479Demand Allocation IEFAB476Allocation via Algorithm I I I IEFAB434Allocate Request to Unit Note: The module flowcharts are arranged in alphabetic order. This overview is intended to illustrate the hierarchy of the flowcharts; it does not indicate calling sequence between modules. Figure 3-19. Common Allocation Module Flow Overview 6-48 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) IEFAB493VM&V Control IEFAB421Common Allocation Control IEFAB486Offline/Allocated Device Allocation IEFAB4AOCommon Unallocation Control I IEFAB4AOCommon Unallocation Control IEFAB434Allocate Request to Unit ( ENTRY + \ ~ f\ IEAFB477 (See module description for callers of I EFAB477) IEFAB490 - Common Allocation Cleanup. IEFAB492 (See IEFAB490 - Common Allocation Cleanup) :~~:::~: } (See IEFBB410 - Initiator/Unallocation Interface) IEFDB4A1 (See IEFDB4AO - Dynamic Unallocation Control) IEFDB413 } " IEFDB418 (See IEFDB410 - Dynamic Allocation Control) IEFAB4AO Common Unallocation Control IEFAB4A2 Process data set dispositions. --- ...... Disposition Processing Process non-subsystem data sets; build volume list. If volume list successfully built: ~ • process KEEP and PASS, build message. IEFAB428 ~ r.-- IEFAB4A3 .. • build dummy ETIOT, \-if necessary. • process DELETE; bui Id message: 1 . when data set deleted 2. wben all or part ~ of data set not deleted. Special Scratch Processing ~ IEFAB4FC ~ -.- • process CATLG; build message. ~ IEFAB4BO - • process UNCATLG; build message. Disposition Message Routine Build/Update DSAB/TIOT - .... ... TIOT Manager Control Routine IEFAB4FD System Message Interface Routine If volume list not successfully built: • process DE LETE (tape only), KEEP, PASS, and UNCATLG. • if other disposition specified, build error message. Process subsystem data sets. .. -- -... .... Unallocate Private Catalogs 6 Alternate Disposition Message Routine - -- IEFAB4FD System Message Interface Routine ~ IEFAB4BO -- _. IEFAB4F4 Unallocate private catalogs (batch only) IEFAB4B2 Disposition Message Routine IEFAB4FD , ... System Message Interface Routine IEFDB400 -- .... ... -'" SVC 99 Control 'I\. See I EFDB400 SVC 99 Control IEFAB4EF L-. PCCB Routine Note: All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. Figure 3-20. IEFAB4AO - Common Unallocation Control (Part 1 of 2) Section 3: Program Organization 6-49 VS2.03.804 r--1-1 IEFA.B4AO 1 (continuedi R~~lea~,p' data sets no !ongf>r needed by the . IEFAB4A6 j f-4- Data Set Release job Read data set enqueue table. IEFAB4F7 SWA Manager Interface Write updated data set enqueue table. L--______________ I Ii.- Unslinc;.tp. units. IEFAB4A4 . I ~ Unit Unallocation ~ II I I II Locate volume unload table: .. if found, read it .. if not found, obtain space for it. I I I I f-!I- IEFAB4F7 f-+o Fill in volume unload table: • obtain more space, if necessary. I r-SWA Manager Interface ~ ! Unallocate unit; if tape, rewind or unload if necessary. -.. -.. IEFAB49C Unload Interface -- -.. IEFAB493 VM&V Control .~ I I Notify queue manager of unallocations. I --.. .- IEFAB4FA Allocation Queue Manager " IEFAB494 Unload Control I Write volume unload table. I I Role." volumo, no long" ,,"d8d by st.p. nec('<.~.ary, Rele.," DSASs ,nd. if TIOl entries. I j PCI' runn ..- ..- r- IEFAB4A8 I I Volume Release ~ ~"·-"--~L_.~IOT IEFAB4FC Manager _ -'EEAB401 . --., ~.------'---; WTP PUT (~!~~~~~~1r~-'~=~) to caller FigUfP. 3 le unit, if possible. - .. ~ Allocate Request to Unit Allocate Request to Unit Allocation Queue Manager Cover/Reduce Algorithm 6 *checks with System Resources Manager and MSS Mount Equalization Figure 3-31. IEFAB486 - Offline/Allocated DeviceAliocation (Part 2 of 4) 6-68 . . . ~ See IEFAB434- IEFAB480 ~ ~ IEFAB4FA OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) IEFAB486 (continued) If offline/allocated devices are needed, interface with operator. IEFAB48i Allocation Recovery Interface with Operator 0- Issue header message. ~ If need specific unit or volume: • build message for operator . • issue message and process operator's reply. ~ If operator's reply was WAIT, query operator for type of wait. Compres:; Blanks from Mes~'lgc ~ '----w,~_. - If request cancelled, return to caller. Process all remaining unallocated requests. IEFAB4F3 IEFAB48A "" Process Offl ines/ Allocateds IEFAB4F3 For each request: • Build header message. - Compress Blanks from Message. It 1 • If request needs offline or allocated device, issue message and process operator's reply. I - Ir . IEFAB488 Allocation Recovery Reply Build and issue reply options message. If reply was wait for a nonspecific unit, choose device group to wait for. IEFAB4F3 --- -- Compress Blanks from Message. IEFAB480 --- . Cover/Reduce AISlorithm ~ 2 Allocate devices that have become available (online). -3 Figure 3-31. IEFAB486 - Offline/Allocated Device Allocation (Part 3 of 4) Section 3: Program Organization 6-69 2 3 , IEFAB487 (continued) IEFAB48A (continued) • If request is not allocated but is not eligible to an offline or allocated device, try to allocate it to an available device. IEFAB489 - ~ Recovery Allocation of Online Devices -.. Try to allocate demand requests - -. \ ~ See IEFAB434Allocate Request to Uni Try to allocate nondemand requests: If operator's reply was WAIT, query operator for type of wait. IEFAB4F3 Compress Blanks from Message. IEFAB434 Allocate Request to Unit IEFAB440 • Choose unit to allocate* -- -.. Build Allocated UCB List • Allocate unit --- -.. Allocate Request to Unit IEFAB434 '" See IE F AB434Allocate Request to Unit • Update algorithm tables. *checks with System Resources Manager and MSS Mount Equalization Figure 3-31. IEF AB486 - Offline/Allocated Device Allocation (Part 4 of 4) 6-70 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) -- -.. IEFAB480 Cover/Reduce Algorithm ( ENTRY) from IEFAB421 - Common Allocation Control 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. IEFAB490 Common Allocation Cleanup If allocation to be reattempted, unallocate allocated requests. Notes: 1. An error in any routine causes return to the calling routine. IEFAB4AO Lr Common Unallocation Control i'J'. See I EFAB4AO - Common Unallocation Control '----------' IEFAB4F3 ~ If all requests satisfied: • Issue message(s), if storage volume request(s) changed to private. Compress Blanks from Message f.+IEFAB4FD ---. System Message Interface Routine IEFAB492 • Mount and verify volumes. - Allocation/VM& V Interface Mount all volumes and verify nonspecific direct access volumes. IEFAB493 - - ~ For each nonspecific direct access volume: • Enqueue on volume. VM&V Control ,~ See I EFAB493 VM&V Control IEFAB4FO -" - ~ Conditional ENQ/DEQ Routine IEFAB4AO • If DADSM error, delete any data sets just allocated to this volume and dequeue from volume. • If volume can't be used, unload it and mount and verify new volume. U- L. Common -. N' See IEFAB4AOUnallocation Control Common Unallocation Control IEFAB4FO Conditional ENQ/DEQ Routine IEFAB493 - ~ VM&V Control 'li' See IEFAB493VM&V Control 6 Figure 3-32. IEFAB490 - Common Allocation Cleanup (Part 1 of 2) Section 3: Program Organization 6-71 ? ? IEFAB492 (continued) IEFAB490 (continued) Release device groups. Verify WTOR tape volume requests and specific direct access requests. • If a non-recoverable DADSM error occurred processing non-specific requests, DOM mount messages and free mount control blocks. IEFAB4FA ..... ,- Allocation Queue Manager IEFAB493 - ..... ... VM& V Control IEFAB49A , ~ DOMR and Cleanup IEFAB4F3 ~ IEFAB4EE • Build and issue allocation messages. ~ - Allocation Message Routine Compress Blanks from Message ...IEFAB4FD ~ System Message Interface Routine If allocation to be reattempted (retry): • release device groups f+- • wait for needed units to be unallocated. ~ If error, success, or retry, terminate queue manager function. ~ IEFAB4FA ~ Allocation Queue Manager IEFAB421 If allocation to be reattempted (retry), call Common Allocation Control. - Common Allocation .... Control N' See I EFAB421 - Common Allocation Control r ( RETURN ) to caller Figure 3-32. IEFAB490 - Common Allocation Cleanup (Part 2 of 2) 6-72 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) See IEFAB493VM&V Control IEFAB498 MVCA Chain Processor ENTRY from I EFAB421 -Common Allocation Control Notes: ~ 1. An error in any routine causes return to the calling routine. 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. IEFAB491 Wait Holding Resources ~ Allow other allocations that cannot wait for devices to consider the device groups serialized for this allocation. r+IEFAB4FA Wait for needed devices. - -- If a unit becomes available, prevent other allocations from using the device groups serialized for this allocation. • ca II Demand Allocation IEFAB4EO Test if Device is Ready r+IEFAB49C Unload Interface r+- Attempt to allocate demand (specific unit) requests: • unload needed volume, if necessary Allocation Queue Manager ~ - .. 1 IEFAB494 IEFAB493 - -. - VM&V Control ~ IEFAB479 Demand Allocation IEFAB499 VM&V WTO/R Format Con.trol '~See IEFAB479 Demand Allocation Attempt to allor.ate non-demand requests: Volume Unload Control IEFAB480 • Determine if enough units are now available to satisfy outstanding requests. -- - • If requests can now be satisfied, allocate them. • If requests cannot yet be satisfied, determine if they can still be satisfied by considering allocated units. - -.. - .. "' Cover/Reduce Algorithm IEFAB440 ~ IEFAB478* Allocate from Groups the Algorithm Selected IEFAB480 Build Allocated UCB List r---IEFAB434 ~ Allocate Request to Unit Cover/Reduce Algorithm '~ See IEFAB434 - Allocate Request to Unit - If so, wait for allocated devices -.. - If not, return to caller. Release device groups no longer needed. ~ RETURN RETURN -- to caller .. IEFAB4FA Allocation Queue Manager to caller *checks with System Resources Manager and MSS Mount Equalization Figure 3-33. IEFAB491 - Wait Holding Resources Section 3: Program Organization 6-73 ENTRY from IEFAB492 (see IEFAB490 - Common Allocation Cleanup) or I EFAB49C (see module description for callers of I EFAB49C) IEFAB493 VM& V Control If unload requests to be processed, call Unload Control. If mount requests to be processed, call Mount Control. IEFAB494 - .. .- .. -. Volume Unload Control IEFAB495 IEFAB498 MVCA Chain Processor Add MVCA to 'chain, if necessary. Issue mount messages. - .- - . .. . RETURN IEFAB499 VM&V WTO/R Format Routine IEFAB496 .- Verify Control IEFAB498 Search MVCA chain to ..-.__ .I----;-~ locate correct MVCA. C IEFAB4EO Test if Device is Ready Mount Control Search MVCA chain to locate correct MVCA. If mounts to be verified, call Verify Control. IEFAB499 VM&V WTO/R Format Routine to caller MVCA Chain Processor IEFAB499 If incorrect operator reply to mount message, issue invalid reply message. ... VM&VWTO/R Format Routine IEFAB49B As mounts are como. pleted, verify them, ... Device End Post Handler If direct access volume, read label. If mounted volume unacceptable, unload it and mount a new' volume. Notes: Perform cleanup. 1. An error in any routine causes return to the calling routine. -- -. 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. Figure 3-34. IEFAB493 - VM&V (Volume Mount and Verify) Control 6-74 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) IEFAB4F8 -.. .. .- . Direct Access Label Read IEFAB493 -- . VM&V Control IEFAB49A IEFAB494 VM&V DOMR and Cleanup Volume Unload Control IEFAB498 IEFAB499 MVCA Chain Processor VM&V WTO/WTOR Format Routine ( , ENTRY Notes: from Initiator 1. An error in any routine causes return to the calling routine. 2. All modules receive control by means of a CALL instruction in PLS, which generates a BA LR instruction in assembler language. IEFBB401 Initiator/ Allocation Interface Obtain and initialize TIOT. Obtain addresses of SlOTs, JFCBs, and JFCBXs and chain together. IEFAB4FC -- - TIOT Manager IEFAB4F7 IEFAB4FE ~ SWA Reader Interface ~ SWA Manager Interface IEFBB402 Process step condition codes. -- - Step Condition Code Processing IEFAB4A6 If step to be bypassed, release data sets. ~ Data Set Release IEFAB4F7 ~ SWA Manager Interface ........ IEFBB404 If step to be executed; call step allocation control. ~ Write SWA tables. ~ Step Allocation Control f+- , IEFAB451 Set up tables for information retrieval. ~ JFCB Housekeeping Control ......... !EFAB421 Call Common Allocation Control. Common Allocation Control ...... ~ See IEFAB451 JFCB Housekeeping Control ...... ~ See I EFAB421 - Common Allocation Control IEFAB4FC Compress and re-order TIOT. ~ TIOT Manager IEFAB4F3 Remove blanks trom DD-related error messages. ~ Compress Blanks from Message IEFAB4FD Issue DD-related error messages. l+o ~ System Message Interface Routine IEEAB400 ~ WTP Buffer Routine t IEFAB4F7 IEEAB401 SWA Manager Interface WTPPUT Routine Figure 3-35. IEFBB401 - Initiator/ Allocation' Interface (Part 1 of 2) Section 3: Program Organization 6-75 , IEFBB401 (continued) IEFAB4F3 Remove blanks from step-related error messages. - Compress Blan ks from Message IEFAB4FD Issue step-related error messages. - System Message I nterface Routine - IEEAB400 . IEFAB401 Final Messagp. Processing WTPPUT Routine Ir RETURN to caller Figure 3-35. IEFBB401 - Initiator/Allocation Interface (Part 2 of 2) 6-76 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) WTP Buffer Routine - - IEEAB401 WTPPUT Routine ENTRY from Initiator + IEFBB410 Initiator IUnallocation Interface Obtain addresses of SlOTs, JFCBs, and JFCB extensions and chai n together. Determine if restart. - -. -- ... IEFAB4FE SWA Reader Interface - - IEFAB4F3 IEFBB414 ~ Step Unallocation Call common unallocation control. End-of-step processing: SWA Manager Interface Restart Preparation. I f aII ocati on messages were not requested, but step abnormally terminated, issue messages. • release TIOT. IEFAB4F7 IEFRPREP -- -. Call step unallocation, if any requests were allocated to the step. ..- ..- IEFAB4EE ..- .- - Build Allocation Messages. - Common Unallocation Control ... IEFAB4FD System Message Interface Routine. '~ See I EFAB4AO - Common Unallocation Control IEFAB4FC ... ~ IEFAB4AO ... Compress Blanks from Message. TIOT Manager IEFAB4F3 ~ Compress Blanks from Message . • issue step status messages. ----- IEFAB4FD ~ Process job condition codes. -- .. System Message Interface Routine IEEAB400 . WTP Buffer Routine WTP PUT Routine 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. 6 Figure 3-36. IEFBB410 - I EEAB401 Notes: 1 . An error in any routine causes return to the calling routine. IEFBB412 Job Condition Code Processing --.. -.. Initiato~/F ;lllocation Interface (Part 1 of 3) Section 3: Program Organization 6-77 VS2.03.804 r-L ! IEFBB410 (continued) i IEFAB4EB I EFBB416 I .. - - """ ! : ~ i3<;t step or remaining Job Unallocation Get information for unreceived passed data sets. to be bypassed, job ul'lallocation. j -;\";';$ S POI Read and Chain IEFAB4F7 ..- - SWA Manager Interface IEFAB4A2 IEFAB4F7 Obtain addresses of SlOTs, JFCBs, and JFCB extensions. - ..- ~ Disposition Processing SWA Manager Interface ..... L 7 For called routines, see occurrence of this module on IEFAB4AO - Common Unallocation Control. IEFAB4AO I -- -.. Call common unallocati on control. Perform volume cleanup: • serialize on groups to be processed. I r Common Unallocation Control Perform disposition processi ng. IEFAB4EC lJ Group Lock Interface -- .. IEFAB4F7 ~ -1.--- ... IEFAB4UV Unit Verification Routine IEFAB4FA • process entries in volume unload table. ~ Allocation Queue Manager SWA Manager Interface I! I ! i I i IEFAB49C --- -.. • unload private volumes; rewind tapes. Unload Interface - ....... IEFAB493 VM&V Control iI I ! i i ! i r IEFAB4F3 --- -.. Issue messages for released volumes. IEFAB494 Compress Blanks from Message ~ .- Unload Control , ', .. , r"-1L.Ccr~l>}rr.$5 End·of-job processing' I • 1~511P' job cc,,,pletion n;."agp, I l'--'---'-'--T. . Figme }. :t6. 6-78 L_'_._. _.- - - - - A JE}'B~'i i fl· Test if Device is Ready Blanks from fv1i-"f'\t:;;()p. ~ L. ._. _ ,,1.~~~: f~4 ~ I I Mes~agp, ---._.--I 6 IEFAB4EO IEFAB4F3 ~ F __ ~ Interface Routine L.__.....__.__--' initiator/linaUocatl(ln .nterfau.' (Part 2 of 3) OS/VS2 System Logic Library Volume 6 (VS2.03.804) r-t- Message Format IEEAB400 IEEAB401 VVTP Duffer Routine VVTP PUT Routine 1---.... Systp.m IEFAB499 7 IEFTB722 IEFBB410 (continued) • write SMF records. r-+' ... -- I EFTB721 SMF Unallocation Con trol R 0 uti ne. Build SMF Unallocation Records. ~ IEFACTRT .~ Perform cleanup: • write updated records • SMF User Exit -- .. IEFTB723 (IEFYS) Process Job's System Messages. I EFAB4F7 ... -- SWA Manager Interface IEFAB4F3 If error in unallocation: - write sysout messages r+ Compress Blanks from Message. ~ IEFAB4FD ~ - issue messages to operator. Final message processing -- -. -- .. System Message Interface Routine --- ~ - ... IEEAB400 WTP Buffer Routine -- .. IEEAB401 WTP PUT Routine IEFAB4F3 Compress Blanks from Message. I EEAB401 - WTP PUT Routine ,r ( RETURN to caller Figure 3-36_ IEFBB410 - Initiator/Unallocation Interface (Part 3 of 3) Section 3: Program Organization 6-79 ( ENTRY ) from IEFDB400 - SVC 99 Control Ir IEFDB4AO Dynamic Unallocation Control IEFDB4FF Check syntax of param- ..... ~f----;~.~ eter list. Syntax Checker IEFDB4FC Search for DSAB: • by ddname Ddname Search IEFDB4FA • by dsname If necessary, remove in-use attribute. If necessary, deconcatenate. Dsname Search IEFDB481 .. . Remove In-use Process IEFDB460* ..- . - Dynamic Deconcatenation _ Unallocation Processor Call Common Unallocation Control. I f necessary, read first SlOT in SlOT chain. IF e I IEFDB4A1 Perform unallocation processing. RETURN ~~ See occurrence of this module on IEFDB400 - SVC 99 Control for called routines to caller IEFAB4AO fo4- IEFAB4F7 Release SlOTs, JFCBs, ~ and JFCBXs for unallocated data sets, if they ~ were dynamically allocated. Write SM F Type 40 records. Notes: 1. An error in any routine causes~.return to the calling routine, except where noted. 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. * If the deconcatenation is unsuccessful, IEFDB4AO will still unallocate other occurrences of this data set, if it is a multiply-allocated data set. Figure 3-37. IEFDB4AO - Dynamic Unallocation Control 6-80 .. Common Unallocation Control OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) - SWA Manager Interface IEFDB4F9 SMF Routine ::;;~ See IEFAB4AO - Common Unallocation Control IEFDB4DO OR DAIR Direct Call of SVC 99 I ( t ENTRY ) t IEFDB400 SVC 99 Control Obtain addresses of SCT and JCT Obtain addresses of job's ACT and step's ACT (account control table) Read and chain SlOTs, JFCBs, and JFCB extensions D- IEFAB4F7 SWA Manager Interface IEFAB4FE IEFAB4F7 - SWA Reader Interface SWA Manager Interface IEFDB401 ( , RETURN to caller Call installation exit to determine if request is to be processed or modified -.. Installation Exit If request not to be processed, return. If request to be processed, call appropriate routine: • dynamic allocation .. • dynamic una Ilocati on ....- IEFDB410 ~ See IEFDB410 - Dynamic Dynt(lmic Allocation ' Control IEFDB4AO -.. Dynamic Unallocation Control Allocation Control ~ See IEFDB4AO - Dynamic Unallocation Control 6 Notes: 1. An error in any routine causes return to the calling routine. 2. All modules receive control by means of a CALL instruction in PLS, which generates a BALR instruction in assembler language. Figure 3-38. IEFDB400 - SVC 99 Control (Part 1 of 3) Section 3: Program Ol8anization 6-81 7 IEFDB450 ~ IEFDB400 (continued) • dynamic concatenation Dynamic Concatenation IEFDB4FF - Check syntax of parameter list . f+- Syntax Checker IEFDB4FC Search TIOT for specified ddnames. Ddname Search IEFAB4FC Re-order TIOT entries. TIOT Manager . Write updated records. Write SMF Type 40 records. Invoke Change DDNAME/JES3 exit IEFDB460 • dynamic deconcatenation ~ ~ Dynamic Deconcatenation SWA Manager Interface IEFDB4F9 SMF Routine IEFDB4FB Change DDNAME/JES3 Exit IEFDB4FF Check syntax of parameter list. Syntax Checker Search TIOT for ddname. 14- Check that ddname being restored is not duplicated. ~ Write SMF Type 40 records. IEFAB4F7 IEFDB4FC r--- Ddname Search IEFDB4F9 .- SMF Routine IEFDB470 • information retrieval Information Retrieval IEFDB4FF Check syntax of parameter list. Synt3x Checker Search for data set definition: IEFDB4FC • by ddname Ddname Search IEFDB4FA • by dsname 6 IEFDB4FE If DSORG requested, retrieve it. Figure 3-38. IEFDB400 - SVC 99 Control (Part 2 of 3) 6-82 Dsname Search OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) .. Obtain DSORG 7 IEFDB400 (continued) • remove in -use attribute IEFDB480 .... IEFDB4FF Remove In-Use Check syntax of parameter list. Syntax Checker IEFDB481 Remove In-Use Process Remove the in-use attribute. Unallocate data sets that were not defined by means of &dsname, that are not permanently allocated (for the duration of the job or logon), and that have a disposition of DELETE. IEFDB4A1 ~ Unallocation Processor / 7 See occurrence of this module on IEFDB4AO - Dynamic Unallo cation Control for called routines. IEFDB490 • ddname allocation . Ddname Allocation IEFDB4FF Check syntax of parameter list. Syntax Checker IEFDB4FC Search TIOT for ddname. - -'" Ddname Seardl IEFAB4F7 Write updated records . SWA Manager Interface • RETURN to caller Figure 3-38. IEFDB400 - SVC 99 Control (Part 3 of 3) Section 3: Program Organization 6-83' ( ENTRY from IEFDB400 - SVC 99 Control Notes: 1 . An error in any routine causes return to the calling routine. llr 2. All modules receive control by means of a CALL instruction in PLS, which generat es a BALR instruction in assembler langua ge. IEFDB410 Dynamic Allocation Control - -- Check validity of parameter list. Check to see if existing allocation can be used. If existing allocation can be used: - .. • obtain DSORG if requested • generate ddname if necessary - • inform the JES3 subsystem of the DDNAME change, if necessary. - ~ . ~ IEFDB412 Validity Checker -- . IEFDB4FF Syntax Checker IEFDB4FE Obtain DSORG IEFDB4FD Ddname Generator IEFDB4FC --- - Ddname Search IEFDB4FB Change DDNAME/JES3 exit. IEFDB411 -- • convert existing allocation. Convert Existing Allocation Change data set usage, if necessary. Update DCB subparameters in JFCB. IEFAB4DC - - .. Data Set Reservation Read data set enqueue records. IEFAB4F7 -- ...- SWA Manager Interface IEFDB417 JFCB DCB Update IEFAB4E9 Update DSAB DCB mask. Inform the JES3 subsystem of a DDNAME change, if necessary. H existing allocation cannot be used: • If not-in use limit exceeded, unallocate another data set(s): if the data set is in concatena~ed group, deconcatenate it; Unallocate the data set. -- .. IL ~O""'---------' -- .- -- .... IEFDB4FB Change DDNAME/JES3 Exit. IEFDB460 Dynamic Deconcatenation ... ~ See occurrence of this module in IEFDB400SVC 99 Control for called routines IEFDB4AO ~~ Dynamic Unallocation ..... ~ Control See IEFDB4AO - Dynamic Unallocation Control Figure 3-39. IEFDB410 - Dynamic Allocation Control (Part 1 of 4) 6-84 Set DSAB DCB Mask OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) 7 I EFDB41 0 (continued) IEFDB4FD • Generate ddname, if necessary. - .. • I nform the J ES3 subsystem of the DDNAME change, if necessary. .- - ..- r Ddname Search IEFDB4FB Change DDNAME/JES3 Exit. - . • Call normal dynamic allocation. ~ Ddname Generator IEFDB4FC .. IEFDB414 IEFAB4F7 l'EFDB413 Build Tables Normal l' " I ·U.!!,; Allocation Obtain space for SlOT and JFCB, - ... Build tables, - If ddname was not specified, generate ddname, SWA Manager Interface IEFDB4FD --- Ddname Generator t IEFDB4FC j If v.olume or DCB reference to dsname was specified: II • read dsname table records Ddname Search f+- - • assign dsname table record, if necessary ... IEFAB4F7 SWA Manager Interface • write updated dsname table record, ~ I If DCB reference to ddname was specified, find DSAB associated with ddname. -... ..- Update DCB subparameters in JFCB. - .. IEFDB4FC Ddname Search IEFDB417 JFCB DCB Update IEFAB4DC* Reserve data set. l 6 I Data Set Reservation Read data set enqueue records. r+- Assign new data set enqueue record, if necessary. ~ --.. IEFAB4F7 SWA Manager Interface *Note: If a data set enqueue record exists for the data set as SHR, but this request specifies exclusive, the record and type of enqueue is not changed until the allocation is successfully performed. Figure 3-39. IEFDB410 - Dynamic Allocation Control (Part 2 of 4) Section 3: Program Organization 6-85 y , , IEFDB410 (continued) IEFDB413 (continued) Call JFCB HOllsekeeping Control. Allocate the request. If allocation successful, rearrange TIOT entries, if necessary. IEFAB451 -- - - • catalog the data set, if necessary ...... ~ See IEFAB451 - JFCB Housekeeping Control I EFAB421 ~ Common Allocation Control .... ~ See IEFAB421 - Common Allocation Control IEFAB4.FC - TIOT Manager IEFDB4FE If no error: • obtain DSORG, if requested JFCB Housekeeping Control -- .. .- Obtain DSORG IEFAB4AO IEFAB4A2 Common Unallocation Control Disl1osition Processing J 1 6 Figure 3-39. IEFDB410 - Dynamic Allocation Control (Part 3 of 4) 6-86 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) For called routines, see occurrence of this module on IEFAB4AO - Common Unallocation Control. ,. IEFDB410 (continued) 7 ,Ir ..- - • change the data set enqueue record and type of enqueue, if it existed SHR and this request specified exclusive 1, RETURN I EFDB413 (continued) -.. - IEFAB4DC Data Set Reservation - -- IEFAB4F7 SWA Manager Interface to caller IEFDB4F9 • update TCTIOT. ..-- --- SMF Routine .. IEFDB4F8 ... SMF Allocation Control IEFDB418 If error, call allocation error processor. -.. - Allocation Error Processor IEFAB4AO Call common unallocation if common allocation was called. - -- Common Un allocation Control I '1 See IE FA B4AO - Common Unallocation Control If unallocation not necessary or successful, delete assigned records. IEFAB4F7 - -- SWA Manager Interface IEFAB4DC Release data set, if necessary. --- ..... Data Set Reservation t IEFAB4F7 SWA Manager Interface IEFAB4F7 Write any updated records. -- ... SWA Manager Interface Figure 3-39. IEFDB410 - Dynamic Allocation Control (Part 4 of 4) Section 3: Program Organization 6-87 cr00 00 otil " - - Signal waiting CPU if swapped in IEAVESCO --- ~ on LSMO. I LSMO SCHEDULE: move ready SRBs to LSPL IEAVEMSO .. Indicate address space switch ~ .. - IEAVERP Signal other CPU ~-------------~~ t empty if swapped out 5. Choose an address space. t SRM (CUTOPTE) no work 6. Dispatch SRBs on LSPL. I LSPL ,empty 7. Process local supervisor routi nes. ~ no local supe.rvisor routines locally locked ~ ~age ~ Execute task. 1-_ _ _ _-.1 ~ fault } lock suspension task completion . interruption re-enter dispatcher ---.!.ask wait 8. Dispatch ready tasks ~ unlocked for address space. Figure 3-46. Dispatcher and SCHEDULE Module Flow Section 3: Program Organization 6-119 Exit Effectors (for asynchronous exits) Caller IEAVEFOO • Issuer of CIRB macro ....._v_i_a_C_I_T_B___... Stage 1 exit effector (create IRB) 1--------------.. . . for CIRB entry BR or IEAVEEXP for BR entry • Data management or supervisor routine. ~ exit prolog - ~~~-------------------------------------------~BR - IEAVEEF2 Stage 2 exit effector (Add IOE, ROE, or SRB to queue.) ~ ,r ~. . The dispatcher receives contro I _ _ _ _ _ _ _ _ _ _ following an interruption or a specific request for dispatching. See chart for dispatcher. IEAVEDSO Dispatcher ---- ~ IEAVEEEO Stage 3 exit effector (Complete scheduling of asynchronous exit request.) - - - - For stage 3 recovery, - - - see supervisor recovery chart. ~ • Dispatch asynchronous exit execute asynchronous exit ( ENTER ) Branch Entry from Memory Create, Memory Delete, Swap, or System Resource Manager ......--1---' IEAVEACO ASCBCHAP Mainline ASCBCHAP Processing EXIT Figure 3- 47. Supervisor Routines Module Flow (Part 1 of 2) 6-120 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) Servic~ To Caller, or to Memory Switch SETLOCK ( caller 41' r ) via SET LOCK macro IEAVTRTM IEAVELK - Obtain ACR Condition or SCHEDULE release a lo~k. -.. - Reschedule suspended SRBs. IEAVEMSO ... IEAVERP Address space switch for suspended ASCBs. -... IEAVELKR • Recovery via R/TM. ---... SET LOCK Recovery - -- Notify waiting CPU - \.. ( ABEND - -E1PC chart. ) PURGEDQ (cancel SR Bs) ( Issuer ot ) PURGEDO .. via PURGEDO macro IEAVEPDO • Invalid parameters. ----~ -- ... - - ABEND ) IEAVSETS Stop SRBs Start SRBs RMTR (Resource Mgt. termination to clean up SRBs.) IEAVESCR SCHEDULE Recovery IEAVTRT1 • Unrecoverable error. ~--~ IEAVEPDR IEAVSETS R/T management PURGEDO Recovery Figure 3-47. Supervisor Routines Module Flow (Part 2 of 2) Section 3: Program Organization 6-121 Error in a supervisor routine. General Recovery Service Routines r---- ---- I IEAVTRT1 I I I I IEAVELCR Recovery /Termination Management Low-address refresh Queue Verification I IEAVELKR Lock refresh IEAVEQVO >- repair routines IEAVECBV I I Control Block Verification ASVT verification • No FRRs on stack. ~ .. - - I See other charts for individual supervisor functions' recovery routines. IEAVESPR IEAVEEER Supervisor F R R • Set indicator for type of recovery and return. • For dispatcher recovery. Stage 3 Exit Effector Recovery IEAVEDSR Dispatcher Recovery ....... or IEAVESCR SCHEDULE Recovery Figure 3-48. Supervisor Control Recovery Module Flow (Part 1 of 2) 6-122 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) I I IEAVEADV I I I Address Verification I I L ____ --- ~ IEAVEVRR Functional Recovery ~--l:~ Routine for a supervisor I- function. I I I I I • FRR is on stack. I I , IEAVESVR IEAVTRT1 .. SVC F LI H Recovery .. ~ or IEAVEIOR I/O FLiH Recovery --. or • Depending on type of recovery indicated, invoke appropriate recovery routine, via retry address. IEAVERER . . RESTART FLiH Recovery .. or ~ IEAVEE1R . IEAVEE2R IEAVEE3R External F LI H Recovery ~( ~ or ABEND ) IEAVEPCR .. Program Check F LI H Recovery . or .. ABEND task that issued SPIE Figure 348. Supervisor Control Recovery Module Flow (Part 2 of 2) Section 3: Program Organization 6·123 From SVC Interruption Handler From SVC Interruption Handler C ENTER ) C ENTER ) r " IEAVEATO IEAVEEDO ATTACH Mainline DETACH Mainline r DETACH Se rvice Processing ATTACH Se rvice Processing • IEAVEEXP - EXIT Prologue ABEND Processing IEAVEDSO Stage II Exit Effector for EOT Processing Dispatcher IEAVEATO 1 ( ATT ACH Re-entry EXIT To caller ) From SVC IH C IEAVlKOO ENTER ) LINK Routine , C EXIT IEAVENQ1 ) To caller ENQ/RESERVE ENQ/RESE RVE Service Processing r C Figure 3-49. ATTACH, DETACH and ENQ/RESERVE Module Flow 6-124 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) EXIT ) To EXIT Prolog From SVC IH ( From SVC Interruption Handler ) ENTER ( ENTER , IEAEVCHO· IEAVEN01 CHAP Mainline DEO CHAP Servi ce Processing DEO Service Processing To caller, via ( C EXIT ) To EXIT prolog From SVC Interruption Handler ( ENTER EXIT From SVC 'Interruption Handler ·c ) Prolog ) ~XIT EAVEXP1) ENTER ) , r IEAVSY50 IEAVSY50 POST Mainline WAIT Mainline Post Service , Processing IEAVEDSO , WAIT Service Processing IEAVEDSO Dispatcher Dispatcher .. r EXIT To caller, )via EXIT prolog IE AVEXP1 Cross-Memory POST Processing .. , C EXIT To caller via Branch; to SVC Routi nes via EXIT Prolog (I EAVEXP1) Figure 3-50. DEQ, CHAP, WAIT, and POST Module Flow Section 3: Program Organization 6-125 From SVC Interruption Handler ( From SVC Interruption Handler ( ENTER ENTER ) , IEAVTBOO, IEAVBTOO SPI E Mainline EXTRACT Mainline SP I E Service Processing ( EXIT To caller via EXIT Prol og EXTRACT Service Routine ( ) To caller via EXIT Pro log From any SVC routine F rom User or System Program ( • EXIT ENTER ENTER IEAVEOR IEAVEEXP EXIT Mainline . • Redispatch current task Current Task EXIT Service Processing IEAVEDSO IEAVTRT2 -- • To dispatcher ABEND Performs EOT Processing IEAVEOR r EXIT via Exit Prolog . • Invoke EXIT for EOT EXIT Prolog Figure 3-51. SPIE, EXTRACT, EXIT, and Exit Prolog Module Flow 6-126 Dispatcher OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) EXIT proc~ssing ,From SVC Interruption Handler ( ENTER From SVC Interruption Handler ( ) , r----- ENTER ) , IEAVSETS IEAVMODE STATUS Mainline MODESET Mainline MODESET Service Processing STATUS Service Processing , Ir ( IEAVERD, DR EXIT via Exit Prolog I nter-P rocessor Communications , IEAVEDSO Dispatcher ( From SVC I nterruption Handler EXIT ) To caller via Exi t Prolog From SVC Interruption Handler IEAVEVTO EVENTS Mainline EVENTS Service Processing IEAVTEST To caller via Exit Prolog TESTAUTH Mainline TEST AUTH Service Processing EXIT via Exit fo'rolog Figure 3-52. STATUS, MODESET, EVENTS. and TESTAUTH Module Flow Section 3: Program Organization 6-127 From SVC Second Level Interruption Handler From SVC Second Level I nterruption Handler SYNCH Service Processing EXIT Prolog Link Service Processing EXIT Prolog From SVC Second Level Interruption Handler ENTER LOAD Service Processing IEAVEEXP EXIT Prolog Figure 3-53. LINK, SYNCH, LOAD, Program FETCH/BLDL Interface Module Flow 6-128 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) From SVC Second Level Interruption Handler From SVC Second Level I nterruptlon Handler ENTER ENTER IEAVIDOO IDENTIFY Service Processing To caller From SVC Second Level Interruption Handler C ) ENTER • IEAVLKOO , IEAVLK01 XCTL Service Processing IEAVEEXP EXIT Prolog ( EXIT ) Figure 3-54. DELETE, IDENTIFY, XCfL Module Flow Section 3: Program Organization 6-129 from IEAVESVC or from branch entry caller ( ) ENTER GETMAIN request + IEAVGMOO ...- .... IEAVSOA LSOA/SOA Allocation Allocate virtual storage .. \ .. via Branch IEAVCSEG Create Segment IEAVCSGB Allocate space for a V=R region ( ~ .. .. r -- t IEAVPRTO GETPART -- IEAVEOR .. + V=R Region Allocation r ) EXIT to caller from IEAVESVC or from branch entry caller ( ) ENTER FREEMAIN request IEAVGMOO Free virtual storage IEAVRELS - to free a full page Page Release ... .. IEAVDSEG Destroy Segment h to free a V=R region ... -.. FREEPART , ( EXIT ) to caller Figure 3-55. Space Allocation/Deallocation Overview Module Flow 6·130 IEAVEORF .IEAVPRTO OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) -.. Free V=R Region VS2.03.807 Program I nterru pt Code X'11' ( ENTER ~ IEAVEPC .. If SPI E Exit supplied If no SPI E exit suppl ied - .. User SPI E Exit Routine IEAVPIX Program Interrupt Extension .. .. IEAVGFA General Frame Allocation , -.. .. , , Suspend subroutine Puts routine in wait state for paging I/O ILRPAGIO Start page-in when complete - IEAVPIOP Page I/O Post Reset subroutine via SRB dispatch , IEAVIOCP Make routine dispatchable - .. I/O Completion Processor , Mainline PCIH .. When page fault satisfied p IEAVEDSO Dispatch highest priority TCB or SRB If page fault satisfied r immediately Continue execution Figure 3-56. Page Fault Processing Overview Module Flow Section 3: Program Organization 6-131 VS2.03.807 from IEAVESVC C ENTER ) SVC 112 IEAVPSI Validity Check PRGR LSE parameter IEAVRELS .... - Page Release -- .. ILRINTOO . IEAVGFA Release Auxiliary Storage J ~ from IEAVESVC "\ SVC ... ENTER J 113 from branch Branch entry caller ""\ Entry. ENTER J ( ( - Validity check PGFIX, PGFREE, PG LOAD, PGOUT parameters Prolog (IEAVEEXP) - Validity check parameters ~ Route control ~ ---- PGR LSE PGFIX/PGLOAD - - ..... IEAVFXLD Update fix counts & get real frame ~~ for recovery ... PGFREE -.... --- General Frame 'Allocation ~~ 1, IEAVFREE - Decrease fix counts •• ILRPAGIO PGOUT -.... o Exit processing .. IEAVOUT I nval idate pages and start page-out Start page-i n or page-out 1-4-- at completion ~~ l' IEAVPIOP Process page-out schedule page-in completion via scheduled .~ SRBr-______L -______~ ,( EXIT ) to caller or to EXIT Prolog (JEAVEEXP) Figure 3-57. Page Services Overview Module Flow 6-132 OS/VS2 System Logic Library Volume 6 (VS2.03.807) IEAVIOCP I/O Completion Processor ( EXIT ) '-------' to IEAVEDSO VS2.03.807 ( ) Enter + SRM RSM IEAVPIOP IRARMCSO Initiates the swap-out RCT (in address space to be swapped) t + r-- IEAVAR02 RSM Prepares address space for swap-out by stopping its activity RSM RSM IEAVPIOI ASCBCHAP to delete address space from ready queue SR B to master address space ~----- ASM ~ ~ IEAVSOUT Constructs SPCT, PCB/AlAs for swap-out ASM ILRPAGIO Starts swap-out for LSOA pages Starts the non-LSOA swap-out ASM Process completed LSOA I/O (PTLB, SYSEVENT, and free LSOA PCBs and frames. t • ILRSWAP I' IEAVSWPC t • Process completed private area nonLSOA I/O (free frames and PCBs as I/O completes) t + ILRPAGCM AlAs to RSM as I/O completes 1 If private area - non-LSOA I/O go to PlOP 2 If LSOA I/O go to I EA VSWPC ( ~- + Exit Figure 3-58A. Swap-out Overview Section 3: Program Organization 6-133 VS2.03.807 Enter ( ( ) '------,r---'" SRM Reschedule swap-in if failed IRARMCSI I nitiate and control the swap-in Exit SRM IRARMINT - Process SYSEVENT , SYSEVENT - restore complete Schedule SRB to start the swap-in in master address space RSM ' Exit to Dispatcher IEAVSWIN (I EA V EDSO) t - - - - - - - - - - I Construct PCB/AlAs from SPCT for swap-in - IEAVAR03 Notify SRM that swap-in is complete SYSEVENT - frame shortage if sufficient frames are not available to complete swap-in RSM RCT SYSEVENT - swap failed if GFA unable to obtain frames IEAVGFA. " POST ReT RSM (IEAVSWIN) IEAVSIRT To root processing if swap-in fails Assign frames for LSOA and fixed frames and initiate the swap-in I/O • Swap fails terminate processing • Swap completes rebuild address space RSM SRB to swapped address space IEAVSIRT (lEAVSWPP) Initiate private area I/O, then post RCT I t ASM RSM r RSM ILRSWAP IEAVGFA Start the swap-in I/O Assign frames for private area liD r To root complete processing when root count equals zero IEAVPIOP Process completed liD. Decrement root count for LSOA and fixed pages - Figure 3-58B. Swap-in Overview 6-133.0 OS!VS2 System Logic Library Volume 6 (VS2.03.807) I ASM ILRPAGIO - - Start liD for private area frames Section 3: Program Organization 6-133.1 VS2.03.807 from VIO VREAD or VWRITE ( ENTER , IDAVBPP1 Data Management for VIO - .. IEAVAMSI Router Routine Determine Request Type Assign Processor ~ ( Initial ize tables If PGLOAD option, call for page-in IEAVPSI .... - ... Route PGLOAD Request .. -- IEAVFXLD Create PCB and request frame EXIT , to caller " IEAVGFA Assign real frame and request I/O jl' , Move-Out Processor Clear table entries and start page-out .... - ... ILRPAGIO Start paging I/O .~ When I/O complete '. IEAVPIOP Process Page-Out complete Schedule page-in complete via SRB Scheduled Dispatch r IEAVIOCP Val idate pages ( EXIT to Dispatcher IEAVEDSO Figure 3-59. VIO Services Overview Module Flow 6-134 OS/VS2 System Logic Library Volume 6 (VS2.03.807) ) from lEA VG MOO or IEAVITAS ( ENTER ) , IEAVSQA If a preferred area frame must be stolen, If a frame was stolen, ..- -- -'- . - IEAVINV Invalidate page IEAVEQR If V=R intercepted frame stolen, -- -- Move PFTE to correct LSQA or SOA frame queue. - .-- - IEAVPREF Steal a preferred area frame ~ Schedule completion processor IEAVPFTE PFTE Enqueue/ Dequeue IEAVFP IEAVFP2 Get the PGTE address for the input page. -- -- If an error occurs record it. -- -- Find Page ..- via Branch .- IEAVTRV Translate real address to virtual address IEAVRCV ( " EXIT RSM FRR ) to caller Figure 3-60. RSM Module Flow - lEA VSQA Section 3: Program Organization 6-135 from lEA VPRTO ( ENTER ) l IEAVPCB IEAVEQR ... .- .... - Get LSQA space for page tables - ... To create necessary segments .- Get a root PCB from the free queue ~ PCB Manager IEAVGMOO GETMAIN ~ IEAVCSEG .. p Create Segment IEAVPSI If page is in pageable common area or in current address space If page is in another address space, build SRB - .... .- .... IEAVPSII Page-out IEAVGTCL GETCELL IEAVPCB -- - IEAVREP2 Replenish SRB Pool IEAVEQR and schedul e IEAVEQRP -- .. IEAVEQRP Clear V=R space 6 Figure 3-61. RSM Module Flow - lEAVEQR Initial Region Allocation (Part 1 of 2) 6-136 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) 7 IEAVFP IEAVEOR (continued) If a segment exists, get PGT address .. Release unneeded LSOA space . . Move PFTES to local frame queue .. , . IEAVFP2 .- Find Page IEAVTRV Translate real address to virtual address IEAVGMOO FREEMAIN IEAVPFTE PFTE Enqueuel Dequeue to IEAVPRTO If frames are not available - \. .f If all frames are available: -- • Move PFTEs to local frame queue - • Free root PCB - • EXIT ) IEAVFP • Get PGTE and XPTE addresses ( EXIT IEAVFP2 - .. Find Page - . IEAVTRV Translate real address to virtual address IEAVPCB PCB Manager ) to IEAVPRTO Figure 3-61. RSM Module Flow - IEAVEQR Initial Region Allocation (Part 2 of 2) Section 3: Program Organization 6-137 from lEA VPFTE ( ENTER ) IEAVEOR ,. IEAVEORI 'Intercept Processing IEAVGTCL - Get an SRB GETCELL from I EAVEDSO Schedule completion processing via _f dispatched SRB \. ENTER ) IEAVEOR ~~ Ir ( EXIT IEAVEORC ) Completion Processing to IEAVPFTE .- Free SRB - Obtain local and SALLOC locks -- . IEAVFRCL FREECELL IEAVELK SETLOCK IEAVFP Get PGTE addresses - .- Move PFTEs to local frame queue --- .. IEAVTRV IEAVFP2 Find Page f+- -.. IEAVPFTE PFTE Enqueue/Dequeue Ir Figure 3-62. RSM Module Flow - lEA VEQR Asynchronous Completion and V=R Clearing (Part I of 2) 6-138 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) Translate real address to Virtual Address , IEAVEORC (continued) Free root PCB Post an ECB to indicate completion -- . - .. -- .. IEAVPCB PCB Manager IEAVSY50 POST IEAVRCV If internal errors occur record and restart " C EXIT to IEAVEDSO RSM FRR dispatched SRB via IEAVEDSO C ENTER IEAVEOR IEAVPSI IEAVEORP Page out all pages in current address space IEAVPSII Page Services Interface IEAVF.ORP via If another address space has pages in V=R area, ...i - - - -....-t reschedule scheduled SRB F'Jrther V=R Clearing IEAVFRCL If no other address space has pages in V=R region, free SRB FREECELL ,to lEA VEDSO Figure 3-62. RSM Module Flow - lEA VEQR Asynchronous Completion and V=R Clearing (Part 2 of 2) Section 3: Program Organization 6-139 from lEA VPRTO ( ENTER ) IEAVEQR " IEAVEQRI If region allocation not complete, free PCB ..- ..- IEAVPCB PCB Manager IEAVFP IEAVFP2 Get PGTE addresses I nval idate segments in region ---- -- -- . r' - Free LSQA space - , Free PFTES for frames in the region - ..... -- Purge TLBs on all CPUs .. - Find Page IEAVDSEG Destroy Segment IEAVGMOO Free LSQA space IEAVPFTE PFTE Enqueue/ Dequeue IEAVINV Page Invalidation " ( EXIT ) to IEAVPRTO Figure 3-63. RSM Module Flow - lEA VEQR Free V=R Region 6-140 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) -- .. - IEAVTRV Translate real address to virtual address from lEA VGMOO or an RSM routine ( ENTER IEAVRELS ) I, IEAVFP IEAVRELV IEAVRELF IEAVFP2 · Get PGTE and XPTE addresses Find Page IEAVTRV -- ... Translate real address to vi rtual address For pages in real storage, invalidate PGTE and purge TLBs free PFTE - IEAVINV · Page Invalidation IEAVPFTE · PFTE Enqueue/ Dequeue IEAVGMOO If a deferred release is being completed, free the page - .. MRELEASR FREEMAIN Figure 3-64. RSM Module Flow - lEA VRELS FREEMAIN Release (Part 1 of 2) Section 3: Program Organization 6-141 VS2.03.807 9 IEAVRELV IEAVRELF (continued) For pages not in real storage If frame request has been deferred for nonPGFIX PCBs free or move PCB - IEAVPCB ·- PCB Manager IEAVEPC Notify waiting routines of changed status of page - . IEAVRSET Remove suspended routine from Page Wait IEAVPIOP .. Free auxil iary storage assigned to a page .. ~ . IEAVOPBR Schedule an SRB to dispatch lEA V I OCP -- via Scheduled SRB ILRFRSLT ASM Interface IEAVTRV Get PGT address -- · When all 16 pages in segment are freed, inval idate SGTE and SPCT entry .. -. -- -.. If internal errors occur, record and restart If entered at IEAVRELF free fixed space t C EXIT Translate real address to virtual address IEAVDSEG Destroy Segment IEAVRCV RSM FRR IEAVGMOO -- -· FREEMAIN ) to caller Figure 3-64. RSM Module Flow - lEA VRELS FREEMAIN Release (Part 2 of 2) 6-142 OS/VS2 System Logic Library Volume 6 (VS2.03.807) -- IEAVIOCP Page I/O Completion Processor from I EAVGMOO or IEAVEQR ( ) ENTER ~~ IE.AVCSEG IEAVELK If SPCT is to be expanded, get the local and SALLOC locks ~ SETLOCK IEAVGMOO Allocate SOA space ~ -'" GETMAIN IEAVGMOO After processing, free SOA space If an internal error occurs, record it and restart FREEMAIN - ... IEAVRCV RSM FRR .Ir ( EXIT from IEAVRELS ) C ENTER ) to caller , IEAVDSEG IEAVTRV - .. Translate PGT address Invalidate SGTE and purge TLBS - .. Translate real address to virtual address iEAVINV Page Invalidation r ( EXIT ) to IEAVRELS Figure 3-65. RSM Module Flow - IEAVCSEG, lEA VDSEG Section 3: Program Organization 6-143 from I EAVEPC ( ENTER ) ~~ IEAVPIX Get SALLOC lock --.. IEAVELK - SET LOCK IEAVFP IEAVFP2 -.. -- Get a PCB to pass to IEAVGFA -.. ..· PCB Manager Assign a real frame ---.. -· General Frame Allocation If internal errors occur, record them and restart -- -· Get PGTE, XPTE address Find page IEAVPCB IEAVGFA IEAVRCV RSM FRR ~ Ir ( EXIT to IEAVEPC Figure 3-66. RSM Module Flow -IEAVPIX 6-144 OS!VS2 System Logic Library Volume 6 (VS2 Release 3.7) -- IEAVTRV .- Translate real address to virtual address from IEAVPIX, IEAVFXLD, IEAVSWIN or IEAVGFA Defer Processor ( ENTER ) r IEAVGFA Defer or release pages on Defer queue. Move new frame to correct queue. - .. - . IEAVPCB PCB Manager IEAVPFTE PFTE Enqueue/ Dequeue IEAVEPC I f a preferred area frame must be stolen, -- .. - If valid V=R page to be migra!ed for long-fix, - . For page fault PCB if I/O required, If auxiliary storage is assiged to page, put PCB on active queue. If PCB count in root PCB goes to zero, call appropriate root exit to do completion processing . . .. .. IEAVSUSP Put Interrupted routi ne in page wait IEAVPREF - --... Steal a preferred area frame IEAVINV Inval idate page IEAVPCB PCB Manager Root Exit (Either IEAVSWIN or IEAVFXLD) ., Figure 3-67. RSM Module Flow - lEA VGF A (Part 1 of 2) Section 3: Program Organization 6-145 VS2.03.807 . ,Ir IEAVGFA (continued) IEAVSETS IEAVRSET When PCB removed from Defer queue ~ . Make routine dispatchabl e IEAVPCB Put PCSon correct queue PCB Manager IEAVPIOP Process I/O complete PCBs - . IEAVOPBR Schedule SRB to dispatch lEA V 10CP IEAVIOCP --... IEAVRCV If internal errors occu r, record and restart --- Pass any AlAs for non-swap page-in .. .- Page any swap-in AlAs ~ -"' .. RSM FRR ILRPAGIO Start page-ins for AlAs ILRSWAP Start swap-in I, C EXIT ) to caller Figure 3-67. RSM Module Flow - lEA VGF A (Part 2 of 2) 6-146 OSjVS2 System Logic Library Volume 6 (VS2.03.807) ~--. I I I I L I/O Completion Processor tChedUled SRB VS2.03.807 from ILRPAGCM ( ENTER i IEAVPIOP IEAVELK - .... .... Get SALLOC lock SETLOCK PAGE-OUT If successful page-out and no related PCBs, free PFTE .- Free PCB addressed by AlA - - ..... .. IEAVPFTE PFTE Enqueue/Dequeue IEAVPCB PCB Manager PAGE-IN If part of a stage 1 swap-in, dequeue or free PCB When PCB count in root PCB goes to zero, reconstruct swapped-in address space --- . - - IEAVPCB Dequeue or free PCB IEAVSWIN Swap-In Root Exit ( ENTER IEAVPIQP If a non-swap-in page-in PCB, schedule IEAVIOCP via .- Branch If an internal error occurs, record it and restart ( i EXIT .- .. IEAVRCV RSM FRR .... ) i via scheduled IEAVOPBR Schedule SRB to run IEAVIOCP ( i EXIT - ..~ SRB Dispatch IEAVIOCP 1-----------1 Process I/O complete PCBs ) to caller ) to ILRPAGCM Figure 3-68. RSM Module Flow - IEAVPIOP Section 3: Program Organization 6-147 from IEAVEDSO C ENTER ) -- • IEAVIOCP Free SRB quick cell Q IEAVFRCL - FREECELL IEAVELK Get local and SALLOC locks -- -.. SETLOCK NORMAL IEAVEPC If PCB is for page fault If count in root PCB is zero, process completion -- IEAVRSET .. Make suspended routine dispatchable Root Exits -... IEAVFXLD or IEAVSWIN Root Exits IEAVPIOP If PCB can not be fully processed Free PCBs or enqueue on I/O active queue - -- IEAVOPBR .. Schedule IEAVIOCP IEAVPCB --- PCB Manager " Figure 3-69. RSM Module Flow - lEA VIOCP (Part 1 of 2) 6-148 OS/VS2 System Logic Library Volume 6 (VS2.03.807) via dispatched SRB 7 IEAIOCP (continued) IEAVRELS ERROR If PFTE fix count zero and PFTE marked Deferred Release .- -.. IEAVRELF FREEMAIN Release IEAVPFTE -- Free real frame for page-in ..- PFTE Enqueue/Dequeue IEAVEPC . If PCB for a page fault .... If PCB count in root PCB goes to zero .... -.. - IEAVRSET Make suspended routines dispatchable Root Exit IEAVFXLD or lEA VSWI N Root Exit IEAVPIOP - If a PCB cannot be completely processed -~ - -.. .. - .... Free related PCBs -.. IEAVOPBR Schedule SRB to IEAVIOCP 6 IEAVPCB PCB Manager IEAVRCV If internal errors occur record and restart terminating routine .... I RSM FRR ~ C + EXIT ) to IEAVEDSO Figure 3-69. RSM Module Flow - lEA VIOCP (Part 2 of 2) Section 3: Program Organization 6·149 from lEA VESVC or from branch entry caller ( ENTER ) j IEAVPSI If entered from a non-RSMroutine, get SALLOC lock For PGFIX, PGFREE requests, for SVC entries, test callers authorization -- ·- IEAVELK SETLOCK IEAVTEST - · .- TESTAUTH via TESTAUTH If PGFIX or PGLOAD with release option, free the real storage ..- .. IEAVRELS If PGFIX or PGLOAD request, fix or load requested frames .. IEAVFXLD .- -- Page Release PGFIX/PGLOAD ~ ~ 1 If PGFREE request, free requested page frames If release option or branch entry to PGRLSE routine, free real and auxiliary storage .- - -- · IEAVFREE PGFREE r---- IEAVRELS Page Release ~ IEAVPSI For PGOUT request, start page-out .- ..- IEAVOUT PGOUT - ,Ir ~ Exit Routine ... - For successful PGFIX, PG LOAD with ECB request, post ECB If RSM internal errors are detected ( 1 EXIT to caller Figure 3-70. RSM Module Flow - IEAVPSI 6-150 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) ) - --- .- IEAVSY50 POST IEAVRCV Record error and restart terminating routine VS2.03.807 from lEA VPSI ( ENTER ,Ir IEAVFXLD IEAVFXLD (continued) IEAVFP Normal Processing .. Get PGTE, XPTE addresses IEAVFP2 Error Processing Find Page If error is internal to RSM IEAVRCV - .- Record error and restart terminating routine IEAVPCB For pages not in real storage, create PCBs - . IEAVGMOO PCB Manager For PG F I X requests, free FOEs - . - -. FREEMAIN IEAVGMOO Build FOE if required - . IEAVPCB GETMAIN Free PCBs created by this routin€ PCB Manager IEAVPSI NEXTVSL If input request was list form When all VSL entries are processed without error, all ocate real frames - - Move next VSL entry into CIWA IEAVFREE For PG F I X requests, perform bac kout .. PGFREE IEAVGFA . r General Frame Allocation C EXIT ) to IEAVPSI .( EXIT ) to IEAVPSI Figure 3-71. RSM Module Flow - IEAVFXLD and lEA VFXLD Root Exit (Part 1 of 2) Section 3: Program Organization 6-151 from lEA VPSI ( ENTER ) IEAVFXLO' IEAVFXL Root Exit ~l Post ECB complete If any page-ins failed, schedule abnormal termination --. -... IEAVSY50 POST IEAVTRT1 - via .. CALLRTM Termination IEAVPSI IEAVFREE IEAVPSII Free ECB fixed by IEAVPSI Return root PCB to free queue ..- ---- - . Page Services Interface - -. PGFREE IEAVPCB PCB Manager ~, ( EXIT ) to caller Figure 3-71. RSM Module Flow - IEAVFXLD and IEAVFXLD Root Exit (part 2 of 2) 6-152 OSjVS2 System Logic Library Volume 6 (VS2.03.807) from IEAVPSI or IEAVFXLD ( ENTER , IEAVFREE Process FOEs for fixed pages IEAVFXLD -.. FOEDEL ... Decrement FOE fix count IEAVRELS If fix count for page is zero and FREEMAIN Rei ease has been deferred -... IEAVRELF ..· FREEMAIN Release IEAVFP Get XPTE address If PCB found on G FA Defer queue, free PCB -- ..· ---- ..· IEAVFP2 Find Page IEAVPCB PCB Manager IEAVPSI If I ist form request If internal errors occur -... - NEXTVSL --.... Move next VSL entry into CIWA IEAVRCV Record internal error and restart terminating routine , ( EXIT to caller Figure 3-72. RSM Module Flow - IEAVFREE Section 3: Program Organization 6-153 VS2.03.807 from I EAVPSI C ENTER ) .Ir IEAVFP IEAVOUT - .. - .. -- .... Get a PCB -- .. If internal errors are detected -- .. If page is to be paged out, get XPTE, PGTE addresses Invalidate PGTE If page is unchanged or part of quick start area, free PFTE IEAVFP2 Find Page IEAVINV Page I nval idation IEAVPFTE PFTE Enqueue/Dequeue IEAVPCB PCB Manager IEAVRCV Record error and restart terminating routine IEAVPSI NEXTVSL When all pages of VSL entry are processed -.. When all VSL entries have been processed, put PCBs on active queue Pass AlAs for page-out ( EXIT -.. .. Move next VSL entry to CIWA IEAVPCB PCB Manager - ... ILRPAGIO Start page-out operation ) to IEAVPSI Figure 3-73. RSM Module Flow - IEAVOUT, IEAVRELS (Part 1 of 3) 6-154 OS/VS2 System Logic Library Volume 6 (VS2.03.807) from I EAVPSI ( ENTER ) IEAVFP IEAVRELS Get PGTE, XPTE addresses IEAVFP2 - ... - ... Find Page IEAVINV If page is in real storage and is not fixed, inval idate page Page I nval idation IEAVPFTE Free real frame ~ ...... I f not in real storage If PCB on GFA Defer Queue or in wait state for page fault PFTE Enqueue/Dequeue IEAVEPC - IEAVRSET .... Make SRB routine dispatchable IEAVPCB Free PCB or move it to I/O active queue -- --... PCB Manager IEAVPIOP IEAVOPBR Schedule I/O completion processing -... ... Schedule an SRB for IEAVPIOP via SRB Dispatch -.. IEAVIOCP Process I/O complete PCBs , Figure 3·73. RSM Module Flow - IEAVOUT, IEAVRELS (Part 2 of 3) Section 3: Program Organization 6·155 VS2.03.807 7 IEAVRELS (continued) ILRFRSLT Free any auxiliary storage for pages If internal errors are detected -- - - - Free auxiliary storage slot IEAVRCV Record error and restart terminating routine IEAVPSI When all pages in a VS L entry have been 'processed .. ~ -. NEXTVSL Move next VSL entry into CIWA ,r ( EXIT to IEAVPSI Figure 3-73. RSM Module Flow - IEAVOUT, IEAVRELS (Part 3 of 3) 6-156 OS/VS2 System Logic LibraI)' Volume 6 (VS2.03.807) VS2.03.807 C ENTER) via SR B Dispatch scheduled by SRM IEAVSWIN IEAVFRCL Release SRB quickcell ..._-----_~ FREECELL IEAVELK Get SALLOC lock Get PCBs for swap-in , SETLOCK IEAVPCB - PCB Manager For common area If page is not val id in storage or val id, not fixed, and in a V=R frame, get XPTE, PGTE addresses , .- Free left-over PCBs - --. IEAVFP Find Page IEAVPCB - PCB Manager IEAVGFA Pass PCBs for frame allocation General Frame Allocation , I Figure 3-74. RSM Module Flow - IEAVSWIN, IEAVSWIN Root Exit, and IEAVSWIN POST Routine (Part 1 of 4) Section 3: Program Organization 6-157 VS2.03.807 7 IEAVSWIN (continued) If number of frames needed not available, release SALLOC lock and get local lock .. .. IEAVELK SETLOCK IRARMINT via SYSEVENT .. Notify SRM that swap-in failed If internal errors are detected ( • ) ENTER ) EXIT .. .. ..via . IRARMIOO Record swap-in failure IEAVRCV Record error and restart term routine to Dispatcher IEAVEDSO ( IEAVSWIN. IEAVSIRT Root, Exit If fail flag is set in root PC,B, terminate address space CALLRTM IEAVTRT1 Termination IEAVRCV If page of LSQA with SGT cannot be found - Call for termination of address space via -CALLRTM Record error and restart terminating routine IEAVTRT1 Termination IEAVEACO Put ASCB for new address space on ready queue ... ASCBCHAP 6 I Figure 6-158 3-74. RSM Module Flow - IEAVSWIN, IEAVSWIN Root Exit, and IEAVSWIN POST Routine (Part 2 of 4) OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 7 IEAVSWIN (continued) Make SRBs dispatchable in new address space ( t ~ -- Free PCBs and root PCBs EXIT - IEAVSETS ... Status Start system and non-quiescable SRBs IEAVPCB . PCB Manager ) to caller I Figure 3-74. RSM Module Flow - IEAVSWIN, IEAVSWIN Root Exit, and lEAVSWIN POST Routine (Part 3 of 4) Section 3: Program Organization 6-159 VS2.03.807 ENTER IEAVSWIN via SRB dispatch scheduled from IEAVSIRT IEAVSWPP Swap-in POST Routine IEAVFRCL Release SRB quickcell - Obtain SALLOC lock - - · Obtain PGTE/XPTE addresses - ·.. ~ · FREECELL IEAVELK SETLOCK IEAVFP Pass PCBs for state II swap-i n - ~ ·.. Find page IEAVGFA General frame allocation IEAVSY50 POST RCT ECB that swap-in is complete POST IEAVELK Release SALLOC lock ~ ... SETLOCK Figure 3-74. RSM Module Flow - IEAVSWIN, IEAVSWIN Root Exit, and IEAVSWIN POST Routine (Part 4 of 4) 6-159.0 OS/VS2 System Logic Library Volume 6 (VS2.03.807) Section 3: Program Organization 6-159.1 VS2.03.807 from IEAVAR02 C ENTER ) , IEAVSOUT LSQA and Fixed Page Processing IEAVSETS IEAVSSNO .. Stop non-quiescable SRBs Status Stop IEAVELK Get SALLOC lock Get PCBs to perform swap-out If extra SPCT space is needed, obtain it from SOA - SETLOCK - - - .. IEAVPCB PCB Manager IEAVGMOO GETMAIN 6 Figure 3-75. 6-160 RSM Module Flow - lEA VSOUT (Part I of 3) OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 7 IEAVSOUT (continued) If space allocation fails IEAVPCB Free PCBs PCB Manager Make SRBs dispatchable ..... -.. Quiesce Paging 110 If page-in PCB found for a page fault If PCB count in root PCB goes to zero If page-in is complete and suffered an I/O error, free PFTE To complete page-in PCB processing, free PCBs IEAVSETS Status Start IEAVEPC - .. Make suspended routine dispatchable Root Exit .. IEAVRSET Complete root PCB processing .. IEAVPFTE PFTE Enqueue/Dequeue IEAVPCB - PCB Manager r Figure 3-75. RSM Module Flow - IEAVSOUT (Part 2 of 3) Section 3: Program Organization 6-161 VS2.03.807 7 IEAVSOUT (continued) Pageable Page Processing If frame is a VIO trame, free PFTE If virtual page is valid in real storage, get XPTE, PGTE addresses I f frame is assigned to a pageable virtual page that is unchanged, free PFTE - . - . IEAVPFTE PFTE Enqueue/Dequeue IEAVFP Find Page IEAVPFTE ... - - PFTE Enqueue/Dequeue IEAVPCB When all frames are processed, free or move PCBs - ..- PCB Manager ILRPAGIO If non-LSOA pages in swap group Schedule initiation of swap I/O for LSOA pages - ASM private area I/O processor Schedule -SRB via .. IEAVPIOI Swap I/O Initiator Dispatcher IEAVGMOO Free unused SPCT extensions If internal errors are detected - - - -. FREEMAIN IEAVRCV Record error and restart terminating routine , ( EXIT to IEAVAR02 Figure 3-75. RSM Module Flow - IEAVSOlJf (Part 3 of 3) 6-162 OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 via SRB Dispatch scheduled by lEA VSOUT ( ENTER ) l~ IEAVPIOI IEAVELK Get local lock -- ..... Remove ASCB of address being swapped out from ready queue - ... SET LOCK IEAVEACO ~ ASCBCHAP IEAVELK Get SALLOC lock ~ SETLOCK ILRSWAP Pass AlAs to ASM for page-out . - Start page-out operation Ir I Figure 3-76. RSM Module F10\V - lEA VPIOI (Part I of 2) Section 3: Program Organization 6-163 VS2.03.807 ( ENTER I. from I LRPAGCM ~Ir ·IEAVPIOI (continued) If ASCBCHAP failure occurs, record and restart ) IEAVSWPC IEAVRCV ~ . Record error and restart terminating routine Purge TLBs IEAVINV -- Issue PTLB then IEAVELK get SALLOC lock Purge TLBs, free LSOA PCBs, and reval idate the LSOA PFTEs. ~ ... SETLOCK IEAVSWPC ~ r Swap-out completion processor .. Issue swap-out complete SYSEVENT Delete the address space from the ready queue SYSEVENT IEAVEACO ""- ~ --... - ASCBCHAP IEAVPCB IEAVPIOP Process AlAs as pageout completions IRARMINT Free PCBs Page I/O Post ... PCB Processor ,Ir ( IEAVPFTE EXIT to IEAVEDSO Free frames I f swap-out fails Figure 3-76. RSM Module Flow - IEAVPIOI (part 2 of 2) 6-164 OS/VS2 System Logic Library Volume 6 (VS2.03.807) PFTE Processor .. via CALLRTM... IEAVTRT1 Termination from VIO modules C ENTER ) IEAVAMSI Get SALLOe lock .. - ASSIGN Processing IEAVELK SETLOCK IEAVFP Get XPTE, PGTE addresses - . If addresses are unavailable due to RSM error ..- . If reclamation successful and PFTE is on available frame queue, move PFTE to a frame queue - - IEAVFP2 Find Page IEAVRCV Record error and restart terminating routine IEAVPFTE PFTE Enqueue/Dequeue IEAVPSI I f the LOA D option is reque~ted and no reclamation occurs, issue PG LOAD - via Branch ..- IEAVPSII Page Service Interface -- .. IEAVFXLD PGLOAD •• Figure 3-77. RSM Module Flow - IEAVAMSI (Part 1 of 4) Section 3: Program Organization 6-165 VS2.03.807 7 IEAVAMSI (continued) MOVE-OUT Processing in storage Get XPTE, PGTE addresses I f addresses cannot be obtained due to an RSM error If the page is in real storage, inval idate it IEAVFP IEAVFP2 - ..- -- . -- .. Find Page IEAVRCV Record error and restart terminating routine IEAVINV Page Invalidation ILRFRSLT If the VCB indicates a null MOVE-OUT -- - If the in-storage option is not requested for a null MOVE-OUT, free PFTE -- .. If VCB is for normal page-out and a VIO LPID is in the XPTE and the page is unchanged, get a PCB - ... Release auxiliary storage assigned to an LPID IEAVPFTE PFTE Enqueue/Dequeue IEAVPCB PCB Manager IEAVPCB After setting PCB flags for move-out, put PCB on I/O active queue -- ... Set up AlA for page-out .. . PCB Manager ILRPAGIO Start a page-out 6 Figure 3-77. RSM Module Flow - lEA VAMSI (Part 2 of 4) 6-166 OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 , IEAVAMSI (continued) If page is unchanged and auxiliary storage is assigned - I LRPOS ... If in-storage option not specified, free PFTE MOVE-OUT Processing out-ofstorage -- -. If a null MOVE-OUT is not specified or if non-disconnect is not specified, and if RSM created aux storage is assigned to page - .. - . If move-out not required, and if PCB on G F A Defer Queue is for page fault in current address space, make waiting routine dispatchable Transfer a new LPID to point to RSM aux storage IEAVPFTE PFTE Enqueue/Dequeue ILRPOS Transfer new LPID to point to RSM auxiliary storage IEAVRSET Reset , Figure 3-77. RSM Module Flow - lEA VAMSI (Part 3 of -t.) Section 3: Program Organization 6- 167 VS2.03.807 ·Ir IEAVAMSI (continued) If PCB count in root PCB goes to zero, complete root exit process Then free PCB or enqueue it on I/O active queue .. -- .. -- Root Exit Complete Root PCB processing IEAVPCB PCB Manager IEAVPIOP Have completion processing scheduled After PCB queues have been searched for null MOVE-OUTs For regular MOVE-OUTs ~ -- Schedule I/O completion processing ILRFRSL T - ~- .. ... ~ IEAVOPBR Release auxiliary storage assigned to LPID ILRPOS Transfer a new LPI D to point to RSM created auxiliary storage " C EXIT to caller hgurc 3-77. 6-168 RSM \1odull' rlm\ I L\ \',\ \ISI (Part 4 of 4) OS/VS2 System Logic Library Volullle 6 (VS2.03.807) via _ SRB IEAVIOCP ---. Dispatch - Page I/O Completion Processor YS2.03.807 from IEAVGCAS ( ENTER ) " IEAVELK IEAVITAS Get SAL LaC lock ... ..- SETLOCK IEAVGMOO Obtain SQA space ... -- --- - -.. ... ... GETMAIN ILRGOS Call ASM to get logical group number Get a real frame assigned - Assign Logical Group Number IEAVSQA SQA/LSQA Allocation IEAVFP Get PGTE address for Master Scheduler page Put PFTE on LSQA frame queue of new add ress space -- - - -.. IEAVFP2 Find Page IEAVPFTE -- PFTE Enqueue/Dequeue " Figure 3-78. RSM Module Flow -IEAVITAS (Part lof2) Section 3: Program Organization 6-169 VS2.03.807 7 IEAVITAS (continued) IEAVPFTE For backout processing, on error, free real frames ..... - ---. If assigned,release LGN .. - Free SQA space ... - If an error occurs ..- " ( EXIT - PFTE Enqueue/Dequeue ILRGOS Release logical group number IEAVGMOO FREEMAIN IEAVRCV Record error and restart terminating routine ) to IEAVGCAS Figure 3-78. RSM Module Flow - IEAVITAS (Part 2 of 2) 6-170 OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 from IEAVTERM ENTER ) ., IEAVDLAS ILRFRSLT - -.. - . .... Release LGN Move PFTES to available queue unless 1/0 in progress; then dequeue it r Release aux. storage for LGN IEAVPFTE PFTE Enqueue/Dequeue IEAVINV Purge TLB of SGT address ... -- --. Free space for RSMHD, SPCT, and SPCT extensions .... .. - - Page I nval idat ion IEAVGMOO FREEMAIN ,r ( EXIT" ) to IEAVTERM Figure 3-7tJ. RS!\1 Module Flow - IEAVDLAS (Part I of 2) Section 3: Program Organization 6·171 from IEAVEPDO ( ENTER ) IEAVDLAS .Ir IEAVSRBP IEAVELK - Get local lock If SRB scheduled to dispatch lEA VP I 0 I for swap-out, process pageout completion .. SETLOCK IEAVPIOP ..... ... Release local lock - .... Free input SRB - Page I/O Post IEAVELK SETLOCK IEAVFRCL ~ ~ FREECELL , ( EXIT ) to IEAVEPDO Figure 3-79. RSM Module Flow - IEAVDLAS (Part 2 of 2) 6-172 OS/VS2 System Logic Library Volume 6 (VS2.03.807) VS2.03.807 from I EAVTMMT ( ENTER ) ,r IEAVTERM Get local and SA L LOC locks If purge type is address space, release local lock .. -- -.. -- .. - IEAVELK SETLOCK IEAVELK SETLOCK IEAVEPC If PCB for page fault, and either PCB is in SR B mode for ASCB purge or PCB is for an RB If fix count in FOE for vi rtual space goes to zero, free FOE space -.. -.. .. p .. .- IEAVRSET Make suspended routine dispatchable IEAVGMOO FREEMAIN IEAVSWIN IEAVFXLD If count in root PCB is zero, complete root exit processing If I/O has completed for the PCB, free PFTE If any PCBs can be freed, free them -- .. ... .. -.. .. p Root Exit Complete processing of PCBs IEAVPFTE PFTE Enqueue/Dequeue IEAVPCB PCB Manager lr Figure 3-80. RSM Module Flow - lEA VTERM (Part 1 of 2) Section 3: Program Organization 6-173 , IEAVSWIN IEAVTERM (continued) IEAVSIRT If PCB count in swap-in root PCB goes to zero, process completion -.. .. Dequeue and free FOEs - . - Swap-I n Root Exit IEAVGMOO FREEMAIN IEAVRELS If fix count goes to zero and deferred FREEMAIN Release was pending If purge type is ASCB, after I/O has been purged clean-up RSM resources If internal RSM errors are detected -- ..- - .. IEAVRELF FREEMAIN Release IEAVDLAS - -- Delete address space IEAVRCV Record error and restart terminating routine ,r ( EXIT ) to IEAVTMMT Figure 3-80. RSM Module Flow - lEA VTERM (Part 2 of 2) 6-174 OS/VS2 System Logic Libruy Volume 6 (VS2.03.807)· from IRARMINT ( ENTER ) T IEAVRFR Get the SALLOC lock - .. IEAVELK SETLOCK Select routine Get the PGTE, XPTE addresses - . IEAVFP Find Page IEAVINV Invalidate the PGTE and purge the TLBs If the frame is unchanged free the PFTE If the frame is changed, get a PCB -- - Page I nval idation . - IEAVPFTE PFTE I;nqueue/Dequeue IEAVPCB - .. - .. PCB Manager IEAVGTCL If PFTEs are marked for steal ing, get an SR B 6 GETCELL if GETCELL fails, replenish SRB Pool -.... .. IEAVREP2 SRB replenish Figure 3-81. RSM Module Flow - lEA VRFR (Part I of 3) Section 3: Program Organization 6-175 VS2.03.807 7 IEAVRFR (continued) via dispatcher Schedule Steal routine IEAVRFR ' If a page-in PCB has been created put it on the I/O active queue -.. IEAVPCB - PCB Manager IEAVRFRA Free the input SRB -.. -. Get the SALLOC lock .. - IEAVFRCL FREECELL and - initiate page-out I/O ( ! EXIT ILRPAGIO -~ Start page-out I/O ) to IRARMINT Figure 3-81. RSM Module Flow - IEAVRFR (Part 2 of 3) 6-176 OS/VS2 System Logic Library Volume 6 (VS2.03.807) 6 ~ IEAVELK SET LOCK VS2.03.807 " IEAVRFR (continued) Steal routine Get the PGTE and XPTE addresses Invalidate PGTE and purge TLDs IEAVFP -... ..- ... . Find Page IEAVINV Page I nval idat ion IEAVPFTE If frame is unchanged, free the PFTE If frame is changed, get a PCB - -.. - . -... ..- initiate page-out I/O -- ... If internal errors occur in select or steal - If a page-out PCB has been created, put it on the I/O active queue PFTE Enqueue/Dequeue IEAVPCB PCB Manager IEAVPCB PCB Manager and ( ILRPAGIO Start page-out I/O IEAVRCV ~ ... RSM FRR • EXIT to IEAVEDSO Figure 3-81. RSM Module Flow - IEAVRFR (Part 3 of 3) Section 3: Program Organization 6-177 from VARY STORAGE, R/TM, or SMF ( ENTER IEAVRCF Get SALLOC lock IEAVELK - -- - -.. - . ~ SETLOCK STORAGE KEY ERROR If key of virtual page is known or can be gotten, get PGTE, XPTE addresses Try to reset real storage key IEAVFP Find Page IGKPKREF Reset real storage key ..- \. STORAGE DATA ERROR IEAVFP If real frame unchanged and contains a pageable virtual page, get XPTE, PGTE addresses ) EXIT to caller IEAVFP2 - Find Page IEAVINV Invalidate PGTE and purge TLBs - --- Send frame to available queue - .. Page Invalidation IEAVPFTE PFTE Enqueue/Dequeue .. f \.. EXIT ) to caller .~ Figure 3-82. RSM Module Flow - lEA VRCF (Part 1 of 2) 6-178 OS/VS2System Logic Library Volume 6 (VS2.03.807) IEAVRCF (continued) VARY STORAGE CANCEL Get an SRB Schedule offline completion IEAVGTCL u GETCELL IEAVRCF IEAVRCFC via ~ Dispatched Offline Completion Processing SRB ~ EXIT ,------ VARY STORAGE ONLINE to caller IEAVPFTE If frame is offline, free PFTE - - PFTE Enqueue/Dequeue IRARMINT IRARMIOO Notify SRM when all frames online via - --" ~ SYSEVENT 22 Update tables with number of new real frame EXIT ) VARY STORAGE OFFLINE IEAVPFTE If frame not currently in use, remove from available queue - - PFTE Enqueue/Dequeue IRARMINT IRARMIOO When all frames have been processed - via -.. SYSEVENT Update tables with decrease in real frames 22 IEAVPCB If frame not taken offl ine immediately, get a PCB - .. ~ PCB Manager IEAVRCV If internal error occurs ( - Record error and restart terminating routine EXIT to caller Figure 3-82. RSM Module Flow - lEA VRCF (Part 2 of 2) Section 3: Program Organization 6-179 from lEA VPFTE ( ENTER ) IEAVRCF " IEAVRCFI If frame part of pending offline request, get an SRB - .. IEAVGTCL GETCELL IEAVRCF - via Schedule off I ine completion . dispatched SRB IEAVRCFC Process offl i ne completion IRARMINT If frame suffered unrecoverable error If internal errors occur via . sysevent -- .. IRARMIOO Note decrease in real storage IEAVRCV Record error, restart terminating routine lIP ( EXIT ) to IEAVPFTE Figure 3-83. RSM Module Flow - IEAVRCF Offline Interception and Offline Completion (Part I of 2) 6-180 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) from Dispatcher scheduled by SRB C ENTER IEAVRCF ) " IEAVRCFC Offline Completion - .... Free SRB Get SALLOC lock Free root PCB Release SALLOC lock; get local lock .... -- - -- .... -- ... IEAVFRCL. FREECELL IEAVELK SETLOCK IEAVPCB PCB Manager IEAVELK, SETLOCK IEAVSY50 -- Post requestor's ECB If internal errors occur C EXIT - POST . IEAVRCV Record 'error and restart terminating routine ) to IEAVEDSO Figure 3-83. RSM Module Flow - lEAVRCF Offline Interception and Offline Completion (Part 2 of 2) Section 3: Program Organization 6-181 ( ENTER ) IRARMINT IEAVPFTE If available queue becomes too low after dequeue _via .. SYSEVENT 23 IRARMIOO Note available frame queue is low IEAVEQR IEAVEQR If V=R Intercept flag is on in PFTE .~ --. IEAVEQRI Schedule completion processing -- via SRB Dispatch - ..- Perform completion processing IEAVRCF IEAVRCF If offline intercept flag is on in PFTE IEAVEQRC IEAVRCFC IEAVRCFI _ via SRB _ ...... Dispatch Process Offl i ne Interception ~ Perform completion processing IRARMINT If available queue gains enough frames through enqueue If a PCB is on the GFA Defer Queue, get an SRB -. . --- -- --.. via SYSEVENT 24 ~ IRARMIOO Available frame queue is normal IEAVGTCL GETCELL IEAVGFA Schedule GFA Defer processing via ..- -dispatched ~ SRB IEAVELK IEAVGFAD - , Defer Processor - -.. SETLOCK Get SALLOC lock 1 ( EXIT to caller ) IEAVPCB Remove PCBs from the GFA Defer Queue .- Pass PCBs to IEAVGFA mainline .- ..- PCB Manager IEAVGFA C ~ EXIT ~ ) to IEAVEDSO Figure 3·84. RSM Module Flow - lEA VPFTE 6·182 OS/VS2 System Logic Libr8l'Y Volume 6 (VS2 Release 3.7) - ...... General Frame Allocation from NIP or RSM routine ( ENTER ) IEAVPCB If NIP is caller get SQA space for PCBs and SRBs; if NIP is not caller and if expansion is required, get SQA space Create RSM pool for SRBs after SQA allocation IEAVGMOO - .. · GETMAIN IEAVREP3 -- ·· Replenish SRB Pool on NIP call IEAVBLDP --- -. Build Quick Cell Pool d, ( EXIT ) to caller Figure 3-85. RSM Module Flow - lEA VPCB Section 3: Program Organization 6-183 from branch entry routine C ) ENTER .if via RISGNL IEAVINV Master CPU signals all other CPUs to enter slave routine to synchronize the purging of the trans!ation look aside buffers - -. IEAVERI via I nterprocessor Communication .. Record error and restart routine EXIT to caller ( ENTER) I from RSM routines ENTER I from non· RSM routines IEAVFP IEAVTRV Calculate PGTE, XPTE addresses Translate real address into virtual address to caller Figure 3·86. RSM Module Flow - IEAVINV, IEAVFP, IEAVTRV 6-184 External Interrupt Handler IEAVEES -.. Branch Synchronize with IEAVERI : ,if ( -- via ,1. IEAVRCV If internal errors occur .. external interrupt IEAVEEXT OS!VS2 System Logic Library Volume 6 (VS2 Relealle 3.7) ( EXIT ") to interrupted routine or to the dispatcher (JEAVEDSO) via Branch IEAVINV Slave Routine in each CPU (PTLB) from IEAVESVC or from RSM routine C ENTER ) IEAVGMOO Check callers authorization Check input for SVC 4 IEAVTEST - -- TESTAUTH IEAOVLOO -- - Validate input and SVC 5 If SP 242 or 247 requested If GETMAIN crosses segment boundary -- - --- -- .. -- ..- - via -.. SYSEVENT If one or more complete pages freed Validate input IEAVPRTO GETPART/FREEPART IEAVCSEG Create Segment IEAVSQA .. If LSQA obtained, get LSQA frame If SQA freed IEAOVL01 - LSQA/SQA Allocation IRARMINT Note availability ofSQA -- IEAVRELS Page Release , C EXIT to IEAVEEXP or caller Figure 3-87. VSM Module Flow (Part 1 of 4) Section 3: Propun OIganization 6-185 from IEAVGMOO ( ENTER ) ,Ir IEAVPRTO -IEAVEQR For V=R request, allocate or release V=R frames -- ... V=R Allocation IEAVSY50 When space available for GETPART, post ECB ---- --. When FREEPART frees space -- .... POST IEAVGMOO ~ FREEMAIN r ( EXIT ) to IEAVGMOO Figure 3-87. VSM Module Flow (Part 2 of 4) 6-186 OS/VS2 System Logic Library Volume 6 (VS2 Release 3.7) ~I ~I from I EAVEMCR IEAVTSKT IEAVEOR C ENTER ) ,It IEAVGCAS To set up RSM data areas Free virtual storage .....- -- -.. IEAVITAS RSM Address Space Initial ization ... IEAVGMOO FREEMAIN ~ C EXIT ) to caller C ENTER ) ,It IEAVBLDP Build a pool of quickcells " EXIT ) to caller Figure 3-87. VSM Module Flow (Part 3 of 4) Section 3: Program Organization 6-187 VS2.03.80S ( ( ENTER ENTER " IEAVGTCL 1W C Change storage protection key ot'a virtual storage area EXIT ~ to caller ( EXIT to caller ( ENTER ) • IEAVFRCL Free cell to quickcell pool , ( EXIT ) to caller C ENTER ) ., IEAVDELP Del ete qu ickcell pool --- - IEAVGMOO Free virtual space IJsed for cells , ( EXIT ) to caller Figure 3-87. VSM Module Flow (Part 4 of 4) 6-188 IEAVFP2 IEAVCKEY Get a cell from quickcell pool OS/VS2 System Logic Library Volume 6 (VS2.03.805)
Source Exif Data:File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2012:06:08 20:17:50-08:00 Modify Date : 2012:06:10 09:39:20-07:00 Metadata Date : 2012:06:10 09:39:20-07:00 Producer : Adobe Acrobat 9.51 Paper Capture Plug-in Format : application/pdf Document ID : uuid:e1cdcc47-6b38-4a0c-81c4-2e20ca354d12 Instance ID : uuid:9e463638-183e-4859-afbe-f70146053ffa Page Layout : SinglePage Page Mode : UseNone Page Count : 360EXIF Metadata provided by EXIF.tools