Content deleted Content added
Bluelink 1 book for verifiability.) #IABot (v2.0) (GreenC bot |
Peter Flass (talk | contribs) →Relationship to supervisor: start channel programs |
||
Line 22:
==Relationship to supervisor==
EXCP's front-end is always in TCB mode, as EXCP is a Type 1 [[Supervisor Call instruction|SVC]]. In MVS/370 and subsequent instances of the OS, the EXCP processor invokes [[Start Input/Output|STARTIO]] to schedule execution of the channel program. Although the EXCP processor's back-end is always in SRB mode, the back-end contains emulation code which allows the appendages developed for earlier, pre-MVS instances of the OS, specifically for EXCP, 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.
==Channel programs==
System/360 channel programs are a sequence of commands which are executed by the channel and the I/O device. Channel programs can be locaed anywhere in main storage. The channel program is a sequence of ''Channel Command Words'' (CCWs), which are normally executed sequentially. Each CCW is a doubleword (eight bytes) as follows:
bit 0 7 8 31
+--------+-----------------------+
|Command | Data address |
+--------+-----------------------+
32 36 40 47 48 63
+------+---+--------+------------+
|Flags |000|reserved| count |
+------+---+--------+------------+
Six commands are defined, in the low-order bits of the command field. The high-order four (or six) bits are ''modifiers'' for some commands, or are ignored. The commands are:
0100 - Sense
1000 - Transfer in Channel (TIC)
1100 - Read backward
--01 - Write
--10 - Read
--11 - Control
==References==
|