專利名稱:利于處理環(huán)境的輸入/輸出處理的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般來說涉及輸入/輸出處理,并具體涉及在輸入/輸出處 理期間使用傳送控制字來減少輸入/輸出通信。
背景技術(shù):
使用輸入/輸出(I/O)操作在處理環(huán)境的存儲器與輸入/輸出設(shè)備之間傳送數(shù)據(jù)。具體而言,通過執(zhí)行輸入/輸出操作將數(shù)據(jù)從存儲器 寫到 一個或多個輸入/輸出設(shè)備,將數(shù)據(jù)從一個或多個輸入/輸出設(shè)備 讀出到存儲器。為利于輸入/輸出操作的處理,采用處理環(huán)境的輸入/輸出子系 統(tǒng)。輸入/輸出子系統(tǒng)與處理環(huán)境的主存儲器和輸入/輸出設(shè)備相連, 并且在存儲器與輸入/輸出設(shè)備之間引導(dǎo)信息流。輸入/輸出子系統(tǒng)的 一個示例是通道子系統(tǒng)。通道子系統(tǒng)使用通道路徑作為通信介質(zhì)。每 個通道路徑包括與控制單元相連的通道,所述控制單元進(jìn)一步與一個 或多個輸入/輸出設(shè)備相連。通道子系統(tǒng)采用通道命令字在輸入/輸出設(shè)備與存儲器之間傳送數(shù)據(jù)。通道命令字指定待執(zhí)行的命令,對于啟動某些1/0操作的命令來說,其指定與操作有關(guān)的存儲區(qū)、在完成向或從存儲區(qū)的傳送時所采取的動作,以及其他選項。在輸入/輸出處理期間,通過通道從存儲器獲取通道命令字的列 表。通道從通道命令字列表中分析出每個命令,并將若干個命令傳遞 給與通道相連的控制單元,每個命令在其自身的實體中。然后,控制 單元對命令進(jìn)行處理。通道跟蹤每個命令的狀態(tài),并控制何時將下一 命令集發(fā)送給控制單元進(jìn)行處理。通道確保將每個命令以其自身實體 發(fā)送給控制單元。發(fā)明內(nèi)容需要增強(qiáng)上述命令的處理。例如,需要能夠?qū)⒍鄠€命令作為單個 實體發(fā)送給控制單元的能力。還需要無需通道對控制單元正執(zhí)行的各個命令的狀態(tài)進(jìn)行跟蹤的能力。需要降低I/O處理期間通道與控制單元之間通信(例如,交換和序列)的能力。通過提供利于處理環(huán)境的輸入/輸出處理的方法,克服現(xiàn)有技術(shù)的 缺陷,并提供附加優(yōu)點。該方法包括,例如,由處理環(huán)境的輸入/輸 出通信適配器獲得傳送控制字,所述傳送控制字指定在處理環(huán)境的存儲器中的包含多個待執(zhí)行輸入/輸出命令的位置;將多個輸入/輸出命 令作為一個實體從輸入/輸出通信適配器傳遞到處理環(huán)境的控制單 元;以及由控制單元執(zhí)行多個輸入/輸出命令,以執(zhí)行一個或多個輸 入/輸出操作,其中,在沒有通過輸入/輸出通信適配器對控制單元正 執(zhí)行的所述多個輸入/輸出命令中的各個輸入/輸出命令的狀態(tài)進(jìn)行跟 蹤的情況下進(jìn)行所述執(zhí)行。還描述并要求保護(hù)與上面概括描述的方法相應(yīng)的系統(tǒng)和計算機(jī)程 序產(chǎn)品。通過本發(fā)明的技術(shù)實現(xiàn)附加特征和優(yōu)點。此處詳細(xì)描述了本發(fā)明 的其他實施例和方面,并將其視作本發(fā)明的一部分。
在說明書結(jié)束處的權(quán)利要求中作為例子具體指出和明確要求保護(hù) 本發(fā)明的一個或多個方面。結(jié)合附圖,從下面的詳細(xì)描述中能夠明白 本發(fā)明的上述和其他目的、特征和優(yōu)點,其中圖1表示包含和使用本發(fā)明的一個或多個方面的處理環(huán)境的一個 實施例;圖2a表示通道命令字的一個示例;圖2b表示通道命令字通道程序的一個示例;圖3表示用于在通道與控制單元之間進(jìn)行通信以執(zhí)行圖2b的通 道命令字通道程序的鏈路協(xié)議的一個實施例;
圖4表示根據(jù)本發(fā)明的一個方面的傳送控制字通道程序的一個實 施例;
圖5表示根據(jù)本發(fā)明的一個方面的用于在通道與控制單元之間進(jìn) 行通信以執(zhí)行圖4的傳送控制字通道程序的鏈路協(xié)議的一個實施例;
圖6表示用于在通道與控制單元之間進(jìn)行通信以執(zhí)行通道控制字 通道程序的四個讀出命令的鏈路協(xié)議的 一個實施例;
圖7表示根據(jù)本發(fā)明的一個方面的用于在通道與控制單元之間進(jìn) 行通信以處理傳送控制字通道程序的四個讀出命令的鏈路協(xié)議的 一 個 實施例;
圖8表示根據(jù)本發(fā)明的一個方面所使用的傳送控制字的一個實施
例;
圖9表示圖8的傳送控制字所指定的并且根據(jù)本發(fā)明一個方面所 使用的通道命令字描述符的一個實施例;
圖10表示圖8的傳送控制字所指定的并且根據(jù)本發(fā)明一個方面 所使用的終止?fàn)顟B(tài)的 一個實施例;
圖11表示為通道命令字通道程序接收的響應(yīng)信息的一個實施
例;
圖12表示根據(jù)本發(fā)明的一個方面,為傳送控制字通道程序接收 的響應(yīng)信息的一個實施例;和
圖13表示包含本發(fā)明一個或多個方面的計算機(jī)程序產(chǎn)品的一個 實施例。
具體實施例方式
根據(jù)本發(fā)明的一個方面,通過減少用于執(zhí)行輸入/輸出處理的處理 環(huán)境部件之間的通信,以利于輸入/輸出處理。例如,減少輸入/輸出 (I/O)通信適配器(諸如,通道)與控制單元之間的交換和序列的 數(shù)量。這是通過將多個命令作為單個實體從I/O通信適配器發(fā)送給控 制單元以便控制單元執(zhí)行,并通過控制單元將由命令所導(dǎo)致的數(shù)據(jù)
(如果有的話)作為單個實體發(fā)送來實現(xiàn)。將多個命令包括在描述符中,此處將該描述符稱為通道命令字描 述符,并在傳送控制字中指定其地址。將傳送控制字從操作系統(tǒng)或其他應(yīng)用程序發(fā)送給I/O通信適配器,I/O通信適配器進(jìn)而將描述符傳 遞給控制單元進(jìn)行處理。在I/O通信適配器不對這些命令各自狀態(tài)進(jìn)行跟蹤的情況下,由控制單元對每個命令進(jìn)行處理。參照圖1描述包含和使用本發(fā)明一個或多個方面的處理環(huán)境的一個示例。處理環(huán)境100包括例如主存儲器102, 一個或多個中央處理 單元(CPU) 104,存儲控制單元106,通道子系統(tǒng)108, 一個或多個 控制單元110,以及一個或多個輸入/輸出(1/0)設(shè)備112,下面對 每個部件進(jìn)行描述。主存儲器102存儲從輸入設(shè)備112輸入的數(shù)據(jù)和程序。主存儲器 102可直接進(jìn)行尋址,并用于中央處理單元104和通道子系統(tǒng)108對 數(shù)據(jù)的高速處理。中央處理單元104是環(huán)境100的控制中心。其包含定序和處理設(shè) 施,用于指令執(zhí)行、中斷操作、定時功能、初始程序加栽以及其他機(jī) 器有關(guān)功能。中央處理單元104通過連接114,諸如雙向或單向總 線,與存儲控制單元106相連。存儲控制單元106通過連接116,諸如總線,與主存儲器102相 連;通過連接114與中央處理單元104相連;并通過連接118與通道 子系統(tǒng)108相連。存儲控制單元106例如控制對CPU 104和通道子 系統(tǒng)108做出的請求的排隊和執(zhí)行。如上所述,通道子系統(tǒng)108與存儲控制單元106相連,并通過諸 如串行鏈路的連接120與每個控制單元相連。通道子系統(tǒng)108引導(dǎo)輸 入/輸出設(shè)備112與主存儲器102之間的信息流。其緩解了中央處理 單元與輸入/輸出設(shè)備直接通信的任務(wù)量,并允許數(shù)據(jù)處理與輸入/輸 出處理并行進(jìn)行。通道子系統(tǒng)使用一個或多個通道路徑122作為對流 入或流出輸入/輸出設(shè)備112的信息流進(jìn)行管理時的通信鏈路。作為 輸入/輸出處理的一部分,通道子系統(tǒng)108還執(zhí)行檢測通道路徑可用
性,選擇可用通道路徑,和啟動與輸入/輸出設(shè)備的操作的執(zhí)行的路 徑管理功能每個通道路徑122包括通道124 (如圖1中所示,在一個示例 中,通道處在通道子系統(tǒng)內(nèi)), 一個或多個控制單元110,以及一個 或多個連接120。在另一示例中,還可以具有一個或多個動態(tài)交換機(jī) 作為通道路徑的一部分。動態(tài)交換機(jī)與通道和控制單元相連,并且提 供使與交換機(jī)相連的任意兩個鏈路物理上互連的功能。在通道子系統(tǒng)108中還有子通道(未示出)。 一個子通道被設(shè)置 成用于并且專用于程序可通過通道子系統(tǒng)訪問的每個輸入/輸出設(shè) 備。子通道(例如,數(shù)據(jù)結(jié)構(gòu),諸如表)將設(shè)備的邏輯外表提供給程 序。每個子通道將與相關(guān)輸入/輸出設(shè)備112及其附件有關(guān)的信息提 供給通道子系統(tǒng)108。子通道還提供涉及相關(guān)輸入/輸出操作的信息, 以及涉及相關(guān)輸入/輸出設(shè)備的其他功能。子通道是被通道子系統(tǒng)108 用來將與相關(guān)輸入/輸出設(shè)備112有關(guān)的信息提供給中央處理單元104 的裝置,中央處理單元104通過執(zhí)行輸入/輸出指令執(zhí)行獲得此信 息。通道子系統(tǒng)108與一個或多個控制單元110相連。每個控制單元 提供用于將操作和控制一個或多個輸入/輸出設(shè)備,以及通過使用公 共設(shè)施使每個輸入/輸出設(shè)備的特性適合通道所提供的鏈路接口的邏 輯。所述公共設(shè)施用于輸入/輸出操作的執(zhí)行,有關(guān)輸入/輸出設(shè)備和 控制單元的狀態(tài)的指示,對通道路徑上數(shù)據(jù)傳送的定時的控制,和一 定層次的輸入/輸出設(shè)備控制。每個控制單元110通過連接126 (例如總線)與一個或多個輸入/ 輸出設(shè)備112相連。輸入/輸出設(shè)備112接收信息,或者將信息存儲 到主存儲器101和/或其他存儲器中。輸入/輸出設(shè)備的示例包括讀卡 機(jī)和卡片穿孔機(jī),磁帶單元,直接存取存儲設(shè)備,顯示器,鍵盤,打 印機(jī),指點設(shè)備,遠(yuǎn)程處理設(shè)備,通信控制器以及基于傳感器的裝 置,這里只列舉出少數(shù)幾個。在"IBM⑧z/Architecture Principles of Operation",出版號SA22-200710137051.9
說明書第6/19頁
7832-04,第五版,2005年9月;1995年10月24日授予Cormier等 人的題為"System For Transferring Data Between I/O Devices And Main Or Expanded Storage Under Dynamic Control Of Independent Indirect Address Words (IDAWS ),,的美國專利No. 5,461,721;以 及1996年6月11日授予Casper等人的題為"Method And System For Pipelining The Processing Of Channel Command Words,,的美國 專利No. 5,526,484中進(jìn)一步描述了處理環(huán)境的上述單元中的一個或 多個,這些文獻(xiàn)中的每一個在此全文引作參考。IBM是美國紐約 Armonk的國際商用機(jī)器公司的注冊商標(biāo)。此處使用的其他名字可能 是國際商業(yè)機(jī)器公司或者其他公司的注冊商標(biāo),商標(biāo)和產(chǎn)品名。
在一個實施例中,為了在設(shè)備112與存儲器102之間傳送數(shù)據(jù), 使用通道命令字。通道命令字指定待執(zhí)行的命令,并且包括用于對處 理進(jìn)行控制的其他字段。參照圖2a,描述通道命令字的一個示例。 例如,通道命令字200包括指定待執(zhí)行命令(例如,讀,回讀(read backward),控制,檢測和寫)的命令代碼202;用于控制I/O操作 的多個標(biāo)志204;用于指定數(shù)據(jù)傳送的命令的計數(shù)字段206,其指定 在CCW所表示的存儲區(qū)中待傳送的字節(jié)的數(shù)量;以及數(shù)據(jù)地址 208,當(dāng)采用直接尋址時,其指向主存儲器中包含數(shù)據(jù)的位置,或者 當(dāng)釆用修改間接數(shù)據(jù)尋址時,其指向要處理的修改間接數(shù)據(jù)地址字 (MIDAW)的列表(例如,鄰接列表)。在Brice等人于2006年8 月 15日申請的題為"Flexibly Controlling The Transfer Of Data Between Input/Output Devices And Memory"的美國專利申請 11/464, 613中進(jìn)一步描述了修改間接數(shù)據(jù)尋址。
為順序執(zhí)行而排列的一個或多個通道命令字(CCW)構(gòu)成通道 程序,此處稱之為CCW通道程序.CCW通道程序例如由操作系統(tǒng) 或其他軟件建立。軟件建立CCW,并獲得分配給通道程序的存儲器 地址,參照圖2b,描述CCW通道程序的一個示例。CCW通道程序 210例如包括限定范圍(define extent)通道命令字(CCW) 212, 其具有指向存儲器中將用于限定范圍命令的限定范圍數(shù)據(jù)216的位置
的指針214。在該示例中,在限定范圍命令之后為通道轉(zhuǎn)換 (transfer in channel) (TIC) 218,其將通道程序指引到存儲器中 包括一個或多個其他CCW的另一區(qū)域(例如,應(yīng)用區(qū)),例如具有 用于定位記錄數(shù)據(jù)220的指針219的定位記錄217,以及一個或多個 讀出CCW 221。每個讀出CCW 220具有指向數(shù)據(jù)區(qū)224的指針 222。數(shù)據(jù)區(qū)包括用于直接訪問數(shù)據(jù)的地址,或用于間接訪問數(shù)據(jù)的 數(shù)據(jù)地址字(例如,MIDAW或IDAW)的列表。另外,CCW通道 程序210包括在通道子系統(tǒng)中由設(shè)備地址所限定的預(yù)定區(qū)域,稱為用 于由CCW通道程序的執(zhí)行所導(dǎo)致的狀態(tài)226的子通道。參照圖3以及圖2b描述CCW通道程序的處理。具體而言,圖3 表示當(dāng)執(zhí)行CCW通道程序時,在通道與控制單元之間發(fā)生的各種交 換和序列的一個示例。在該示例中,用于通信的鏈路協(xié)議是FICON (光纖連接性)。在"Fibre Channel Single Byte Command Code Sets畫2 Mapping Protocol ( FC-SB-3 ) " , Til/Project 1357-D/Rev.1.6, INCITS (2003年3月)中描述了與FICON有關(guān)的信 息,該文獻(xiàn)在此全文引作參考。參照圖3,通道300打開與控制單元302的交換,并將限定范圍 命令和與之相關(guān)的數(shù)據(jù)304發(fā)送給控制單元302。從限定范圍CCW 212 (圖2b)得到命令,從限定范圍數(shù)據(jù)區(qū)216獲得數(shù)據(jù)。通道使用 TIC 218來定位定位記錄CCW和讀出CCW。它從定位記錄CCW 217 (圖2B)取出定位記錄命令305 (圖3),從定位記錄數(shù)據(jù)220 獲得數(shù)據(jù)。從讀出CCW 221 (圖2B)取出讀出命令306 (圖3)。 將每一個發(fā)送給控制單元。響應(yīng)于通道的打開交換,控制單元打開與通道的交換308。這可 以發(fā)生在定位命令305和/或讀出命令306之前或之后。連同打開交 換一起,將響應(yīng)(CMR)傳遞給通道。CMR向通道提供有關(guān)控制單 元處于活動狀態(tài)并且正在工作的指示。控制單元將所請求的數(shù)據(jù)310發(fā)送給通道。此外,控制單元將狀 態(tài)提供給通道,并關(guān)閉交換312。響應(yīng)于此,通道存儲數(shù)據(jù),檢查狀 態(tài),并關(guān)閉交換314,這向控制單元表明已經(jīng)接收到狀態(tài)。上述CCW通道程序讀取4k數(shù)據(jù)的處理需要打開和關(guān)閉兩個交 換,和7個序列。根據(jù)本發(fā)明的一個方面,通過將通道程序的多個命 令壓縮(collapes)到一個稱作傳送控制字(TCW)的命令字中,減 少通道和控制單元間的交換和序列的數(shù)量。具體地,傳送控制字指向 包括多個命令的通道命令字描述符(CCWD) 。 TCW由主通道執(zhí) 行,不被控制單元發(fā)送或者對于控制單元是不可見的。參照圖4,描述用于讀出4k數(shù)據(jù)(如在圖2b中所示),但包括 傳送控制字而不是單獨的各個通道命令字的通道程序的一個示例。如 圖所示,此處稱之為TCW通道程序的通道程序400包括傳送控制字 402,其指定通道命令字描述符(CCWD) 404在存儲器中的位置, 以及數(shù)據(jù)區(qū)406或指向數(shù)據(jù)區(qū)406的MIDAL 410 (即MIDAW的列 表)以及狀態(tài)區(qū)408在存儲器中的位置。下面,進(jìn)一步詳細(xì)描述傳送 控制字,通道命令字描述符和狀態(tài)。參照圖5描述TCW通道程序的處理。用于這些通信的鏈路協(xié)議 例如為光纖通道協(xié)議(FCP)。具體而言,使用FCP鏈路協(xié)議的三 個階段,從而允許使用支持FCP的主機(jī)總線適配器,以支持由CCW 控制的數(shù)據(jù)傳送。在"Information Technology - Fibre Channel Protocol for SCSI, Third Version ( FCP國3 ) ,,, T10 Project 1560-D, Revision 4, 2005年9月13日中進(jìn)一步描述了 FCP及其階段, 該文獻(xiàn)在此全文引作參考。參照圖5,通道500打開與控制單元502的交換,并將通道命令 字描述符504發(fā)送給控制單元。在一個示例中,在稱作FCP_CMND IU的FCP命令中,將CCWD和序列主動權(quán)(sequence initiative) 傳送給控制單元??刂茊卧獔?zhí)行通道命令字描述符的多個命令(例 如,限定范圍命令,定位記錄命令,讀出命令),并通過例如 FCP_Data IU將數(shù)據(jù)506傳遞給通道。它還提供狀態(tài)并關(guān)閉交換 508。作為一個示例,在FCP狀態(tài)幀中發(fā)送最終狀態(tài),該FCP狀態(tài) 幀例如在FCP RSP IU有效栽荷的字節(jié)10或11中具有活動位。使 用FCP一RSP IU有效栽荷,與控制單元排隊時間、斷開時間、活動 時間、所執(zhí)行的最后DCW的偏移量、所執(zhí)行的最后DCW的剩余數(shù) 據(jù)字節(jié)計數(shù)、CCWD的剩余數(shù)據(jù)字節(jié)計數(shù)以及可能的檢測數(shù)據(jù)一 起,傳送FICON終止?fàn)顟B(tài)。在另一示例中,為了寫入4k的用戶數(shù)據(jù),通道使用FCP鏈路協(xié) 議階段,如下所述1. 在FCP—CMND IU中傳送CCWD。2. 將數(shù)據(jù)的IU,以及序列主動權(quán)傳送給控制單元(FCP傳送就 緒禁用)。3. 通過在例如FCP一RSP IU有效栽荷的字節(jié)10或11中具有活 動位的FCP狀態(tài)幀發(fā)送最終狀態(tài)。使用FCP_RES_INFO字 段或檢測字段,與控制單元排隊時間、斷開時間、活動時間、 所執(zhí)行的最后DCW的偏移量、所執(zhí)行的最后DCW的剩余數(shù) 據(jù)字節(jié)計數(shù)、CCWD的剩余數(shù)據(jù)字節(jié)計數(shù)以及可能的檢測數(shù) 據(jù)一起,傳送FICON終止?fàn)顟B(tài)。通過執(zhí)行圖4所示的TCW通道程序,僅打開和關(guān)閉一個交換 (還參見圖5),而不是如圖2b所示CCW通道程序的兩個交換 (還參見圖3)的情形。另外,對于TCW通道程序而言,具有三個 通信序列(參見圖4-5),與之相比,對于CCW通道程序而言,有 7個序列(參見圖2b-3)。對于TCW通道程序而言,即使向程序添加附加命令,交換和序 列的數(shù)量也保持相同。例如,將圖6所示CCW通道程序的通信與圖 7的TCW通道程序的通信進(jìn)行比較。在圖6所示CCW通道程序 中,在獨立的序列中將每個命令(例如,限定范圍命令600,定位記 錄命令601,讀出命令602,讀出命令604,讀出命令606,定位記錄 命令607和讀出命令608)從通道610發(fā)送到控制單元612。另外, 在獨立的序列中將每個4k數(shù)據(jù)塊(例如,數(shù)據(jù)614-620)從控制單 元612發(fā)送到通道610。 CCW通道程序需要打開和關(guān)閉兩個交換 (例如,打開交換622, 624,和關(guān)閉交換626, 628),以及14個通
信序列。這與針對圖7所示TCW通道程序的三個序列和一個交換形 成對比,其完成與圖6的CCW通道程序相同的任務(wù)。如圖7中所示,通道700打開與控制單元702的交換,并將通道 命令字描述符704發(fā)送給控制單元。如上所述,CCWD包括限定范 圍命令,兩個定位記錄命令,和四個讀出命令。響應(yīng)于接收 CCWD,控制單元執(zhí)行命令,并在單個序列中將16k的數(shù)據(jù)706發(fā) 送到通道。此外,控制單元將狀態(tài)提供給通道,并關(guān)閉交換708。從 而,TCW通道程序需要更少的通信來傳送與CCW通道程序相同的 數(shù)據(jù)量。參照圖8-10描述與傳送控制字,通道命令字描述符和狀態(tài)有關(guān)的 更多細(xì)節(jié)。具體而言,參照圖8描述傳送控制字的一個實施例,參照 圖9描述通道命令字描述符的一個實施例,參照圖IO描述由傳送控 制字引用的終止?fàn)顟B(tài)的一個實施例。參照圖8,在一個實施例中,傳送控制字800包括多個字段,例如a) 命令字段802:命令字段表示命令是TCW命令還是傳統(tǒng)通道 CCW。 TCW通道命令是X8命令,其中,X不等于零。作為示例, X8命令字段包括以下命令的其中之一1) 對于x=l來說,作為一個示例,該命令為經(jīng)由傳送控制字 中的通道命令字描述符數(shù)據(jù)字節(jié)計數(shù)字段將通道命令字描述符以及用 戶數(shù)據(jù)傳送到控制單元的寫入TCW命令;和2) 對于x=2來說,作為一個示例,該命令為將通道命令字描 述符傳送給控制單元的TCW命令,并且通道命令字描述符數(shù)據(jù)字節(jié) 計數(shù)為控制單元將向通道傳送的數(shù)據(jù)的總量;b) 標(biāo)志804:標(biāo)志字段可包括一個或多個標(biāo)志。在該示例中,包 括表示是使用修改間接尋址還是直接尋址的MIDAW標(biāo)志。如果標(biāo) 志是活動的,則傳送控制字中的地址810為修改間接數(shù)據(jù)地址列表(MIDAL)的第一個修改間接數(shù)據(jù)地址字(MIDAW)的地址。否 則,地址為用于直接尋址的數(shù)據(jù)地址;c) CCWD長度806:該字段包括由該傳送控制字所指定的通道 命令字描述符的長度;d) CCWD數(shù)據(jù)字節(jié)計數(shù)808:該字段包括通過通道命令字描述 符中所有描述符命令字(DCW)(后面將對其進(jìn)行描述)傳送的用 戶數(shù)據(jù)的總量;e) MIDAW的地址或數(shù)據(jù)地址810:假設(shè)標(biāo)志字段804表示其應(yīng) 當(dāng)為MIDAW地址,則該字段提供MIDAW的地址,或提供用戶數(shù) 據(jù)的地址;f) CCWD 812的地址該字段包括用于在存儲器中定位通道命 令字描述符的地址。下面進(jìn)一步描述通道命令字描述符。g) 狀態(tài)814的地址該字段包括用于在存儲器中定位該傳送控 制字的終止完成狀態(tài)的地址。下面描述與終止?fàn)顟B(tài)有關(guān)的更多信息。由例如主機(jī)總線適配器使用由傳送控制字所定義的三個地址(包 括MIDAW或數(shù)據(jù)地址810, CCWD地址812和狀態(tài)地址814 )來執(zhí) 行FCP操作的等效操作。這樣在通信中就能夠使用FCP鏈路階段取 代FICON階段,從而顯著增加通道子系統(tǒng)的性能和效率。如上所述,傳送控制字指定要使用的通道命令字描述符。通道命 令字描述符包括多個將要由控制單元執(zhí)行的命令。在不由通道跟蹤與 各個命令的執(zhí)行有關(guān)的狀態(tài)的情況下,與通道無關(guān)地執(zhí)行命令。控制 單元將多個命令接收為單個單元,并且負(fù)責(zé)按照適當(dāng)?shù)姆绞綀?zhí)行所述 命令。在一個示例中,將CCWD作為FCP鏈路協(xié)議中的 FCP_CMND IU有效栽荷發(fā)送給控制單元。通過使通道不負(fù)責(zé)跟蹤各 個命令,明顯增強(qiáng)了通道的性能。此外,控制單元得益于同時看到整 個通道程序。參照圖9描述通道命令字描述符(CCWD)的一個實施例。通道 命令字描述符900具有三個主要部分,包括例如報頭902,多個 DCW904和描述符數(shù)據(jù)906,下面對它們每一個進(jìn)行描述。 作為一個示例,CCWD報頭卯2包括以下字段 a)通道映像ID910:該字段標(biāo)識通信中涉及的通道; b) 控制單元映像ID 912:該字段標(biāo)識與通道映像ID 910所標(biāo)識 的通道進(jìn)行通信的控制單元;c) 設(shè)備地址914:該字段標(biāo)識與I/O通信中所涉及的控制單元連 接的設(shè)備;d) 讀出或?qū)懭胱侄?16:該字段表示I/0操作是讀出還是寫入;e) CDB CMD 918:該字段用于標(biāo)識其為CCWD;f) I/O優(yōu)先級920:該字段表示該I/O的優(yōu)先級;g) CCWD長度922:該字段表示CCWD的長度;h) #DCW 924:該字段表示用于該CCWD的描述符命令字的數(shù) 量;以及i) CCWD數(shù)據(jù)字節(jié)計數(shù)926:該字段描述要由CCWD傳送的總 用戶數(shù)據(jù)。每個描述符命令字卯4包括多個字段,例如a) 命令字段930:該字段包括CCW命令(例如,類似限定范圍 和定位記錄;讀出;寫入;等等的控制命令);b) 標(biāo)志字段932:該字段可包括一個或多個標(biāo)志。在該示例中, 標(biāo)志字段932包括表示命令鏈?zhǔn)欠翊嬖诘拿铈湗?biāo)志;和表示在這個 DCW后面的CCWD中是否存在描述符數(shù)據(jù)的描述符數(shù)據(jù)存在標(biāo) 志。當(dāng)寫入控制命令需要描述符數(shù)據(jù)時,該標(biāo)志用于寫入控制;c) 字節(jié)計數(shù)字段934:如果其為控制命令,則所述計數(shù)是 CCWD中控制數(shù)據(jù)的字節(jié)數(shù);否則,其為該DCW將要傳送的用戶 數(shù)據(jù)的計數(shù)。如果DCW命令為命令中介(command intermediate) 或者非操作命令,則字節(jié)計數(shù)字段為O。描述符數(shù)據(jù)卯6包括用于DCW寫入控制命令的數(shù)據(jù)936。該數(shù) 據(jù)在處于該數(shù)據(jù)所述針對的DCW后面的CCWD中,并且DCW中 的標(biāo)志字段使得知道該數(shù)據(jù)的存儲。通過在描述符列表中直接指定控 制數(shù)據(jù),設(shè)備可獲得數(shù)據(jù),而不需要設(shè)備執(zhí)行獨立數(shù)據(jù)傳送來獲取數(shù) 據(jù)。在一個實施例中,經(jīng)由CCWD中DCW字節(jié)計數(shù)的總和對傳送 的CCWD數(shù)據(jù)應(yīng)用校驗代碼,例如循環(huán)冗余校驗(例如,F(xiàn)ICON CRC),縱向冗余校驗(LRC),校驗和等,并且當(dāng)將CCWD傳送 到控制單元時,對其應(yīng)用單獨的校驗代碼。例如,對由CCWD傳送 的全部數(shù)據(jù)應(yīng)用校驗代碼。這與在傳送層處應(yīng)用的CRC相比層次更 高。對發(fā)送的每個數(shù)據(jù)包應(yīng)用校驗,然后在接收器端進(jìn)行累加與驗 證,以確保由CCWD數(shù)據(jù)字節(jié)計數(shù)所指定的整個數(shù)據(jù)全部到達(dá)并且 沒有錯誤。作為另一示例,對于CCWD本身,應(yīng)用校驗代碼。例如,將代 碼追加到信息上??刂茊卧邮赵撔畔ⅲ瑱z查代碼,如果有效,則認(rèn) 為信息有效。傳送控制字還指定終止?fàn)顟B(tài)的位置。這允許操作系統(tǒng)在存儲設(shè)備 中為附加定時器指定區(qū)域,并對來自控制單元的針對TCW操作和針 對檢測數(shù)據(jù)的信息進(jìn)行計數(shù)。從而,保證在每個單元校驗條件下實現(xiàn) 并發(fā)檢測數(shù)據(jù)的傳遞。下面,參照圖IO描述終止?fàn)顟B(tài)的一個示例。 在一個實施例中,終止?fàn)顟B(tài)控制塊1000包括以下字段 a ) DCW剩余字節(jié)計數(shù)1002:該字段表示失敗DCW的剩余字節(jié) 計數(shù)(即,在何處中斷了 DCW的執(zhí)行);b) 檢測長度1004:該字段指定在追加檢測數(shù)據(jù)中追加在該控制 塊末尾處的檢測數(shù)據(jù)的長度;c) 響應(yīng)長度1006:該字段表示該控制塊的響應(yīng)部分的長度;d) 通道映像ID 1008:該字段標(biāo)識在通信中所涉及的通道;e) 控制單元映像ID 1010:該字段標(biāo)識與通道映像ID 1008所表 示的通道進(jìn)行通信的控制單元;f) 設(shè)備地址1012:該字段標(biāo)識與I/O通信中所涉及的控制單元 相連的設(shè)備;g) 狀態(tài)標(biāo)志1014:該字段指定一個或多個狀態(tài)標(biāo)志。在"Fibre Channel Single Byte Command Code Sets畫2 Mapping Protocol (FC-SB誦3) ", Til/Project 1357-D/Rev.l.6, INCITS ( 2003年3月)中描 述了狀態(tài)標(biāo)志的示例,其全文在此引作參考; h) 狀態(tài)1016:該字段標(biāo)識通信狀態(tài),例如包括設(shè)備狀態(tài),更多 內(nèi)容可參看"IB]V^ z/Architecture Principles of Operation",出版號 SA22-7832-04,第五版,2005年9月,其全文在此引作參考;i) CCWD剩余字節(jié)計數(shù)1020:該字段表示CCWD數(shù)據(jù)字節(jié)計 數(shù)的剩余字節(jié)計數(shù),其為對于整個CCWD未傳送的數(shù)據(jù)的剩余計 數(shù);j) DCW偏移量1022:如果在CCWD中未執(zhí)行所有DCW,則 這是失敗的DCW在CCWD中的DCW偏移量;k)隊列時間參數(shù)1024:該字段指定在對通道打開交換的情況 下,控制單元使I/0操作處在其隊列上的時間的量;I)延遲時間參數(shù)1026:該字段指定在對通道打開交換的情況 下,由于控制單元數(shù)據(jù)高速緩存命中失誤,控制單元等待數(shù)據(jù)的時間 的量??刂茊卧枰L問介質(zhì)以引用所請求的數(shù)據(jù);m)控制單元活動時間1028:該字段指定控制單元處理活動狀態(tài) 以執(zhí)行TCW的時間;n)追加檢測數(shù)據(jù)(若有的話)1030:該字段包括對于在I/O操 作期間控制單元遇到單元校驗的情形的檢測(sense)。在"IBM⑧z/Architecture Principles of Operation",出版號SA22-7832-04,第五版,2005年9月中,對狀態(tài)做了進(jìn)一步描述;在 "Fibre Channel Single Byte Command Code Sets-2 Mapping Protocol (FC-SB-3) ,,, Til/Project 1357畫D/Rev丄6, INCITS ( 2003年3 月)中進(jìn)一步描述了延遲時間和追加檢測,每個文獻(xiàn)在此全文引作參 考。對于傳統(tǒng)FICON,命令響應(yīng)是CCW通道程序操作中的重要測量 點。圖11表示通道可看到的時間線,其表示出CCW通道程序的通 道子系統(tǒng)跟蹤的多個定時點。例如,通道看到開始子通道A 1100, CMR B 1102,斷開C 1104,重新連接D 1106和終止?fàn)顟B(tài)E 1108. 控制單元在終止?fàn)顟B(tài)時間處為通道提供CU排隊時間和cu延遲時間。 為收集用于通道子系統(tǒng)測量的各個時間,傳統(tǒng)通道子系統(tǒng)實際執(zhí)行多個步驟。例如,參照圖11,其在A 1100處打上開始子通道時間 的時間戳,在B 1102處,打上CMR時間的時間戳。在斷開時間C 1104處,它計算連接時間(CT=C-B)。在D 1106處,打上重新連 接時間的時間戳,在E 1108處打上終止?fàn)顟B(tài)時間的時間戳。由此, 它計算出總連接時間CT = (C-B)+(E-D);總開始等待時間SP-(B-A);以及斷開時間DT=(E-A)-CT-SP)。然而,對于TCW,通道未獲得命令響應(yīng)CMR以了解控制單元 何時開始I/O操作。例如,參看圖12所示時間線,僅看到開始子通 道A 1200和終止?fàn)顟B(tài)E 1202。對于TCW操作,通道未看到CMR B 1204時間,和始于C 1206處且終止于D 1208處、從介質(zhì)中檢索數(shù) 據(jù)所需的時間。從介質(zhì)中檢索數(shù)據(jù)的時間是TCW的CU延遲時間的 一部分.CU隊列時間(未示出)和CU延遲時間由控制單元在終止 狀態(tài)時間處提供。從而,對于TCW通道程序,通道在A 1200處打上開始子通道時 間的時間戳,在E 1202處打上終止?fàn)顟B(tài)時間的時間戳,但由控制單 元對操作何時開始以及執(zhí)行各個命令的總時間進(jìn)行跟蹤,而且作為終 止?fàn)顟B(tài)的 一部分提供該測量數(shù)據(jù)。作為一個示例,控制單元在終止?fàn)顟B(tài)處報告如下測量AT-活動時間-(C-B)+(E-D),參看圖12—— 這是如圖10所示的CU活動時間1028;QT=CU隊列時間一這是控制單元在開始操作前將操作排在其 隊列上的時間的量,并作為如圖10所示的排隊時間參數(shù)1024; 以及DT-延遲時間-(D-C),參看圖12——這是如圖10所示的延遲 時間參數(shù)1026。從由控制單元提供的定時器以及由通道子系統(tǒng)在如圖12所示A 和E處提供的開始和終止時間戳,為TCW命令提供與傳統(tǒng)CCW命 令同樣的測量數(shù)據(jù)。1/0子系統(tǒng)確定 CMR時間(B-A(圖12))=(E-A)-AT-DT-QT;總連接時間CT-CU報告的活動時間AT (圖10中的1028);總開始等待時間SP-(E-A)-AT-DT;以及斷開時間=CU報告的延遲時間-(D-C)(圖10中的1026 )。因此,控制單元負(fù)責(zé)對各個命令的狀態(tài)信息進(jìn)行跟蹤,并且提供 與之相關(guān)的測量數(shù)據(jù),從而緩解了通道的負(fù)擔(dān)。操作系統(tǒng)僅使用該通 道作為通路來與控制單元直接進(jìn)行通信。通道不跟蹤各個命令的狀態(tài) 信息,但I(xiàn)/O子系統(tǒng)通過使用I/O子系統(tǒng)時間戳A和E以及來自控 制單元的三個定時器,提供與傳統(tǒng)CCW相同的測量數(shù)據(jù),從而,將 同樣的測量數(shù)據(jù)提供給操作系統(tǒng)。同時,降低了通道的工作負(fù)載。可將本發(fā)明的一個或多個方面包括在例如具有計算機(jī)可用介質(zhì)的 制造產(chǎn)品(例如, 一個或多個計算機(jī)程序產(chǎn)品)中。例如,該介質(zhì)在 其中具有用于提供和實現(xiàn)本發(fā)明功能的計算機(jī)可讀程序代碼裝置或邏 輯(例如,指令、代碼、命令等)??勺鳛橛嬎銠C(jī)系統(tǒng)的一部分包含 該制造產(chǎn)品,或者將其單獨出售。下面,參照圖13,描述包括本發(fā)明一個或多個方面的制造產(chǎn)品或 計算機(jī)程序產(chǎn)品的一個示例。計算機(jī)程序產(chǎn)品1300包括,例如,用 于在其上存儲計算機(jī)可讀程序代碼裝置或邏輯1304的一個或多個計 算機(jī)可用介質(zhì)1302,計算機(jī)可讀程序代碼裝置或邏輯1304用來提供 和實現(xiàn)本發(fā)明的一個或多個方面。所述介質(zhì)可為電、磁、光、電磁、 紅外或半導(dǎo)體系統(tǒng)(裝置或設(shè)備)或傳播介質(zhì)。計算機(jī)可讀介質(zhì)的示 例包括半導(dǎo)體或固態(tài)存儲器、磁帶、可移動計算機(jī)磁盤、隨機(jī)存取存 儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。光盤的示例 包括只讀光盤(CD-ROM)、可讀/寫光盤(CD-R/W)和DVD。由一個或多個計算機(jī)可讀程序代碼裝置或邏輯定義的一個或多個 相關(guān)模塊的程序指令序列或邏輯組件指示執(zhí)行本發(fā)明的一個或多個方 面。有益的是,根據(jù)本發(fā)明的一個或多個方面,通過使操作系統(tǒng)能夠 直接與控制單元進(jìn)行通信,以及通過使I/O通信適配器減去對關(guān)于被
處理的各個命令的所有狀態(tài)信息進(jìn)行跟蹤的任務(wù),增強(qiáng)了 1/0處理。也就是,在操作系統(tǒng)與控制單元之間建立直接通信路徑,使得操作系 統(tǒng)能夠在通道子系統(tǒng)無需查看或處理各個命令的情況下,通過通道子 系統(tǒng)將命令字列表傳遞到設(shè)備。這減少了通信適配器的工作,并且增 強(qiáng)其性能。此外,控制單元還得益于了解控制單元要執(zhí)行的通道程序 的所有命令。此外,通過使控制單元提供它直接控制的多個間隔的時 間,而不是使通道子系統(tǒng)由接口上不精確的信號推測時間,提供更精 確的測量數(shù)據(jù)。根據(jù)本發(fā)明的一個或多個方面,將表現(xiàn)良好(例如,操作系統(tǒng)或軟件在構(gòu)建時已知的可預(yù)測執(zhí)行)的ccw鏈壓縮到一個控制塊中,此處稱其為CCW描述符(CCWD),并由在此稱為傳送控制字的ccw進(jìn)行引用??蓪⒚铈渃cw以及數(shù)據(jù)鏈ccw壓縮到一個CCWD中。這減少了傳送給定數(shù)據(jù)量所需的序列和交換的數(shù)量。無需用于各個設(shè)備命令的單獨序列,而是使用單個交換.作為一個示例,這導(dǎo)致在傳送4k數(shù)據(jù)所需的交換和序列方面比FICON相比有 2x縮減。這使得FICON能夠與FCP相媲美,尤其是在小塊傳送方面。不 是使用FICON鏈路階段,而是使用FCP鏈路階段。然而,除必須在 FCP—CMND IU中發(fā)送以便允許FCP主機(jī)總線適配器與協(xié)議一起工 作的位和字節(jié)外,在FCP—CMND IU和FCP一RSP IU中的信息不是 FCP。TCW為I/O通信適配器提供信息,以便將CCW命令列表傳送 到控制單元,以及從控制單元傳送用戶數(shù)據(jù)或向控制單元傳送用戶數(shù) 據(jù)。有益的是,使用本發(fā)明的一個或多個方面的通道子系統(tǒng)還可繼續(xù) 使用CCW通道程序,以及TCW通道程序。通過使用TCW,提高 了用于傳送例如小數(shù)據(jù)塊的I/O操作的性能。此外,使用TCW和 CCWD使得有用于檢測數(shù)據(jù)的空間,檢測數(shù)據(jù)可通過終止?fàn)顟B(tài)發(fā) 送。盡管以上描述了多個實施例,不過這些實施例僅僅作為示例。除
此處所述那些之外的處理環(huán)境,包括使用1/0子系統(tǒng)的其他環(huán)境(除通道子系統(tǒng)外),可包含和使用本發(fā)明的一個或多個方面。此外,盡 管示出了各個控制塊,然而在這些控制塊內(nèi)的信息的位置可不同于此 處所示的情形。此外,每個控制塊可包括與此處所述相比更多,更少 或不同的信息。例如,可存在更多、更少和/或不同的字段,包括可 包含更多、更少和/或不同標(biāo)志的字段。此外,字段大小也可更大、 更小和/或不同。此外,盡管在實施例的多個部分提及或描述了主存 儲器,然而可將本發(fā)明的一個或多個方面應(yīng)用于其他存儲器.此外,盡管此處描述了通信協(xié)議(例如,F(xiàn)ICON和FCP),但本發(fā)明的一 個或多個方面可應(yīng)用于其他協(xié)議。此外,環(huán)境可包括仿真器(例如,軟件或其他仿真機(jī)制),其中 對其具體體系結(jié)構(gòu)或子集進(jìn)行了模擬。在這樣的環(huán)境中,仿真器的一個或多個仿真功能實現(xiàn)本發(fā)明的一個或多個方面,盡管執(zhí)行仿真器的 計算機(jī)可具有與被仿真功能不同的體系結(jié)構(gòu)。作為一個示例,在仿真模式中,將被仿真的具體指令或操作解碼,將合適仿真功能構(gòu)建成實 現(xiàn)單獨指令或操作。在其他示例中,執(zhí)行其他命令的TCW通道程序可包括本發(fā)明的 一個或多個方面。此外,TCW通道程序可讀取與此處所述不同的數(shù) 據(jù)量,并仍得益于本發(fā)明的一個或多個方面。在不偏離本發(fā)明的精神 的條件下,可實現(xiàn)多種其他示例和修改例。在仿真環(huán)境中,主機(jī)包括例如存儲器,用于存儲指令和數(shù)據(jù);指 令獲取單元,用于從存儲器獲取指令,以及可選性地為獲取指令提供局部緩存;指令解碼單元,用于接收指令獲取單元,以及確定已獲取 指令的類型;以及指令執(zhí)行單元,用于執(zhí)行指令。執(zhí)行可包括,將數(shù)據(jù)加載到存儲器的寄存器中;將數(shù)據(jù)從寄存器存儲回存儲器;或執(zhí)行 某些類型的運算或邏輯操作,如解碼單元所確定的。在一個實施例 中,以軟件方式實現(xiàn)每個單元。例如,將單元執(zhí)行的操作實現(xiàn)為仿真 器軟件內(nèi)的 一個或多個子程序。此外,可使用適合于存儲和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng),其
包括至少一個直接或通過系統(tǒng)總線間接與存儲器單元連接的處理器。 存儲器單元包括例如程序代碼實際執(zhí)行過程中所采用的局部存儲器,大容量存儲器,和對于至少某些程序代碼提供臨時存儲的高速緩沖存 儲器,以減少執(zhí)行期間必須從大容量存儲器檢索代碼的次數(shù)。輸入/輸出或1/0設(shè)備(包括但不限于,鍵盤,顯示器,指點設(shè)備 等)可直接或通過中間1/0控制器與系統(tǒng)連接。網(wǎng)絡(luò)適配器也與系統(tǒng)連接,使數(shù)據(jù)處理系統(tǒng)能夠通過中間專用或公共網(wǎng)絡(luò)與其他數(shù)據(jù)處理 系統(tǒng)或遠(yuǎn)程打印機(jī)或存儲設(shè)備連接。調(diào)制解調(diào)器,電纜調(diào)制解調(diào)器以 及以太網(wǎng)卡僅是幾種可用類型的網(wǎng)絡(luò)適配器??赏ㄟ^軟件,固件,硬件或者它們的組合來實現(xiàn)本發(fā)明一個或多 個方面的功能。可提供機(jī)器可讀的至少一個程序存儲設(shè)備,用于包含 可由機(jī)器執(zhí)行以實現(xiàn)本發(fā)明功能的至少一個指令程序。此處所述的流程圖僅是示例。在不偏離本發(fā)明精神的條件下,此 處所描述的附圖或步驟存在多種變型。例如,可按照不同順序執(zhí)行所 述步驟,或者可添加、刪除或修改所述步驟。所有這些變型被視為要 求保護(hù)的發(fā)明的一部分。盡管此處詳細(xì)描述和說明了優(yōu)選實施例,本領(lǐng)域技術(shù)人員顯然可 以想到,在不偏離本發(fā)明精神的條件下可進(jìn)行多種改變、添加、替換 等,從而,將其視作處于以下權(quán)利要求限定的本發(fā)明范圍之內(nèi)。
權(quán)利要求
1.一種利于處理環(huán)境的輸入/輸出處理的方法,所述方法包括由處理環(huán)境的輸入/輸出通信適配器獲得傳送控制字,所述傳送控制字指定在處理環(huán)境的存儲器中包含多個待執(zhí)行輸入/輸出命令的位置;將所述多個輸入/輸出命令作為一個實體從輸入/輸出通信適配器傳遞到處理環(huán)境的控制單元;以及由控制單元執(zhí)行所述多個輸入/輸出命令,以執(zhí)行一個或多個輸入/輸出操作,其中,在沒有通過輸入/輸出通信適配器對控制單元正執(zhí)行的所述多個輸入/輸出命令中的各個輸入/輸出命令的狀態(tài)進(jìn)行跟蹤的情況下進(jìn)行所述執(zhí)行。
2. 根據(jù)權(quán)利要求l的方法,其中,所述傳遞包括將描述符控制塊 從輸入/輸出通信適配器傳遞到控制單元,所述描述符控制塊包括所 述多個待執(zhí)行的輸入/輸出命令,且其中,在傳送控制字中指定的存 儲器中的位置包括描述符控制塊的存儲器地址。
3. 根據(jù)權(quán)利要求2的方法,其中,所述描述符控制塊還包括報 頭,用于提供與待執(zhí)行輸入/輸出命令有關(guān)的信息,和一個或多個所 述輸入/輸出命令的描述符數(shù)據(jù)。
4. 根據(jù)權(quán)利要求3的方法,其中,所述描述符數(shù)據(jù)包括要提供給 與控制單元相連的設(shè)備的控制數(shù)據(jù),由描述符控制塊的報頭中指定的 設(shè)備地址來指定所述設(shè)備,將所述控制數(shù)據(jù)提供給沒有單獨數(shù)據(jù)傳送 的設(shè)備。
5. 根據(jù)權(quán)利要求2的方法,還包括對描述符控制塊應(yīng)用校驗代 碼,以便使控制單元能夠檢查描述符控制塊的有效性。
6. 根據(jù)權(quán)利要求l的方法,其中,傳送控制字還指定在存儲器中 包括數(shù)據(jù)或一個或多個修改間接數(shù)據(jù)地址字的列表的位置。
7. 根據(jù)權(quán)利要求6的方法,其中, 一個或多個修改間接數(shù)據(jù)地址 字的列表包括單個修改間接數(shù)據(jù)地址字列表,所述單個修改間接數(shù)據(jù)地址字列表描述用于所述多個描述符命令字的多個數(shù)據(jù)區(qū)。
8. 根據(jù)權(quán)利要求1的方法,其中,通過使用在輸入/輸出通信適 配器與控制單元之間的單個交換,實現(xiàn)由多個輸入/輸出命令的執(zhí)行 導(dǎo)致的數(shù)據(jù)的傳送。
9. 根據(jù)權(quán)利要求8的方法,還包括,對所傳送的數(shù)據(jù)應(yīng)用校驗代 碼,以便檢查傳送數(shù)據(jù)的有效性。
10. 根據(jù)權(quán)利要求1的方法,還包括,由控制單元向輸入/輸出通 信適配器提供由多個輸入/輸出命令的執(zhí)行導(dǎo)致的數(shù)據(jù)和狀態(tài)中的至 少之一,其中,使用輸入/輸出通信適配器和控制單元之間的三個通 信序列,執(zhí)行由多個輸入/輸出命令的執(zhí)行導(dǎo)致的數(shù)據(jù)的傳送。
11. 根據(jù)權(quán)利要求10的方法,其中,即使傳送控制字中指定的位 置所表示的輸入/輸出命令的數(shù)量增加,序列數(shù)量仍保持相同。
12. 根據(jù)權(quán)利要求1的方法,其中,輸入/輸出通信適配器包括通 道,所述多個輸入/輸出命令包括由一個或多個通道命令字指定的多 個通道命令,其中,每個通道命令字包括命令代碼、 一個或多個標(biāo)志 和計數(shù)字段。
13. —種利于處理環(huán)境的輸入/輸出處理的系統(tǒng),所述系統(tǒng)包括 傳送控制字,其指定在處理環(huán)境的存儲器中包含多個待執(zhí)行輸入/輸出命令的位置;處理環(huán)境的輸入/輸出通信適配器,用于獲得傳送控制字,以及將 所述多個輸入/輸出命令作為一個實體傳遞到處理環(huán)境的控制單元; 以及所述控制單元,用于執(zhí)行所述多個輸入/輸出命令,以執(zhí)行一個或 多個輸入/輸出操作,其中,在沒有通過輸入/輸出通信適配器對控制 單元正執(zhí)行的所述多個輸入/輸出命令中的各個輸入/輸出命令的狀態(tài) 進(jìn)行跟蹤的情況下進(jìn)行所述執(zhí)行。
14. 根據(jù)權(quán)利要求13的系統(tǒng),其中,輸入/輸出通信適配器用于 向控制單元傳遞描述符控制塊,所述描述符控制塊包括所述多個待執(zhí) 行的輸入/輸出命令,且其中,在傳送控制字中指定的存儲器中的位 置包括描述符控制塊的存儲器地址。
15. 根據(jù)權(quán)利要求14的系統(tǒng),其中,控制單元還用于檢查應(yīng)用到 描述符控制塊的校驗代碼,以便驗證描述符控制塊的有效性。
16. 根據(jù)權(quán)利要求13的系統(tǒng),其中,傳送控制字還指定在存儲器 中包括數(shù)據(jù)或一個或多個修改間接數(shù)據(jù)地址字的列表的位置,還指定 在存儲器中針對狀態(tài)信息的位置。
全文摘要
公開了利于處理環(huán)境的輸入/輸出處理的方法和系統(tǒng)。通過在輸入/輸出處理期間減少輸入/輸出通信適配器與控制單元之間的通信,利于輸入/輸出處理。通過將多個命令作為一個實體從適配器傳遞到控制單元以便控制單元執(zhí)行,減少在輸入/輸出通信適配器與控制單元之間的交換和序列的數(shù)量??刂茊卧獔?zhí)行命令,并將數(shù)據(jù)(若有的話)設(shè)置在一個序列中??刂茊卧獬诉m配器對各個命令的狀態(tài)進(jìn)行跟蹤的任務(wù),并能夠計算關(guān)于執(zhí)行命令的精確測量數(shù)據(jù)。
文檔編號G06F13/12GK101162444SQ20071013705
公開日2008年4月16日 申請日期2007年7月19日 優(yōu)先權(quán)日2006年10月10日
發(fā)明者丹尼爾·F.·卡斯波, 約漢·R.·弗拉納甘 申請人:國際商業(yè)機(jī)器公司