用于存储器访问请求的重定向的方法和系统的制作方法

文档序号:6554457阅读:203来源:国知局
专利名称:用于存储器访问请求的重定向的方法和系统的制作方法
技术领域
本公开涉及一种用于重定向(redirect)存储器访问请求的方法、系统和产品。
背景技术
在主存储器控制器失效时,主机服务器可以继续对备用或辅助存储器控制器执行数据访问操作。例如,在IBM*HyperSwap*配置中,主机服务器可以访问主存储器控制器和辅助存储器控制器。主机服务器可以将所有存储器访问都定向到主存储器控制器,并且这两个存储器控制器可以同步操作以确保在两个存储器控制器中存储相同的数据。主机服务器上的HyperSwap软件能够确定主存储器控制器何时失效,并且能够自动地将所有存储器访问都重定向到辅助存储器控制器。
主存储器控制器和辅助存储器控制器可以使用对等远程复制(PPRC,Peer-to-Peer Remote Copy)功能将数据从主存储器控制器复制到辅助存储器控制器。在用于PPRC的同步型操作(即,同步PPRC)中,将由主机应用程序在主存储器控制器对本地存储体(storage volume)进行的更新同步投影到(shadowed onto)辅助存储器控制器的远程存储体上。由于同步PPRC是一种同步复制方案,所以在认为对主机应用程序完成写操作之前确保了双方副本(本地和远程存储体)上的写更新。在同步PPRC中,直到在本地和远程存储体中都同步进行了更新时,主机应用程序才获得“写完成”状态。因此,以主机服务器上的主机应用程序的观点来看,在辅助存储器控制器的远程存储体上的数据等于在主存储器控制器的本地存储体上的数据,并且可以用辅助存储器控制器来替换失效的主存储器控制器。

发明内容
提供一种方法、系统、和产品,其中控制器接收来自多个主机之一的请求。控制器确定是否可以操作连接到控制器的主存储器控制单元。响应确定可以操作主存储器控制单元,通过访问主存储器控制单元来生成响应。响应确定不可以操作主存储器控制单元,通过访问辅助存储器控制单元来生成响应,其中将数据从主存储器控制单元同步复制到辅助存储器控制单元。
在某些实施例中,控制器包括高速缓冲存储器,其中确定是否在控制器中使能写高速缓存。在通过访问辅助存储器控制单元生成响应之前,用高速缓冲存储器的内容来更新辅助存储器控制单元。
在附加实施例中,控制器包括高速缓冲存储器,其中在控制器中使能写高速缓存,其中所述请求为写请求,并且其中响应接收所述写请求,将数据写入高速缓冲存储器。对从其中接收到写请求的所述多个主机之一进行响应,其中所述响应表示已经执行了写请求,并且其中响应确定可以操作主存储器控制单元,将写入高速缓冲存储器的数据周期性地降级到主存储器控制单元,并且响应确定不可以操作主存储器控制单元,将写入高速缓冲存储器的数据周期性地降级到辅助存储器控制单元。
在另外实施例中,所述多个主机的操作无需任何向所述多个主机指示哪个存储器控制单元满足来自主机的请求的通知。
在更进一步实施例中,控制器包括高速缓冲存储器,其中使能写高速缓存,其中所述请求为读请求,并且其中响应确定可以从高速缓冲存储器中满足读请求,从高速缓冲存储器中满足读请求。响应确定不能从高速缓冲存储器中满足读请求,如果可以操作主存储器控制单元,则从高速缓冲存储器中满足读请求。如果不可以操作主存储器控制单元,则用高速缓冲存储器的内容来更新辅助存储器控制单元。在更新了辅助存储器控制单元之后,从辅助存储器控制单元满足读请求。
在更进一步实施例中,在已经将对主存储器控制单元的更新复制到辅助存储器控制单元之后,通过主存储器控制单元将完成通知发送给控制器,从而在主存储器控制单元与辅助存储器控制单元之间同步复制数据,其中在同步复制了所述数据之后,主存储器控制单元和辅助存储器控制单元具有相同的数据。
在附加实施例中,在多个主机上执行多个操作系统,其中控制器中的单个应用程序使多个主机能够访问存储在主存储器控制单元和辅助存储器控制单元中的数据,并且其中如果可以操作主存储器控制单元,则主存储器控制单元可用于处理多个主机所生成的数据传送请求。
在另外的附加实施例中,所述控制器是用于控制主存储器控制单元和辅助存储器控制单元中的存储体的存储区域网存储体控制器,其中所述主存储器控制单元是主存储器控制器,其中所述辅助存储器控制单元是辅助存储器控制器,其中存储区域网存储体控制器上的重定向应用程序执行以下步骤接收、确定、通过访问所述主存储器控制器生成响应、和通过访问所述辅助存储器控制器生成响应。


现在参照附图,其中相同的附图标记在全文中表示相应的部件图1示出了根据某些实施例的计算环境的方框图;图2示出了根据某些实施例的、用于当在重定向控制器中禁能写高速缓存时重定向存储器访问的操作;图3示出了根据某些实施例的、用于当在重定向控制器中使能写高速缓存时重定向存储器访问的操作;图4示出了在其中实施某些实施例的示例性系统。
具体实施例方式
在以下描述中参照其形成本发明的一部分并示出了几个实施例的附图。需要理解的是,可以采用其它的实施例,并且可以进行结构上和操作上的改变。
图1示出了计算环境100,其包括多个主机102a、102b...102n、重定向控制器104、主存储器控制器106和辅助存储器控制器108。在某些实施例中,通过数据接口通道110a、110b...110n将主机102a...102n连接到重定向控制器104,并且通过数据接口通道112、114将重定向控制器104连接到主存储器控制器104和辅助存储器控制器106。数据接口通道110a...110n、112、114可以包括企业系统连接(ESCON)*通道或任何其它合适的数据接口机构,诸如光纤通道、存储区域网(SAN)互连等。
主机102a...102n可以包括任何具有本领域中目前已知的装置(诸如个人计算机、工作站、服务器、主机、手提式计算机、掌上计算机、电话设备、刀口式计算机(blade computer)、网络设备等)的适当的计算设备。主机102a...102n可以包括任何适当的操作系统(未示出),诸如IBM OS/390*操作系统、Microsoft*Windows*操作系统等。主机102a...102n也可以包括将输入/输出(I/O)请求发送到重定向控制器104的主机应用程序116a、116b...116n。
重定向控制器104可以包括任何具有本领域中目前已知的装置(诸如计算设备、控制器、IBM TotalStorage*SAN存储体控制器、设备等)的适当设备。重定向控制器104可以包括重定向应用程序118和高速缓冲存储器120。可以在软件、硬件、固件、或它们的任一结合中执行重定向应用程序118。
重定向应用程序118接收来自主机应用程序116a...116n的I/O请求,并且可以通过访问主存储器控制器106响应所接收的I/O请求。如果在主存储器控制器106无效的情况下,重定向应用程序118可以通过访问辅助存储器控制器108响应所接收的I/O请求。
主存储器控制器106和辅助存储器控制器108可以在彼此同步通信距离之内。两个存储器控制器之间的同步通信距离是等于在两个存储器控制器之间可进行同步通信的距离。存储器控制器106、108(即,存储器控制单元)控制存储体(未示出),其中可以将存储体配置成直接存取存储设备(DASD)、一个或多个独立磁盘冗余阵列(RAID)、简单磁盘簇(JBOD)、或本领域中已知的任一其它数据存储库系统。
数据接口通道122可以将主存储器控制器106连接到辅助存储器控制器108。主存储器控制器106中的数据可以被同步复制(附图标记124)到辅助存储器控制器108。由于同步复制,所以直到将对主存储器控制器106所控制的数据的修改复制到辅助存储器控制器108中才完成来自重定向应用程序118的对主存储器控制器106的请求。在某些实施例中,同步复制数据的同步复制操作124可以是同步PPRC操作。
图1示出了某些实施例,其中重定向控制器104上的重定向应用程序118将来自主机应用程序116a...116n的I/O请求重定向到可操作的主存储器控制器106。如果主存储器控制器106不可操作,则重定向应用程序118将来自主机应用程序116a...116n的I/O请求重定向到辅助存储器控制器108。在某些实施例中,在多个主机102a...102n上执行多个操作系统,并且在重定向控制器104中的单个重定向应用程序118使多个主机102a...102n能够访问存储在主存储器控制器106和辅助存储器控制器108中的数据。
图2示出了根据某些实施例的用于当在重定向控制器104中禁能写高速缓存时重定向存储器访问的操作。在某些实施例中,可以在重定向应用程序118中执行所述操作。
在某些实施例中,在重定向控制器104中禁能写高速缓存。可以通过重定向应用程序118或其它应用程序来停止写高速缓存。当禁能写高速缓存时,重定向应用程序118通过写入可操作的主存储器控制器106来执行从主机应用程序116a...116n接收到的写操作。如果主存储器控制器106不可操作,则重定向应用程序118通过写入辅助存储器控制器108来执行写操作。当禁能写高速缓存时,高速缓冲存储器120不用于执行写操作。
控制处理开始于方框200,其中当确定禁能写高速缓存时,重定向应用程序118接收来自主机应用程序116a...116n之一的I/O请求。重定向应用程序118确定(在方框202)是否可以操作主存储器控制器116,即,主存储器控制器106是否已经无效。
如果重定向应用程序118确定(在方框202)可以操作主存储器控制器106,则重定向应用程序118将I/O请求发送(在方框204)给主存储器控制器106用以执行。例如,写请求会将数据写入主存储器控制器106所控制的存储体,而读请求会将数据从主存储器控制器106所控制的存储体中读出。
重定向应用程序118接收(在方框206)来自主存储器控制器106的响应,其中该响应是所发送的请求的执行结果。例如,该响应会提供读请求所请求的数据。由于主存储器控制器106与辅助存储器控制器108是同步PPRC关系,所以只有在主存储器控制器106和辅助存储器控制器108中的数据相同后重定向应用程序118才接收该响应。
重定向应用程序118将响应发送(在方框208)给从其中重定向应用程序118接收到I/O请求的主机应用程序。控制处理返回至方框200,其中重定向应用程序118接收来自主机应用程序116a...116n之一的另一I/O请求。在某些实施例中,可能已经在重定向控制器104中缓冲了来自主机应用程序116a...116n的I/O请求用以处理,并且控制前进至方框202。
如果重定向应用程序118确定(在方框202)不可以操作主存储器控制器106,则重定向应用程序118将I/O请求发送(在方框210)给辅助存储器控制器108用以执行。辅助存储器控制器108处理I/O请求,并且重定向应用程序118接收(在方框212)来自辅助存储器控制器108的响应。由于在主存储器控制器无效的情况下,辅助存储器控制器108具有与主存储器控制器106相同的数据,所以来自辅助存储器控制器108的响应是正确的。重定向应用程序118将接收到的响应发送(在方框208)给从其中重定向应用程序118接收到I/O请求的主机应用程序,并且控制返回至方框200以处理来自多个主机应用程序116a...116n的附加I/O请求。在某些选择性实施例中,甚至在主存储器控制器106还没有无效时也可以将I/O请求发送给辅助存储器控制器108。例如,在某些实施例中,在对主存储器控制器106进行维护或其它动作时,在切换回主存储器控制器106之前的一段时间,可以从辅助存储器控制器108提供数据服务。当主存储器控制器可用于处理由一个或多个主机应用程序116a...116n生成的I/O请求时,可以认为主存储器控制器106是可操作的。
图2示出了重定向应用程序118接收来自多个主机102a...102n的I/O请求并在主存储器控制器106可操作时将I/O请求定向到主存储器控制器106以执行的实施例。如果不可以操作主存储器控制器106,则重定向应用程序118将I/O请求定向到辅助存储器控制器108以执行,其中在主存储器控制器106无效的情况下,辅助存储器控制器108与主存储器控制器106是同步PPRC关系。
图3示出了根据某些实施例的用于当在重定向控制器104中使能写高速缓存时重定向存储器访问的操作。在某些实施例中,可以在重定向应用程序118中执行该操作。
在某些实施例中,在重定向控制器104中使能写高速缓存。可以通过重定向应用程序118或其它应用程序来执行写高速缓存的使能。当使能写高速缓存时,重定向应用程序118可以响应写请求将数据写入高速缓冲存储器120,并且可以根据高速缓冲存储器120中存储的数据响应来自主机应用程序116a...116n的某些I/O请求。如果重定向应用程序118被禁能根据高速缓冲存储器120中存储的数据来响应I/O请求,则重定向应用程序118可以将请求转发到存储器控制器。将高速缓冲存储器120以周期性间隔降级到重定向应用程序118所使用的存储器控制器以满足I/O请求。将高速缓冲存储器120降级到存储器控制器可以包括将高速缓冲存储器120的内容复制或移动到存储器控制器所控制的存储体。使能写高速缓存会导致更快地响应来自主机102a...102n的I/O请求,因为相对于保护来自存储器控制器106、108的数据而言,当在高速缓冲存储器120中存在数据时会更快地生成响应。
控制开始于方框300,其中当确定使能写高速缓存时,重定向应用程序118接收来自多个主机应用程序116a...116n之一的I/O请求。重定向应用程序118确定(在方框302)I/O请求是否是写请求。如果是,则重定向应用程序118将对应于写请求的数据写入(在方框304)高速缓冲存储器120,并且控制处理返回至方框300,其中处理来自主机102a...102n的下一个I/O请求。周期性地(附图标记306),重定向应用程序118或某个其它的应用程序执行降级操作(在方框308),其中将高速缓冲存储器120的一些或所有内容写入重定向应用程序118将I/O请求转发给其以执行的存储器控制器。
如果重定向应用程序118确定(在方框302)I/O请求不是写请求,则重定向应用程序118确定(在方框310)是否可以从高速缓冲存储器120中满足该请求,即,高速缓冲存储器120中是否存在用于处理该请求的数据。如果可以,重定向应用程序118通过使用存储在高速缓冲存储器120中的数据来生成(在方框312)对从其中接收到I/O请求的主机应用程序的响应。因此,通过使用高速缓冲存储器120满足了其数据在高速缓冲存储器120中可用的读请求。
如果重定向应用程序118确定(在方框310)不能从高速缓冲存储器120中满足I/O请求,则重定向应用程序118确定(在方框314)主存储器控制器106是否是可操作的。
如果重定向应用程序118确定(在方框314)主存储器控制器106是可操作的,则重定向应用程序118将I/O请求发送(在方框316)给主存储器控制器106用以执行。
重定向应用程序118接收(在方框318)来自主存储器控制器106的响应,其中该响应是请求的执行结果。重定向应用程序118将该响应发送(在方框320)给从其中重定向应用程序118接收到I/O请求的主机应用程序。由于主存储器控制器106与辅助存储器控制器108是同步PPRC关系,所以只有主存储器控制器106和辅助存储器控制器108中的数据相同时重定向应用程序118才接收该响应。控制返回至方框300,其中重定向应用程序118接收来自主机应用程序116a...116n之一的另一I/O请求。
如果重定向应用程序118确定(在方框314)主存储器控制器106是不可操作的,则重定向应用程序118用高速缓冲存储器120的内容来更新(在方框322)辅助存储器控制器108。尽管在主存储器控制器106无效时主存储器控制器106和辅助存储器控制器108是同步PPRC关系,但是可能还没有将高速缓冲存储器120中的数据降级到主存储器控制器106。因此,在辅助存储器控制器108处理I/O请求之前,应该用高速缓冲存储器120中的内容来更新辅助存储器控制器108的存储体。
重定向应用程序118将I/O请求发送(在方框324)给辅助存储器控制器108用以执行。辅助存储器控制器108处理I/O请求,并且重定向应用程序118接收(在方框326)来自辅助存储器控制器108的响应。由于在主存储器控制器106无效时,辅助存储器控制器108具有与主存储器控制器106相同的数据和高速缓冲存储器120的内容,所以来自辅助存储器控制器108的响应是正确的。重定向应用程序118将接收到的响应发送(在方框320)给从其中重定向应用程序118接收到I/O请求的主机应用程序,并且控制返回至方框300用以处理来自多个主机应用程序116a...116n的附加I/O请求。
图3示出了重定向控制器104包括高速缓冲存储器120和在重定向控制器104中使能写高速缓存的实施例。不仅主存储器控制器106和辅助存储器控制器108要保持同步PPRC关系,而且在主存储器控制器106无效的情况下,在将I/O请求发送给辅助存储器控制器108用以执行之前,用高速缓冲存储器120的内容来更新辅助存储器控制器108。
在某些实施例中,当无效的主存储器控制器106变得可操作时,存储器控制器106、108可以将来自辅助存储器控制器108的任何更新数据同步复制回主存储器控制器106,然后复制控制器104可以再次开始使用主存储器控制器106以满足I/O请求。
某些实施例允许通过单个复制控制器104来同步处理多个主机102a...102n,其中单个复制控制器104将来自多个主机102a...102n的I/O请求重定向到存储器控制器106、108。因此,对于多个主机102a...102n,不需要适用于不同操作系统的多个版本的重定向应用程序118。即使主机102a...102n上的操作系统相同,没有复制控制器104,每个主机也需要安装应用程序以直接通过存储器控制器106、108执行I/O请求。因此,某些实施例确保了单个复制应用程序118可以处理来自多个主机102a...102n的I/O请求。在某些实施例中,重定向应用程序118上安装的单个程序就足以通过存储器控制器106、108来执行I/O操作。
在某些实施例中,多个主机102a...102n无需接收任何指示哪个存储器控制器106、108满足来自多个主机102a...102n的I/O请求的通知就可以操作。因此,是通过重定向控制器104而不是通过多个主机102a...102n来处理主存储器控制器106的无效。
在某些实施例中,重定向控制器104是一种专用设备,诸如IBMTotalStorage SAN存储体控制器。在某些实施例中,相对于每个主机通过存储器控制器106、108直接执行I/O操作的计算环境,这样的专用设备可以提高计算环境100的性能。
某些实施例甚至在主存储器控制器106已经无效时还提供用于继续接收和满足来自多个主机102a...102n的所有数据访问的复制控制器104。根据是否在复制控制器104中使能写高速缓存,复制控制器104可以执行不同的操作。多个主机102a...102n不必知道如何从主存储器控制器106的无效中恢复。因此,即使在存储器控制器无效的情况下,无需对多个主机102a...102n中的任何一个进行重新配置。
附加实施例细节可以将所述技术实施为包含软件、固件、微代码、硬件和/或它们的任一结合的方法、装置或产品。这里所用的术语“产品”是指电路(例如集成电路片、可编程门阵列(PGA)、ASIC等)和/或计算机可读介质(例如诸如硬磁盘驱动器、软磁盘、磁带等的磁存储介质)、光存储器(例如CD-ROM、DVD-ROM、光盘等)、易失性和非易失性存储器(例如电可擦可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、固件、可编程逻辑等)中执行的程序指令、代码和/或逻辑。可以通过诸如处理器等的机器来访问和执行计算机可读介质中的代码。在某些实施例中,可以进一步通过传输介质,或通过网络从文件服务器来访问其中体现实施例的代码。在这些情况下,实施代码的产品可以包括传输介质,诸如网络传输线、无线传输介质、通过空间传播的信号、无线电波、红外信号等。当然,本领域的技术人员应该认识到在不超过本实施例的范围的情况下可以进行许多修改,并且产品可以包括本领域中公知的任何信息承载媒体。例如,产品包括已经存储有指令的存储介质,其中所述指令在由机器执行时导致操作被执行。
图4示出了实施了某些实施例的系统400的方框图。在某些实施例中,可以根据系统400来实施重定向控制器104、主机102a...102n、和存储器控制器106、108。系统400可以包括在某些实施例中具有处理器404的电路402。系统400还可以包括存储器406(例如,诸如RAM的易失性存储器)和存储器408。在重定向控制器104、主机102a...102n、和存储器控制器106、108中可以或不可以找到系统400的某些元件。存储器408可以包括非易失性存储器(例如,EEPROM、ROM、PROM、闪存、固件、可编程逻辑等)、磁盘驱动器、光盘驱动器、磁带驱动器等。存储器408可以包括内部存储器、附属存储器和/或网络可访问存储器。系统400可以包括程序逻辑410,程序逻辑410包括可以装入存储器406且由处理器404或电路402执行的代码412。在某些实施例中,可以将包含代码412的程序逻辑410存储在存储器408中。在某些其它的实施例中,可以在电路402中实施程序逻辑410。因此,尽管图4示出了独立于其它元件的程序逻辑410,但是也可以在存储器406和/或电路402中实施程序逻辑410。
可以将某些实施例针对一种用于通过个人或自动处理将计算机可读代码并入计算系统来部署计算指令的方法,其中与计算系统相结合的代码能够执行所述实施例的操作。
可以并行地也可以顺序地执行图2、3中至少某些操作。在选择性实施例中,可以以不同的顺序执行、修改或删除某些操作。
此外,为了举例说明,已经在独立模块中描述了许多软件、硬件、和固件部件。可以将这些部件集成为较少数的部件,或者将这些部件划分为较多数的部件。另外,可以通过其它的部件来执行由特定部件执行的所述某些操作。
附图1-4所示或所涉及的数据结构和部件被描述为具有特定类型的信息。在选择性实施例中,可以以不同的方式来构造数据结构和部件,它们可以具有比附图中所示或所涉及的数据结构和部件更少、更多或不同的领域或不同的功能。
因此,已经给出了实施例的以上描述以进行解释和说明。其并不是详尽的,并且不是为了将实施例限制为所公开的明确形式。根据以上示教可以进行各种修改和变化。
*IBM、ESCON、HyperSwap、TotalStorage和OS/390是国际商用机器公司的商标或注册商标。
*Microsoft和Windows是微软公司的商标或注册商标。
权利要求
1.一种方法,包括在控制器接收来自多个主机之一的请求;通过控制器确定是否可以操作连接到所述控制器的主存储器控制单元;响应确定可以操作所述主存储器控制单元,通过访问所述主存储器控制单元来生成响应;和响应确定不可以操作所述主存储器控制单元,通过访问辅助存储器控制单元来生成响应,其中将数据从所述主存储器控制单元同步复制到所述辅助存储器控制单元。
2.如权利要求1所述的方法,其中所述控制器包括高速缓冲存储器,并且其中所述方法进一步包括以下步骤确定是否在所述控制器中使能写高速缓存;和在通过访问所述辅助存储器控制单元生成所述响应之前,用所述高速缓冲存储器的内容来更新所述辅助存储器控制单元。
3.如权利要求1所述的方法,其中所述控制器包括高速缓冲存储器,其中在所述控制器中使能写高速缓存,其中所述请求为写请求,并且其中所述方法进一步包括响应接收所述写请求,将所述数据写入所述高速缓冲存储器;和对从其中接收到所述写请求的所述多个主机之一进行响应,所述响应表示已经执行了所述写请求,其中(i)响应确定可以操作所述主存储器控制单元,将写入所述高速缓冲存储器的数据周期性地降级到所述主存储器控制单元;和(ii)响应确定不可以操作所述主存储器控制单元,将写入所述高速缓冲存储器的数据周期性地降级到所述辅助存储器控制单元。
4.如权利要求1所述的方法,其中所述多个主机的操作无需任何向所述多个主机指示哪个存储器控制单元满足来自主机的请求的通知。
5.如权利要求1所述的方法,其中所述控制器包括高速缓冲存储器,其中使能写高速缓存,其中所述请求为读请求,并且其中所述方法进一步包括响应确定可以从所述高速缓冲存储器中满足所述读请求,从所述高速缓冲存储器中满足所述读请求;响应确定不可以从所述高速缓冲存储器中满足所述读请求,如果可以操作所述主存储器控制单元,则从所述高速缓冲存储器中满足所述读请求;如果不可以操作所述主存储器控制单元,则用所述高速缓冲存储器的内容来更新所述辅助存储器控制单元;和在更新了所述辅助存储器控制单元之后,从所述辅助存储器控制单元中满足读请求。
6.如权利要求1所述的方法,其中通过以下步骤在所述主存储器控制单元与所述辅助存储器控制单元之间同步复制数据在已经将对所述主存储器控制单元的更新复制到所述辅助存储器控制单元之后,通过所述主存储器控制单元将完成通知发送给所述控制器,其中在同步复制了所述数据之后,所述主存储器控制单元和所述辅助存储器控制单元具有相同的数据。
7.如权利要求1所述的方法,其中在所述多个主机上执行多个操作系统,并且其中所述控制器中的单个应用程序使所述多个主机能够访问存储在所述主存储器控制单元和所述辅助存储器控制单元中的数据,并且其中如果可以操作所述主存储器控制单元,则所述主存储器控制单元可用于处理所述多个主机所生成的数据传送请求。
8.如权利要求1所述的方法,其中所述控制器是用于控制所述主存储器控制单元和所述辅助存储器控制单元中的存储体的存储区域网存储体控制器,其中所述主存储器控制单元是主存储器控制器,其中所述辅助存储器控制单元是辅助存储器控制器,其中所述存储区域网存储体控制器上的重定向应用程序执行以下步骤接收、确定、通过访问所述主存储器控制器生成响应、和通过访问所述辅助存储器控制器生成响应。
9.一种系统,包括存储器;和连接到所述存储器的处理器,其中所述处理器能够执行操作,所述操作包括(i)接收来自多个主机之一的请求;(ii)确定是否可以操作主存储器控制单元;(iii)响应确定可以操作所述主存储器控制单元,通过访问所述主存储器控制单元来生成响应;和(iv)响应确定不可以操作所述主存储器控制单元,通过访问辅助存储器控制单元来生成响应,其中将数据从所述主存储器控制单元同步复制到所述辅助存储器控制单元。
10.如权利要求9所述的系统,进一步包括高速缓冲存储器,并且其中所述操作进一步包括(i)确定是否使能写高速缓存;和(ii)在通过访问所述辅助存储器控制单元生成所述响应之前,用所述高速缓冲存储器的内容来更新所述辅助存储器控制单元。
11.如权利要求9所述的系统,进一步包括高速缓冲存储器,其中使能写高速缓存,其中所述请求为写请求,并且其中所述操作进一步包括(a)响应接收所述写请求,将所述数据写入所述高速缓冲存储器;和(b)对从其中接收到所述写请求的所述多个主机之一进行响应,所述响应表示已经执行了所述写请求,其中(i)响应确定可以操作所述主存储器控制单元,将写入所述高速缓冲存储器的数据周期性地降级到所述主存储器控制单元;和(ii)响应确定不可以操作所述主存储器控制单元,将写入所述高速缓冲存储器的数据周期性地降级到所述辅助存储器控制单元。
12.如权利要求9所述的系统,其中所述多个主机的操作无需任何向所述多个主机指示哪个存储器控制单元满足来自主机的请求的通知。
13.如权利要求9所述的系统,进一步包括高速缓冲存储器,其中使能写高速缓存,其中所述请求为读请求,并且其中所述操作进一步包括(a)响应确定可以从所述高速缓冲存储器中满足所述读请求,从所述高速缓冲存储器中满足所述读请求;(b)响应确定不能从所述高速缓冲存储器中满足所述读请求,如果可以操作所述主存储器控制单元,则从所述主存储器控制单元中满足所述读请求;(c)如果不可以操作所述主存储器控制单元,则用所述高速缓冲存储器的内容来更新所述辅助存储器控制单元;和(d)在更新了所述辅助存储器控制单元之后,从所述辅助存储器控制单元中满足读请求。
14.如权利要求9所述的系统,其中通过以下步骤在所述主存储器控制单元与所述辅助存储器控制单元之间同步复制数据在已经将对所述主存储器控制单元的更新复制到所述辅助存储器控制单元之后,通过所述主存储器控制单元发送完成通知,其中在同步复制了所述数据之后,所述主存储器控制单元和所述辅助存储器控制单元具有相同的数据。
15.如权利要求9所述的系统,其中在所述多个主机上执行多个操作系统,并且其中单个应用程序使所述多个主机能够访问存储在所述主存储器控制单元和所述辅助存储器控制单元中的数据,并且其中如果可以操作所述主存储器控制单元,则所述主存储器控制单元可用于处理所述多个主机所生成的数据传送请求。
16.如权利要求9所述的系统,其中所述系统是用于控制所述主存储器控制单元和所述辅助存储器控制单元中的存储体的存储区域网存储体控制器,其中所述主存储器控制单元是主存储器控制器,其中所述辅助存储器控制单元是辅助存储器控制器,其中所述存储区域网存储体控制器上的重定向应用程序执行以下步骤接收、确定、通过访问所述主存储器控制器生成响应、和通过访问所述辅助存储器控制器生成响应。
17.一种产品,其中所述产品能够进行包括如权利要求1至8中的任一权利要求所述的方法的步骤的操作。
18.一种用于部署计算基础结构的方法,包括将计算机可读代码集成到计算系统,其中与所述计算系统结合的所述代码能够执行如权利要求1至8中的任一权利要求所述的方法的步骤。
全文摘要
提供一种方法、系统和产品,其中控制器接收来自多个主机之一的请求。控制器确定是否可以操作连接到控制器的主存储器控制单元。响应确定可以操作主存储器控制单元,通过访问主存储器控制单元来生成响应。响应确定不可以操作主存储器控制单元,通过访问辅助存储器控制单元来生成响应,其中将数据从主存储器控制单元同步复制到辅助存储器控制单元。
文档编号G06F12/08GK1804810SQ20061000612
公开日2006年7月19日 申请日期2006年1月16日 优先权日2005年1月14日
发明者肯尼思·W·博伊德, 肯尼思·F·戴第三, 查尔斯·W·利克尔, 约翰·J·沃尔夫冈 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1