Execute Channel Program in Real Storage
This articleneeds additional citations forverification.(August 2019) |
InIBM mainframeoperating systems,Execute Channel Program in Real Storage(EXCPVR) is amacrogenerating asystem call,implemented as aSupervisor Call instruction,for low-level device access, where the programmer is responsible for providing a list of device-specificCCWs,that is, achannel program,to be executed by I/O channels, control units and devices.[1]Additionally, the programmer is expected and required to ensure that the input/output data areas are in real storage and are "fixed", either prior to invoking EXCPVR or via the page fix appendage. EXCPVR can in some situations provide improved performance compared to EXCP.[2]
Relationship to Execute Channel Program (EXCP)
[edit]EXCPVR may be viewed, historically, as a V=R (i.e., Virtual=Real) version ofEXCP.However, EXCPVR is not restricted to V=R applications. Indeed, EXCPVR may refer to non-V=R data areas provided such data areas are "fixed" and the channel command words which reference such data areas have been translated from virtual to real addresses by the programmer using the LRA [ Load Real Address ] privileged instruction, as the data channels deal only with real addresses[a],not virtual addresses. EXCPVR was first introduced in SVS and was continued in MVS/370.
Support for Format 1 CCWs
[edit]In the later instances of the OS, support was added for Format 1CCWs,and, hence, for access to data areas which are "above the line" (Format 0 CCWs may only access data areas which are "below the line" ).
Relationship to supervisor
[edit]EXCPVR's front-end is always in TCB mode as EXCPVR is a Type 1SVC.In MVS/370 and subsequent instances of the OS, EXCPVR invokesSTARTIOto schedule execution of the channel program, hence EXCPVR's back-end is always in SRB mode, but the back-end contains emulation code which allows the appendages developed for earlier, pre-MVS instances of the OS to function largely as before and thereby to appear to be in TCB mode, for which these appendages were originally designed. This distinction can complicate conversion of certain "roll-your-own" access methods and applications to MVS.
Notes
[edit]- ^Except for 4300 machines equipped with ECPS:VSE
References
[edit]- ^Hank A. Murphy (1995).MVS control blocks.McGraw-Hill Ryerson, Limited. pp. 121, 134–135.ISBN978-0-07-044309-9.
- ^David J. Sacks (16 March 1994).MVS Answer Book.Wiley. p. 74.ISBN978-0-471-60821-9.