In [[IBM mainframe]] [[operating system]]s, '''Execute Channel Program in Real Storage''' ('''EXCPVR''') is a [[macro]] generating a [[system call]], implemented as a [[Supervisor Call instruction|supervisor call]], for low-level device access, where the programmer is responsible for providing a list of device-specific [[Channel_command_word#Channel_command_words|CCWs]], that is, a [[Channel_program#Channel_Program|channel program]], to be executed by I/O channels, control units and devices.<ref name="Murphy1995">{{cite book|author=Hank A. Murphy|title=MVS control blocks|year=1995|publisher=McGraw-Hill Ryerson, Limited|isbn=978-0-07-044309-9|pages=121, 134–135}}</ref> 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.<ref name="Sacks1994">{{cite book|author=David J. Sacks|title=MVS Answer Book|date=16 March 1994|publisher=Wiley|isbn=978-0-471-60821-9|page=74}}</ref>
==Relationship to Execute Channel Program (EXCP)==