CN101162444A - 利于处理环境的输入/输出处理的方法和系统 - Google Patents
利于处理环境的输入/输出处理的方法和系统 Download PDFInfo
- Publication number
- CN101162444A CN101162444A CNA2007101370519A CN200710137051A CN101162444A CN 101162444 A CN101162444 A CN 101162444A CN A2007101370519 A CNA2007101370519 A CN A2007101370519A CN 200710137051 A CN200710137051 A CN 200710137051A CN 101162444 A CN101162444 A CN 101162444A
- Authority
- CN
- China
- Prior art keywords
- data
- control module
- input
- output commands
- descriptor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/126—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
公开了利于处理环境的输入/输出处理的方法和系统。通过在输入/输出处理期间减少输入/输出通信适配器与控制单元之间的通信,利于输入/输出处理。通过将多个命令作为一个实体从适配器传递到控制单元以便控制单元执行,减少在输入/输出通信适配器与控制单元之间的交换和序列的数量。控制单元执行命令,并将数据(若有的话)设置在一个序列中。控制单元解除了适配器对各个命令的状态进行跟踪的任务,并能够计算关于执行命令的精确测量数据。
Description
技术领域
本发明一般来说涉及输入/输出处理,并具体涉及在输入/输出处理期间使用传送控制字来减少输入/输出通信。
背景技术
使用输入/输出(I/O)操作在处理环境的存储器与输入/输出设备之间传送数据。具体而言,通过执行输入/输出操作将数据从存储器写到一个或多个输入/输出设备,将数据从一个或多个输入/输出设备读出到存储器。
为利于输入/输出操作的处理,采用处理环境的输入/输出子系统。输入/输出子系统与处理环境的主存储器和输入/输出设备相连,并且在存储器与输入/输出设备之间引导信息流。输入/输出子系统的一个示例是通道子系统。通道子系统使用通道路径作为通信介质。每个通道路径包括与控制单元相连的通道,所述控制单元进一步与一个或多个输入/输出设备相连。
通道子系统采用通道命令字在输入/输出设备与存储器之间传送数据。通道命令字指定待执行的命令,对于启动某些I/O操作的命令来说,其指定与操作有关的存储区、在完成向或从存储区的传送时所采取的动作,以及其他选项。
在输入/输出处理期间,通过通道从存储器获取通道命令字的列表。通道从通道命令字列表中分析出每个命令,并将若干个命令传递给与通道相连的控制单元,每个命令在其自身的实体中。然后,控制单元对命令进行处理。通道跟踪每个命令的状态,并控制何时将下一命令集发送给控制单元进行处理。通道确保将每个命令以其自身实体发送给控制单元。
发明内容
需要增强上述命令的处理。例如,需要能够将多个命令作为单个实体发送给控制单元的能力。还需要无需通道对控制单元正执行的各个命令的状态进行跟踪的能力。需要降低I/O处理期间通道与控制单元之间通信(例如,交换和序列)的能力。
通过提供利于处理环境的输入/输出处理的方法,克服现有技术的缺陷,并提供附加优点。该方法包括,例如,由处理环境的输入/输出通信适配器获得传送控制字,所述传送控制字指定在处理环境的存储器中的包含多个待执行输入/输出命令的位置;将多个输入/输出命令作为一个实体从输入/输出通信适配器传递到处理环境的控制单元;以及由控制单元执行多个输入/输出命令,以执行一个或多个输入/输出操作,其中,在没有通过输入/输出通信适配器对控制单元正执行的所述多个输入/输出命令中的各个输入/输出命令的状态进行跟踪的情况下进行所述执行。
还描述并要求保护与上面概括描述的方法相应的系统和计算机程序产品。
通过本发明的技术实现附加特征和优点。此处详细描述了本发明的其他实施例和方面,并将其视作本发明的一部分。
附图说明
在说明书结束处的权利要求中作为例子具体指出和明确要求保护本发明的一个或多个方面。结合附图,从下面的详细描述中能够明白本发明的上述和其他目的、特征和优点,其中:
图1表示包含和使用本发明的一个或多个方面的处理环境的一个实施例;
图2a表示通道命令字的一个示例;
图2b表示通道命令字通道程序的一个示例;
图3表示用于在通道与控制单元之间进行通信以执行图2b的通道命令字通道程序的链路协议的一个实施例;
图4表示根据本发明的一个方面的传送控制字通道程序的一个实施例;
图5表示根据本发明的一个方面的用于在通道与控制单元之间进行通信以执行图4的传送控制字通道程序的链路协议的一个实施例;
图6表示用于在通道与控制单元之间进行通信以执行通道控制字通道程序的四个读出命令的链路协议的一个实施例;
图7表示根据本发明的一个方面的用于在通道与控制单元之间进行通信以处理传送控制字通道程序的四个读出命令的链路协议的一个实施例;
图8表示根据本发明的一个方面所使用的传送控制字的一个实施例;
图9表示图8的传送控制字所指定的并且根据本发明一个方面所使用的通道命令字描述符的一个实施例;
图10表示图8的传送控制字所指定的并且根据本发明一个方面所使用的终止状态的一个实施例;
图11表示为通道命令字通道程序接收的响应信息的一个实施例;
图12表示根据本发明的一个方面,为传送控制字通道程序接收的响应信息的一个实施例;和
图13表示包含本发明一个或多个方面的计算机程序产品的一个实施例。
具体实施方式
根据本发明的一个方面,通过减少用于执行输入/输出处理的处理环境部件之间的通信,以利于输入/输出处理。例如,减少输入/输出(I/O)通信适配器(诸如,通道)与控制单元之间的交换和序列的数量。这是通过将多个命令作为单个实体从I/O通信适配器发送给控制单元以便控制单元执行,并通过控制单元将由命令所导致的数据(如果有的话)作为单个实体发送来实现。
将多个命令包括在描述符中,此处将该描述符称为通道命令字描述符,并在传送控制字中指定其地址。将传送控制字从操作系统或其他应用程序发送给I/O通信适配器,I/O通信适配器进而将描述符传递给控制单元进行处理。在I/O通信适配器不对这些命令各自状态进行跟踪的情况下,由控制单元对每个命令进行处理。
参照图1描述包含和使用本发明一个或多个方面的处理环境的一个示例。处理环境100包括例如主存储器102,一个或多个中央处理单元(CPU)104,存储控制单元106,通道子系统108,一个或多个控制单元110,以及一个或多个输入/输出(I/O)设备112,下面对每个部件进行描述。
主存储器102存储从输入设备112输入的数据和程序。主存储器102可直接进行寻址,并用于中央处理单元104和通道子系统108对数据的高速处理。
中央处理单元104是环境100的控制中心。其包含定序和处理设施,用于指令执行、中断操作、定时功能、初始程序加载以及其他机器有关功能。中央处理单元104通过连接114,诸如双向或单向总线,与存储控制单元106相连。
存储控制单元106通过连接116,诸如总线,与主存储器102相连;通过连接114与中央处理单元104相连;并通过连接118与通道子系统108相连。存储控制单元106例如控制对CPU 104和通道子系统108做出的请求的排队和执行。
如上所述,通道子系统108与存储控制单元106相连,并通过诸如串行链路的连接120与每个控制单元相连。通道子系统108引导输入/输出设备112与主存储器102之间的信息流。其缓解了中央处理单元与输入/输出设备直接通信的任务量,并允许数据处理与输入/输出处理并行进行。通道子系统使用一个或多个通道路径122作为对流入或流出输入/输出设备112的信息流进行管理时的通信链路。作为输入/输出处理的一部分,通道子系统108还执行检测通道路径可用性,选择可用通道路径,和启动与输入/输出设备的操作的执行的路径管理功能
每个通道路径122包括通道124(如图1中所示,在一个示例中,通道处在通道子系统内),一个或多个控制单元110,以及一个或多个连接120。在另一示例中,还可以具有一个或多个动态交换机作为通道路径的一部分。动态交换机与通道和控制单元相连,并且提供使与交换机相连的任意两个链路物理上互连的功能。
在通道子系统108中还有子通道(未示出)。一个子通道被设置成用于并且专用于程序可通过通道子系统访问的每个输入/输出设备。子通道(例如,数据结构,诸如表)将设备的逻辑外表提供给程序。每个子通道将与相关输入/输出设备112及其附件有关的信息提供给通道子系统108。子通道还提供涉及相关输入/输出操作的信息,以及涉及相关输入/输出设备的其他功能。子通道是被通道子系统108用来将与相关输入/输出设备112有关的信息提供给中央处理单元104的装置,中央处理单元104通过执行输入/输出指令执行获得此信息。
通道子系统108与一个或多个控制单元110相连。每个控制单元提供用于将操作和控制一个或多个输入/输出设备,以及通过使用公共设施使每个输入/输出设备的特性适合通道所提供的链路接口的逻辑。所述公共设施用于输入/输出操作的执行,有关输入/输出设备和控制单元的状态的指示,对通道路径上数据传送的定时的控制,和一定层次的输入/输出设备控制。
每个控制单元110通过连接126(例如总线)与一个或多个输入/输出设备112相连。输入/输出设备112接收信息,或者将信息存储到主存储器101和/或其他存储器中。输入/输出设备的示例包括读卡机和卡片穿孔机,磁带单元,直接存取存储设备,显示器,键盘,打印机,指点设备,远程处理设备,通信控制器以及基于传感器的装置,这里只列举出少数几个。
在z/Architecture Principles of Operation”,出版号SA22-7832-04,第五版,2005年9月;1995年10月24日授予Cormier等人的题为“System For Transferring Data Between I/O Devices AndMain Or Expanded Storage Under Dynamic Control Of IndependentIndirect Address Words(IDAWS)”的美国专利No.5,461,721;以及1996年6月11日授予Casper等人的题为“Method And SystemFor Pipelining The Processing Of Channel Command Words”的美国专利No.5,526,484中进一步描述了处理环境的上述单元中的一个或多个,这些文献中的每一个在此全文引作参考。IBM是美国纽约Armonk的国际商用机器公司的注册商标。此处使用的其他名字可能是国际商业机器公司或者其他公司的注册商标,商标和产品名。
在一个实施例中,为了在设备112与存储器102之间传送数据,使用通道命令字。通道命令字指定待执行的命令,并且包括用于对处理进行控制的其他字段。参照图2a,描述通道命令字的一个示例。例如,通道命令字200包括指定待执行命令(例如,读,回读(readbackward),控制,检测和写)的命令代码202;用于控制I/O操作的多个标志204;用于指定数据传送的命令的计数字段206,其指定在CCW所表示的存储区中待传送的字节的数量;以及数据地址208,当采用直接寻址时,其指向主存储器中包含数据的位置,或者当采用修改间接数据寻址时,其指向要处理的修改间接数据地址字(MIDAW)的列表(例如,邻接列表)。在Brice等人于2006年8月15日申请的题为“Flexibly Controlling The Transfer Of DataBetween Input/Output Devices And Memory”的美国专利申请11/464,613中进一步描述了修改间接数据寻址。
为顺序执行而排列的一个或多个通道命令字(CCW)构成通道程序,此处称之为CCW通道程序。CCW通道程序例如由操作系统或其他软件建立。软件建立CCW,并获得分配给通道程序的存储器地址。参照图2b,描述CCW通道程序的一个示例。CCW通道程序210例如包括限定范围(define extent)通道命令字(CCW)212,其具有指向存储器中将用于限定范围命令的限定范围数据216的位置的指针214。在该示例中,在限定范围命令之后为通道转换(transfer in channel)(TIC)218,其将通道程序指引到存储器中包括一个或多个其他CCW的另一区域(例如,应用区),例如具有用于定位记录数据220的指针219的定位记录217,以及一个或多个读出CCW 221。每个读出CCW 220具有指向数据区224的指针222。数据区包括用于直接访问数据的地址,或用于间接访问数据的数据地址字(例如,MIDAW或IDAW)的列表。另外,CCW通道程序210包括在通道子系统中由设备地址所限定的预定区域,称为用于由CCW通道程序的执行所导致的状态226的子通道。
参照图3以及图2b描述CCW通道程序的处理。具体而言,图3表示当执行CCW通道程序时,在通道与控制单元之间发生的各种交换和序列的一个示例。在该示例中,用于通信的链路协议是FICON(光纤连接性)。在“Fibre Channel Single Byte Command CodeSets-2Mapping Protocol(FC-SB-3)”,T11/Project 1357-D/Rev.1.6,INCITS(2003年3月)中描述了与FICON有关的信息,该文献在此全文引作参考。
参照图3,通道300打开与控制单元302的交换,并将限定范围命令和与之相关的数据304发送给控制单元302。从限定范围CCW212(图2b)得到命令,从限定范围数据区216获得数据。通道使用TIC 218来定位定位记录CCW和读出CCW。它从定位记录CCW217(图2B)取出定位记录命令305(图3),从定位记录数据220获得数据。从读出CCW 221(图2B)取出读出命令306(图3)。将每一个发送给控制单元。
响应于通道的打开交换,控制单元打开与通道的交换308。这可以发生在定位命令305和/或读出命令306之前或之后。连同打开交换一起,将响应(CMR)传递给通道。CMR向通道提供有关控制单元处于活动状态并且正在工作的指示。
控制单元将所请求的数据310发送给通道。此外,控制单元将状态提供给通道,并关闭交换312。响应于此,通道存储数据,检查状态,并关闭交换314,这向控制单元表明已经接收到状态。
上述CCW通道程序读取4k数据的处理需要打开和关闭两个交换,和7个序列。根据本发明的一个方面,通过将通道程序的多个命令压缩(collapes)到一个称作传送控制字(TCW)的命令字中,减少通道和控制单元间的交换和序列的数量。具体地,传送控制字指向包括多个命令的通道命令字描述符(CCWD)。TCW由主通道执行,不被控制单元发送或者对于控制单元是不可见的。
参照图4,描述用于读出4k数据(如在图2b中所示),但包括传送控制字而不是单独的各个通道命令字的通道程序的一个示例。如图所示,此处称之为TCW通道程序的通道程序400包括传送控制字402,其指定通道命令字描述符(CCWD)404在存储器中的位置,以及数据区406或指向数据区406的MIDAL 410(即MIDAW的列表)以及状态区408在存储器中的位置。下面,进一步详细描述传送控制字,通道命令字描述符和状态。
参照图5描述TCW通道程序的处理。用于这些通信的链路协议例如为光纤通道协议(FCP)。具体而言,使用FCP链路协议的三个阶段,从而允许使用支持FCP的主机总线适配器,以支持由CCW控制的数据传送。在“Information Technology-Fibre ChannelProtocol for SCSI,Third Version(FCP-3)”,T10 Project 1560-D,Revision 4,2005年9月13日中进一步描述了FCP及其阶段,该文献在此全文引作参考。
参照图5,通道500打开与控制单元502的交换,并将通道命令字描述符504发送给控制单元。在一个示例中,在称作FCP_CMNDIU的FCP命令中,将CCWD和序列主动权(sequence initiative)传送给控制单元。控制单元执行通道命令字描述符的多个命令(例如,限定范围命令,定位记录命令,读出命令),并通过例如FCP_Data IU将数据506传递给通道。它还提供状态并关闭交换508。作为一个示例,在FCP状态帧中发送最终状态,该FCP状态帧例如在FCP_RSP IU有效载荷的字节10或11中具有活动位。使用FCP_RSP IU有效载荷,与控制单元排队时间、断开时间、活动时间、所执行的最后DCW的偏移量、所执行的最后DCW的剩余数据字节计数、CCWD的剩余数据字节计数以及可能的检测数据一起,传送FICON终止状态。
在另一示例中,为了写4k的用户数据,通道使用FCP链路协议阶段,如下所述:
1.在FCP_CMND IU中传送CCWD。
2.将数据的IU,以及序列主动权传送给控制单元(FCP传送就绪禁用)。
3.通过在例如FCP_RSP IU有效载荷的字节10或11中具有活动位的FCP状态帧发送最终状态。使用FCP_RES_INFO字段或检测字段,与控制单元排队时间、断开时间、活动时间、所执行的最后DCW的偏移量、所执行的最后DCW的剩余数据字节计数、CCWD的剩余数据字节计数以及可能的检测数据一起,传送FICON终止状态。
通过执行图4所示的TCW通道程序,仅打开和关闭一个交换(还参见图5),而不是如图2b所示CCW通道程序的两个交换(还参见图3)的情形。另外,对于TCW通道程序而言,具有三个通信序列(参见图4-5),与之相比,对于CCW通道程序而言,有7个序列(参见图2b-3)。
对于TCW通道程序而言,即使向程序添加附加命令,交换和序列的数量也保持相同。例如,将图6所示CCW通道程序的通信与图7的TCW通道程序的通信进行比较。在图6所示CCW通道程序中,在独立的序列中将每个命令(例如,限定范围命令600,定位记录命令601,读出命令602,读出命令604,读出命令606,定位记录命令607和读出命令608)从通道610发送到控制单元612。另外,在独立的序列中将每个4k数据块(例如,数据614-620)从控制单元612发送到通道610。CCW通道程序需要打开和关闭两个交换(例如,打开交换622,624,和关闭交换626,628),以及14个通信序列。这与针对图7所示TCW通道程序的三个序列和一个交换形成对比,其完成与图6的CCW通道程序相同的任务。
如图7中所示,通道700打开与控制单元702的交换,并将通道命令字描述符704发送给控制单元。如上所述,CCWD包括限定范围命令,两个定位记录命令,和四个读出命令。响应于接收CCWD,控制单元执行命令,并在单个序列中将16k的数据706发送到通道。此外,控制单元将状态提供给通道,并关闭交换708。从而,TCW通道程序需要更少的通信来传送与CCW通道程序相同的数据量。
参照图8-10描述与传送控制字,通道命令字描述符和状态有关的更多细节。具体而言,参照图8描述传送控制字的一个实施例,参照图9描述通道命令字描述符的一个实施例,参照图10描述由传送控制字引用的终止状态的一个实施例。
参照图8,在一个实施例中,传送控制字800包括多个字段,例如:
a)命令字段802:命令字段表示命令是TCW命令还是传统通道CCW。TCW通道命令是X8命令,其中,X不等于零。作为示例,X8命令字段包括以下命令的其中之一:
1)对于x=1来说,作为一个示例,该命令为经由传送控制字中的通道命令字描述符数据字节计数字段将通道命令字描述符以及用户数据传送到控制单元的写TCW命令;和
2)对于x=2来说,作为一个示例,该命令为将通道命令字描述符传送给控制单元的TCW命令,并且通道命令字描述符数据字节计数为控制单元将向通道传送的数据的总量;
b)标志804:标志字段可包括一个或多个标志。在该示例中,包括表示是使用修改间接寻址还是直接寻址的MIDAW标志。如果标志是活动的,则传送控制字中的地址810为修改间接数据地址列表(MIDAL)的第一个修改间接数据地址字(MIDAW)的地址。否则,地址为用于直接寻址的数据地址;
c)CCWD长度806:该字段包括由该传送控制字所指定的通道命令字描述符的长度;
d)CCWD数据字节计数808:该字段包括通过通道命令字描述符中所有描述符命令字(DCW)(后面将对其进行描述)传送的用户数据的总量;
e)MIDAW的地址或数据地址810:假设标志字段804表示其应当为MIDAW地址,则该字段提供MIDAW的地址,或提供用户数据的地址;
f)CCWD 812的地址:该字段包括用于在存储器中定位通道命令字描述符的地址。下面进一步描述通道命令字描述符。
g)状态814的地址:该字段包括用于在存储器中定位该传送控制字的终止完成状态的地址。下面描述与终止状态有关的更多信息。
由例如主机总线适配器使用由传送控制字所定义的三个地址(包括MIDAW或数据地址810,CCWD地址812和状态地址814)来执行FCP操作的等效操作。这样在通信中就能够使用FCP链路阶段取代FICON阶段,从而显著增加通道子系统的性能和效率。
如上所述,传送控制字指定要使用的通道命令字描述符。通道命令字描述符包括多个将要由控制单元执行的命令。在不由通道跟踪与各个命令的执行有关的状态的情况下,与通道无关地执行命令。控制单元将多个命令接收为单个单元,并且负责按照适当的方式执行所述命令。在一个示例中,将CCWD作为FCP链路协议中的FCP_CMND IU有效载荷发送给控制单元。通过使通道不负责跟踪各个命令,明显增强了通道的性能。此外,控制单元得益于同时看到整个通道程序。
参照图9描述通道命令字描述符(CCWD)的一个实施例。通道命令字描述符900具有三个主要部分,包括例如报头902,多个DCW 904和描述符数据906,下面对它们每一个进行描述。
作为一个示例,CCWD报头902包括以下字段:
a)通道映像ID 910:该字段标识通信中涉及的通道;
b)控制单元映像ID 912:该字段标识与通道映像ID 910所标识的通道进行通信的控制单元;
c)设备地址914:该字段标识与I/O通信中所涉及的控制单元连接的设备;
d)读出或写入字段916:该字段表示I/O操作是读出还是写入;
e)CDB CMD 918:该字段用于标识其为CCWD;
f)I/O优先级920:该字段表示该I/O的优先级;
g)CCWD长度922:该字段表示CCWD的长度;
h)#DCW 924:该字段表示用于该CCWD的描述符命令字的数量;以及
i)CCWD数据字节计数926:该字段描述要由CCWD传送的总用户数据。
每个描述符命令字904包括多个字段,例如:
a)命令字段930:该字段包括CCW命令(例如,类似限定范围和定位记录;读出;写入;等等的控制命令);
b)标志字段932:该字段可包括一个或多个标志。在该示例中,标志字段932包括表示命令链是否存在的命令链标志;和表示在这个DCW后面的CCWD中是否存在描述符数据的描述符数据存在标志。当写入控制命令需要描述符数据时,该标志用于写入控制;
c)字节计数字段934:如果其为控制命令,则所述计数是CCWD中控制数据的字节数;否则,其为该DCW将要传送的用户数据的计数。如果DCW命令为命令中介(command intermediate)或者非操作命令,则字节计数字段为0。
描述符数据906包括用于DCW写入控制命令的数据936。该数据在处于该数据所述针对的DCW后面的CCWD中,并且DCW中的标志字段使得知道该数据的存储。通过在描述符列表中直接指定控制数据,设备可获得数据,而不需要设备执行独立数据传送来获取数据。
在一个实施例中,经由CCWD中DCW字节计数的总和对传送的CCWD数据应用校验代码,例如循环冗余校验(例如,FICONCRC),纵向冗余校验(LRC),校验和等,并且当将CCWD传送到控制单元时,对其应用单独的校验代码。例如,对由CCWD传送的全部数据应用校验代码。这与在传送层处应用的CRC相比层次更高。对发送的每个数据包应用校验,然后在接收器端进行累加与验证,以确保由CCWD数据字节计数所指定的整个数据全部到达并且没有错误。
作为另一示例,对于CCWD本身,应用校验代码。例如,将代码追加到信息上。控制单元接收该信息,检查代码,如果有效,则认为信息有效。
传送控制字还指定终止状态的位置。这允许操作系统在存储设备中为附加定时器指定区域,并对来自控制单元的针对TCW操作和针对检测数据的信息进行计数。从而,保证在每个单元校验条件下实现并发检测数据的传递。下面,参照图10描述终止状态的一个示例。
在一个实施例中,终止状态控制块1000包括以下字段:
a)DCW剩余字节计数1002:该字段表示失败DCW的剩余字节计数(即,在何处中断了DCW的执行);
b)检测长度1004:该字段指定在追加检测数据中追加在该控制块末尾处的检测数据的长度;
c)响应长度1006:该字段表示该控制块的响应部分的长度;
d)通道映像ID 1008:该字段标识在通信中所涉及的通道;
e)控制单元映像ID 1010:该字段标识与通道映像ID 1008所表示的通道进行通信的控制单元;
f)设备地1012:该字段标识与I/O通信中所涉及的控制单元相连的设备;
g)状态标志1014:该字段指定一个或多个状态标志。在“FibreChannel Single Byte Command Code Sets-2 Mapping Protocol(FC-SB-3)”,T11/Project 1357-D/Rev.1.6,INCITS(2003年3月)中描述了状态标志的示例,其全文在此引作参考;
h)状态1016:该字段标识通信状态,例如包括设备状态,更多内容可参看z/Architecture Principles of Operation”,出版号SA22-7832-04,第五版,2005年9月,其全文在此引作参考;
i)CCWD剩余字节计数1020:该字段表示CCWD数据字节计数的剩余字节计数,其为对于整个CCWD未传送的数据的剩余计数;
j)DCW偏移量1022:如果在CCWD中未执行所有DCW,则这是失败的DCW在CCWD中的DCW偏移量;
k)队列时间参数1024:该字段指定在对通道打开交换的情况下,控制单元使I/O操作处在其队列上的时间的量;
l)延迟时间参数1026:该字段指定在对通道打开交换的情况下,由于控制单元数据高速缓存命中失误,控制单元等待数据的时间的量。控制单元需要访问介质以引用所请求的数据;
m)控制单元活动时间1028:该字段指定控制单元处理活动状态以执行TCW的时间;
n)追加检测数据(若有的话)1030:该字段包括对于在I/O操作期间控制单元遇到单元校验的情形的检测(sense)。
在z/Architecture Principles of Operation”,出版号SA22-7832-04,第五版,2005年9月中,对状态做了进一步描述;在“Fibre Channel Single Byte Command Code Sets-2Mapping Protocol(FC-SB-3)”,T11/Project 1357-D/Rev.1.6,INCITS(2003年3月)中进一步描述了延迟时间和追加检测,每个文献在此全文引作参考。
对于传统FICON,命令响应是CCW通道程序操作中的重要测量点。图11表示通道可看到的时间线,其表示出CCW通道程序的通道子系统跟踪的多个定时点。例如,通道看到开始子通道A 1100,CMR B 1102,断开C 1104,重新连接D 1106和终止状态E 1108。控制单元在终止状态时间处为通道提供CU排队时间和CU延迟时间。
为收集用于通道子系统测量的各个时间,传统通道子系统实际执行多个步骤。例如,参照图11,其在A 1100处打上开始子通道时间的时间戳,在B 1102处,打上CMR时间的时间戳。在断开时间C1104处,它计算连接时间(CT=C-B)。在D 1106处,打上重新连接时间的时间戳,在E 1108处打上终止状态时间的时间戳。由此,它计算出总连接时间CT=(C-B)+(E-D);总开始等待时间SP=(B-A);以及断开时间DT=(E-A)-CT-SP)。
然而,对于TCW,通道未获得命令响应CMR以了解控制单元何时开始I/O操作。例如,参看图12所示时间线,仅看到开始子通道A 1200和终止状态E 1202。对于TCW操作,通道未看到CMR B1204时间,和始于C 1206处且终止于D 1208处、从介质中检索数据所需的时间。从介质中检索数据的时间是TCW的CU延迟时间的一部分。CU队列时间(未示出)和CU延迟时间由控制单元在终止状态时间处提供。
从而,对于TCW通道程序,通道在A 1200处打上开始子通道时间的时间戳,在E 1202处打上终止状态时间的时间戳,但由控制单元对操作何时开始以及执行各个命令的总时间进行跟踪,而且作为终止状态的一部分提供该测量数据。
作为一个示例,控制单元在终止状态处报告如下测量:
AT=活动时间=(C-B)+(E-D),参看图12——这是如图10所示的CU活动时间1028;
QT=CU队列时间——这是控制单元在开始操作前将操作排在其队列上的时间的量,并作为如图10所示的排队时间参数1024;
以及
DT=延迟时间=(D-C),参看图12——这是如图10所示的延迟时间参数1026。
从由控制单元提供的定时器以及由通道子系统在如图12所示A和E处提供的开始和终止时间戳,为TCW命令提供与传统CCW命令同样的测量数据。I/O子系统确定:
CMR时间(B-A(图12))=(E-A)-AT-DT-QT;
总连接时间CT=CU报告的活动时间AT(图10中的1028);
总开始等待时间SP=(E-A)-AT-DT;以及
断开时间=CU报告的延迟时间=(D-C)(图10中的1026)。
因此,控制单元负责对各个命令的状态信息进行跟踪,并且提供与之相关的测量数据,从而缓解了通道的负担。操作系统仅使用该通道作为通路来与控制单元直接进行通信。通道不跟踪各个命令的状态信息,但I/O子系统通过使用I/O子系统时间戳A和E以及来自控制单元的三个定时器,提供与传统CCW相同的测量数据,从而,将同样的测量数据提供给操作系统。同时,降低了通道的工作负载。
可将本发明的一个或多个方面包括在例如具有计算机可用介质的制造产品(例如,一个或多个计算机程序产品)中。例如,该介质在其中具有用于提供和实现本发明功能的计算机可读程序代码装置或逻辑(例如,指令、代码、命令等)。可作为计算机系统的一部分包含该制造产品,或者将其单独出售。
下面,参照图13,描述包括本发明一个或多个方面的制造产品或计算机程序产品的一个示例。计算机程序产品1300包括,例如,用于在其上存储计算机可读程序代码装置或逻辑1304的一个或多个计算机可用介质1302,计算机可读程序代码装置或逻辑1304用来提供和实现本发明的一个或多个方面。所述介质可为电、磁、光、电磁、红外或半导体系统(装置或设备)或传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的示例包括只读光盘(CD-ROM)、可读/写光盘(CD-R/W)和DVD。
由一个或多个计算机可读程序代码装置或逻辑定义的一个或多个相关模块的程序指令序列或逻辑组件指示执行本发明的一个或多个方面。
有益的是,根据本发明的一个或多个方面,通过使操作系统能够直接与控制单元进行通信,以及通过使I/O通信适配器减去对关于被处理的各个命令的所有状态信息进行跟踪的任务,增强了I/O处理。也就是,在操作系统与控制单元之间建立直接通信路径,使得操作系统能够在通道子系统无需查看或处理各个命令的情况下,通过通道子系统将命令字列表传递到设备。这减少了通信适配器的工作,并且增强其性能。此外,控制单元还得益于了解控制单元要执行的通道程序的所有命令。此外,通过使控制单元提供它直接控制的多个间隔的时间,而不是使通道子系统由接口上不精确的信号推测时间,提供更精确的测量数据。
根据本发明的一个或多个方面,将表现良好(例如,操作系统或软件在构建时已知的可预测执行)的CCW链压缩到一个控制块中,此处称其为CCW描述符(CCWD),并由在此称为传送控制字的CCW进行引用。可将命令链CCW以及数据链CCW压缩到一个CCWD中。这减少了传送给定数据量所需的序列和交换的数量。无需用于各个设备命令的单独序列,而是使用单个交换。作为一个示例,这导致在传送4k数据所需的交换和序列方面比FICON相比有2x缩减。
这使得FICON能够与FCP相媲美,尤其是在小块传送方面。不是使用FICON链路阶段,而是使用FCP链路阶段。然而,除必须在FCP_CMND IU中发送以便允许FCP主机总线适配器与协议一起工作的位和字节外,在FCP_CMND IU和FCP_RSP IU中的信息不是FCP。
TCW为I/O通信适配器提供信息,以便将CCW命令列表传送到控制单元,以及从控制单元传送用户数据或向控制单元传送用户数据。有益的是,使用本发明的一个或多个方面的通道子系统还可继续使用CCW通道程序,以及TCW通道程序。通过使用TCW,提高了用于传送例如小数据块的I/O操作的性能。此外,使用TCW和CCWD使得有用于检测数据的空间,检测数据可通过终止状态发送。
尽管以上描述了多个实施例,不过这些实施例仅仅作为示例。除此处所述那些之外的处理环境,包括使用I/O子系统的其他环境(除通道子系统外),可包含和使用本发明的一个或多个方面。此外,尽管示出了各个控制块,然而在这些控制块内的信息的位置可不同于此处所示的情形。此外,每个控制块可包括与此处所述相比更多,更少或不同的信息。例如,可存在更多、更少和/或不同的字段,包括可包含更多、更少和/或不同标志的字段。此外,字段大小也可更大、更小和/或不同。此外,尽管在实施例的多个部分提及或描述了主存储器,然而可将本发明的一个或多个方面应用于其他存储器。此外,尽管此处描述了通信协议(例如,FICON和FCP),但本发明的一个或多个方面可应用于其他协议。
此外,环境可包括仿真器(例如,软件或其他仿真机制),其中对其具体体系结构或子集进行了模拟。在这样的环境中,仿真器的一个或多个仿真功能实现本发明的一个或多个方面,尽管执行仿真器的计算机可具有与被仿真功能不同的体系结构。作为一个示例,在仿真模式中,将被仿真的具体指令或操作解码,将合适仿真功能构建成实现单独指令或操作。
在其他示例中,执行其他命令的TCW通道程序可包括本发明的一个或多个方面。此外,TCW通道程序可读取与此处所述不同的数据量,并仍得益于本发明的一个或多个方面。在不偏离本发明的精神的条件下,可实现多种其他示例和修改例。
在仿真环境中,主机包括例如存储器,用于存储指令和数据;指令获取单元,用于从存储器获取指令,以及可选性地为获取指令提供局部缓存;指令解码单元,用于接收指令获取单元,以及确定已获取指令的类型;以及指令执行单元,用于执行指令。执行可包括,将数据加载到存储器的寄存器中;将数据从寄存器存储回存储器;或执行某些类型的运算或逻辑操作,如解码单元所确定的。在一个实施例中,以软件方式实现每个单元。例如,将单元执行的操作实现为仿真器软件内的一个或多个子程序。
此外,可使用适合于存储和/或执行程序代码的数据处理系统,其包括至少一个直接或通过系统总线间接与存储器单元连接的处理器。存储器单元包括例如程序代码实际执行过程中所采用的局部存储器,大容量存储器,和对于至少某些程序代码提供临时存储的高速缓冲存储器,以减少执行期间必须从大容量存储器检索代码的次数。
输入/输出或I/O设备(包括但不限于,键盘,显示器,指点设备等)可直接或通过中间I/O控制器与系统连接。网络适配器也与系统连接,使数据处理系统能够通过中间专用或公共网络与其他数据处理系统或远程打印机或存储设备连接。调制解调器,电缆调制解调器以及以太网卡仅是几种可用类型的网络适配器。
可通过软件,固件,硬件或者它们的组合来实现本发明一个或多个方面的功能。可提供机器可读的至少一个程序存储设备,用于包含可由机器执行以实现本发明功能的至少一个指令程序。
此处所述的流程图仅是示例。在不偏离本发明精神的条件下,此处所描述的附图或步骤存在多种变型。例如,可按照不同顺序执行所述步骤,或者可添加、删除或修改所述步骤。所有这些变型被视为要求保护的发明的一部分。
尽管此处详细描述和说明了优选实施例,本领域技术人员显然可以想到,在不偏离本发明精神的条件下可进行多种改变、添加、替换等,从而,将其视作处于以下权利要求限定的本发明范围之内。
Claims (16)
1.一种利于处理环境的输入/输出处理的方法,所述方法包括:
由处理环境的输入/输出通信适配器获得传送控制字,所述传送控制字指定在处理环境的存储器中包含多个待执行输入/输出命令的位置;
将所述多个输入/输出命令作为一个实体从输入/输出通信适配器传递到处理环境的控制单元;以及
由控制单元执行所述多个输入/输出命令,以执行一个或多个输入/输出操作,其中,在没有通过输入/输出通信适配器对控制单元正执行的所述多个输入/输出命令中的各个输入/输出命令的状态进行跟踪的情况下进行所述执行。
2.根据权利要求1的方法,其中,所述传递包括将描述符控制块从输入/输出通信适配器传递到控制单元,所述描述符控制块包括所述多个待执行的输入/输出命令,且其中,在传送控制字中指定的存储器中的位置包括描述符控制块的存储器地址。
3.根据权利要求2的方法,其中,所述描述符控制块还包括报头,用于提供与待执行输入/输出命令有关的信息,和一个或多个所述输入/输出命令的描述符数据。
4.根据权利要求3的方法,其中,所述描述符数据包括要提供给与控制单元相连的设备的控制数据,由描述符控制块的报头中指定的设备地址来指定所述设备,将所述控制数据提供给没有单独数据传送的设备。
5.根据权利要求2的方法,还包括对描述符控制块应用校验代码,以便使控制单元能够检查描述符控制块的有效性。
6.根据权利要求1的方法,其中,传送控制字还指定在存储器中包括数据或一个或多个修改间接数据地址字的列表的位置。
7.根据权利要求6的方法,其中,一个或多个修改间接数据地址字的列表包括单个修改间接数据地址字列表,所述单个修改间接数据地址字列表描述用于所述多个描述符命令字的多个数据区。
8.根据权利要求1的方法,其中,通过使用在输入/输出通信适配器与控制单元之间的单个交换,实现由多个输入/输出命令的执行导致的数据的传送。
9.根据权利要求8的方法,还包括,对所传送的数据应用校验代码,以便检查传送数据的有效性。
10.根据权利要求1的方法,还包括,由控制单元向输入/输出通信适配器提供由多个输入/输出命令的执行导致的数据和状态中的至少之一,其中,使用输入/输出通信适配器和控制单元之间的三个通信序列,执行由多个输入/输出命令的执行导致的数据的传送。
11.根据权利要求10的方法,其中,即使传送控制字中指定的位置所表示的输入/输出命令的数量增加,序列数量仍保持相同。
12.根据权利要求1的方法,其中,输入/输出通信适配器包括通道,所述多个输入/输出命令包括由一个或多个通道命令字指定的多个通道命令,其中,每个通道命令字包括命令代码、一个或多个标志和计数字段。
13.一种利于处理环境的输入/输出处理的系统,所述系统包括:
传送控制字,其指定在处理环境的存储器中包含多个待执行输入/输出命令的位置;
处理环境的输入/输出通信适配器,用于获得传送控制字,以及将所述多个输入/输出命令作为一个实体传递到处理环境的控制单元;以及
所述控制单元,用于执行所述多个输入/输出命令,以执行一个或多个输入/输出操作,其中,在没有通过输入/输出通信适配器对控制单元正执行的所述多个输入/输出命令中的各个输入/输出命令的状态进行跟踪的情况下进行所述执行。
14.根据权利要求13的系统,其中,输入/输出通信适配器用于向控制单元传递描述符控制块,所述描述符控制块包括所述多个待执行的输入/输出命令,且其中,在传送控制字中指定的存储器中的位置包括描述符控制块的存储器地址。
15.根据权利要求14的系统,其中,控制单元还用于检查应用到描述符控制块的校验代码,以便验证描述符控制块的有效性。
16.根据权利要求13的系统,其中,传送控制字还指定在存储器中包括数据或一个或多个修改间接数据地址字的列表的位置,还指定在存储器中针对状态信息的位置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/548,060 | 2006-10-10 | ||
US11/548,060 US7500023B2 (en) | 2006-10-10 | 2006-10-10 | Facilitating input/output processing by using transport control words to reduce input/output communications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101162444A true CN101162444A (zh) | 2008-04-16 |
CN100568203C CN100568203C (zh) | 2009-12-09 |
Family
ID=39297369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101370519A Active CN100568203C (zh) | 2006-10-10 | 2007-07-19 | 利于处理环境的输入/输出处理的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (3) | US7500023B2 (zh) |
CN (1) | CN100568203C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103597459A (zh) * | 2011-06-10 | 2014-02-19 | 国际商业机器公司 | 使用扩展异步数据移动器间接数据地址字 |
US9164882B2 (en) | 2011-06-10 | 2015-10-20 | International Business Machines Corporation | Chaining move specification blocks |
US9372640B2 (en) | 2011-06-10 | 2016-06-21 | International Business Machines Corporation | Configure storage class memory command |
US9411737B2 (en) | 2011-06-10 | 2016-08-09 | International Business Machines Corporation | Clearing blocks of storage class memory |
US9418006B2 (en) | 2011-06-10 | 2016-08-16 | International Business Machines Corporation | Moving blocks of data between main memory and storage class memory |
US9477417B2 (en) | 2011-06-10 | 2016-10-25 | International Business Machines Corporation | Data returned responsive to executing a start subchannel instruction |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7500023B2 (en) * | 2006-10-10 | 2009-03-03 | International Business Machines Corporation | Facilitating input/output processing by using transport control words to reduce input/output communications |
US7502873B2 (en) | 2006-10-10 | 2009-03-10 | International Business Machines Corporation | Facilitating access to status and measurement data associated with input/output processing |
US8176222B2 (en) | 2008-02-14 | 2012-05-08 | International Business Machines Corporation | Early termination of an I/O operation in an I/O processing system |
US8001298B2 (en) | 2008-02-14 | 2011-08-16 | International Business Machines Corporation | Providing extended measurement data in an I/O processing system |
US8095847B2 (en) | 2008-02-14 | 2012-01-10 | International Business Machines Corporation | Exception condition handling at a channel subsystem in an I/O processing system |
US7904605B2 (en) | 2008-02-14 | 2011-03-08 | International Business Machines Corporation | Computer command and response for determining the state of an I/O operation |
US7899944B2 (en) | 2008-02-14 | 2011-03-01 | International Business Machines Corporation | Open exchange limiting in an I/O processing system |
US8312189B2 (en) | 2008-02-14 | 2012-11-13 | International Business Machines Corporation | Processing of data to monitor input/output operations |
US8196149B2 (en) | 2008-02-14 | 2012-06-05 | International Business Machines Corporation | Processing of data to determine compatability in an input/output processing system |
US8214562B2 (en) | 2008-02-14 | 2012-07-03 | International Business Machines Corporation | Processing of data to perform system changes in an input/output processing system |
US7840717B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing a variable length device command word at a control unit in an I/O processing system |
US8166206B2 (en) | 2008-02-14 | 2012-04-24 | International Business Machines Corporation | Cancel instruction and command for determining the state of an I/O operation |
US7937507B2 (en) | 2008-02-14 | 2011-05-03 | International Business Machines Corporation | Extended measurement word determination at a channel subsystem of an I/O processing system |
US7917813B2 (en) | 2008-02-14 | 2011-03-29 | International Business Machines Corporation | Exception condition determination at a control unit in an I/O processing system |
US7840718B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing of data to suspend operations in an input/output processing log-out system |
US8117347B2 (en) * | 2008-02-14 | 2012-02-14 | International Business Machines Corporation | Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system |
US7890668B2 (en) | 2008-02-14 | 2011-02-15 | International Business Machines Corporation | Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous |
US8108570B2 (en) * | 2008-02-14 | 2012-01-31 | International Business Machines Corporation | Determining the state of an I/O operation |
US8082481B2 (en) | 2008-02-14 | 2011-12-20 | International Business Machines Corporation | Multiple CRC insertion in an output data stream |
US7941570B2 (en) | 2008-02-14 | 2011-05-10 | International Business Machines Corporation | Bi-directional data transfer within a single I/O operation |
US7908403B2 (en) * | 2008-02-14 | 2011-03-15 | International Business Machines Corporation | Reserved device access contention reduction |
US9052837B2 (en) | 2008-02-14 | 2015-06-09 | International Business Machines Corporation | Processing communication data in a ships passing condition |
US8478915B2 (en) | 2008-02-14 | 2013-07-02 | International Business Machines Corporation | Determining extended capability of a channel path |
US8055807B2 (en) * | 2008-07-31 | 2011-11-08 | International Business Machines Corporation | Transport control channel program chain linking including determining sequence order |
US7904606B2 (en) | 2008-07-31 | 2011-03-08 | International Business Machines Corporation | Transport control channel program chain linked branching |
US7937504B2 (en) | 2008-07-31 | 2011-05-03 | International Business Machines Corporation | Transport control channel program message pairing |
US8332542B2 (en) | 2009-11-12 | 2012-12-11 | International Business Machines Corporation | Communication with input/output system devices |
US8554955B2 (en) | 2010-12-17 | 2013-10-08 | International Business Machines Corporation | Systems and methods for avoiding host level busy and retry latencies |
US8677027B2 (en) | 2011-06-01 | 2014-03-18 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US9021155B2 (en) | 2011-06-01 | 2015-04-28 | International Business Machines Corporation | Fibre channel input/output data routing including discarding of data transfer requests in response to error detection |
US8583988B2 (en) | 2011-06-01 | 2013-11-12 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8364853B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8738811B2 (en) | 2011-06-01 | 2014-05-27 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8364854B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8473641B2 (en) | 2011-06-30 | 2013-06-25 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8549185B2 (en) | 2011-06-30 | 2013-10-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8346978B1 (en) | 2011-06-30 | 2013-01-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8312176B1 (en) | 2011-06-30 | 2012-11-13 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
EP2963824B1 (en) * | 2013-03-01 | 2020-08-19 | Axion Research Inc. | Data processing device and control method therefor |
US8918542B2 (en) | 2013-03-15 | 2014-12-23 | International Business Machines Corporation | Facilitating transport mode data transfer between a channel subsystem and input/output devices |
US8990439B2 (en) | 2013-05-29 | 2015-03-24 | International Business Machines Corporation | Transport mode data transfer between a channel subsystem and input/output devices |
US9720733B1 (en) * | 2015-04-28 | 2017-08-01 | Qlogic Corporation | Methods and systems for control block routing |
US10623341B2 (en) * | 2015-09-30 | 2020-04-14 | International Business Machines Corporation | Configuration of a set of queues for multi-protocol operations in a target driver |
US10426424B2 (en) | 2017-11-21 | 2019-10-01 | General Electric Company | System and method for generating and performing imaging protocol simulations |
CN112214157B (zh) * | 2019-07-10 | 2023-11-03 | 慧荣科技股份有限公司 | 主机输出输入命令的执行装置及方法及存储介质 |
US11714808B2 (en) | 2021-09-08 | 2023-08-01 | International Business Machines Corporation | Pattern search request embedded in a transport mode command word for a channel subsystem in a storage system |
Family Cites Families (213)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US625399A (en) * | 1899-05-23 | And carl werder | ||
GB1264096A (zh) | 1970-06-27 | 1972-02-16 | ||
US3693161A (en) * | 1970-07-09 | 1972-09-19 | Burroughs Corp | Apparatus for interrogating the availability of a communication path to a peripheral device |
US4004277A (en) * | 1974-05-29 | 1977-01-18 | Gavril Bruce D | Switching system for non-symmetrical sharing of computer peripheral equipment |
US3943283A (en) * | 1974-06-17 | 1976-03-09 | International Business Machines Corporation | Bidirectional single wire data transmission and wrap control |
US4080649A (en) * | 1976-12-16 | 1978-03-21 | Honeywell Information Systems Inc. | Balancing the utilization of I/O system processors |
US4207609A (en) * | 1978-05-08 | 1980-06-10 | International Business Machines Corporation | Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system |
US4380046A (en) * | 1979-05-21 | 1983-04-12 | Nasa | Massively parallel processor computer |
US4374415A (en) * | 1980-07-14 | 1983-02-15 | International Business Machines Corp. | Host control of suspension and resumption of channel program execution |
US4455605A (en) * | 1981-07-23 | 1984-06-19 | International Business Machines Corporation | Method for establishing variable path group associations and affiliations between "non-static" MP systems and shared devices |
US4497022A (en) * | 1982-10-19 | 1985-01-29 | International Business Machines Corporation | Method and apparatus for measurements of channel operation |
US4564903A (en) * | 1983-10-05 | 1986-01-14 | International Business Machines Corporation | Partitioned multiprocessor programming system |
US4779188A (en) * | 1983-12-14 | 1988-10-18 | International Business Machines Corporation | Selective guest system purge control |
US4870566A (en) * | 1984-08-27 | 1989-09-26 | International Business Machines Corp. | Scannerless message concentrator and communications multiplexer |
US4837677A (en) * | 1985-06-14 | 1989-06-06 | International Business Machines Corporation | Multiple port service expansion adapter for a communications controller |
US4760518A (en) * | 1986-02-28 | 1988-07-26 | Scientific Computer Systems Corporation | Bi-directional databus system for supporting superposition of vector and scalar operations in a computer |
JPS6336461A (ja) * | 1986-07-31 | 1988-02-17 | Pfu Ltd | 汎用チャネル制御方式 |
US4926320A (en) * | 1987-04-07 | 1990-05-15 | Nec Corporation | Information processing system having microprogram-controlled type arithmetic processing unit |
US4843541A (en) * | 1987-07-29 | 1989-06-27 | International Business Machines Corporation | Logical resource partitioning of a data processing system |
US4866609A (en) * | 1988-06-22 | 1989-09-12 | International Business Machines Corporation | Byte count handling in serial channel extender with buffering for data pre-fetch |
JPH0283757A (ja) | 1988-09-21 | 1990-03-23 | Hitachi Ltd | 通信制御システム |
US5016160A (en) * | 1988-12-15 | 1991-05-14 | International Business Machines Corporation | Computer system having efficient data transfer operations |
US5185736A (en) * | 1989-05-12 | 1993-02-09 | Alcatel Na Network Systems Corp. | Synchronous optical transmission system |
EP0412268B1 (en) * | 1989-08-11 | 1996-09-11 | International Business Machines Corporation | Apparatus for interconnecting a control unit having a parallel bus with a channel having a serial link |
EP0424618A3 (en) * | 1989-10-24 | 1992-11-19 | International Business Machines Corporation | Input/output system |
DE3938520A1 (de) * | 1989-11-21 | 1991-05-29 | Teves Gmbh Alfred | Verfahren und system zur messdatenerfassung und -auswertung |
AU650242B2 (en) * | 1989-11-28 | 1994-06-16 | International Business Machines Corporation | Methods and apparatus for dynamically managing input/output (I/O) connectivity |
JPH04649A (ja) * | 1990-04-18 | 1992-01-06 | Nec Corp | リモートチャネル装置の障害情報転送方式 |
CA2037708C (en) * | 1990-05-04 | 1998-01-20 | Richard J. Eickemeyer | General purpose compound apparatus for instruction-level parallel processors |
US5170472A (en) * | 1991-03-28 | 1992-12-08 | International Business Machines Corp. | Dynamically changing a system i/o configuration definition |
US5644712A (en) * | 1991-06-05 | 1997-07-01 | International Business Machines Corporation | Indirect addressing of channels via logical channel groups |
US5386512A (en) * | 1991-07-19 | 1995-01-31 | International Business Machines Corporation | System for deriving and testing mutual capability set after receiving updated capability from other processors and before requesting service information |
JPH0580104A (ja) * | 1991-09-20 | 1993-04-02 | Cmk Corp | モータ用プリント配線板の製造方法 |
US5388219A (en) * | 1992-03-02 | 1995-02-07 | International Business Machines Corporation | Efficient channel and control unit for host computer |
US5317739A (en) * | 1992-03-30 | 1994-05-31 | International Business Machines Corp. | Method and apparatus for coupling data processing systems |
CA2086691C (en) * | 1992-03-30 | 1997-04-08 | David A. Elko | Communicating messages between processors and a coupling facility |
US5452455A (en) * | 1992-06-15 | 1995-09-19 | International Business Machines Corporation | Asynchronous command support for shared channels for a computer complex having multiple operating systems |
US5414851A (en) * | 1992-06-15 | 1995-05-09 | International Business Machines Corporation | Method and means for sharing I/O resources by a plurality of operating systems |
US5600805A (en) * | 1992-06-15 | 1997-02-04 | International Business Machines Corporation | Pass-through for I/O channel subsystem call instructions for accessing shared resources in a computer system having a plurality of operating systems |
US5265240A (en) | 1992-07-24 | 1993-11-23 | International Business Machines Corporation | Channel measurement method and means |
US5301323A (en) * | 1992-10-30 | 1994-04-05 | International Business Machines Corp. | Data processing system including dynamic channel path management |
JP2566728B2 (ja) * | 1992-10-30 | 1996-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 論理径路スケジューリング装置及び実行方法 |
JP2840511B2 (ja) * | 1992-12-10 | 1998-12-24 | 富士通株式会社 | 磁気テープ装置を用いたサブシステムのエラー回復処理装置及び方法 |
US5526484A (en) * | 1992-12-10 | 1996-06-11 | International Business Machines Corporation | Method and system for pipelining the processing of channel command words |
US5528755A (en) * | 1992-12-22 | 1996-06-18 | International Business Machines Corporation | Invalid data detection, recording and nullification |
US5517670A (en) * | 1992-12-30 | 1996-05-14 | International Business Machines Corporation | Adaptive data transfer channel employing extended data block capability |
US5461721A (en) * | 1993-04-14 | 1995-10-24 | International Business Machines Corporation | System for transferring data between I/O devices and main or expanded storage under dynamic control of independent indirect address words (IDAWs) |
US5465359A (en) * | 1993-11-01 | 1995-11-07 | International Business Machines Corporation | Method and system for managing data and users of data in a data processing system |
US5584039A (en) * | 1993-11-08 | 1996-12-10 | International Business Machines Corporation | System for coordinating execution of multiple concurrent channel programs without host processor involvement using suspend and resume commands to control data transfer between I/O devices |
JP3528094B2 (ja) * | 1994-02-09 | 2004-05-17 | 株式会社日立製作所 | バス利用方法および記憶制御装置 |
US6769009B1 (en) | 1994-05-31 | 2004-07-27 | Richard R. Reisman | Method and system for selecting a personalized set of information channels |
US5907684A (en) * | 1994-06-17 | 1999-05-25 | International Business Machines Corporation | Independent channel coupled to be shared by multiple physical processing nodes with each node characterized as having its own memory, CPU and operating system image |
US5548791A (en) * | 1994-07-25 | 1996-08-20 | International Business Machines Corporation | Input/output control system with plural channel paths to I/O devices |
US5860022A (en) * | 1994-07-26 | 1999-01-12 | Hitachi, Ltd. | Computer system and method of issuing input/output commands therefrom |
US5564040A (en) * | 1994-11-08 | 1996-10-08 | International Business Machines Corporation | Method and apparatus for providing a server function in a logically partitioned hardware machine |
US5613163A (en) * | 1994-11-18 | 1997-03-18 | International Business Machines Corporation | Method and system for predefined suspension and resumption control over I/O programs |
US5671441A (en) * | 1994-11-29 | 1997-09-23 | International Business Machines Corporation | Method and apparatus for automatic generation of I/O configuration descriptions |
US5600793A (en) * | 1994-12-20 | 1997-02-04 | International Business Machines Corporation | Method and system of bi-directional parallel port data transfer between data processing systems |
US5680580A (en) * | 1995-02-28 | 1997-10-21 | International Business Machines Corporation | Remote copy system for setting request interconnect bit in each adapter within storage controller and initiating request connect frame in response to the setting bit |
US5742845A (en) * | 1995-06-22 | 1998-04-21 | Datascape, Inc. | System for extending present open network communication protocols to communicate with non-standard I/O devices directly coupled to an open network |
JP3225804B2 (ja) * | 1995-09-05 | 2001-11-05 | 株式会社日立製作所 | 入出力チャネルの拡張方式 |
US5996026A (en) * | 1995-09-05 | 1999-11-30 | Hitachi, Ltd. | Method and apparatus for connecting i/o channels between sub-channels and devices through virtual machines controlled by a hypervisor using ID and configuration information |
WO1997010549A1 (fr) * | 1995-09-13 | 1997-03-20 | Hitachi, Ltd. | Systeme de calcul electronique |
GB2291990A (en) | 1995-09-27 | 1996-02-07 | Memory Corp Plc | Flash-memory management system |
US5831985A (en) * | 1995-11-09 | 1998-11-03 | Emc Corporation | Method and apparatus for controlling concurrent data transmission from multiple sources in a channel communication system |
US5793983A (en) * | 1996-01-22 | 1998-08-11 | International Business Machines Corp. | Input/output channel interface which automatically deallocates failed subchannel and re-segments data block for transmitting over a reassigned subchannel |
US5812877A (en) * | 1996-03-15 | 1998-09-22 | Adaptec, Inc. | I/O command block chain structure in a memory |
US5758190A (en) * | 1996-04-09 | 1998-05-26 | International Business Machines Corporation | Control unit threshold timeout controls for software missing interrupt handlers in operating systems |
US5768620A (en) * | 1996-04-09 | 1998-06-16 | International Business Machines Corporation | Variable timeout method in a missing-interrupt-handler for I/O requests issued by the same operating system |
US5894583A (en) * | 1996-04-09 | 1999-04-13 | International Business Machines Corporation | Variable timeout method for improving missing-interrupt-handler operations in an environment having I/O devices shared by one or more systems |
US6044444A (en) * | 1996-05-28 | 2000-03-28 | Emc Corporation | Remote data mirroring having preselection of automatic recovery or intervention required when a disruption is detected |
US6108655A (en) * | 1996-07-19 | 2000-08-22 | Cisco Technology, Inc. | Method and apparatus for transmitting images and other objects over a computer network system |
SG74611A1 (en) * | 1997-02-14 | 2000-08-22 | Canon Kk | Data communication apparatus and method |
US5918028A (en) * | 1997-07-08 | 1999-06-29 | Motorola, Inc. | Apparatus and method for smart host bus adapter for personal computer cards |
US6263380B1 (en) * | 1997-10-14 | 2001-07-17 | Mitutoyo Corporation | Measurement data processing unit |
US6012104A (en) * | 1997-10-24 | 2000-01-04 | International Business Machines Corporation | Method and apparatus for dynamic extension of channel programs |
US6460087B1 (en) * | 1998-02-25 | 2002-10-01 | Kdd Corporation | Method of transferring file |
US6360282B1 (en) | 1998-03-25 | 2002-03-19 | Network Appliance, Inc. | Protected control of devices by user applications in multiprogramming environments |
US6353612B1 (en) * | 1998-06-19 | 2002-03-05 | Brocade Communications Systems, Inc. | Probing device |
US6693880B2 (en) * | 1998-09-10 | 2004-02-17 | International Business Machines Corporation | System of controlling the flow of information between senders and receivers across links being used as channels |
US6185631B1 (en) * | 1998-10-14 | 2001-02-06 | International Business Machines Corporation | Program for transferring execution of certain channel functions to a control unit and having means for combining certain commands and data packets in one sequence |
US6230218B1 (en) * | 1998-10-14 | 2001-05-08 | International Business Machines Corporation | Apparatus for transferring execution of certain channel functions to a control unit and having means for combining certain commands and data packets in one sequence |
US6343335B1 (en) * | 1998-10-29 | 2002-01-29 | International Business Machines Corporation | System for repositioning an I/O device to a predetermined position to retry a program without knowledge of which part of the program caused the retry |
US6195330B1 (en) * | 1998-11-05 | 2001-02-27 | David C. Sawey | Method and system for hit-less switching |
JP2000163354A (ja) * | 1998-11-30 | 2000-06-16 | Hitachi Ltd | データ処理システム及びディスク制御装置 |
JP3990833B2 (ja) * | 1998-12-11 | 2007-10-17 | キヤノン株式会社 | 通信制御方法及び装置 |
US6347334B1 (en) * | 1999-01-06 | 2002-02-12 | Mcdata Corporation | Self-description extended link service for networks |
US6772207B1 (en) * | 1999-01-28 | 2004-08-03 | Brocade Communications Systems, Inc. | System and method for managing fibre channel switching devices |
US6351779B1 (en) * | 1999-03-12 | 2002-02-26 | Agilent Technologies, Inc. | Extension library to standard visa library for support of complex I/O functions |
US6484217B1 (en) * | 1999-04-20 | 2002-11-19 | International Business Machines Corporation | Managing shared devices in a data processing system |
US6546435B1 (en) * | 1999-06-15 | 2003-04-08 | Matsushita Electric Works, Ltd. | Portable programming device for supervisory remote control system |
US6718139B1 (en) * | 1999-09-13 | 2004-04-06 | Ciena Corporation | Optical fiber ring communication system |
US6651125B2 (en) * | 1999-09-28 | 2003-11-18 | International Business Machines Corporation | Processing channel subsystem pending I/O work queues based on priorities |
US6584511B1 (en) * | 2000-03-24 | 2003-06-24 | Unisys Corporation | Loop initialization procedure exception handling for fibre channel transmissions |
US6658603B1 (en) * | 2000-04-17 | 2003-12-02 | International Business Machines Corporation | Method and apparatus for efficiently generating and implementing engine error codes and verifying the correctness of the implementation of the engine error codes |
US6862322B1 (en) * | 2000-05-19 | 2005-03-01 | International Business Machines Corporation | Switchable-bandwidth optical receiver |
US6609161B1 (en) * | 2000-06-01 | 2003-08-19 | Adaptec, Inc. | Two-dimensional execution queue for host adapters |
JP2002016655A (ja) * | 2000-06-28 | 2002-01-18 | Sony Corp | 伝送方法、伝送システム、伝送装置及び伝送制御装置 |
US6662319B1 (en) * | 2000-08-31 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Special encoding of known bad data |
WO2002019768A2 (en) | 2000-08-31 | 2002-03-07 | Dolby Laboratories Licensing Corporation | Method for apparatus for audio matrix decoding |
US6694390B1 (en) * | 2000-09-11 | 2004-02-17 | Intel Corporation | Managing bus transaction dependencies |
US6678748B2 (en) | 2000-09-29 | 2004-01-13 | Emc Corporation | Method for optimizing multiple input/output requests to a single logical device |
US6751683B1 (en) | 2000-09-29 | 2004-06-15 | International Business Machines Corporation | Method, system and program products for projecting the impact of configuration changes on controllers |
US6950888B1 (en) | 2000-09-29 | 2005-09-27 | International Business Machines Corporation | Method, system and program products for determining whether I/O constraints exist for controllers of a computing environment |
US6697983B1 (en) * | 2000-10-24 | 2004-02-24 | At&T Wireless Services, Inc. | Data link layer tunneling technique for high-speed data in a noisy wireless environment |
JP4068798B2 (ja) * | 2000-10-31 | 2008-03-26 | 株式会社日立製作所 | 記憶サブシステム及びi/oインタフェースの制御方法ならびに情報処理システム |
US6622268B2 (en) * | 2000-11-29 | 2003-09-16 | Intel Corp | Method and apparatus for propagating error status over an ECC protected channel |
US7127514B2 (en) * | 2000-12-28 | 2006-10-24 | Microsoft Corporation | Stateless distributed computer architecture with server-oriented state-caching objects maintained on network or client |
US6834363B2 (en) * | 2001-03-22 | 2004-12-21 | International Business Machines Corporation | Method for prioritizing bus errors |
US6898202B2 (en) | 2001-06-27 | 2005-05-24 | International Business Machines Corporation | Method, apparatus and computer program for informing a requesting device of port configuration changes in a computer network switching device |
US20030056000A1 (en) * | 2001-07-26 | 2003-03-20 | Nishan Systems, Inc. | Transfer ready frame reordering |
DE60213616T2 (de) * | 2001-08-24 | 2007-08-09 | Intel Corporation, Santa Clara | Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung |
US6754738B2 (en) * | 2001-09-28 | 2004-06-22 | International Business Machines Corporation | Low overhead I/O interrupt |
US7315911B2 (en) | 2005-01-20 | 2008-01-01 | Dot Hill Systems Corporation | Method for efficient inter-processor communication in an active-active RAID system using PCI-express links |
US6859866B2 (en) * | 2001-10-01 | 2005-02-22 | International Business Machines Corporation | Synchronizing processing of commands invoked against duplexed coupling facility structures |
US6745299B2 (en) * | 2001-11-19 | 2004-06-01 | Hewlett-Packard Development Company, L.P. | Method for evaluation of scalable symmetric multiple processor cache coherency protocols and algorithms |
US7512133B2 (en) * | 2001-12-03 | 2009-03-31 | International Business Machines Corporation | Method and apparatus for obtaining multiple port addresses by a fibre channel from a network fabric |
US7599360B2 (en) | 2001-12-26 | 2009-10-06 | Cisco Technology, Inc. | Methods and apparatus for encapsulating a frame for transmission in a storage area network |
US7085860B2 (en) | 2002-01-11 | 2006-08-01 | International Business Machines Corporation | Method and apparatus for a non-disruptive recovery of a single partition in a multipartitioned data processing system |
US7007142B2 (en) | 2002-02-19 | 2006-02-28 | Intel Corporation | Network data storage-related operations |
US7099814B2 (en) * | 2002-03-29 | 2006-08-29 | International Business Machines Corportion | I/O velocity projection for bridge attached channel |
US6898723B2 (en) * | 2002-04-01 | 2005-05-24 | Mitac International Corp. | Method for verifying clock signal frequency of computer sound interface that involves checking whether count value of counter is within tolerable count range |
US7543087B2 (en) | 2002-04-22 | 2009-06-02 | Alacritech, Inc. | Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device |
US20030208581A1 (en) * | 2002-05-02 | 2003-11-06 | Behren Paul D. Von | Discovery of fabric devices using information from devices and switches |
US7120728B2 (en) | 2002-07-31 | 2006-10-10 | Brocade Communications Systems, Inc. | Hardware-based translating virtualization switch |
US7107385B2 (en) * | 2002-08-09 | 2006-09-12 | Network Appliance, Inc. | Storage virtualization by layering virtual disk objects on a file system |
US6826661B2 (en) * | 2002-08-30 | 2004-11-30 | Veritas Operating Corporation | Methods and systems for storage architectures |
US20040054776A1 (en) * | 2002-09-16 | 2004-03-18 | Finisar Corporation | Network expert analysis process |
US7539777B1 (en) * | 2002-10-25 | 2009-05-26 | Cisco Technology, Inc. | Method and system for network time protocol forwarding |
US7080094B2 (en) * | 2002-10-29 | 2006-07-18 | Lockheed Martin Corporation | Hardware accelerated validating parser |
US7386704B2 (en) * | 2002-10-31 | 2008-06-10 | Lockheed Martin Corporation | Pipeline accelerator including pipeline circuits in communication via a bus, and related system and method |
US7202801B2 (en) * | 2002-12-11 | 2007-04-10 | Geospatial Technologies, Inc. | Method and apparatus for an automated location-based, dynamic notification system (ALDNS) |
US7277387B2 (en) * | 2003-01-30 | 2007-10-02 | Wind River Systems, Inc. | Package manager |
US7324455B2 (en) * | 2003-03-14 | 2008-01-29 | International Business Machines Corporation | Transfer of error-analysis and statistical data in a fibre channel input/output system |
US6915378B2 (en) * | 2003-04-23 | 2005-07-05 | Hypernova Technologies, Inc. | Method and system for improving the performance of a processing system |
US7085898B2 (en) * | 2003-05-12 | 2006-08-01 | International Business Machines Corporation | Coherency management for a “switchless” distributed shared memory computer system |
US7000036B2 (en) | 2003-05-12 | 2006-02-14 | International Business Machines Corporation | Extended input/output measurement facilities |
US7058735B2 (en) | 2003-06-02 | 2006-06-06 | Emulex Design & Manufacturing Corporation | Method and apparatus for local and distributed data memory access (“DMA”) control |
TWI271626B (en) * | 2003-06-17 | 2007-01-21 | Delta Electronics Inc | Data transmission method for microprocessors of programmable logic controller |
US7684401B2 (en) * | 2003-07-21 | 2010-03-23 | Qlogic, Corporation | Method and system for using extended fabric features with fibre channel switch elements |
US7124207B1 (en) * | 2003-08-14 | 2006-10-17 | Adaptec, Inc. | I2O command and status batching |
US7149823B2 (en) | 2003-08-29 | 2006-12-12 | Emulex Corporation | System and method for direct memory access from host without processor intervention wherein automatic access to memory during host start up does not occur |
CN1864377B (zh) | 2003-10-17 | 2010-09-01 | 日本电信电话株式会社 | 邮件投递系统、邮件投递方法 |
KR20050043426A (ko) * | 2003-11-06 | 2005-05-11 | 삼성전자주식회사 | 파이프라인 버스 시스템에서 커맨드 전송 방법 및 장치 |
US20050105456A1 (en) * | 2003-11-18 | 2005-05-19 | Cookson Christopher J. | Double-sided optical disc |
US7634582B2 (en) * | 2003-12-19 | 2009-12-15 | Intel Corporation | Method and architecture for optical networking between server and storage area networks |
US7564791B2 (en) * | 2003-12-29 | 2009-07-21 | Intel Corporation | Monitoring packet flows |
US7382733B2 (en) | 2004-02-12 | 2008-06-03 | International Business Machines Corporation | Method for handling reordered data packets |
US7133988B2 (en) | 2004-02-25 | 2006-11-07 | Hitachi, Ltd. | Method and apparatus for managing direct I/O to storage systems in virtualization |
US20050223291A1 (en) * | 2004-03-24 | 2005-10-06 | Zimmer Vincent J | Methods and apparatus to provide an execution mode transition |
US8171170B2 (en) * | 2004-04-30 | 2012-05-01 | Emc Corporation | Storage switch task processing synchronization |
US7240273B2 (en) * | 2004-05-13 | 2007-07-03 | Industrial Technology Research Institute | Cyclic redundancy check modification for message length detection and error detection |
US7555554B2 (en) | 2004-08-06 | 2009-06-30 | Microsoft Corporation | System and method for generating selectable extension to media transport protocol |
US7711871B1 (en) | 2004-08-30 | 2010-05-04 | Crossroads Systems, Inc. | Interface device and method for command processing |
US7443798B2 (en) * | 2004-09-03 | 2008-10-28 | Agere Systems Inc. | Transmit adaptive equalization for communication system with one or more serial data channels |
US7577772B2 (en) | 2004-09-08 | 2009-08-18 | Qlogic, Corporation | Method and system for optimizing DMA channel selection |
GB2419198A (en) | 2004-10-14 | 2006-04-19 | Hewlett Packard Development Co | Identifying performance affecting causes in a data storage system |
US7305526B2 (en) * | 2004-11-05 | 2007-12-04 | International Business Machines Corporation | Method, system, and program for transferring data directed to virtual memory addresses to a device memory |
US7398335B2 (en) | 2004-11-22 | 2008-07-08 | Qlogic, Corporation | Method and system for DMA optimization in host bus adapters |
JP4575119B2 (ja) | 2004-11-25 | 2010-11-04 | 株式会社日立製作所 | ストレージシステム |
US7164425B2 (en) | 2004-12-21 | 2007-01-16 | Qlogic Corporation | Method and system for high speed network application |
US7672323B2 (en) * | 2005-01-14 | 2010-03-02 | Cisco Technology, Inc. | Dynamic and intelligent buffer management for SAN extension |
US7526633B2 (en) | 2005-03-23 | 2009-04-28 | Qualcomm Incorporated | Method and system for encoding variable length packets with variable instruction sizes |
JP2006277583A (ja) * | 2005-03-30 | 2006-10-12 | Hitachi Ltd | データ処理システム、データ処理方法、及びプログラム |
US7970953B2 (en) | 2005-06-30 | 2011-06-28 | Intel Corporation | Serial ATA port addressing |
JP2007058646A (ja) * | 2005-08-25 | 2007-03-08 | Hitachi Ltd | データ処理システム |
US20070072543A1 (en) | 2005-09-06 | 2007-03-29 | Nokia Corporation | Enhanced signaling of pre-configured interaction message in service guide |
US7577773B1 (en) | 2005-09-09 | 2009-08-18 | Qlogic, Corporation | Method and system for DMA optimization |
JP4527640B2 (ja) * | 2005-09-15 | 2010-08-18 | 株式会社ソニー・コンピュータエンタテインメント | データ読出装置 |
JP2007122108A (ja) | 2005-10-25 | 2007-05-17 | Hitachi Ltd | セルフチェック機能を有するディスクドライブ装置を用いたストレージシステムの制御 |
US7484021B2 (en) | 2005-10-27 | 2009-01-27 | Cisco Technology, Inc. | Technique for implementing virtual fabric membership assignments for devices in a storage area network |
US20070162631A1 (en) | 2005-12-28 | 2007-07-12 | International Business Machines Corporation | Method for selectable software-hardware internet SCSI |
US7594057B1 (en) | 2006-01-09 | 2009-09-22 | Qlogic, Corporation | Method and system for processing DMA requests |
JP2007199975A (ja) | 2006-01-26 | 2007-08-09 | Hitachi Ltd | データ処理システム及びデータ処理方法 |
US7743197B2 (en) | 2006-05-11 | 2010-06-22 | Emulex Design & Manufacturing Corporation | System and method for virtualizing PCIe devices |
US9032164B2 (en) * | 2006-02-17 | 2015-05-12 | Emulex Corporation | Apparatus for performing storage virtualization |
US20080040519A1 (en) * | 2006-05-02 | 2008-02-14 | Alacritech, Inc. | Network interface device with 10 Gb/s full-duplex transfer rate |
US8381214B2 (en) | 2006-05-05 | 2013-02-19 | Microsoft Corporation | Extensible job submission |
US7826349B2 (en) | 2006-05-30 | 2010-11-02 | Intel Corporation | Connection management mechanism |
US20080043563A1 (en) * | 2006-08-15 | 2008-02-21 | International Business Machines Corporation | Flexibly controlling the transfer of data between input/output devices and memory |
US8032581B2 (en) | 2006-08-30 | 2011-10-04 | International Business Machines Corporation | Persistent information unit pacing |
US7500030B2 (en) * | 2006-08-30 | 2009-03-03 | International Business Machines Corporation | Control of information units in fibre channel communications |
US7500023B2 (en) * | 2006-10-10 | 2009-03-03 | International Business Machines Corporation | Facilitating input/output processing by using transport control words to reduce input/output communications |
US7502873B2 (en) * | 2006-10-10 | 2009-03-10 | International Business Machines Corporation | Facilitating access to status and measurement data associated with input/output processing |
US7797414B2 (en) * | 2007-01-31 | 2010-09-14 | International Business Machines Corporation | Establishing a logical path between servers in a coordinated timing network |
US8451809B2 (en) * | 2007-04-13 | 2013-05-28 | Hart Communication Foundation | Wireless gateway in a process control environment supporting a wireless communication protocol |
US7765336B2 (en) | 2007-06-11 | 2010-07-27 | Emulex Design & Manufacturing Corporation | Autonomous mapping of protected data streams to fibre channel frames |
US8020074B2 (en) * | 2007-08-24 | 2011-09-13 | Datadirect Networks, Inc. | Method for auto-correction of errors in a RAID memory system |
US8196149B2 (en) | 2008-02-14 | 2012-06-05 | International Business Machines Corporation | Processing of data to determine compatability in an input/output processing system |
US8312189B2 (en) * | 2008-02-14 | 2012-11-13 | International Business Machines Corporation | Processing of data to monitor input/output operations |
US7908403B2 (en) | 2008-02-14 | 2011-03-15 | International Business Machines Corporation | Reserved device access contention reduction |
US8117347B2 (en) * | 2008-02-14 | 2012-02-14 | International Business Machines Corporation | Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system |
US7840718B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing of data to suspend operations in an input/output processing log-out system |
US7840717B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing a variable length device command word at a control unit in an I/O processing system |
US8176222B2 (en) | 2008-02-14 | 2012-05-08 | International Business Machines Corporation | Early termination of an I/O operation in an I/O processing system |
US8166206B2 (en) * | 2008-02-14 | 2012-04-24 | International Business Machines Corporation | Cancel instruction and command for determining the state of an I/O operation |
US8095847B2 (en) | 2008-02-14 | 2012-01-10 | International Business Machines Corporation | Exception condition handling at a channel subsystem in an I/O processing system |
US8214562B2 (en) * | 2008-02-14 | 2012-07-03 | International Business Machines Corporation | Processing of data to perform system changes in an input/output processing system |
US7890668B2 (en) | 2008-02-14 | 2011-02-15 | International Business Machines Corporation | Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous |
US8082481B2 (en) | 2008-02-14 | 2011-12-20 | International Business Machines Corporation | Multiple CRC insertion in an output data stream |
US9052837B2 (en) * | 2008-02-14 | 2015-06-09 | International Business Machines Corporation | Processing communication data in a ships passing condition |
US7917813B2 (en) | 2008-02-14 | 2011-03-29 | International Business Machines Corporation | Exception condition determination at a control unit in an I/O processing system |
US7899944B2 (en) | 2008-02-14 | 2011-03-01 | International Business Machines Corporation | Open exchange limiting in an I/O processing system |
US8478915B2 (en) * | 2008-02-14 | 2013-07-02 | International Business Machines Corporation | Determining extended capability of a channel path |
US7941570B2 (en) | 2008-02-14 | 2011-05-10 | International Business Machines Corporation | Bi-directional data transfer within a single I/O operation |
US7937507B2 (en) * | 2008-02-14 | 2011-05-03 | International Business Machines Corporation | Extended measurement word determination at a channel subsystem of an I/O processing system |
US8001298B2 (en) | 2008-02-14 | 2011-08-16 | International Business Machines Corporation | Providing extended measurement data in an I/O processing system |
US7904605B2 (en) * | 2008-02-14 | 2011-03-08 | International Business Machines Corporation | Computer command and response for determining the state of an I/O operation |
US8108570B2 (en) * | 2008-02-14 | 2012-01-31 | International Business Machines Corporation | Determining the state of an I/O operation |
GB2460841B (en) | 2008-06-10 | 2012-01-11 | Virtensys Ltd | Methods of providing access to I/O devices |
US7983257B2 (en) | 2008-07-18 | 2011-07-19 | Emulex Design & Manufacturing Corporation | Hardware switch for hypervisors and blade servers |
US20100064072A1 (en) | 2008-09-09 | 2010-03-11 | Emulex Design & Manufacturing Corporation | Dynamically Adjustable Arbitration Scheme |
JP5107880B2 (ja) | 2008-12-10 | 2012-12-26 | 株式会社日立製作所 | データ転送処理装置及び方法 |
-
2006
- 2006-10-10 US US11/548,060 patent/US7500023B2/en active Active
-
2007
- 2007-07-19 CN CNB2007101370519A patent/CN100568203C/zh active Active
-
2009
- 2009-02-25 US US12/392,246 patent/US7840719B2/en active Active
-
2010
- 2010-11-15 US US12/946,514 patent/US8140713B2/en active Active
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103597459A (zh) * | 2011-06-10 | 2014-02-19 | 国际商业机器公司 | 使用扩展异步数据移动器间接数据地址字 |
US9122573B2 (en) | 2011-06-10 | 2015-09-01 | International Business Machines Corporation | Using extended asynchronous data mover indirect data address words |
US9164882B2 (en) | 2011-06-10 | 2015-10-20 | International Business Machines Corporation | Chaining move specification blocks |
US9372640B2 (en) | 2011-06-10 | 2016-06-21 | International Business Machines Corporation | Configure storage class memory command |
US9411737B2 (en) | 2011-06-10 | 2016-08-09 | International Business Machines Corporation | Clearing blocks of storage class memory |
US9418006B2 (en) | 2011-06-10 | 2016-08-16 | International Business Machines Corporation | Moving blocks of data between main memory and storage class memory |
CN103597459B (zh) * | 2011-06-10 | 2016-08-17 | 国际商业机器公司 | 执行开始子通道指令的方法和系统 |
US9477417B2 (en) | 2011-06-10 | 2016-10-25 | International Business Machines Corporation | Data returned responsive to executing a start subchannel instruction |
US9747033B2 (en) | 2011-06-10 | 2017-08-29 | International Business Machines Corporation | Configure storage class memory command |
US10013256B2 (en) | 2011-06-10 | 2018-07-03 | International Business Machines Corporation | Data returned responsive to executing a start subchannel instruction |
US10387040B2 (en) | 2011-06-10 | 2019-08-20 | International Business Machines Corporation | Configure storage class memory command |
US11163444B2 (en) | 2011-06-10 | 2021-11-02 | International Business Machines Corporation | Configure storage class memory command |
Also Published As
Publication number | Publication date |
---|---|
CN100568203C (zh) | 2009-12-09 |
US8140713B2 (en) | 2012-03-20 |
US20110060848A1 (en) | 2011-03-10 |
US20080147889A1 (en) | 2008-06-19 |
US7500023B2 (en) | 2009-03-03 |
US20090172203A1 (en) | 2009-07-02 |
US7840719B2 (en) | 2010-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100568203C (zh) | 利于处理环境的输入/输出处理的方法和系统 | |
CN100573485C (zh) | 促进处理环境的输入/输出处理的方法和系统 | |
CN101946241B (zh) | 处理控制单元和通道子系统之间的通信的方法和装置 | |
CN101939730B (zh) | 用于单个i/o操作内的双向数据传输的方法和装置 | |
CN101946242B (zh) | 一种提供间接数据寻址的方法和系统 | |
US8082481B2 (en) | Multiple CRC insertion in an output data stream | |
CN101939731B (zh) | 处理变长设备命令字的系统和方法 | |
CN101971154B (zh) | 用于确定输入/输出操作的状态的方法和系统 | |
CN101946246B (zh) | 促进主计算机系统处的i/o操作的i/o处理的方法和系统 | |
CN100334567C (zh) | 冗余外部储存虚拟化计算机系统 | |
US7937507B2 (en) | Extended measurement word determination at a channel subsystem of an I/O processing system | |
US20150134874A1 (en) | Determining extended capability of a channel path | |
CN101946244A (zh) | 降低保留设备的访问竞争 | |
JP2006252239A (ja) | ファイル制御装置 | |
CN100583048C (zh) | 传送数据的方法和系统 | |
TW541493B (en) | Method and apparatus for performing drive-based updates to disk array controllers | |
JPS60142417A (ja) | デ−タ処理装置における入出力制御方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |