Ⅰ I/O通道的I/O指令和通道指令
(1)I/O指令:I/O指令是計算機系統的一部分,由CPU執行。在採用通道的計算機系統中,I/O指令不直接控制I/O數據的傳送,它只負責啟動、停止I/O的過程、查詢通道和I/O設備的狀態、控制通道進行某些操作。
(2)通道指令及其格式:通道指令也稱通道控制字CCW,它是通道用於執行I/O操作的指令,由通道從主存中取出並執行之。
命令:命令用於說明通道和設備執行什麼操作。命令一般又分為基本操作位和補充位兩部分。通道運行時只識別基本操作位,而不識別補充位。
數據地址:它給出本次I/O操作時的主存緩沖區首地址,在數據傳送過程中,每傳送一個字或一個位元組,它就加1或減1。
傳送位元組數:它表示數據傳送位元組數,每傳送一個位元組就修改其值,當為0時,表明傳送結束。
特徵位:
數據鏈特徵位(SD)若SD=1,表示下一條通道指令也是數據傳送指令。
命令鏈特徵位(CD)若CD=1,表示該通道指令執行完畢,下一條要執行的通道指令與該通道指令的操作不同。
封鎖錯誤長度特徵(SLL)錯誤長度是指通道指令中所給定的傳送位元組數與I/O設備請求傳送的位元組數不相等,則該通道指令執行完畢產生錯誤長度標志,並向CPU發出中斷請求。若SLL=1,即使產生長度錯標志,出不向CPU發出中斷請求,繼續向下執行通道指令。
封鎖寫入主存特徵位(SKIP)SKIP=1時,禁止將I/O設備讀出的數據寫入主存。
程序控制中斷特徵位(PCI)PCI=1時,表示執行本通道指令時,允許產生一個中斷條件。
說明:SD=0,CD=0本通道指令是通道程序的最後一條指令,可向CPU發出中斷請求。
SD=1,CD=0下一條通道指令和本條通道的操作命令相同。
SD=0,CD=1下一條通道指令和本條通道的操作命令不同。
(3)通道程序:通道程序是由一條或若干條通道指令組成,存放在主存中,它是通過命令鏈和數據鏈等特徵來實現的。