欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

高可用性以及低容量的動(dòng)態(tài)存儲(chǔ)區(qū)域分配的制作方法

文檔序號(hào):6480485閱讀:147來(lái)源:國(guó)知局

專(zhuān)利名稱::高可用性以及低容量的動(dòng)態(tài)存儲(chǔ)區(qū)域分配的制作方法
技術(shù)領(lǐng)域
:本發(fā)明一般涉及計(jì)算機(jī)存儲(chǔ)系統(tǒng),更具體地,涉及計(jì)算機(jī)存儲(chǔ)系統(tǒng)中的動(dòng)態(tài)存儲(chǔ)區(qū)域分酉己(thin-provisioning)。
背景技術(shù)
:動(dòng)態(tài)存儲(chǔ)區(qū)域分配(thin-provisioning)是一種適用于大規(guī)P漠集中的計(jì)算機(jī)盤(pán)存儲(chǔ)系統(tǒng)、存儲(chǔ)區(qū)域網(wǎng)(SAN)及存儲(chǔ)虛擬系統(tǒng)的機(jī)制?;陔S需和即時(shí),動(dòng)態(tài)存儲(chǔ)區(qū)域分配允許空間被容易地分配給服務(wù)器。術(shù)語(yǔ)動(dòng)態(tài)存儲(chǔ)區(qū)域分配用于與傳統(tǒng)配置(fatprovisioning)形成對(duì)比,傳統(tǒng)配置指在存儲(chǔ)陣列上的傳統(tǒng)的分配方法,在該存儲(chǔ)陣列上,存儲(chǔ)容量的大存儲(chǔ)池(largepool)被分配給單個(gè)應(yīng)用程序(application),但是保留未使用的部分。在存儲(chǔ)整合環(huán)境中(其中許多應(yīng)用共享訪問(wèn)相同的存儲(chǔ)陣列),動(dòng)態(tài)存儲(chǔ)區(qū)域分配允許管理員保留單獨(dú)的空閑空間緩沖池以對(duì)所有應(yīng)用程序的數(shù)據(jù)增長(zhǎng)需求提供服務(wù)。通過(guò)動(dòng)態(tài)存儲(chǔ)區(qū)域分配,能夠自動(dòng)增加存儲(chǔ)容量使用效率,而沒(méi)有沉重的管理費(fèi)用。各組織能夠預(yù)先購(gòu)買(mǎi)更少的存儲(chǔ)容量,能夠根據(jù)實(shí)際的業(yè)務(wù)使用推遲存儲(chǔ)容量升級(jí),并且能夠節(jié)省與維持不使用的硬盤(pán)容量運(yùn)轉(zhuǎn)相關(guān)的運(yùn)行費(fèi)用。存儲(chǔ)整合環(huán)境能夠提供過(guò)度配置(over-allocation)或過(guò)度預(yù)訂(over-subscription)。過(guò)度配置或過(guò)度預(yù)訂是允許對(duì)服務(wù)器應(yīng)用程序分配比在存儲(chǔ)陣列本身上物理地保留的存儲(chǔ)容量更多的存儲(chǔ)容量。這允許應(yīng)用存儲(chǔ)容量的增長(zhǎng)和減少的靈活性,而不必須準(zhǔn)確地預(yù)測(cè)容量將增長(zhǎng)或減少多少。當(dāng)應(yīng)用程序?qū)嶋H寫(xiě)入數(shù)據(jù)時(shí)(而不是最初分配存儲(chǔ)容量時(shí))才提供陣列上的物理存儲(chǔ)容量。在2006年10月31日向Kano提出的美國(guó)專(zhuān)利No.7,130,960中揭示了一種通過(guò)動(dòng)態(tài)存儲(chǔ)區(qū)域分配來(lái)減少數(shù)據(jù)存儲(chǔ)容量的浪費(fèi)的方法,將其全部并入本文作為參照。動(dòng)態(tài)存儲(chǔ)區(qū)域分配通過(guò)防止將存儲(chǔ)容量分配給未被寫(xiě)入的數(shù)據(jù)區(qū)來(lái)減少存儲(chǔ)容量的浪費(fèi)。另一方面,高可用性是系統(tǒng)設(shè)計(jì)規(guī)程(protocol)及確保在特定的^r測(cè)取樣間隔時(shí)間過(guò)程中某種程度的運(yùn)行連續(xù)性相關(guān)的工具??捎眯灾赣脩羯鐓^(qū)(usercommunity)訪問(wèn)系統(tǒng)(無(wú)論是提交新的工作、更新或改變現(xiàn)有的工作,還是收集先前的工作的結(jié)果)的能力。如果用戶無(wú)法訪問(wèn)系統(tǒng),則說(shuō)明系統(tǒng)不可用。增加可用性的一種方法是具有同步的復(fù)制系統(tǒng),日本專(zhuān)利2007-072538中揭示了該方法。該技術(shù)包括在兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的數(shù)據(jù)復(fù)制系統(tǒng)、一個(gè)或多個(gè)外部存儲(chǔ)子系統(tǒng)以及I/O服務(wù)器中的路徑改變功能。當(dāng)一個(gè)存儲(chǔ)子系統(tǒng)由于意外的故障(例如,由于I/0路徑斷開(kāi)或設(shè)備出錯(cuò))而停止工作時(shí),I/O服務(wù)器將I/O路徑改變到其它的存儲(chǔ)子系統(tǒng)。對(duì)于存儲(chǔ)系統(tǒng),動(dòng)態(tài)存儲(chǔ)區(qū)域分配和高可用性都是良好的特性。然而,該兩種方法具有互相沖突的方面。
發(fā)明內(nèi)容本發(fā)明提供充分地解決一個(gè)或多個(gè)上述及其它問(wèn)題的方法和系統(tǒng),這些問(wèn)題與用于計(jì)算機(jī)存儲(chǔ)系統(tǒng)中的動(dòng)態(tài)存儲(chǔ)區(qū)域分配的傳統(tǒng)技術(shù)相關(guān)。本發(fā)明的各方面提供用于提供高可用性并減少存儲(chǔ)系統(tǒng)的容量要求的方法和設(shè)備。根據(jù)本發(fā)明的一個(gè)方面,一種存儲(chǔ)系統(tǒng)包括主計(jì)算機(jī)、兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)及一個(gè)或更多個(gè)外部存儲(chǔ)子系統(tǒng)。存儲(chǔ)子系統(tǒng)可以被參照作為第一存儲(chǔ)子系統(tǒng)。主計(jì)算機(jī)被耦合到兩個(gè)或更多個(gè)存儲(chǔ)系統(tǒng)上并能夠改變存儲(chǔ)子系統(tǒng)之間的1/0路徑。兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)能夠訪問(wèn)外部存儲(chǔ)巻并將外部存儲(chǔ)巻作為它們自己的存儲(chǔ)容量。這些存儲(chǔ)子系統(tǒng)包括動(dòng)態(tài)存儲(chǔ)區(qū)域分配功能。動(dòng)態(tài)存儲(chǔ)區(qū)域分配功能能夠使用外部存儲(chǔ)巻作為容量池的部件。當(dāng)接收到來(lái)自其它存儲(chǔ)子系統(tǒng)的請(qǐng)求時(shí),動(dòng)態(tài)存儲(chǔ)區(qū)域分配功能還能夠排除容量池區(qū)被分配。存儲(chǔ)子系統(tǒng)互相通信并且當(dāng)存儲(chǔ)子系統(tǒng)接收到寫(xiě)I/O時(shí),存儲(chǔ)子系統(tǒng)能夠?qū)?xiě)I/O互相復(fù)制。根據(jù)本發(fā)明的一個(gè)方面,提供一種計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),該系統(tǒng)包括至少一個(gè)外部巻、包括第一存儲(chǔ)子系統(tǒng)和第二存儲(chǔ)子系統(tǒng)的兩個(gè)或更多個(gè)存儲(chǔ)13子系統(tǒng),第一存儲(chǔ)子系統(tǒng)包括第一虛擬巻,第二存儲(chǔ)子系統(tǒng)包括第二虛擬巻,第一虛擬巻和第二虛擬巻形成對(duì)。在本發(fā)明的系統(tǒng)中,第一虛擬巻和第二虛擬巻是動(dòng)態(tài)存儲(chǔ)區(qū)域分配巻;第一虛擬巻可使用來(lái)從與第一虛擬巻相關(guān)聯(lián)的第一容量池中分配容量;第二虛擬巻可用于從與第二虛擬巻相關(guān)聯(lián)的第二容量池中分配容量;該容量包括至少一個(gè)外部巻;該至少一個(gè)外部巻由第一容量池和第二容量池共享;該至少一個(gè)外部巻、所述第一存儲(chǔ)子系統(tǒng)或所述第二存儲(chǔ)子系統(tǒng)存儲(chǔ)至少一個(gè)動(dòng)態(tài)存儲(chǔ)區(qū)域分配信息表;基于動(dòng)態(tài)存儲(chǔ)區(qū)域分配的分配處理的執(zhí)行,如果第一存儲(chǔ)子系統(tǒng)已經(jīng)從所共享的至少一個(gè)外部巻中分配了容量,則第二存儲(chǔ)子系統(tǒng)可用來(lái)參照分配信息并建立虛擬巻地址和容量池地址之間的關(guān)系。根據(jù)本發(fā)明的另一個(gè)方面,提供一種計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),該系統(tǒng)包括外部存儲(chǔ)巻,耦合到一起并耦合到外部存儲(chǔ)巻的兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng),每一個(gè)存儲(chǔ)子系統(tǒng)包括高速緩沖存儲(chǔ)區(qū),每一個(gè)存儲(chǔ)子系統(tǒng)包括至少一個(gè)虛擬巻和至少一個(gè)容量池,從至少一個(gè)容量池的存儲(chǔ)部件中分配至少一個(gè)虛擬巻,該至少一個(gè)容量池包括至少一部分外部存儲(chǔ)巻。響應(yīng)于數(shù)據(jù)訪問(wèn)請(qǐng)求,將至少一個(gè)容量池的存儲(chǔ)部件分配給虛擬巻。本發(fā)明的存儲(chǔ)系統(tǒng)還包括耦合到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)并可用于在兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)之間切換輸入/輸出的主計(jì)算機(jī)?;诮邮盏絻蓚€(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的第一存儲(chǔ)子系統(tǒng)發(fā)出的數(shù)據(jù)寫(xiě)請(qǐng)求,第一存儲(chǔ)子系統(tǒng)被配置來(lái)至少對(duì)兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的第二存儲(chǔ)子系統(tǒng)提供已接收的數(shù)據(jù)寫(xiě)請(qǐng)求,并且基于接收到來(lái)自第一存儲(chǔ)子系統(tǒng)的請(qǐng)求,第二存儲(chǔ)子系統(tǒng)可用于防止至少一個(gè)容量池的至少一個(gè)存儲(chǔ)部件被分配給第二存儲(chǔ)子系統(tǒng)的至少一個(gè)虛擬巻。根據(jù)本發(fā)明的又一方面,提供一種使用耦合到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的數(shù)據(jù)存儲(chǔ)的主計(jì)算機(jī)執(zhí)行的方法,兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)被耦合到一起并耦合到外部存儲(chǔ)巻,每一個(gè)存儲(chǔ)子系統(tǒng)包括高速緩沖存儲(chǔ)區(qū),每一個(gè)存儲(chǔ)子系統(tǒng)包括至少一個(gè)虛擬巻和至少一個(gè)容量池,從至少一個(gè)容量池分配至少一個(gè)虛擬巻。至少一個(gè)容量池包括至少一部分外部存儲(chǔ)巻。至少一個(gè)虛擬巻是動(dòng)態(tài)存儲(chǔ)區(qū)域分配巻。本發(fā)明的方法包括將兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第一存儲(chǔ)子系統(tǒng)的第一虛擬巻與兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第二存儲(chǔ)子系統(tǒng)的第二虛擬巻配對(duì)為主巻和從巻;及基于接收到來(lái)自第一存儲(chǔ)子系統(tǒng)的請(qǐng)求,防止第二存儲(chǔ)子系統(tǒng)的至少一個(gè)容量池的至少一個(gè)存儲(chǔ)部件被分配給第二虛擬巻。根據(jù)本發(fā)明的另一方面,提供一種包括一個(gè)或多個(gè)序列的指令的計(jì)算機(jī)可讀介質(zhì),當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行該指令時(shí),使一個(gè)或多個(gè)處理器執(zhí)行使用耦合到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的數(shù)據(jù)存儲(chǔ)的主計(jì)算機(jī)執(zhí)行的方法。兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)被耦合到一起并耦合到外部存儲(chǔ)巻。每一個(gè)存儲(chǔ)子系統(tǒng)包括高速緩沖存儲(chǔ)區(qū)、至少一個(gè)虛擬巻和至少一個(gè)容量池。從至少一個(gè)容量池中分配至少一個(gè)虛擬巻。該至少一個(gè)容量池包括至少一部分外部存儲(chǔ)巻。在每一個(gè)存儲(chǔ)子系統(tǒng)中,至少一個(gè)虛擬巻是動(dòng)態(tài)存儲(chǔ)區(qū)域分配巻。本發(fā)明的方法包括將兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第一存儲(chǔ)子系統(tǒng)的第一虛擬巻與兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第二存儲(chǔ)子系統(tǒng)的第二虛擬巻配對(duì)為主巻和從巻;及基于接收到來(lái)自第一存儲(chǔ)子系統(tǒng)的請(qǐng)求,防止第二存儲(chǔ)子系統(tǒng)的至少一個(gè)容量池的至少一個(gè)存儲(chǔ)部件被分配給第二虛擬巻。在下面的描述中部分地闡明與本發(fā)明相關(guān)的其它方面,并且該其它方面部分地將從該描述中顯而易見(jiàn)的,或通過(guò)本發(fā)明的實(shí)施可獲知的。通過(guò)部件和各種部件的結(jié)合及在下面的具體描述和所附權(quán)利要求中特定指出的方面,可以實(shí)現(xiàn)并獲得本發(fā)明的各方面。應(yīng)該理解,前面及下面的描述僅是示例與解釋?zhuān)⒉灰庥谝匀魏涡问絹?lái)限制主張的發(fā)明及其申請(qǐng)。并入本文并構(gòu)成說(shuō)明書(shū)的一部分的附圖舉例說(shuō)明本發(fā)明的實(shí)施例,并且與說(shuō)明書(shū)一起用于解釋和說(shuō)明本發(fā)明的技術(shù)的原理。特定地圖1說(shuō)明根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)。圖2說(shuō)明根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)的主計(jì)算機(jī)的示例性存儲(chǔ)器。圖3說(shuō)明根據(jù)本發(fā)明的各方面的示例性巻管理表。圖4和圖5示出用于根據(jù)本發(fā)明的各方面的存儲(chǔ)子系統(tǒng)的存儲(chǔ)控制器的存儲(chǔ)器的示例性結(jié)構(gòu)。圖6、7、8、9、10、11、12、13、14、15、16、17及18根據(jù)本發(fā)明的各方面更詳細(xì)地示出圖4和圖5的程序和表格。15圖19示出根據(jù)本發(fā)明的各方面的容量池組塊、容量池頁(yè)及硬盤(pán)高速緩沖存儲(chǔ)器之間的關(guān)系。圖20說(shuō)明根據(jù)本發(fā)明的各方面的虛擬巻頁(yè)、虛擬巻槽及虛擬巻之間的關(guān)系。圖21說(shuō)明根據(jù)本發(fā)明各方面的容量池管理表、容量池部件管理表、容量池組塊管理表、RAID組管理表及容量池組塊之間的關(guān)系。圖22說(shuō)明根據(jù)本發(fā)明的各方面的虛擬巻、虛擬巻頁(yè)、虛擬巻管理表、虛擬巻頁(yè)管理表、容量池管理表、容量池組塊、容量池頁(yè)及容量池部件管理表之間的關(guān)系。圖23說(shuō)明根據(jù)本發(fā)明各方面的虛擬巻、虛擬巻頁(yè)、容量池組塊、容量池頁(yè)及容量池頁(yè)管理表之間的關(guān)系。圖24說(shuō)明根據(jù)本發(fā)明各方面的高速緩沖存儲(chǔ)器槽、高速緩沖存儲(chǔ)器管理表和磁盤(pán)槽之間的關(guān)系。圖25說(shuō)明根據(jù)本發(fā)明的各方面的兩個(gè)存儲(chǔ)子系統(tǒng)的虛擬巻和對(duì)管理表之間的關(guān)系。圖26說(shuō)明根據(jù)本發(fā)明各方面的虛擬巻、RAID組和外部巻之間的關(guān)系。圖27說(shuō)明根據(jù)本發(fā)明的各方面的執(zhí)行巻操作等待程序的示例性方法。圖28說(shuō)明根據(jù)本發(fā)明的各方面執(zhí)行對(duì)生成程序的示例性方法。圖29說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行對(duì)刪除程序的示例性方法。圖30說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行槽操作程序的示例性方法。圖31說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行寫(xiě)1/0操作程序的示例性方法。圖32說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行讀I/O操作程序的示例性方法。圖33A和圖33B示出根據(jù)本發(fā)明各方面的執(zhí)行容量池頁(yè)分配程序的示例性方法。圖34說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行高速緩沖存儲(chǔ)器升級(jí)程序的示例性方法。圖35說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行硬盤(pán)刷新程序的示例性方法。圖36、圖37及圖38示出根據(jù)本發(fā)明各方面的執(zhí)行高速緩沖存儲(chǔ)器降級(jí)程序的示例性方法。圖39說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行容量池回收程序的示例性方法。圖40說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行容量池組塊解除(release)程序的示例性方法。圖41提供根據(jù)本發(fā)明各方面的對(duì)主巻寫(xiě)I/O的時(shí)序。圖42提供根據(jù)本發(fā)明各方面的對(duì)從巻寫(xiě)I/O的時(shí)序。圖43提供根據(jù)本發(fā)明各方面的從主巻對(duì)外部巻降級(jí)的時(shí)序。圖44提供根據(jù)本發(fā)明各方面的從從巻對(duì)外部巻降級(jí)的時(shí)序。圖45說(shuō)明根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)。圖46說(shuō)明根據(jù)本發(fā)明的其它方面的另一容量池管理程序的示例性結(jié)構(gòu)。圖47A和圖47B示出根據(jù)本發(fā)明的其它方面的執(zhí)行容量池頁(yè)分配的示例性方法。圖48說(shuō)明根據(jù)本發(fā)明的其它方面的外部存儲(chǔ)子系統(tǒng)。圖49說(shuō)明根據(jù)本發(fā)明其它方面的外部存儲(chǔ)子系統(tǒng)的存儲(chǔ)器的示例性結(jié)構(gòu)。圖50說(shuō)明存儲(chǔ)控制器的存儲(chǔ)器中存儲(chǔ)的容量池管理程序圖51說(shuō)明根據(jù)本發(fā)明其它方面的虛擬巻頁(yè)管理表的示例性結(jié)構(gòu)。圖55是說(shuō)明可以執(zhí)行本發(fā)明的系統(tǒng)的計(jì)算機(jī)平臺(tái)的示例性實(shí)施例。具體實(shí)施例方式在下面的具體描述中,將參考所附附圖,其中用相同的參考標(biāo)記指明相同的功能部件。通過(guò)說(shuō)明而非限定,上述附圖示出才艮據(jù)本發(fā)明的原理的特定實(shí)施例和實(shí)施方式。這些實(shí)施方式被充分詳細(xì)的描述以使本領(lǐng)域技術(shù)人員能夠?qū)嵤┍景l(fā)明,并且將會(huì)理解,可以使用其它實(shí)施方式,并且不脫離本發(fā)明的范圍和宗義,可以進(jìn)行各種部件的結(jié)構(gòu)改變和/或替換。因此,不能限制性的解釋下面的詳細(xì)描述。此外,可以以在通用計(jì)算機(jī)上運(yùn)行的軟件的形式、特定硬件的形式或軟件和硬件結(jié)合的形式來(lái)實(shí)現(xiàn)所描述的本發(fā)明的各種實(shí)施例。當(dāng)將包括動(dòng)態(tài)存儲(chǔ)區(qū)域分配和高可用性的兩種技術(shù)相結(jié)合以用于減少存儲(chǔ)空間的浪費(fèi)并快速和容易的訪問(wèn)存儲(chǔ)巻的雙重目的時(shí),某些問(wèn)題出現(xiàn)。例如,如果結(jié)合該兩種技術(shù),則需要兩倍的存儲(chǔ)容量。這是由于頁(yè)管理表(pagemanagementtable)沒(méi)有被存儲(chǔ)子系統(tǒng)共享的事實(shí)。因此,存在兩個(gè)存儲(chǔ)子系統(tǒng)的頁(yè)管理表對(duì)兩個(gè)不同的存儲(chǔ)子系統(tǒng)的動(dòng)態(tài)存儲(chǔ)區(qū)域分配巻進(jìn)行分配并分配相同的容量池區(qū)的問(wèn)題。如果該兩個(gè)存儲(chǔ)子系統(tǒng)試圖對(duì)相同的空間進(jìn)行I/O操作時(shí),這就引起了沖突。另外,如果在存儲(chǔ)子系統(tǒng)之間共享頁(yè)管理表來(lái)防止上述沖突,則存儲(chǔ)子系統(tǒng)之間的通信或鎖定沖突引起延時(shí)。在圖1、2、3、4、5到18中示出并描述根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)的構(gòu)成。圖l說(shuō)明根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)。圖1中示出的存儲(chǔ)系統(tǒng)包括兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)100、400,主計(jì)算機(jī)300,以及外部巻621。存儲(chǔ)系統(tǒng)還可以包括一個(gè)或更多個(gè)存儲(chǔ)網(wǎng)絡(luò)200,500。可以直接或通過(guò)未示出的網(wǎng)絡(luò)將存儲(chǔ)子系統(tǒng)100,400耦合在一起??梢灾苯踊蛲ㄟ^(guò)存儲(chǔ)網(wǎng)絡(luò)200將主計(jì)算機(jī)耦合到存儲(chǔ)子系統(tǒng)100,400。可以直接或通過(guò)存儲(chǔ)網(wǎng)絡(luò)500將外部巻621耦合到存儲(chǔ)子系統(tǒng)100,400。主計(jì)算機(jī)300包括CPU301、存儲(chǔ)器302及拖拽式存儲(chǔ)接口(towstorageinterface)303s。CPU301用于執(zhí)行在存儲(chǔ)器302中存儲(chǔ)的程序和表格。通過(guò)存儲(chǔ)網(wǎng)絡(luò)200將存儲(chǔ)接口302耦合到存儲(chǔ)子系統(tǒng)IOO上的主接口114。存儲(chǔ)子系統(tǒng)100包括存儲(chǔ)控制器110、磁盤(pán)單元120及管理終端130。存儲(chǔ)控制器110包括用于運(yùn)行在存儲(chǔ)器112中存儲(chǔ)的程序和表格的CPU111,用于存儲(chǔ)程序、表格及數(shù)據(jù)的存儲(chǔ)器112,用于將存儲(chǔ)控制器耦合到磁盤(pán)單元的磁盤(pán)接口(該接口可以是SCSII/F)116,用于通過(guò)存儲(chǔ)網(wǎng)絡(luò)200將存儲(chǔ)控制器耦合到主計(jì)算機(jī)300的存儲(chǔ)接口303的主接口(該接口可以是光纖通道I/F)115,用于將存儲(chǔ)控制器耦合到管理終端130的存儲(chǔ)控制接口133的管理終端接口(該接口可以是NICI/F)114,用于將存儲(chǔ)控制器耦合到其它存儲(chǔ)子系統(tǒng)400上的存儲(chǔ)控制器接口417的存儲(chǔ)控制器接口(該接口可以是光纖通道I/F)117,以及用于通過(guò)存儲(chǔ)網(wǎng)絡(luò)500將存儲(chǔ)控制器110耦合到外部巻621的外部存儲(chǔ)控制器接口(該接口可以是光纖通道I/F)118。主接口115接收到來(lái)自主計(jì)算機(jī)300的I/O請(qǐng)求并通知CPU111。管理終端接口114接收到來(lái)自管理終端130的巻、/磁盤(pán)及容量池操作請(qǐng)求并通知CPU111。磁盤(pán)單元120包括例如硬盤(pán)驅(qū)動(dòng)器(HDD)121等磁盤(pán)。管理終端130包括用于管理由管理終端執(zhí)行的處理的CPU131,存儲(chǔ)器132,用于將管理終端耦合到存儲(chǔ)控制器110上的接口114并用于將巻、磁盤(pán)及容量池操作發(fā)送到存儲(chǔ)控制器110的存儲(chǔ)控制器接口(該接口可以是NIC)133,以及例如鍵盤(pán)、鼠標(biāo)或監(jiān)視器等用戶接口134。存儲(chǔ)子系統(tǒng)400包括存儲(chǔ)控制器410、磁盤(pán)單元420以及管理終端430。這些部件具有與對(duì)于存儲(chǔ)子系統(tǒng)IOO描述的這些部件相似的構(gòu)成。在本段的剩余部分描述存儲(chǔ)子系統(tǒng)400的部件。存儲(chǔ)控制器410包括用于運(yùn)行在存儲(chǔ)器412中存儲(chǔ)的程序和表格的CPU411,用于存儲(chǔ)程序、表格及數(shù)據(jù)的存儲(chǔ)器412,用于將存儲(chǔ)控制器耦合到磁盤(pán)單元的磁盤(pán)接口(該接口可以是SCSII/F)416,用于通過(guò)存儲(chǔ)網(wǎng)絡(luò)200將存儲(chǔ)控制器耦合到主計(jì)算機(jī)300的存儲(chǔ)接口303的主接口(該接口可以是光纖通道I/F)415,用于將存儲(chǔ)控制器耦合到管理終端430的存儲(chǔ)控制接口433的管理終端接口(該接口可以是NICI/F)414,用于將存儲(chǔ)控制器耦合到其它存儲(chǔ)子系統(tǒng)400上的存儲(chǔ)控制器接口417的存儲(chǔ)控制器接口(該接口可以是光纖通道I/F)417,以及用于通過(guò)存儲(chǔ)網(wǎng)絡(luò)500將存儲(chǔ)控制器410耦合到外部巻621的外部存儲(chǔ)控制器接口(該接口可以是光纖通道I/F)418。主接口415接收到來(lái)自主計(jì)算機(jī)300的I/O請(qǐng)求并通知CPU411。管理終端接口414接收到來(lái)自管理終端430的巻、磁盤(pán)及容量池操作請(qǐng)求并通知CPU411。磁盤(pán)單元420包括例如磁盤(pán)驅(qū)動(dòng)器(HDD)421等磁盤(pán)。管理終端430包括用于管理由管理終端執(zhí)行的處理的CPU431,存儲(chǔ)器432,用于將管理終端耦合到存儲(chǔ)控制器410上的接口414并用于將巻、^茲盤(pán)及容量池操作發(fā)送到存儲(chǔ)控制器410的存儲(chǔ)控制器接口(該接口可以是NIC)433,以及例如鍵盤(pán)、鼠標(biāo)或監(jiān)視器等用戶接口434。圖2說(shuō)明用于根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)的主計(jì)算機(jī)的示例性存儲(chǔ)器。圖2的主計(jì)算機(jī)300的存儲(chǔ)器302包括巻管理表302-11。圖3說(shuō)明根據(jù)本發(fā)明的各方面的示例性巻管理表。巻管理表包括用于將信息巻配對(duì)的兩個(gè)主巻信息欄302-11-01、302-11-02,其可以被擇一地選擇使用以假設(shè)一個(gè)巻故障時(shí)通過(guò)改變從一個(gè)巻到另一個(gè)巻的路徑來(lái)幫助挽救數(shù)據(jù)。通過(guò)該種在形成存儲(chǔ)系統(tǒng)的存儲(chǔ)子系統(tǒng)上的存儲(chǔ)巻的配對(duì),提供了提高數(shù)據(jù)可用性的存儲(chǔ)冗余。圖4和圖5示出用于根據(jù)本發(fā)明的各方面的存儲(chǔ)子系統(tǒng)的存儲(chǔ)控制器的存儲(chǔ)器的示例性結(jié)構(gòu)。圖6、7、8、9、10、11、12、13、14、15、16、17及18根據(jù)本發(fā)明的各方面更詳細(xì)地示出圖4的程序和表格。圖4可以與存儲(chǔ)子系統(tǒng)100的存儲(chǔ)器112對(duì)應(yīng),圖5可以于存儲(chǔ)子系統(tǒng)400的存儲(chǔ)器412對(duì)應(yīng)。這些存儲(chǔ)器也可以屬于圖1的存儲(chǔ)子系統(tǒng)100、400。示出被存儲(chǔ)在存儲(chǔ)器112、412中的一系列程序和表格。由于兩個(gè)存儲(chǔ)器112、114相似,下面僅更詳細(xì)地描述圖4。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的程序包括巻操作程序112-02。如圖6所示,巻操作程序包括巻操作等待程序112-02-1,對(duì)(pair)生成程序112-02-2以及對(duì)(pair)解除程序112-02-3。巻操作等待程序112-02-1是系統(tǒng)駐留程序,當(dāng)CPU111接收到"對(duì)(pair)生成"或"對(duì)(pair)解除"請(qǐng)求時(shí)執(zhí)行該程序。對(duì)生成程序112-02-2建立存儲(chǔ)子系統(tǒng)100的存儲(chǔ)巻和存儲(chǔ)子系統(tǒng)400之間的巻重復(fù)(duplication)的關(guān)系,當(dāng)CPU111接收到"對(duì)生成"請(qǐng)求時(shí)執(zhí)行該程序。由巻才喿作等待程序112-02-1來(lái)調(diào)用對(duì)生成程序112-02-2。對(duì)解除程序112-02-3被巻操作等待程序112-02-1調(diào)用并解除存在于存儲(chǔ)子系統(tǒng)100的存儲(chǔ)巻和存儲(chǔ)子系統(tǒng)400之間的巻重復(fù)的關(guān)系。當(dāng)CPUlll接收到"對(duì)解除"請(qǐng)求時(shí)執(zhí)行對(duì)解除程序112-02-3。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的程序還包括I/0操作程序112-04。如圖7所示,I/O操作程序112-04包括寫(xiě)I/O操作程序112-04-1及讀I/O操作程序112-04-2。寫(xiě)I/O操作程序112-04-1是系統(tǒng)駐留程序,該程序?qū)/0數(shù)據(jù)從主計(jì)算機(jī)300傳輸?shù)礁咚倬彌_存儲(chǔ)區(qū)112-20,當(dāng)CPU111接收到寫(xiě)1/0請(qǐng)求時(shí)執(zhí)行該程序。讀I/0操作程序112-04-2也是系統(tǒng)駐留程序,該程序?qū)/0數(shù)據(jù)從高速緩沖存儲(chǔ)區(qū)112-20傳輸?shù)街饔?jì)算機(jī)300,當(dāng)CPU111接收到讀1/0請(qǐng)求時(shí)執(zhí)行該程序。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的程序還包括磁盤(pán)訪問(wèn)程序112-05。如圖8所示,磁盤(pán)訪問(wèn)程序112-05包括磁盤(pán)刷新程序112-05-1、高速緩沖存儲(chǔ)器升級(jí)程序112-05-2及高速緩沖存儲(chǔ)器降級(jí)程序112-05-3。^茲盤(pán)刷新程序112-05-1是系統(tǒng)駐留程序,該程序搜索臟的(dirty)高速緩沖存儲(chǔ)器數(shù)據(jù)并對(duì)磁盤(pán)刷新該數(shù)據(jù),當(dāng)CPU111的負(fù)荷低時(shí)執(zhí)行該程序。高速緩沖存儲(chǔ)器升級(jí)程序112-05-2將數(shù)據(jù)從磁盤(pán)121傳輸?shù)礁咚倬彌_存儲(chǔ)區(qū)112-05-20,當(dāng)CPU111需要訪問(wèn)磁盤(pán)121中的數(shù)據(jù)時(shí)執(zhí)行該程序。高速緩沖存儲(chǔ)器降級(jí)程序112-05-3從高速緩沖存儲(chǔ)區(qū)傳輸數(shù)據(jù),當(dāng)》茲盤(pán)刷新程序112-05-1對(duì)》茲盤(pán)121刷新臟的(dirty)高速緩沖存儲(chǔ)器數(shù)據(jù)時(shí)執(zhí)行該程序。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的程序還包括容量池管理程序112-08。如圖9所示,容量池管理112-08包括容量池頁(yè)分配程序112-08-1、容量池回收程序112-08-2及容量池?cái)U(kuò)充(extension)程序112-08-3。容量池頁(yè)分配程序112-08-1接收到來(lái)自容量池的新的容量池頁(yè)和容量池組塊并將請(qǐng)求發(fā)送到其它存儲(chǔ)子系統(tǒng)以排除不受限制(arbitrary)的組塊。容量池回收程序112-08-2是系統(tǒng)駐留程序,該程序執(zhí)行來(lái)自容量池的回收,當(dāng)CPU111的負(fù)荷低時(shí)執(zhí)行該程序。容量池?cái)U(kuò)充(extension)程序112-08-3是系統(tǒng)駐留程序,當(dāng)CPU111接收到"容量池?cái)U(kuò)充"請(qǐng)求時(shí)執(zhí)行該程序,并且該程序?qū)⑻囟ǖ腞AID組或外部巻621添加到特定的容量池。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的程序還包括槽才喿作程序112-09。如圖19所示,在來(lái)自其他存儲(chǔ)子系統(tǒng)的請(qǐng)求之后該程序運(yùn)行來(lái)將槽121-3鎖定或解鎖。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格包括RAID組管理表112-11。如圖10所示,RAID組管理表112-11包括RAID組號(hào)碼112-11-1欄(該欄示出在存儲(chǔ)控制器110、410中的每一個(gè)RAID組的ID),RAID等級(jí)和RAID組織112匿11畫(huà)02欄,HDD號(hào)碼112-11-03,HDD容量112-11-04,以及共享存儲(chǔ)子系統(tǒng)的列表112-11-05。在RAID等級(jí)欄112-11-02,作為條目的號(hào)碼"10"表示"鏡象和條帶化(striping)",號(hào)碼"5"表示"奇偶條帶化",號(hào)碼"6"表示"雙奇偶條帶化",條目"EXT"表示使用外部巻621,條目"N/A"表示RAID組不存在。在HDD號(hào)碼112-11-03欄,如果RAID等級(jí)信息112-11-02是"10"、"5"或"6",則表示磁盤(pán)121,424的ID列表被安排在RAID組,RAID組21的容量包括磁盤(pán)121,421。在該表的最后一欄示出通過(guò)RAID組配對(duì)的存儲(chǔ)子系統(tǒng)。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括虛擬巻管理表112-12。如圖11所示,虛擬巻管理表112-12包括巻號(hào)碼或ID欄112-12-01、巻容量欄112-12-02、容量池號(hào)碼欄112-12-03以及正在被使用的當(dāng)前組塊欄112-12-05。巻欄112-12-01包括存儲(chǔ)控制器110、410中的每一個(gè)虛擬巻的ID。巻容量欄112-12-02包括相應(yīng)的虛擬巻的存儲(chǔ)容量。容量池號(hào)碼欄112-12-03與虛擬巻有關(guān)并且分配容量以存儲(chǔ)來(lái)自該容量池?cái)?shù)據(jù)。虛擬巻從RAID組的組塊或外部巻獲得其容量池頁(yè)。在正在被使用的當(dāng)前組塊欄112-12-05中示出虛擬巻當(dāng)前正在使用的組塊。該欄示出RAID組以及當(dāng)前用于各種數(shù)據(jù)存儲(chǔ)操作的組塊的組塊號(hào)碼。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括虛擬巻頁(yè)管理表112-13。如圖12所示,虛擬巻頁(yè)管理表112-13包括^提供虛擬巻140中的虛擬巻頁(yè)140-1的ID的虛擬巻頁(yè)地址112-13-01欄、相關(guān)的RAID組號(hào)碼112-13-02以及容量池頁(yè)地址112-13-03。RAID組號(hào)碼112-13-02包括所分配的容量池頁(yè)(其包括外部巻621),并且該欄中的條目N/A表示虛擬巻頁(yè)不分配容量池頁(yè)。容量池頁(yè)地址112-13-03包括相關(guān)的容量池頁(yè)的開(kāi)始邏輯地址。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括容量池管理表112-14。如圖13所示,容量池管理表112-14包括容量池號(hào)碼112-14-01、RAID組列表112-14-02以及空閑容量信息112-14-03。容量池號(hào)碼112-14-01包括存儲(chǔ)控制器110、410中的容量池的ID。RAID組列表112-14-02包括容量池中的RAID組的列表。條目N/A表示容量池不存在。空閑容量信息112-14-03示出容量池中的總的空閑區(qū)的容量。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括容量池部件管理表112-15。如圖14所示,容量池部件管理表112-15包括示出RAID組號(hào)碼的順序欄112-15-01、容量池號(hào)碼112-15-02、空閑組塊隊(duì)列索引112-15-03、已使用的組塊隊(duì)列索引112-15-04及排除的組塊隊(duì)列索引112-15-05。RAID組號(hào)碼的順序欄112-15-01示出存儲(chǔ)控制器110、410中的RAID組的ID。容量池號(hào)碼112-15-02示出該RAID組所屬的容量池的ID??臻e組塊隊(duì)列索引112-15-03包括空閑組塊隊(duì)列索引的號(hào)碼。已使用的組塊隊(duì)列索引112-15-04包括已使用的組塊隊(duì)列索引的號(hào)碼。排除的組塊隊(duì)列索引112-15-05示出所忽略的組塊隊(duì)列索引的號(hào)碼。RAID組以隊(duì)列的方式來(lái)管理空閑組塊、被使用的組塊及忽略的組塊。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括容量池組塊管理表112-16。如圖15所示,容量池組塊管理表112-16包括以下各欄容量池組塊號(hào)碼112-16-01、虛擬巻號(hào)碼112-16-02、已使用容量112-16-03、已刪除容量112-16-04以及下一個(gè)組塊指針112-16-05。容量池組塊號(hào)碼112-16-01包括RAID組中的容量池組塊的ID。虛擬巻號(hào)碼112-16-02包括使用容量池組塊的虛擬巻號(hào)碼。已使用容量112-16-03包括容量池組塊的總的使用容量。當(dāng)虛擬巻從容量池組塊獲得容量池頁(yè)時(shí),該參數(shù)增大容量池頁(yè)大小。已刪除容量112-16-04包括從容量池組塊總的刪除的容量。當(dāng)虛擬巻通過(guò)巻格式化或虛擬巻頁(yè)再分配來(lái)解除容量池頁(yè)時(shí),該參數(shù)增大容量池頁(yè)大小。下一個(gè)組塊指針112-16-05包括其它容量池組塊的指針。容量池組塊具有隊(duì)列結(jié)構(gòu)??臻e的組塊隊(duì)列索引112-15-03和已使用的組塊隊(duì)列索引112-15-04是圖14示出的隊(duì)列的索引。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括容量池頁(yè)管理表112-17。如圖16所示,容量池頁(yè)管理表112-17包括示出容量池組塊中的容量池頁(yè)的偏移值的容量池頁(yè)索引112-17-01和示出參照容量池頁(yè)的虛擬巻頁(yè)的虛擬巻頁(yè)號(hào)碼112-17-02。在該欄中,條目"null"表示該頁(yè)被刪除或沒(méi)有;f皮分配。存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括對(duì)(pair)管理表112-19。如圖17所示,對(duì)管理表112-19包括示出巻號(hào)碼112-19-01、被配對(duì)的子系統(tǒng)號(hào)碼112-19-02及被配對(duì)的巻號(hào)碼112-19-03。巻號(hào)碼信息112-19-01示出存儲(chǔ)控制器110、410中的虛擬巻的ID。被配對(duì)的子系統(tǒng)信息112-19-02示出被配對(duì)的巻所屬的存儲(chǔ)子系統(tǒng)的ID。被配對(duì)的巻號(hào)碼112-19-03示出在被配對(duì)的虛擬巻自己的存儲(chǔ)子系統(tǒng)中被配對(duì)的巻的ID。對(duì)狀態(tài)信息112-19-04以主(master)、從(slave)或N/A示出在對(duì)(pair)中巻的作用。主表示巻能夠從外部巻操作動(dòng)態(tài)存儲(chǔ)區(qū)域分配容量分配。從表示當(dāng)分配應(yīng)該發(fā)生時(shí)巻詢問(wèn)主。如果主已經(jīng)從外部巻分配了容量池頁(yè),則從使虛擬巻頁(yè)與前述外部巻的容量池頁(yè)相聯(lián)系。條目N/A表示巻與其它虛擬巻不具有任何關(guān)系。'23存儲(chǔ)控制器的存儲(chǔ)器112中存儲(chǔ)的表格還包括高速緩沖存儲(chǔ)器管理表112-18。如圖18所示,高速緩沖存儲(chǔ)器管理表112-18包括用于包括高速緩沖存儲(chǔ)器槽號(hào)碼112-18-01、^磁盤(pán)號(hào)碼或邏輯單元號(hào)碼(LUN)112-18-02、石茲盤(pán)地址或邏輯塊地址(LBA)112-18-03、下一個(gè)槽指針112-18-04、鎖定狀態(tài)112-18-05、隊(duì)列的種類(lèi)112-18-11以及隊(duì)列索引指針112-18-12的欄。高速緩沖存儲(chǔ)器槽號(hào)碼112-18-01包括高速緩沖存儲(chǔ)區(qū)112-20中的高速緩沖存儲(chǔ)器槽的ID,高速緩沖存儲(chǔ)區(qū)112-20包括多個(gè)高速緩沖存儲(chǔ)器槽。如圖20所示,磁盤(pán)號(hào)碼112-18-02包括磁盤(pán)121或虛擬巻140的號(hào)碼,其中高速緩沖存儲(chǔ)器槽存儲(chǔ)數(shù)據(jù)。磁盤(pán)號(hào)碼112-18-02能夠識(shí)別與高速緩沖存儲(chǔ)器槽號(hào)碼相應(yīng)的磁盤(pán)121或虛擬巻140。磁盤(pán)地址112-18-03包括高速緩沖存儲(chǔ)器在其中存儲(chǔ)數(shù)據(jù)的磁盤(pán)的地址。高速緩沖存儲(chǔ)器槽具有隊(duì)列結(jié)構(gòu),下一個(gè)槽指針112-18-04包括下一個(gè)高速緩沖存儲(chǔ)器槽號(hào)碼。條目"null"表示隊(duì)列的末尾。在鎖定狀態(tài)112-18-05欄,條目"lock"表示槽被鎖定。條目"解鎖(unlock)"表示槽未被鎖定。當(dāng)狀態(tài)是"鎖定(lock)"時(shí),通過(guò)"鎖定",CPU111、411無(wú)法重寫(xiě)并且CPU111、411等待直到狀態(tài)變?yōu)?解鎖"。隊(duì)列信息112-18-11的種類(lèi)示出高速緩沖存儲(chǔ)器槽隊(duì)列的種類(lèi)。在該欄,條目"空閑"表示具有未被使用的高速緩沖存儲(chǔ)器槽的隊(duì)列,條目"干凈(clean)"表示具有存儲(chǔ)與磁盤(pán)槽相同的數(shù)據(jù)的高速緩沖存儲(chǔ)器槽的隊(duì)列,條目"臟(dirty)"表示具有存儲(chǔ)與磁盤(pán)槽中的數(shù)據(jù)不同的數(shù)據(jù)的高速緩沖存儲(chǔ)器槽的隊(duì)列,因此,存儲(chǔ)控制器110將來(lái)需要將高速緩沖存儲(chǔ)器槽數(shù)據(jù)刷新到磁盤(pán)槽。隊(duì)列索引指針112-18-12包括高速緩沖存儲(chǔ)器槽隊(duì)列的索引。存儲(chǔ)控制器的存儲(chǔ)器112、412還包括高速緩沖存儲(chǔ)器112-20。高速緩沖存儲(chǔ)器112-20包括由高速緩沖存儲(chǔ)器管理表112-18管理的高速緩沖存儲(chǔ)器槽的號(hào)碼112-20-1。圖19示出高速緩沖存儲(chǔ)器槽。圖17到24示出并描述根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)的邏輯結(jié)構(gòu)。在圖19到24中,實(shí)線表示通過(guò)指針參照的目標(biāo),虛線表示通過(guò)計(jì)算參照的目標(biāo)。圖19說(shuō)明根據(jù)本發(fā)明的各實(shí)施例的容量池組塊、容量池頁(yè)及》茲盤(pán)高速緩沖存儲(chǔ)器之間的關(guān)系。磁盤(pán)單元120中的每一個(gè)磁盤(pán)121被劃分為多個(gè)磁盤(pán)槽121-3。,容量池組塊121-1包括以RAID組配置的多個(gè)磁盤(pán)槽121-3。容量池組塊121-1可以包括零個(gè)或多個(gè)容量池頁(yè)121-2。容量池組塊121-1的大小是固定的。容量池頁(yè)121-2可以包括一個(gè)或多個(gè),茲盤(pán)槽121-3。容量池頁(yè)121-2的大小也是固定的。條帶塊RAID中的每一個(gè)磁盤(pán)槽131-3的大小是固定的并且與圖24中示出的高速緩沖存儲(chǔ)器槽112-20-1的大小相同。磁盤(pán)槽包括主數(shù)據(jù)或奇偶數(shù)據(jù)。圖20說(shuō)明根據(jù)本發(fā)明的各方面的虛擬巻頁(yè)、虛擬巻槽及虛擬巻之間的關(guān)系。虛擬巻140從容量池分配容量,通過(guò)I/O操作主計(jì)算機(jī)300可以訪問(wèn)虛擬巻140。虛擬巻包括虛擬巻槽140-2。一個(gè)或多個(gè)虛擬巻槽形成虛擬巻頁(yè)140-1。虛擬巻槽140-2具有與高速緩沖存儲(chǔ)器槽112-20-1或i茲盤(pán)槽121-3相同的容量。圖21說(shuō)明根據(jù)本發(fā)明各實(shí)施例的容量池管理表、容量池部件管理表、容量池組塊管理表、RAID組管理表及容量池組塊之間的關(guān)系。容量池管理表112-14、容量池部件管理表112-15、容量池組塊管理表112-16、RAID組管理表112-11及容量池組塊121-1之間的關(guān)系被示出。如所示出的,容量池管理表112-14根據(jù)RAID組列表112-14-02參照容量池部件管理表112-15。容量池部件管理表112-15根據(jù)容量池號(hào)碼112-15-02參照容量池管理表112-14。容量池部件管理表112-15根據(jù)空閑組塊隊(duì)列112-15-03、已使用的組塊隊(duì)列112-15-04及忽略的組塊隊(duì)列112-15-05來(lái)參照容量池組塊管理表112-16。容量池部件管理表112-15和RAID組管理表112-11之間的關(guān)系是固定的。容量池組塊121-1和容量池組塊管理表112-16之間的關(guān)系也是固定的。在用于將一個(gè)組塊指向另一個(gè)組塊的容量池組塊管理表112-16內(nèi)使用已刪除的組塊隊(duì)列112-16-04。圖22說(shuō)明根據(jù)本發(fā)明的各方面的虛擬巻、虛擬巻頁(yè)、虛擬巻管理表、虛擬巻頁(yè)管理表、容量池管理表、容量池組塊、容量池頁(yè)及容量池部件管理表之間的關(guān)系。虛擬巻管理表112-12根據(jù)容量池號(hào)碼信息112-12-03參照容量池管理表112-14。虛擬巻管理表112-12根據(jù)當(dāng)前組塊信息112-12-05參照已分配的容量池組塊121-1。容量池管理表112-14根據(jù)RAID組列表112-14-02參照磁盤(pán)或外部巻621上的RAID組。虛擬巻頁(yè)管理表112-13根據(jù)容量池頁(yè)地址112-13-03和容量池頁(yè)大小參照容量池頁(yè)121-2。虛擬巻140和虛擬巻管理表112-12之間的關(guān)系是固定的。虛擬巻管理表112-12和虛擬巻頁(yè)管理表112-13之間的關(guān)系是固定的。虛擬巻頁(yè)140-1和虛擬巻頁(yè)管理表112-13之間的關(guān)系是固定的。圖23說(shuō)明根據(jù)本發(fā)明各方面的虛擬巻、虛擬巻頁(yè)、容量池組塊、容量池頁(yè)及容量池頁(yè)管理表之間的關(guān)系。虛擬巻140、虛擬巻頁(yè)140-1、容量池組塊121-1、容量池頁(yè)121-2及容量池頁(yè)管理表112-17之間的關(guān)系被示出。容量池組塊管理表112-16根據(jù)虛擬巻號(hào)碼112-16-02參照虛擬巻140。容量池頁(yè)管理表112-17根據(jù)虛擬巻頁(yè)號(hào)碼112-17-02參照虛擬巻頁(yè)140-1。容量池組塊121-1和量池組塊管理表112-16之間的關(guān)系是固定的。根據(jù)容量池頁(yè)管理表的條目將容量池頁(yè)管理表112-17和容量池頁(yè)121-2相聯(lián)系是可能的。圖24說(shuō)明根據(jù)本發(fā)明各方面的高速緩沖存儲(chǔ)器槽、高速緩沖存儲(chǔ)器管理表和磁盤(pán)槽之間的關(guān)系。高速緩沖存儲(chǔ)器槽112-20-1、高速緩沖存儲(chǔ)器管理表112-18和磁盤(pán)槽121-3之間的關(guān)系被示出。高速緩沖存儲(chǔ)器管理表112-18根據(jù)磁盤(pán)號(hào)碼112-18-02和磁盤(pán)地址112-18-03參照磁盤(pán)槽121-3。高速緩沖存儲(chǔ)器管理表112-18和高速緩沖存儲(chǔ)器槽112-20-1之間的關(guān)系是固定的。圖25說(shuō)明根據(jù)本發(fā)明的各實(shí)施例的兩個(gè)存儲(chǔ)子系統(tǒng)的虛擬巻和對(duì)管理表之間的關(guān)系。根據(jù)對(duì)管理表112-19來(lái)建立屬于一個(gè)存儲(chǔ)子系統(tǒng)100的虛擬巻140和在兩個(gè)存儲(chǔ)子系統(tǒng)IOO、400之一上的虛擬巻之間的關(guān)系。對(duì)管理表112-19根據(jù)每一個(gè)子系統(tǒng)的對(duì)管理表112-19的被配對(duì)的子系統(tǒng)112-19-02和配對(duì)的巻112-19-03欄中的值來(lái)將一個(gè)存儲(chǔ)子系統(tǒng)100的虛擬巻140與另一個(gè)存儲(chǔ)子系統(tǒng)400的虛擬巻140相聯(lián)系。圖26說(shuō)明根據(jù)本發(fā)明各方面的虛擬巻、RAID組和外部巻之間的關(guān)系。虛擬巻140、RAID組和外部巻621之間的關(guān)系被示出。通過(guò)將存儲(chǔ)子系統(tǒng)100的一個(gè)虛擬巻140和存儲(chǔ)子系統(tǒng)400的一個(gè)虛擬巻140相聯(lián)系來(lái)建立一種類(lèi)型的配對(duì)。在另一種類(lèi)型的配對(duì)中,存儲(chǔ)子系統(tǒng)IOO的虛擬巻頁(yè)140-1參照屬于外部巻621或相同子系統(tǒng)100的》茲盤(pán)121的容量池頁(yè)121-2。存儲(chǔ)子系統(tǒng)400的虛擬巻頁(yè)140-1參照屬于外部巻621或相同存儲(chǔ)子系統(tǒng)400的磁盤(pán)121的容量池頁(yè)121-2。由存儲(chǔ)子系統(tǒng)100、400的被配對(duì)的虛擬巻140共享外部巻621的相同的容量池頁(yè)121-1。因此,可以在存儲(chǔ)子系統(tǒng)和每一個(gè)存儲(chǔ)子系統(tǒng)的虛擬巻之間對(duì)虛擬巻140配對(duì)。但是,每一個(gè)存儲(chǔ)子系統(tǒng)的虛擬巻僅與相同的存儲(chǔ)子系統(tǒng)的磁盤(pán)配對(duì)。圖27到38示出由存儲(chǔ)子系統(tǒng)100的CPU111或存儲(chǔ)子系統(tǒng)400的CPU411執(zhí)行的方法的流程圖。雖然關(guān)于存儲(chǔ)子系統(tǒng)100的CPU111說(shuō)明下面的特性,但是這些特性同樣適用于存儲(chǔ)子系統(tǒng)400。圖27說(shuō)明根據(jù)本發(fā)明的各方面的執(zhí)行巻操作等待程序的示例性方法。在圖27的流程圖中示出圖6的執(zhí)行巻操作等待程序112-02-1的一種示例性方法。該方法開(kāi)始于112-02-1-0。在112-02-1-1,該方法確定CPU是否已經(jīng)接收到巻操作請(qǐng)求。如果CPU已經(jīng)接收到巻操作請(qǐng)求,則該方法前進(jìn)到步驟112-02-1-2。如果CPU111沒(méi)有接收到該請(qǐng)求,則該方法重復(fù)該確定步驟112-02-1-1。在112-02-1-2,該方法確定接收到的請(qǐng)求是否是"對(duì)生成"請(qǐng)求。如果已經(jīng)接收到"對(duì)生成"請(qǐng)求,則該方法調(diào)用對(duì)生成程序112-02-1-2并在112-02-1-3執(zhí)行該程序。在步驟112-02-1-3之后,該方法返回到步驟112-02-1-1以等待下一個(gè)請(qǐng)求。如果接收到的請(qǐng)求不是"對(duì)生成"請(qǐng)求,則然后在112-02-1-4,該方法確定所接收到的消息是否是"對(duì)刪除"消息。如果在CPUlll接收到"對(duì)刪除"請(qǐng)求,則該方法前進(jìn)到步驟112-02-1-5。在112-02-1-5,CPU111調(diào)用對(duì)刪除程序112-02-3以破壞在兩個(gè)或多個(gè)存儲(chǔ)子系統(tǒng)之間的現(xiàn)有的虛擬巻配對(duì)。如果沒(méi)有接收到"對(duì)刪除,,請(qǐng)求,則該方法返回到步驟112-02-1-1。同樣,在步驟112-02-1-5之后,該方法返回到步驟112-02-1-1。圖28說(shuō)明根據(jù)本發(fā)明的各方面執(zhí)行對(duì)生成程序的示例性方法。在圖28的流程圖中示出執(zhí)行圖6的對(duì)生成程序112-02-2的一個(gè)示例性方法。可以由任一存儲(chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-02-2-0。在112-02-2-1,該方法確定指定的虛擬巻140是否已經(jīng)與其它巻配對(duì)。如果圖17的被配對(duì)的子系統(tǒng)信息112-19-02、被配對(duì)的巻號(hào)碼112-19-03及對(duì)狀態(tài)信息112-19-04被設(shè)置為"N/A",則虛擬巻還沒(méi)有被配對(duì)。如果對(duì)于該巻來(lái)說(shuō)對(duì)存在,則該方法確定在112-02-2-11錯(cuò)誤發(fā)生。如果對(duì)不存在,則該方法前進(jìn)到步驟112-02-2-2,在112-02-2-2檢查指定的虛擬巻140的狀態(tài)。這里,該方法確定指定巻的需要的狀態(tài)是否是主。如果該狀態(tài)被確定為主,則該方法前進(jìn)到112-02-2-3,在112-02-2-3,對(duì)其它存儲(chǔ)子系統(tǒng)發(fā)送"對(duì)生成"請(qǐng)求。在112-02-2-3,將"對(duì)生成"請(qǐng)求消息發(fā)送到其它存儲(chǔ)子系統(tǒng)以請(qǐng)求與主狀態(tài)的指定的巻建立配對(duì)關(guān)系。在112-02-2-4,該方法等待CPU以接收返回的消息。在112-02-2-5,檢查返回的消息。如果消息是"ok",則配對(duì)信息已經(jīng)被成功設(shè)置并且該方法前進(jìn)到步驟112-02-2-6。在112-02-2-6,該方法根據(jù)對(duì)管理表112-19中的信息設(shè)置指定的虛擬巻140的信息,對(duì)管理表112-19包括被配對(duì)的自系統(tǒng)信息反饋112-19-02、;陂配對(duì)的巻號(hào)碼信息112-19-03及指定的虛擬巻的主或從狀態(tài)112-19-04。然后該方法前進(jìn)到步驟112-02-2-7,在步驟112-02-2-7,"完成(done)"消息被發(fā)送到"對(duì)生成"請(qǐng)求的發(fā)出者。通常由主計(jì)算機(jī)300、管理終端130或管理終端430發(fā)出"對(duì)生成"請(qǐng)求。在112-02-2-10,對(duì)生成程序112-02-2結(jié)束。如果在112-02-2-2指定虛擬巻的狀態(tài)沒(méi)有被確定為主,則該狀態(tài)為從,并且該方法前進(jìn)到112-02-2-8。在112-02-2-8,該方法根據(jù)在對(duì)管理表112-19中關(guān)于指定的虛擬巻140的信息(例如被配對(duì)的子系統(tǒng)信息112-19-02、被配對(duì)的巻號(hào)碼信息112-19-03及狀態(tài)112-19-04)來(lái)設(shè)置指定的虛擬巻140及其對(duì)之間的配對(duì)關(guān)系。在112-02-2-9,CPU將"OK"消息發(fā)送到"對(duì)生成"請(qǐng)求的發(fā)出者。"對(duì)生成"請(qǐng)求的發(fā)出者可以是包括"主,,巻的其它存儲(chǔ)子系統(tǒng)。該步驟之后,在112-02-2-10對(duì)生成程序112-02-2結(jié)束。圖29說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行對(duì)刪除程序的示例性方法。在圖29的流程圖中示出執(zhí)行圖6的對(duì)刪除程序112-02-3的一個(gè)示例性方法。可由任一存儲(chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-02-3-0。在112-02-3-1,該方法確定指定的虛擬巻是否已經(jīng)以主/從關(guān)于與其它巻配對(duì)。如果圖17的被配對(duì)的子系統(tǒng)信息112-19-02、被配對(duì)的巻號(hào)碼112-19-03及對(duì)狀態(tài)信息112-19-04被設(shè)置為"N/A",則虛擬巻還沒(méi)有被配對(duì)。如果對(duì)于該巻來(lái)說(shuō)對(duì)不存在,則由于不存在要?jiǎng)h除的對(duì),因此該方法確定在112-02-3-11錯(cuò)誤已經(jīng)發(fā)生。如果對(duì)存在,則該方法前進(jìn)到步28驟112-02-3-2,在112-02-3-2檢查指定的虛擬巻140的狀態(tài)。這里,該方法確定指定巻的需要的狀態(tài)是否是主。如果該狀態(tài)被確定為主,則該方法前進(jìn)到112-02-3-3,在112-02-2-3,對(duì)其它存儲(chǔ)子系統(tǒng)發(fā)送"對(duì)刪除"請(qǐng)求以請(qǐng)求解除指定的巻及其從巻之間的配對(duì)關(guān)系。在112-02-3-4,該方法等待CPU以接收返回的消息。在112-02-3-5,檢查返回的消息。如果消息是"ok",則配對(duì)信息已經(jīng)被成功移除,并且該方法前進(jìn)到步驟112-02-3-6。在112-02-3-6,該方法從對(duì)管理表112-19中移除關(guān)于對(duì)的信息,對(duì)管理表112-19包括被配對(duì)的自系統(tǒng)信息反饋112-19-02、被配對(duì)的巻號(hào)碼信息112-19-03及指定的虛擬巻的主或>^人狀態(tài)112-19-04。然后該方法前進(jìn)到步驟112-02-3-7,在步驟112-02-3-7,"完成(done)"消息^J^送到"對(duì)刪除"請(qǐng)求的發(fā)出者。通常由主計(jì)算機(jī)300、管理終端130或管理終端430發(fā)出"對(duì)刪除,,請(qǐng)求。在112-02-3-10,對(duì)刪除程序112-02-2結(jié)束。如果在112-02-3-2指定虛擬巻的狀態(tài)沒(méi)有^皮確定為主,則該狀態(tài)為從,并且該方法前進(jìn)到112-02-3-8。在112-02-3-8,該方法從對(duì)管理表112-19中移除指定的虛擬巻140及其對(duì)之間的配對(duì)關(guān)系。該步驟包括從對(duì)管理表112-19中移除被配對(duì)的子系統(tǒng)信息112-19-02、被配對(duì)的巻號(hào)碼信息112-19-03及狀態(tài)112-19-04。在112-02-3-9,CPU將"OK"消息發(fā)送到"對(duì)刪除"請(qǐng)求的發(fā)出者。"對(duì)刪除"請(qǐng)求的發(fā)出者可以是包括"主,,巻的其它存儲(chǔ)子系統(tǒng)。該步驟之后,在112-02-3-10對(duì)刪除程序112-02-3結(jié)束。圖30說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行槽操作程序的示例性方法。在圖30的流程圖中示出執(zhí)行圖4和圖5的槽搮:作程序112-09的一個(gè)示例性方法。與圖26和27示出的方法相同,可由任一存儲(chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-09-0。在112-09-1,該方法確定槽操作請(qǐng)求是否已經(jīng)被接收到。如果已經(jīng)接收到該請(qǐng)求,則該方法前進(jìn)到步驟112-09-2。如果CPU111沒(méi)有接收到該請(qǐng)求,則該方法重復(fù)該步驟112-09-1。在步驟112-09-2,該方法確定所請(qǐng)求的操作的類(lèi)型。如果CPU111已經(jīng)接收到"槽鎖定"請(qǐng)求,則該方法前進(jìn)到步驟112-09-3。如果CPUlll沒(méi)有接收到"槽鎖定"請(qǐng)求,則該方法前進(jìn)到步驟112-09-4。在112-09-3,該方法通過(guò)將"鎖定"狀態(tài)寫(xiě)入高速緩沖存儲(chǔ)器管理表112-18中的鎖定狀態(tài)欄112-18-05來(lái)試圖鎖定槽。但是,如果狀態(tài)已經(jīng)祐:設(shè)置為"鎖定",則無(wú)法完成該步驟。當(dāng)狀態(tài)是"鎖定"時(shí),CPU111等待直到狀態(tài)變?yōu)?解鎖"。在CPU結(jié)束寫(xiě)"鎖定"狀態(tài)之后,該方法前進(jìn)到步驟112-09-6,在步驟112-09-6將確認(rèn)發(fā)送到請(qǐng)求發(fā)出者。該步驟之后,在112-09-7槽操作程序結(jié)束。在112-09-4,該方法檢查已接收到的操作請(qǐng)求來(lái)確定"槽解鎖"請(qǐng)求是否已經(jīng)被接收到。如果該請(qǐng)求不是"槽解鎖"請(qǐng)求,則該方法返回到112-09-1來(lái)檢查下一個(gè)請(qǐng)求。如果該請(qǐng)求是"槽解鎖"請(qǐng)求,則該方法前進(jìn)到112-09-5。在112-09-5,該方法將"解鎖"狀態(tài)寫(xiě)入高速緩沖存儲(chǔ)器管理表112-18中的鎖定狀態(tài)欄112-18-05。在將"解鎖"狀態(tài)寫(xiě)入該表完成之后,該方法前進(jìn)到步驟112-09-6,在步驟112-09-6,確認(rèn)被返回到請(qǐng)求發(fā)送者,在112-09-7槽操作程序結(jié)束。圖31說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行寫(xiě)1/0操作程序的示例性方法。在圖31的流程圖中示出執(zhí)行圖7的寫(xiě)1/0操作程序112-04-1的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-04-1-0。在112-04-1-1,該方法#:查所*接收到的請(qǐng)求是否是寫(xiě)1/0請(qǐng)求。如果寫(xiě)1/0請(qǐng)求沒(méi)有被接收到,則該方法重復(fù)步驟112-04-1-1。如果寫(xiě)I/O請(qǐng)求被接收到,則該方法前進(jìn)到步驟112-04-1-2。在112-04-1-2,該方法4僉查以確定發(fā)送寫(xiě)1/O請(qǐng)求的發(fā)起者。主計(jì)算機(jī)300或存儲(chǔ)子系統(tǒng)100、400之一可以發(fā)送該請(qǐng)求。如果該請(qǐng)求是由主計(jì)算機(jī)300發(fā)送的,則該方法前進(jìn)到112-04-1-5。如果該請(qǐng)求是由其它存儲(chǔ)子系統(tǒng)發(fā)送的,則該方法前進(jìn)到112-04-1-3。如果該請(qǐng)求是由存儲(chǔ)子系統(tǒng)之一發(fā)送的,則在112-04-1-3,該方法通過(guò)參照對(duì)狀態(tài)信息來(lái)檢查該存儲(chǔ)子系統(tǒng)的狀態(tài)。如果該狀態(tài)是"主"或"N/A",則該方法前進(jìn)到步驟112-04-1-5。如果該狀態(tài)是"從",則該方法前進(jìn)到步驟112-04-1-4。在112-04-1-4,該方法復(fù)制并發(fā)送寫(xiě)I/O到在其它存儲(chǔ)子系統(tǒng)中是從的被配對(duì)的虛擬巻。通過(guò)參照?qǐng)D17中所示的對(duì)管理表112-19中的被配對(duì)的巻子系統(tǒng)欄112-19-02及被配對(duì)的巻號(hào)碼112-19-03來(lái)確定寫(xiě)I/O目標(biāo)。然后,該方法前進(jìn)到步驟112-04-1-5。如果該請(qǐng)求的發(fā)起者是主計(jì)算機(jī)300或具有主虛擬巻狀態(tài)的存儲(chǔ)子系統(tǒng)之一,則該方法直接到達(dá)112-04-1-5。如果該請(qǐng)求的發(fā)起者是具有從虛擬巻狀態(tài)的存儲(chǔ)子系統(tǒng)之一,則該方法在達(dá)到112-04-1-5之前經(jīng)過(guò)112-04-1-4。在112-04-1-5,該方法搜索高速緩沖存儲(chǔ)器管理表112-18以尋找與用于I/0寫(xiě)數(shù)據(jù)的虛擬巻相關(guān)的高速緩沖存儲(chǔ)器槽112-20-1。這些高速緩沖存儲(chǔ)器槽被鏈接到"空閑"、"干凈"或"贓"隊(duì)列。如果CPU找到空閑的高速緩沖存儲(chǔ)器槽112-20-1,則然后該方法前進(jìn)到步驟112-04-1-7。如果CPU沒(méi)有找到空閑的高速緩沖存儲(chǔ)器槽112-20-1,則該方法前進(jìn)到步驟112-04-1-6。在112-04-1-6,該方法獲得被鏈接到在圖18和24中示出的高速緩沖存儲(chǔ)器管理表112-18的"空閑"隊(duì)列的高速緩沖存儲(chǔ)器槽112-20-1,然后該方法前進(jìn)到步驟112-04-1-7。在112-04-1-7,該方法通過(guò)將"鎖定"狀態(tài)寫(xiě)到被鏈接到所選擇的槽的鎖定狀態(tài)欄112-1-8-05來(lái)試圖鎖定該槽。當(dāng)狀態(tài)是"鎖定"時(shí),CPU無(wú)法重寫(xiě)該槽,并等待直到狀態(tài)變?yōu)?解鎖"。在寫(xiě)"鎖定"狀態(tài)結(jié)束之后,CPU前進(jìn)到步驟112-04-1-8。在112-04-1-8,該方法將寫(xiě)I/O數(shù)據(jù)從主計(jì)算機(jī)300或從其它存儲(chǔ)子系統(tǒng)傳送到高速緩沖存儲(chǔ)器槽112-20-1。在112-04-1-9,該方法將"解鎖"狀態(tài)寫(xiě)入鎖定狀態(tài)欄112-18-05。在CPU完成寫(xiě)"解鎖"之后,該方法前進(jìn)到112-04-1-10。在112-04-1-10,該方法可以檢查一次或多次來(lái)確定發(fā)送寫(xiě)1/0請(qǐng)求的發(fā)起者??蛇x擇地,該信息可以被保存并對(duì)于CPU是可用的。如果主計(jì)算機(jī)300發(fā)送了該請(qǐng)求,則該方法返回到112-04-1-1。如果存儲(chǔ)子系統(tǒng)之一發(fā)送了該請(qǐng)求,則該方法前進(jìn)到112-04-1-11。在112-04-1-11,該方法通過(guò)參照?qǐng)D17所示的對(duì)管理表112-19的對(duì)狀態(tài)欄來(lái)檢查其數(shù)據(jù)將被寫(xiě)入高速緩沖存儲(chǔ)器槽的虛擬巻的狀態(tài)。如果狀態(tài)被ik置為"從"或"N/A",則該方法返回到步驟112-04-1-1。如果狀態(tài)是"主",則該方法前進(jìn)到112-04-1-12。在112-04-1-12,該方法將寫(xiě)I/O復(fù)制并發(fā)送到的其它存儲(chǔ)子系統(tǒng)中的被配對(duì)的虛擬巻(其應(yīng)該是從巻)。該方法通過(guò)參照對(duì)管理表格112-19的被配對(duì)的巻子系統(tǒng)欄112-19-02和被配對(duì)的巻號(hào)碼欄112-19-03來(lái)尋找寫(xiě)I/O目標(biāo)。然后,該方法返回到112-04-1-1。圖32說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行讀1/CM喿作程序的示例性方法。在圖32的流程圖中示出執(zhí)行圖7的讀I/O操作程序112-04-2的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-04-2-0。在112-04-2-1,該方法確定是否已經(jīng)接收到的讀I/0請(qǐng)求。如果讀請(qǐng)求沒(méi)有被接收到,則該方法重復(fù)步驟112-04-2-1。如果讀請(qǐng)求被z接收到,則該方法前進(jìn)到步驟112-04-2-2。在112-04-2-2,該方法搜索鏈接到"干凈,,或"贓"隊(duì)列的高速緩沖存儲(chǔ)器管理表112-18以尋找該I/O請(qǐng)求的高速緩沖存儲(chǔ)器槽112-18-1。如果CPU找到相應(yīng)頂?shù)母咚倬彌_存儲(chǔ)器槽112-18-1,則然后該方法前進(jìn)到步驟112-04-2-6。如果CPU沒(méi)有找到相應(yīng)的高速緩沖存儲(chǔ)器槽,則然后該方法前進(jìn)到步驟112-04-2-3。在112-04-2-3,該方法尋找鏈接到高速緩沖存儲(chǔ)器管理表112-18的"空閑"隊(duì)列的高速緩沖存儲(chǔ)器槽112-20-1并前進(jìn)到步驟112-04-2-4。在112-04-2-4,CPU搜索虛擬巻頁(yè)管理表112-13并尋找虛擬巻頁(yè)參照的容量池頁(yè)121-2。然后該方法前進(jìn)到步驟112-04-2-5。在112-04-2-5,CPU調(diào)用高速緩沖存儲(chǔ)器升級(jí)程序112-05-2以將數(shù)據(jù)從磁盤(pán)槽121-3傳送到圖24所示的高速緩沖存儲(chǔ)器槽112-20-1。在112-04-2-5之后,該方法前進(jìn)到112-04-2-6。在112-04-2-6,CPU111試圖將"鎖定"狀態(tài)寫(xiě)入鏈接到所選擇的槽的鎖定狀態(tài)欄112-18-05。當(dāng)該狀態(tài)是"鎖定"時(shí),CPU111和CPU411不能重寫(xiě)該槽并等待知道該狀態(tài)變?yōu)?解鎖"。在結(jié)束寫(xiě)"鎖定"之后,該方法前進(jìn)到步驟112-04-2-7。在112-04-2-7,CPU111將讀I/O數(shù)據(jù)從高速緩沖存儲(chǔ)器槽112-20-1傳送到主計(jì)算機(jī)300并前進(jìn)到112-04-2-8。在112-04-2-8,CPU改變?cè)摬鄣臓顟B(tài)以通過(guò)將"解鎖"狀態(tài)寫(xiě)入鎖定狀態(tài)欄112-18-05來(lái)解鎖。在該方法解鎖該槽之后,返回112-04-2-1來(lái)等待下一個(gè)讀I/O操作。圖33A和圖33B示出根據(jù)本發(fā)明各方面的執(zhí)行容量池頁(yè)分配程序的示例性方法。在圖33A和圖33B的流程圖中示出執(zhí)行圖9的容量池頁(yè)分配程序112-08-1的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法,該方法用于執(zhí)行容量池頁(yè)分配。該方法開(kāi)始于112-08-1-0。在112-08-1-1,該方法通過(guò)參照對(duì)管理表112-19中的對(duì)狀態(tài)欄112-19-04來(lái)檢查虛擬巻140的狀態(tài)。如果該狀態(tài)是"主"或"N/A",則該方法前進(jìn)到步驟112-08-1-5。如果該狀態(tài)是"從",則該方法前進(jìn)到步驟112-08-1-2。在112-08-1-2,該方法發(fā)送請(qǐng)求到主巻所屬的存儲(chǔ)子系統(tǒng),該主巻尋找被參照的容量池頁(yè)。該方法通過(guò)參照對(duì)管理表112-19中的被配對(duì)的巻子系統(tǒng)欄112-19-02及被配對(duì)的巻號(hào)碼112-19-03確定存儲(chǔ)子系統(tǒng)。同樣地,該方法獲得關(guān)于虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系的信息。然后,該方法前進(jìn)到112-08-1-3。在112-08-1-3,該方法通過(guò)參照?qǐng)DIO的RAID組管理表中的RAID等級(jí)欄112-11-02來(lái)檢查該頁(yè)的源。如果在該表中,RAID等級(jí)的狀態(tài)被表示為"EXT",則該頁(yè)屬于外部巻,該方法前進(jìn)到步驟112-08-1-5。否則,對(duì)于RAID等級(jí)欄中的其它條目,該頁(yè)屬于內(nèi)部巻,該方法前進(jìn)到步驟112-08-1-4。在112-08-1-4,該方法根據(jù)在虛擬巻頁(yè)管理表112-13和容量池頁(yè)管理表112-17中提供的信息來(lái)設(shè)置虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系。該步驟之后,該方法結(jié)束,在112-08-1-12,容量池管理程序112-08-1的CPU的執(zhí)行停止。如果參照頁(yè)的存儲(chǔ)子系統(tǒng)的狀態(tài)被確定為"主"或"N/A",則該方法前進(jìn)到步驟112-08-1-5。在112-08-1-5,該方法確定外部巻是否與使用RAID組中的信息的容量池組塊和由圖11的虛擬巻管理表112-12的容量池欄112-12-05當(dāng)前使用的容量池組塊有關(guān)。如果當(dāng)前組塊欄112-12-05的條目是"N/A",則該方法前進(jìn)到步驟112-08-1-7。如果當(dāng)前組塊欄112-12-05具有除了"N/A"的條目,則該方法前進(jìn)到步璩112-08-1-6。在112-08-1-6,該方法檢查前述容量池頁(yè)中的空閑頁(yè)大小。如果在組塊中發(fā)現(xiàn)空閑頁(yè),則該方法前進(jìn)到步驟112-08-1-8。如果在組塊中沒(méi)有發(fā)現(xiàn)空閑頁(yè),則該方法前進(jìn)到步驟112-08-1-7。在112-08-1-7,該方法通過(guò)移動(dòng)并將當(dāng)前組塊欄112-12-05參照的容量池頁(yè)管理表112-17和在圖16的容量池部件管理表112-15中使用的組塊隊(duì)列索引112-15-04相關(guān)系來(lái)解除舊的容量池組塊。然后,該方法前進(jìn)到步驟112-08-1-8。在112-08-1-8,該方法將容量池部件管理表112-15的空閑組塊隊(duì)列索引112-15-03正在參照的容量池頁(yè)管理表112-17連接到當(dāng)前的組塊欄112-12-05。然后,該方法前進(jìn)到步驟112-08-1-9。在112-08-1-9,該方法通過(guò)讀取RAID組管理表112-11的RAID等級(jí)欄112-11-02來(lái)檢查新的容量池組塊是否屬于例如外部巻621等共享的外部巻。如果RAID等級(jí)欄中的狀態(tài)沒(méi)有被標(biāo)為"EXT",則該方法前進(jìn)到步驟112-08-1-11。如果RAID等級(jí)欄中的狀態(tài)是"EXT",則該方法前進(jìn)到步驟112-08-1-10。在112-08-1-10,該方法將"組塊解除"請(qǐng)求消息發(fā)送到其它存儲(chǔ)子系統(tǒng),這些子系統(tǒng)共享用于新的容量池組塊的相同的外部巻。可以通過(guò)廣播發(fā)送該請(qǐng)求消息。在112-08-1-10之后,如果RAID等級(jí)欄中的狀態(tài)沒(méi)有被標(biāo)為"EXT",則該方法前進(jìn)到步驟112-08-1-11。在112-08-1-11,該方法通過(guò)設(shè)置圖12的虛擬巻頁(yè)管理表112-13和圖17的容量池頁(yè)管理表112-17的虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系來(lái)將最近獲得的容量池頁(yè)分配給虛擬巻頁(yè)。該步驟之后,在112-08-1-12,該方法和容量池管理程序112-08-1的執(zhí)行結(jié)束。圖34說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行高速緩沖存儲(chǔ)器升級(jí)程序的示例性方法。在圖34的流程圖中示出執(zhí)行圖8的高速緩沖存儲(chǔ)器升級(jí)程序112-05-2的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-05-2-0。高速緩沖存儲(chǔ)器升級(jí)方法可以包括由CPU執(zhí)行的高速緩沖存儲(chǔ)器升級(jí)程序112-05-2。在112-05-2-1,該方法如圖24所示將槽數(shù)據(jù)從磁盤(pán)槽121-3傳送到高速緩沖存儲(chǔ)器槽112-20-1。在112-05-2-2,高速緩沖存儲(chǔ)器升級(jí)程序。圖35說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行磁盤(pán)刷新程序的示例性方法。在圖35的流程圖中示出執(zhí)行圖8的磁盤(pán)刷新程序112-05-1的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-05-1-0。磁盤(pán)刷新方法可以包括由CPU執(zhí)行的磁盤(pán)刷新程序112-05-1。在112-05-1-1,該方法搜索用于高速緩沖存儲(chǔ)器槽的高速緩沖存儲(chǔ)器管理表112-18的"臟,,隊(duì)列。如果找到該槽,則該方法獲得是臟隊(duì)列槽的臟隊(duì)列的第一個(gè)槽,并且該方法前進(jìn)到112畫(huà)05-l國(guó)2。在112-05-1-2,該方法調(diào)用高速緩沖存儲(chǔ)器降級(jí)程序112-05-3并將臟的高速緩沖存儲(chǔ)器槽降級(jí)。該步驟之后,該方法返回到步驟112-05-1-1,在112-05-1-1繼續(xù)搜索臟的高速緩沖存儲(chǔ)器槽。同樣,如果在112-05-1-1沒(méi)有找到臟的高速緩沖存儲(chǔ)器槽,則該方法返回到112-05-1-1的相同步驟以繼續(xù)尋找該槽。34圖36、圖37及圖38示出根據(jù)本發(fā)明各方面的執(zhí)行高速緩沖存儲(chǔ)器降級(jí)程序的示例性方法。在圖34A、34B及34C的流程圖中示出執(zhí)行圖8的高速緩沖存儲(chǔ)器降級(jí)程序112-05-3的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-05-3-0??梢酝ㄟ^(guò)由CPU執(zhí)行高速緩沖存儲(chǔ)器降級(jí)程序112-05-3來(lái)執(zhí)行示出的該方法。在112-05-3-1,該方法通過(guò)參照?qǐng)D17的對(duì)管理表112-19的狀態(tài)欄112-19-04來(lái)檢查虛擬巻140的狀態(tài)。如果該狀態(tài)是"主"或"N/A",則該方法前進(jìn)到圖37的步驟112-08-3-8。如果該狀態(tài)是"從",則該方法前進(jìn)到步驟112-05-3-2。在112-05-3-2,該方法檢查有關(guān)于包括要被降級(jí)的槽的虛擬巻頁(yè)的容量池分配的狀態(tài)。該方法從圖12的虛擬巻頁(yè)管理表112-13中讀取相關(guān)的RAID組號(hào)碼112-13-02及容量池頁(yè)地址112-13-03。如果該參數(shù)不是"N/A",則該方法前進(jìn)到步驟112-05-3-5。如果該參數(shù)是"N/A",則該方法前進(jìn)到步驟112-05-3-3。在112-05-3-3,該方法調(diào)用容量池頁(yè)分配程序112-08-1以將新的容量池頁(yè)分配給該槽,并且該方法前進(jìn)到步驟112-05-3-4。在112-05-3-4,該方法將"0"數(shù)據(jù)填充到最近分配的頁(yè)的槽以將該頁(yè)格式化。該頁(yè)的凈皮寫(xiě)入的區(qū)沒(méi)有被重寫(xiě)。然后該方法前進(jìn)到112-05-3-5。在112-05-3-5,該方法試圖將"鎖定"狀態(tài)寫(xiě)入與選擇的槽相關(guān)的鎖定狀態(tài)欄112-18-05。從而鎖定該槽。當(dāng)該狀態(tài)是"鎖定"時(shí),CPU不能在該槽重寫(xiě)數(shù)據(jù)并等待直到該狀態(tài)變?yōu)?解鎖"。在該方法完成寫(xiě)"鎖定"狀態(tài)之后,該方法前進(jìn)到步驟112-05-3-6。在112-05-3-6,該方法將槽數(shù)據(jù)從高速緩沖存儲(chǔ)器槽121-20-1傳送到磁盤(pán)槽121-3,并且該方法前進(jìn)到步驟112-05-3-7。在112-05-3-7,該方法將"解鎖"狀態(tài)寫(xiě)入鎖定狀態(tài)欄112-18-05。在寫(xiě)入"解鎖"完成之后,在112-05-3-30高速緩沖存儲(chǔ)器降級(jí)程序結(jié)束。如果該巻的狀態(tài)是從,則該方法從112-05-3-1前進(jìn)到112-05-3-8,在112-05-3-8該方法檢查關(guān)于包括該槽的虛擬巻頁(yè)的容量池分配的狀態(tài)。該方法讀取虛擬巻頁(yè)管理表112-13中的相關(guān)的RAID組號(hào)碼112-13-02及容量池頁(yè)地址112-13-03。如果該參數(shù)是"N/A",則該方法前進(jìn)到步驟112-05-3-20。如果該參數(shù)不是"N/A",則存在與該虛擬巻中的槽相關(guān)的容量池頁(yè),并且該方法前進(jìn)到步驟112-05-3-10。在112-05-3-10,該方法確定在主巻的存儲(chǔ)子系統(tǒng)中的容量池頁(yè)的分配狀態(tài)。這里,該方法通過(guò)參照?qǐng)D17的對(duì)管理表112-19的被配對(duì)巻子系統(tǒng)欄112-19-02和被配對(duì)的巻號(hào)碼欄112-19-03欄來(lái)確定存儲(chǔ)子系統(tǒng),并且該方法獲得虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系。然后該方法前進(jìn)到112-05-3-11。在112-05-3-11該方法通過(guò)從虛擬巻管理表中讀取相關(guān)的RAID組號(hào)碼112-13-02和容量池頁(yè)地址112-13-03來(lái)檢查包括該槽的虛擬巻頁(yè)的容量池分配的狀態(tài)。如果該參數(shù)是"N/A",則不存在已分配給主槽的容量池頁(yè),并且該方法前進(jìn)到步驟112-05-3-12。在112-05-3-12,該方法休眠合適長(zhǎng)度的時(shí)間以等待完成主的分配,然后該方法返回步驟112-05-3-10。如果該參數(shù)不是"N/A",則存在已分配給主槽的容量池頁(yè),并且該方法前進(jìn)到步驟112-05-3-13。在112-05-3-13,該方法根據(jù)虛擬巻頁(yè)管理表112-13和容量池頁(yè)管理表112-17中的信息來(lái)設(shè)置虛擬巻頁(yè)和主巻的容量池頁(yè)之間的關(guān)系。然后,該方法前進(jìn)到步驟112-05-3-20。在112-05-3-20,該方法將"槽鎖定"消息發(fā)送到主巻的存儲(chǔ)子系統(tǒng)。在該方法接收到消息已經(jīng)被接收到的確認(rèn)之后,該方法前進(jìn)到步驟112-05-3-21。在112-05-3-21,該方法詢問(wèn)關(guān)于主巻的槽狀態(tài)。在該方法4^收到應(yīng)答之后,該方法前進(jìn)到步驟112-05-3-22。在112-05-3-22,該方法檢查主巻的槽狀態(tài)。如果該狀態(tài)是"臟",則該方法前進(jìn)到步驟112-05-3-23。如果該狀態(tài)不是"臟",則該方法前進(jìn)到步驟112-05-3-27。在112-05-3-23,該方法試圖通過(guò)將"鎖定"狀態(tài)寫(xiě)入與高速緩沖存儲(chǔ)器管理表中的所選擇的槽相關(guān)的鎖定狀態(tài)欄112-18-05來(lái)鎖定該槽。當(dāng)該狀態(tài)是"鎖定"時(shí),CPU不能通過(guò)另一個(gè)"鎖定"命令重寫(xiě)該槽。在CPU已經(jīng)完成寫(xiě)入"鎖定"狀態(tài)之后,該方法前進(jìn)到步驟112-05-3-24。在112-05-3-24,該方法將從的槽狀態(tài)改變?yōu)?干凈,,,并且該方法前進(jìn)到步驟112-05-3-25。在112-05-3-25,該方法將"解鎖"狀態(tài)寫(xiě)入高速緩沖存儲(chǔ)器管理表中的鎖定狀態(tài)欄112-18-05,并且該方法前進(jìn)到步驟112-05-3-26。在112-05-3-26,該方法將"槽解鎖"消息發(fā)送到主巻的存儲(chǔ)子.系統(tǒng)。在該方法接收到確認(rèn)之后,在112-05-3-30,該方法結(jié)束高速緩沖存儲(chǔ)器降級(jí)程序112-05-3。如果主槽狀態(tài)是"臟",則在112-05-3-27該方法試圖將"鎖定"狀態(tài)寫(xiě)入與所選擇的槽相關(guān)的鎖定狀態(tài)欄112-18-05。當(dāng)該狀態(tài)是"鎖定"時(shí),CPU不能通過(guò)另一個(gè)"鎖定"命令重寫(xiě)該狀態(tài),并且CPU等待直到該狀態(tài)變?yōu)?解鎖"。在完成寫(xiě)入"鎖定"狀態(tài)之后,CPU前進(jìn)到步驟112-05-3-28。在112-05-3-28,該方法將槽數(shù)據(jù)從高速緩沖存儲(chǔ)器槽112-20-1傳送到磁盤(pán)槽121-3。在完成該傳送之后,該方法將高速緩沖存儲(chǔ)器槽112-20-1與圖18的高速緩沖存儲(chǔ)器管理表112-18中的隊(duì)列索引指針112-18-12的"干凈"隊(duì)列相關(guān)聯(lián)。然后,該方法前進(jìn)到步驟112-05-3-26,在將解鎖請(qǐng)求發(fā)送到主巻的存儲(chǔ)子系統(tǒng)之后,在112-05-3-30該方法結(jié)束。圖39說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行容量池回收程序的示例性方法。在圖39的流程圖中示出執(zhí)行圖9的容量池回收程序112-08-2的一個(gè)示例性方法。可由任一存儲(chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-08-2-0。在112-08-2-1,該方法搜索容量池組塊管理表112-16來(lái)尋找與由容量池部件管理表112-15索引的被使用的組塊隊(duì)列相關(guān)的組塊。該方法參照已刪除的容量欄112-16-04并檢查與該組塊相應(yīng)的值是否大于0,從而該方法將該組塊當(dāng)作"部分被刪除的組塊"。如果該方法沒(méi)有找到"部分被刪除的組塊",則該方法重復(fù)步驟112-08-2-1。如果該方法找到部分被刪除的組塊,則該方法前進(jìn)到步驟112-08-2-2。在112-08-2-2,該方法訪問(wèn)與由容量池部件管理表112-15索引的"空閑組塊"隊(duì)列相關(guān)的容量池組塊管理表112-16以分配新的容量池組塊121-1替代部分被刪除的組塊。然后,該方法前進(jìn)到步驟112-08-2-3。在112-08-2-3,該方法使指針清零以在步驟112-08-2-4和步驟112-08-2-7之間重復(fù)。為了使指針清零,該方法將指針A設(shè)置到當(dāng)前分配的組塊的第一個(gè)槽并將指針B設(shè)置到最近分配的組塊的第一個(gè)槽。然后,該方法前進(jìn)到步-驟112-08-2-4。在步驟112-08-2-4,該方法確定槽是否處于組塊的已刪除的頁(yè)。為了進(jìn)行該確定,該方法讀取容量池頁(yè)管理表112-17、從容量池頁(yè)索引112-17-1來(lái)計(jì)算頁(yè)的偏移量并檢查虛擬巻頁(yè)號(hào)碼112-17-02。如果虛擬巻頁(yè)號(hào)碼112-17-02是"空",則該方法前進(jìn)到112-08-2-6。如果虛擬巻頁(yè)號(hào)碼112-17-02不是"空",則該方法前進(jìn)到112-08-2-5。在112-08-2-5,該方法將數(shù)據(jù)從由指針A指示的槽復(fù)制到由指針B指示的槽。該方法使指針B前進(jìn)到最近分配的組塊的下一37個(gè)槽。然后該方法前進(jìn)到步驟112-08-2-6。在112-08-2-6,該方法斥企查指針A。如果指針A已經(jīng)到達(dá)當(dāng)前組塊的最后一個(gè)槽,則該方法前進(jìn)到步驟112-08-2-8。如果指針A還沒(méi)有到達(dá)當(dāng)前組塊的最后一個(gè)槽,則該方法前進(jìn)到步驟112-08-2-7。在112-08-2-7,該方法使指針A前進(jìn)到當(dāng)前組塊的下一個(gè)槽。然后該方法返回到步驟112-08-2-4以檢查下一個(gè)槽。如果在112-08-2-6指針A已經(jīng)到達(dá)組塊的底端,則該方法前進(jìn)到112-08-2-8。在112-08-2-8,該方法存儲(chǔ)已被復(fù)制到容量池頁(yè)管理表112-17的槽的虛擬巻頁(yè)140-1地址,并改變虛擬巻頁(yè)管理表以包括最近復(fù)制的容量池頁(yè)121-1地址和大小。然后,該方法前進(jìn)到步驟112-08-2-9。在112-08-2-9,該方法將當(dāng)前組塊(該組塊是已被找到的部分被刪除的組塊)設(shè)置到由容量池部件管理表112-15索引的"空閑組塊"隊(duì)列。然后,該方法返回到步驟112-08-2-1。圖40說(shuō)明根據(jù)本發(fā)明各方面的執(zhí)行容量池組塊解除程序的示例性方法。在圖40的流程圖中示出執(zhí)行圖9的容量池組塊解除程序112-08-3的一個(gè)示例性方法??捎扇我淮鎯?chǔ)子系統(tǒng)的CPU執(zhí)行該方法。該方法開(kāi)始于112-08-3-0。在112-08-3-1,該方法檢查是否已經(jīng)接收到"組塊解除"操作請(qǐng)求。如果沒(méi)有收到該請(qǐng)求,則該方法重復(fù)步驟112-08-3-1。如果已經(jīng)收到該種請(qǐng)求,則該方法前進(jìn)到步驟112-08-3-2。在112-08-3-2,該方法搜索用于虛擬巻的容量池組塊管理表112-16,該虛擬巻與由容量池部件管理表112-15索引的"空閑組塊"隊(duì)列相關(guān)。該方法將從容量池組塊管理表112-16獲得的目標(biāo)虛擬巻從"空閑組塊"隊(duì)列發(fā)送到4皮排除的組塊"隊(duì)列并前進(jìn)到步驟112-08-3-3。在112-08-3-3,該方法對(duì)來(lái)自存儲(chǔ)子系統(tǒng)的"解除組塊"操作請(qǐng)求返回確認(rèn)。然后,該方法返回步驟112-08-3-1。圖41、圖42圖43及圖44示出對(duì)主和從巻的寫(xiě)I/O和降級(jí)操作的時(shí)序。在這些圖中,存儲(chǔ)子系統(tǒng)100的虛擬巻140在"主"狀態(tài)下工作并被參考為140m,存儲(chǔ)子系統(tǒng)400的虛擬巻140在"從"狀態(tài)下工作并被參考為140s。在這些圖中,圖1的系統(tǒng)被簡(jiǎn)化以示出主計(jì)算機(jī)300、存儲(chǔ)子系統(tǒng)100(400)及外部巻621。作為140m和140s示出主和從虛擬巻。除了如S1-1所示出的步驟之外,相似地,在緊挨著箭頭的圓圈中的號(hào)碼也示出正在執(zhí)行的操作的時(shí)序。圖41提供根據(jù)本發(fā)明的各方面的對(duì)主巻寫(xiě)I/O的時(shí)序。圖41示出的時(shí)序相應(yīng)于寫(xiě)1/0操作程序112-04-1。在Sl-l,主計(jì)算機(jī)300發(fā)送寫(xiě)I/O請(qǐng)求和將要寫(xiě)入虛擬巻140m的數(shù)據(jù)。存儲(chǔ)子系統(tǒng)100將寫(xiě)I/O數(shù)據(jù)存儲(chǔ)到它的高速緩沖存儲(chǔ)器槽中。當(dāng)該操作進(jìn)行時(shí),存儲(chǔ)子系統(tǒng)100鎖定該槽。在Sl-2,在將寫(xiě)I/O數(shù)據(jù)存儲(chǔ)到存儲(chǔ)子系統(tǒng)100的高速緩沖存儲(chǔ)區(qū)之后,存儲(chǔ)子系統(tǒng)100復(fù)制該寫(xiě)I/O請(qǐng)求以及將要被寫(xiě)入存儲(chǔ)子系統(tǒng)400的虛擬巻140s的關(guān)聯(lián)數(shù)據(jù)。存儲(chǔ)子系統(tǒng)400將寫(xiě)I/O數(shù)據(jù)存儲(chǔ)到它的高速緩沖存儲(chǔ)器槽中。當(dāng)該操作進(jìn)行時(shí),存儲(chǔ)子系統(tǒng)400鎖定該槽。在Sl-3,在將寫(xiě)I/0數(shù)據(jù)存儲(chǔ)到存儲(chǔ)子系統(tǒng)400的高速緩沖存儲(chǔ)區(qū)之后,存儲(chǔ)子系統(tǒng)400向存儲(chǔ)子系統(tǒng)100返回確認(rèn)消息。在S1-4,在接收到來(lái)自存儲(chǔ)子系統(tǒng)400的前述確認(rèn)之后,存儲(chǔ)子系統(tǒng)100將該確認(rèn)返回到主計(jì)算才幾300。圖42提供根據(jù)本發(fā)明的各方面的對(duì)從巻寫(xiě)I/O的時(shí)序。圖42示出的時(shí)序也相應(yīng)于寫(xiě)1/0操作程序112-04-1。在S2-l,主計(jì)算機(jī)300將寫(xiě)1/0請(qǐng)求和相關(guān)的數(shù)據(jù)發(fā)送到虛擬巻140s。在S2-2,存儲(chǔ)子系統(tǒng)400將接收到的寫(xiě)1/0請(qǐng)求和相關(guān)數(shù)據(jù)復(fù)制并發(fā)送到虛擬巻140m。存儲(chǔ)子系統(tǒng)100將寫(xiě)I/0數(shù)據(jù)存儲(chǔ)到它的高速緩沖存儲(chǔ)器槽中。當(dāng)該操作進(jìn)行時(shí),存儲(chǔ)子系統(tǒng)IOO鎖定該槽。在S2-3,在將寫(xiě)1/0數(shù)據(jù)存儲(chǔ)到存儲(chǔ)子系統(tǒng)IOO的高速緩沖存儲(chǔ)器槽之后,存儲(chǔ)子系統(tǒng)100向存儲(chǔ)子系統(tǒng)400返回確認(rèn)消息。在存儲(chǔ)子系統(tǒng)400接收到前述確認(rèn)之后,存儲(chǔ)子系統(tǒng)400將寫(xiě)1/0數(shù)據(jù)存儲(chǔ)到它的高速緩沖存儲(chǔ)器槽中。當(dāng)該操作進(jìn)行時(shí),存儲(chǔ)子系統(tǒng)IOO鎖定該槽。在S2-4,在將寫(xiě)I/O數(shù)據(jù)存儲(chǔ)到存儲(chǔ)子系統(tǒng)400的高速緩沖存儲(chǔ)器槽之后,存儲(chǔ)子系統(tǒng)400將確認(rèn)返回到主計(jì)算機(jī)300。圖43提供根據(jù)本發(fā)明的各方面的從主巻對(duì)外部巻降級(jí)的時(shí)序。圖43示出的時(shí)序相應(yīng)于高速緩沖存儲(chǔ)器降級(jí)程序112-05-3。在S3-1,存儲(chǔ)子系統(tǒng)100尋找位于未被分配的虛擬巻頁(yè)中的臟的高速緩沖存儲(chǔ)器槽,獲得外部巻621的新的容量池組塊以進(jìn)行分配,并且將"頁(yè)解除"請(qǐng)求發(fā)送到存儲(chǔ)子系統(tǒng)400。在S3-2,存儲(chǔ)子系統(tǒng)400接收到該請(qǐng)求并進(jìn)行搜索,并且將找到的是臟的的被共享的前述容量池組塊忽略。在忽略完成之后,存儲(chǔ)子系統(tǒng)400將確認(rèn)返回到存儲(chǔ)子系統(tǒng)100。隨后,在S3-3,在存儲(chǔ)子系統(tǒng)100接收到忽略的確認(rèn)之后,存儲(chǔ)子系統(tǒng)100從前述容量池組塊中將新的容量池頁(yè)分配給虛擬巻頁(yè)。然后,在分配操作結(jié)束之后,在S3-4,存儲(chǔ)子系統(tǒng)100將臟的高速緩沖存儲(chǔ)器槽傳送到外部巻621,在該操作過(guò)程中,存儲(chǔ)子系統(tǒng)100鎖定該槽。然后,在S3-5,在傳送臟的高速緩沖存儲(chǔ)器槽之后,存儲(chǔ)子系統(tǒng)100接收到來(lái)自外部巻621的確認(rèn)。在接收到該確認(rèn)之后,存儲(chǔ)子系統(tǒng)100將該槽狀態(tài)從臟改變?yōu)楦蓛?,并將該槽解鎖。圖44提供根據(jù)本發(fā)明的各方面的從從巻對(duì)外部巻降級(jí)的時(shí)序。圖44示出的時(shí)序也相應(yīng)于高速緩沖存儲(chǔ)器降級(jí)程序112-05-3。在S4-l,存儲(chǔ)子系統(tǒng)400尋找臟的高速緩沖存儲(chǔ)器槽,該槽位于未被分配的虛擬巻頁(yè)中。存儲(chǔ)子系統(tǒng)400詢問(wèn)存儲(chǔ)子系統(tǒng)100關(guān)于在虛擬巻140m上的容量池頁(yè)分配的狀態(tài)。在S4-2,該請(qǐng)求之后,存儲(chǔ)子系統(tǒng)100從容量池頁(yè)管理表中讀取虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系并將應(yīng)答發(fā)送到存儲(chǔ)子系統(tǒng)400。在S4-3,接收到該應(yīng)答之后,存儲(chǔ)子系統(tǒng)400將虛擬巻頁(yè)分配給虛擬巻140s上的相同的容量池頁(yè)。隨后在S4-4,存儲(chǔ)子系統(tǒng)400將"鎖定"請(qǐng)求消息發(fā)送到存儲(chǔ)子系統(tǒng)100。在S4-5,存儲(chǔ)子系統(tǒng)IOO接收到該消息并鎖定位于與虛擬巻140s的前述臟的槽相同的區(qū)的目標(biāo)槽。鎖定該槽之后,存儲(chǔ)子系統(tǒng)100將確認(rèn)及虛擬巻140m的槽狀態(tài)返回到存儲(chǔ)子系統(tǒng)400。在S4-6,在確認(rèn)返回之后,如果虛擬巻140m的槽狀態(tài)是臟,則存儲(chǔ)子系統(tǒng)400將臟的高速緩沖存儲(chǔ)器槽傳送到外部巻621。在該操作過(guò)程中,存儲(chǔ)子系統(tǒng)100鎖定該槽。在S4-7,在傳送臟的高速緩沖存儲(chǔ)器槽之后,存儲(chǔ)子系統(tǒng)400接收到來(lái)自外部巻621的確認(rèn)。在接收到該確認(rèn)之后,存儲(chǔ)子系統(tǒng)IOO將槽狀態(tài)從臟改變?yōu)楦蓛簦⒃摬劢怄i。圖45說(shuō)明根據(jù)本發(fā)明的各方面的存儲(chǔ)系統(tǒng)。圖45所示的存儲(chǔ)系統(tǒng)與圖1所示的存儲(chǔ)系統(tǒng)相似,該系統(tǒng)也包括兩個(gè)或多個(gè)存儲(chǔ)子系統(tǒng)IOO、400及主計(jì)算機(jī)300。然而,代替外部巻621,圖45所示的存儲(chǔ)系統(tǒng)包括外部存儲(chǔ)子系統(tǒng)600。圖45所示的存儲(chǔ)系統(tǒng)還包括一個(gè)或多個(gè)存儲(chǔ)網(wǎng)絡(luò)200。存儲(chǔ)子系統(tǒng)100、400可以被直接地耦合在一起??梢灾苯踊蛲ㄟ^(guò)存儲(chǔ)網(wǎng)絡(luò)200將主計(jì)算機(jī)耦合到存儲(chǔ)子系統(tǒng)100、400??梢灾苯訉⑼獠看鎯?chǔ)子系統(tǒng)600耦合到存儲(chǔ)子系統(tǒng)100、400。圖46說(shuō)明根據(jù)本發(fā)明的各方面的在存儲(chǔ)子系統(tǒng)100和400中存儲(chǔ)的另一容量池管理程序的示例性結(jié)構(gòu)。容量池管理程序112-08的一個(gè)示例性結(jié)構(gòu)包括容量池頁(yè)分配程序112-08-la、容量池回收程序112-08-2及容量池?cái)U(kuò)充(extension)程序112-08-3。當(dāng)與圖9的容量池管理程序112-08相比較時(shí),代替容量池頁(yè)分配程序112-08-1,圖46所示的程序包括容量池頁(yè)分配程序112-08-la。圖47A和圖47B示出根據(jù)本發(fā)明的各方面的執(zhí)行容量池頁(yè)分配的示例性方法。在圖52的流程圖中示出容量池管理分配程序112-08-la的示例性執(zhí)行??梢杂纱鎯?chǔ)子系統(tǒng)100和400的CPU111、411執(zhí)行該程序。該方法開(kāi)始于112-08-la-0。在112-08-la-2,存儲(chǔ)子系統(tǒng)之一的CPU(例如CPU111)將"獲得頁(yè)分配信息"從存儲(chǔ)子系統(tǒng)IOO發(fā)送到外部存儲(chǔ)子系統(tǒng)600。頁(yè)分配信息有關(guān)于主巻的虛擬巻頁(yè)的分配。在CPU111接收到來(lái)自外部存儲(chǔ)子系統(tǒng)600的應(yīng)答之后,該方法前進(jìn)到112-08-la-3。在112-08-la-3,CPU111檢查該已經(jīng)從外部存儲(chǔ)子系統(tǒng)接收到的應(yīng)答。如果該應(yīng)答是"空閑",則被請(qǐng)求的頁(yè)不屬于外部存儲(chǔ)巻,并且CPUlll前進(jìn)到步驟112-08-la-5。如果該應(yīng)答是頁(yè)號(hào)碼和巻號(hào)碼,則被請(qǐng)求的頁(yè)已經(jīng)被分配給外部存儲(chǔ)系統(tǒng),并且CPU111前進(jìn)到步驟112-08-la-4。在112-08-la-4,CPUlll根據(jù)虛擬巻頁(yè)管理表112-13a和容量池頁(yè)管理表112-17來(lái)設(shè)置虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系信息。該步驟之后,在112-08-la-12,CPUlll結(jié)束容量池頁(yè)分配程序112-08-la。當(dāng)被請(qǐng)求的頁(yè)還沒(méi)有被分配給外部巻時(shí),在步驟112-08-la-5,CPU111參照容量池頁(yè)管理表112-17列(該列被虛擬巻管理表112-05的容量池欄112-12-05當(dāng)前正在使用的RAID組和組塊參照)以確定某一欄是否被分配給某一組塊。如果當(dāng)前使用的組塊欄112-12-05是"N/A",則不存在分配給組塊的欄,并且CPU111前進(jìn)到步驟112-08-la-8。如果當(dāng)前使用的組塊欄112-12-05沒(méi)有被設(shè)置為"N/A",則該方法前進(jìn)到步驟112-08-la-6。在112-08-la-6,CPUlll檢查在前述容量池頁(yè)中的空閑頁(yè)大小。如果存在可用的空閑頁(yè),則該方法前進(jìn)到步驟112-08-la-8。如果不存在可用的空閑頁(yè),則該方法前進(jìn)到步-驟112-08-la-7。在112-08-la-7,該方法通過(guò)將由當(dāng)前正在使用的組塊欄112-12-05參照的容量池管理表112-17移動(dòng)并耦合到容量池部件管理表112-15的被使用的組塊隊(duì)列索引112-15-04來(lái)解除舊的容量池組塊。然后,該方法運(yùn)行到112醫(yī)08-la-8。在112-08-la-8,該方法通過(guò)將由空閑組塊隊(duì)列索引112-15-03指的容量池管理表112-17移動(dòng)并連接到容量池部件管理表112-15的被使用的組塊隊(duì)列索引112-15-05來(lái)獲得新的容量池組塊。然后,該方法前進(jìn)到步驟112-08-la-9。在112-08-la-9,CPU111通過(guò)讀取RAID等級(jí)欄112-11-02來(lái)檢查以確定新的容量池組塊是否屬于外部巻621。如果該狀態(tài)不是"EXT",則該方法前進(jìn)到步驟112-08-la-ll。如果該狀態(tài)是"EXT",則新的容量池組塊不屬于外部巻621,并且該方法前進(jìn)到步驟112-08-la-10。在112-08-la-10,該方法選擇新的組塊中的頁(yè)并將關(guān)于所選擇的頁(yè)的"頁(yè)分配"請(qǐng)求發(fā)送到外部存儲(chǔ)子系統(tǒng)。在CPU111接收到應(yīng)答之后,該方法前進(jìn)到步驟112-08-1a-12。在112-08-1a-12,CPUlll檢查所接收到的應(yīng)答。如果該應(yīng)答是"已經(jīng)分配",則該方法返回步驟112-08-la-10。如果該應(yīng)答是"成功",則該方法返回步驟112-08-la-ll。在112-08-la-ll,CPU111設(shè)置虛擬巻頁(yè)管理表112-13和容量池頁(yè)管理表112-17中的虛擬巻頁(yè)和容量池頁(yè)之間的關(guān)系。該步驟之后,在112-08-la-ll,容量池頁(yè)分配程序112-08-la結(jié)束。圖48說(shuō)明根據(jù)本發(fā)明的其它方面的外部存儲(chǔ)子系統(tǒng)。圖48中更具體地示出外部存儲(chǔ)子系統(tǒng)600。外部存儲(chǔ)子系統(tǒng)600包括存儲(chǔ)控制器610、磁盤(pán)單元620及管理終端630。存儲(chǔ)控制器610包括用于除了已存儲(chǔ)的數(shù)據(jù)還存儲(chǔ)程序和表格的存儲(chǔ)器612,用于執(zhí)行存儲(chǔ)器中存儲(chǔ)的程序的CPU611,用于耦合到磁盤(pán)單元621a的磁盤(pán)接口(例如SCSII/F)616,用于將父存儲(chǔ)接口615耦合到存儲(chǔ)子系統(tǒng)之一上的外部存儲(chǔ)接口118、418的父存儲(chǔ)接口(例如光線通道I/F)615、617,以及用于將磁盤(pán)控制器耦合到管理終端630上的存儲(chǔ)控制器接口633的管理終端接口614。父存儲(chǔ)接口615接收到來(lái)自存儲(chǔ)子系統(tǒng)100I/O的請(qǐng)求并將該請(qǐng)求通知CPU611。管理終端界面616接收到來(lái)自管理終端630的巻、磁盤(pán)及容量池操作請(qǐng)求并將該請(qǐng)求通知CPU611。磁盤(pán)單元620包括例如HDD等磁盤(pán)621a。管理終端630包括用于管理管理終端630的處理的CPU631,存儲(chǔ)器632,用于將存儲(chǔ)控制器耦合到管理終端接口614的存儲(chǔ)控制器接口(例如NIC)633,及例如鍵盤(pán)、鼠標(biāo)或監(jiān)視器等用戶接口。存儲(chǔ)控制器接口633將巻、磁盤(pán)及容量池操作發(fā)送到存儲(chǔ)控制器610。存儲(chǔ)控制器610提供是虛擬巻的外部巻621來(lái)存儲(chǔ)數(shù)據(jù)。圖49說(shuō)明根據(jù)本發(fā)明其它方面的外部存儲(chǔ)子系統(tǒng)的存儲(chǔ)器的示例性結(jié)構(gòu)。圖49示出外部巻600的存儲(chǔ)器612的一個(gè)示例性結(jié)構(gòu)。該存儲(chǔ)器包括虛擬巻頁(yè)管理程序112-01a、1/0操作程序112-04、》茲盤(pán)訪問(wèn)程序112-05、容量池管理程序112畫(huà)08a、槽操作程序112-09、RAID組管理表112-11、虛擬巻管理表112-12、虛擬巻頁(yè)管理表112-13a、容量池管理表112-14、容量池部件管理表112-15、容量池組塊管理表112-16、容量池頁(yè)管理表112-17、對(duì)管理表112-19、容量池頁(yè)管理表112-17、高速緩沖存儲(chǔ)器管理表112-18及高速緩沖存儲(chǔ)區(qū)112-20。當(dāng)CPU611接收到來(lái)自存儲(chǔ)子系統(tǒng)100之一的"頁(yè)分配"請(qǐng)求時(shí),虛擬巻頁(yè)管理程序112-01a運(yùn)行。如果指定的頁(yè)已經(jīng)被分配,則CPU611向請(qǐng)求方返回錯(cuò)誤消息。如果指定的頁(yè)還沒(méi)有被分配,則CPU611存儲(chǔ)主巻頁(yè)和指定的頁(yè)之間的關(guān)系并返回成功消息。虛擬巻頁(yè)管理程序112-01a是系統(tǒng)駐留程序。圖50說(shuō)明存儲(chǔ)控制器的存儲(chǔ)器412中存儲(chǔ)的容量池管理程序112-08。該程序與圖9示出的程序相似。圖51說(shuō)明根據(jù)本發(fā)明其它方面的虛擬巻頁(yè)管理表的示例性結(jié)構(gòu)。虛擬巻頁(yè)管理表112-13a的一個(gè)示例性結(jié)構(gòu)包括虛擬巻頁(yè)地址112-13a-01、相關(guān)的RAID組號(hào)碼112誦13a國(guó)02、容量池頁(yè)地址112-13a-03、主巻號(hào)碼112-13a-04及主巻頁(yè)地址112-13a-05。虛擬巻頁(yè)地址112-13a-01包括虛擬巻中的虛擬巻頁(yè)的ID。相關(guān)的RAID組號(hào)碼112-13a-02包括已被分配的容量池頁(yè)(其包括外部巻621)的RAID組號(hào)碼或"N/A","N/A"表示沒(méi)有對(duì)虛擬巻頁(yè)被分配RAID存儲(chǔ)系統(tǒng)中的容量池頁(yè)。容量池頁(yè)地址112-13a-03包括相關(guān)的容量池頁(yè)的邏輯地址或該容量池頁(yè)的開(kāi)始地址。主巻號(hào)碼112-13a-04包括一皮鏈接到頁(yè)的主巻或表示虛擬巻頁(yè)沒(méi)有被鏈接到其它存儲(chǔ)子系統(tǒng)的"N/A"。主巻頁(yè)地址112-13a-05包括相關(guān)的主巻頁(yè)的邏輯地址或表示虛擬巻頁(yè)沒(méi)有被鏈接到其它存儲(chǔ)子系統(tǒng)的"N/A,,。圖52說(shuō)明根據(jù)本發(fā)明其它方面的執(zhí)行虛擬巻頁(yè)管理的示例性方法。示出執(zhí)行虛擬巻頁(yè)管理程序112-la的一個(gè)示例性方法。可由外部存儲(chǔ)子系統(tǒng)621的CPU611執(zhí)行該程序。該方法開(kāi)始于112-01a-l。在112-01a-l,該方法確定是否在外部存〗諸子系統(tǒng)上已經(jīng)接收到"獲得頁(yè)分配信息"請(qǐng)求。如果沒(méi)有接收到該消息,則該方法前進(jìn)到步驟112-01a-3。如果CPU611已經(jīng)接收到該消息,則該方法前進(jìn)到步驟112-01a畫(huà)2。在112-01a-2,該方法檢查關(guān)于指定的被請(qǐng)求的頁(yè)的虛擬巻頁(yè)管理表112-13a。如果主巻號(hào)碼112-13a-04和主巻頁(yè)地址112-13a-05都是"N/A",則該方法向被請(qǐng)求的存儲(chǔ)子系統(tǒng)返回應(yīng)答"空閑"。如果主巻號(hào)碼112-13a-04和主巻頁(yè)地址112-13a-05不是"N/A",則該方法向被請(qǐng)求的存儲(chǔ)子系統(tǒng)返回主巻號(hào)碼112-13a-04和主巻頁(yè)地址112-13a-05的值。發(fā)送應(yīng)答之后,該方法返回到步驟112-01a-l以確定下一個(gè)請(qǐng)求。如果沒(méi)有接收到頁(yè)分配信息請(qǐng)求消息,則在112-13a-3,該方法確定是否已經(jīng)接收到"頁(yè)分配"請(qǐng)求。如果沒(méi)有,則該方法返回到112-01a-l。如果已經(jīng)接收到該消息,則該方法前進(jìn)到112-01a-4。在112-01a-4,該方法檢查關(guān)于指定的頁(yè)的虛擬巻頁(yè)管理表112-13a。如果相關(guān)的RAID組號(hào)碼112-13a-02、容量池頁(yè)地址112-13a-03、主巻號(hào)碼112-13a-04及主巻頁(yè)地址112-13a-05是"N/A",則還沒(méi)有完成頁(yè)分配,并且該方法前進(jìn)到步驟112-01a-6。在112-01a-6,該方法將指定的值存儲(chǔ)到主巻號(hào)碼112-13a-04及主巻頁(yè)地址112-13a-05,并且該方法前進(jìn)到步驟112-01a-7,在112-01a-7,將應(yīng)答"成功"發(fā)送到發(fā)出請(qǐng)求的存儲(chǔ)子系統(tǒng)以確認(rèn)頁(yè)分配的成功完成。然后,該方法返回到步驟112-01a-l。在示出的示例性降級(jí)時(shí)序中,存儲(chǔ)子系統(tǒng)100的虛擬巻140作為"主,,巻140m工作,存儲(chǔ)子系統(tǒng)400的虛擬巻140作為"從"巻140s工作。圖53示出的時(shí)序是駐留在存儲(chǔ)控制器的存儲(chǔ)器中的執(zhí)行高速緩沖存儲(chǔ)器降級(jí)程序112-05-3的一個(gè)示例性方法,并示出將頁(yè)從從主虛擬巻140m降級(jí)到外部存儲(chǔ)子系統(tǒng)621的時(shí)序。首先,在S3a-l,存儲(chǔ)子系統(tǒng)100尋找位于未被分配的虛擬巻頁(yè)中的臟的高速緩沖存儲(chǔ)器槽。存儲(chǔ)子系統(tǒng)100將請(qǐng)求發(fā)送到外部存儲(chǔ)子系統(tǒng)600來(lái)分配新的頁(yè)。第二,在S3a-2,外部存儲(chǔ)子系統(tǒng)600接收到該請(qǐng)求并檢查和分配新的頁(yè)。在該操作完成之后,外部存儲(chǔ)子系統(tǒng)600將確認(rèn)返回到存儲(chǔ)子系統(tǒng)100。第三,在S3a-3,在分配操作結(jié)束之后,存儲(chǔ)子系統(tǒng)IOO將臟的高速緩沖存儲(chǔ)器槽傳送到外部巻621。在該操作過(guò)程中,存儲(chǔ)子系統(tǒng)IOO鎖定該槽。最后,在S3a-4,在傳送之后,存儲(chǔ)子系統(tǒng)100接收到來(lái)自外部存儲(chǔ)子系統(tǒng)600的確認(rèn)。在接收到該確認(rèn)之后,存儲(chǔ)子系統(tǒng)IOO將槽狀態(tài)從臟改變?yōu)楦蓛舨⒃摬劢怄i。在示出的示例性降級(jí)時(shí)序中,存儲(chǔ)子系統(tǒng)100的虛擬巻140作為"主"巻140m工作,存儲(chǔ)子系統(tǒng)400的虛擬巻140作為"從"巻140s工作。圖54示出的時(shí)序是駐留在存儲(chǔ)控制器的存儲(chǔ)器中的執(zhí)行高速緩沖存儲(chǔ)器降級(jí)程序112-05-3的一個(gè)示例性方法,并示出將頁(yè)從從從虛擬巻140s降級(jí)到外部存4諸子系統(tǒng)621的時(shí)序。首先,在S4a-l,包括從虛擬巻M0s的存儲(chǔ)子系統(tǒng)400尋找位于未被分配的虛擬巻頁(yè)中的臟的高速緩沖存儲(chǔ)器槽。存儲(chǔ)子系統(tǒng)400將請(qǐng)求發(fā)送到外部存儲(chǔ)子系統(tǒng)600來(lái)對(duì)該槽中的數(shù)據(jù)分配新的頁(yè)。第二,在S4a-2,外部存儲(chǔ)子系統(tǒng)600接收到該請(qǐng)求并檢查和分配新的頁(yè)。在該操作完成之后,外部存儲(chǔ)子系統(tǒng)600將確認(rèn)返回到存儲(chǔ)子系統(tǒng)400。第三,在S4a-3,存儲(chǔ)子系統(tǒng)400將"鎖定請(qǐng)求"消息發(fā)送到存儲(chǔ)子系統(tǒng)100。第四,在S4a-4,存儲(chǔ)子系統(tǒng)100接收到鎖定請(qǐng)求消息并鎖定相應(yīng)于虛擬巻140s的臟的槽的主虛擬巻140m上的目標(biāo)槽。在存儲(chǔ)子系統(tǒng)IOO鎖定該槽之后,存儲(chǔ)子系統(tǒng)IOO將確認(rèn)消息和虛擬巻140m的槽狀態(tài)返回到存儲(chǔ)子系統(tǒng)400上的從虛擬巻140s。第五,在S4a-5,在分配操作結(jié)束之后,存儲(chǔ)子系統(tǒng)400將臟的高速緩沖存儲(chǔ)器槽傳送到外部巻說(shuō)621,并且在該降級(jí)操作過(guò)程中,存儲(chǔ)子系統(tǒng)400鎖定該槽。第六,在S4a-6,在傳送之后,存儲(chǔ)子系統(tǒng)400接收到來(lái)自外部存儲(chǔ)子系統(tǒng)600的確認(rèn)消息。在接收到該確認(rèn)消息之后,存儲(chǔ)子系統(tǒng)400將槽狀態(tài)從臟改變?yōu)楦蓛舨⒃摬劢怄i。圖55是說(shuō)明計(jì)算機(jī)/服務(wù)器系統(tǒng)550的實(shí)施例,在計(jì)算機(jī)/服務(wù)器系統(tǒng)550上可以執(zhí)行本發(fā)明的實(shí)施例。系統(tǒng)5500包括計(jì)算機(jī)/服務(wù)器平臺(tái)5501、外圍設(shè)備5502及網(wǎng)絡(luò)資源5503。計(jì)算機(jī)平臺(tái)5501可以包括用于越過(guò)計(jì)算機(jī)平臺(tái)5501的各種部件和在計(jì)算機(jī)平臺(tái)5501的各種部件中傳送信息的數(shù)據(jù)總線5504或其它通信機(jī)構(gòu),及與總線5501耦合用于處理信息并執(zhí)行其它計(jì)算和控制任務(wù)的處理器5501。計(jì)算機(jī)平臺(tái)5501還包括耦合到總線5504用于存儲(chǔ)要由處理器5505執(zhí)行的指令以及各種信息的易失性存儲(chǔ)器(例如隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)或其它動(dòng)態(tài)存儲(chǔ)設(shè)備)5506。易失性存儲(chǔ)器5506還可以用于在處理器5505執(zhí)行指令的過(guò)程中存儲(chǔ)臨時(shí)變量或其它中間信息。計(jì)算機(jī)平臺(tái)5501可以進(jìn)一步包括耦合到總線5504用于存儲(chǔ)各種系統(tǒng)配置參數(shù)及用于處理器5505的靜態(tài)信息和指令(例如基本輸入輸出系統(tǒng)(BIOS))的只讀存儲(chǔ)器(ROM或EPROM)5507或其它靜態(tài)存儲(chǔ)設(shè)備。永久存儲(chǔ)設(shè)備(例如磁盤(pán)、光盤(pán)或固態(tài)閃存設(shè)備)5508被提供并被耦合到總線5501以存儲(chǔ)信息和指令??梢越?jīng)由總線5504將計(jì)算機(jī)平臺(tái)5501耦合到顯示器(例如,陰極射線管(CRT)、等離子顯示器或液晶顯示器(LCD))5509以向系統(tǒng)管理員或計(jì)算機(jī)平臺(tái)5501的用戶顯示信息。包括字母數(shù)字或其它鍵盤(pán)的輸入設(shè)備5510被耦合到總線5501以向處理器5505傳送信息和命令選擇。其它類(lèi)型的用戶輸入設(shè)備是指針控制設(shè)備(例如鼠標(biāo)、軌跡球或指針?lè)较蜴I盤(pán))5511以對(duì)處理器5504傳送方向信息和命令選擇并控制顯示器5509上的指針移動(dòng)。輸入設(shè)備通常具有在允許設(shè)備到平面上的特定位置的兩個(gè)軸(第一軸(例如,x)和第二軸(例如,y))上的兩種程度的自由。外部存儲(chǔ)設(shè)備5512可以經(jīng)由總線5504被連接到計(jì)算機(jī)平臺(tái)5501以為計(jì)算機(jī)平臺(tái)提供額外的或可移除的存儲(chǔ)容量。在計(jì)算機(jī)系統(tǒng)5500的實(shí)施例中,外部可移除的存儲(chǔ)設(shè)備5512可用于促進(jìn)與其它計(jì)算機(jī)系統(tǒng)交換數(shù)據(jù)。本發(fā)明有關(guān)于計(jì)算機(jī)系統(tǒng)5500的使用以執(zhí)行本文描述的技術(shù)。在實(shí)施例中,本發(fā)明的系統(tǒng)可以位于例如計(jì)算機(jī)平臺(tái)5501等設(shè)備中。根據(jù)本發(fā)明的一個(gè)實(shí)施例,響應(yīng)于執(zhí)行在易失性存儲(chǔ)器5506中包括的一個(gè)或多個(gè)指令的一個(gè)或多個(gè)序列的處理器5505,由計(jì)算機(jī)系統(tǒng)5500執(zhí)行本文描述的技術(shù)。可以從其它計(jì)算機(jī)可讀介質(zhì)(例如永久存儲(chǔ)設(shè)備5508)中將該種指令讀入易失性存儲(chǔ)器5506中。在易失性存儲(chǔ)器5506中包括的指令序列的執(zhí)行使處理器5505執(zhí)行本文描述的處理步驟。在選擇性的實(shí)施例中,可以使用硬布線電路代替軟件指令或與軟件指令結(jié)合以執(zhí)行本發(fā)明。從而,本發(fā)明的實(shí)施例不限于硬件電路和軟件的任何特定結(jié)合。本文使用的術(shù)語(yǔ)"計(jì)算機(jī)可讀介質(zhì)"指參與對(duì)處理器5505提供指令以執(zhí)行的任何介質(zhì)。計(jì)算機(jī)可讀介質(zhì)只是機(jī)器可讀介質(zhì)的一個(gè)示例,該種介質(zhì)可以包括用于執(zhí)行本文描述的任意方法和/或技術(shù)的指令。該種介質(zhì)可以采用任意形式,包括但不限于非易失性介質(zhì)、易失性介質(zhì)及傳輸介質(zhì)。非易失性介質(zhì)包括例如光或磁盤(pán)(例如存儲(chǔ)設(shè)備5508)。易失性介質(zhì)包括動(dòng)態(tài)存儲(chǔ)器(例如易失性存儲(chǔ)器5506)。傳輸介質(zhì)包括同軸線纜、銅線和纖維光學(xué),還包括數(shù)據(jù)總線5504等線。傳輸介質(zhì)還可以采用聲或光波的形式,例如在無(wú)線電波和紅外線數(shù)據(jù)通信過(guò)程中產(chǎn)生的波。普通形式的計(jì)算機(jī)可讀介質(zhì)包括軟盤(pán)、柔性盤(pán)、磁盤(pán)、磁帶、任意的其它磁介質(zhì)、CD-ROM、任意的其它光介質(zhì)、穿孔卡片、紙帶、具有孔圖案的任意的其它物理介質(zhì)、RAM、PROM、EPROM、FLASH-EPROM、閃存驅(qū)動(dòng)、存儲(chǔ)卡、任意其它存儲(chǔ)器芯片或模塊、如下面描述的載波或計(jì)算機(jī)能夠讀取的任意其它介質(zhì)。在裝栽處理器5505執(zhí)行的一個(gè)或多個(gè)序列的一個(gè)或多個(gè)指令中可以包括各種形式的計(jì)算機(jī)可讀介質(zhì)。例如,最初,可以從遠(yuǎn)程計(jì)算機(jī)將指令裝載到磁盤(pán)上。可選擇地,遠(yuǎn)程計(jì)算機(jī)可以將指令載入其動(dòng)態(tài)存儲(chǔ)器中并使用調(diào)制解調(diào)器通過(guò)電話線發(fā)送指令。計(jì)算機(jī)系統(tǒng)5500的本地調(diào)制解調(diào)器能夠接收電話線上的數(shù)據(jù)并使用遠(yuǎn)紅外發(fā)射機(jī)將該數(shù)據(jù)轉(zhuǎn)換為遠(yuǎn)紅外信號(hào)。遠(yuǎn)紅外檢測(cè)器能夠接收以遠(yuǎn)紅外信號(hào)加載的數(shù)據(jù),并且合適的電路能夠?qū)?shù)據(jù)置于數(shù)據(jù)總線5504上??偩€5504將數(shù)據(jù)載入易失性存儲(chǔ)器5506,處理器5505從易失性存儲(chǔ)器5506獲取并執(zhí)行指令。由易失性存儲(chǔ)器5506接收到的指令可以被選擇性地在處理器5505執(zhí)行之前或之后存儲(chǔ)在永久存儲(chǔ)設(shè)備5508上。經(jīng)由因特網(wǎng),使用本領(lǐng)域已知的各種網(wǎng)絡(luò)數(shù)據(jù)通信協(xié)議,還可以將該指令下載到計(jì)算機(jī)平臺(tái)5501中。計(jì)算機(jī)平臺(tái)5501還包括例如耦合到數(shù)據(jù)總線5504的網(wǎng)絡(luò)接口卡5513等通信接口。通信接口5513提供耦合網(wǎng)絡(luò)鏈路5514的雙路數(shù)據(jù)通信,網(wǎng)絡(luò)鏈路5514被耦合到本地網(wǎng)絡(luò)5515上。例如,通信接口5513可以是將數(shù)據(jù)通信連接提供給相應(yīng)類(lèi)型的電話線的綜合服務(wù)數(shù)字網(wǎng)絡(luò)(ISDN)卡或調(diào)制解調(diào)器。如另一個(gè)示例,通信接口5513可以是將數(shù)據(jù)通信連接提供給兼容的LAN的本地局域網(wǎng)接口卡(LANNIC),例如已知的802.11a、802.11b、802.11g及藍(lán)牙也用于網(wǎng)絡(luò)執(zhí)行。在任意的該種執(zhí)行中,通信接口5513發(fā)送并接收電的、電磁的或光的信號(hào),這些信號(hào)裝載了表示各種類(lèi)型的信息的數(shù)字?jǐn)?shù)據(jù)流。網(wǎng)絡(luò)鏈路5513通常通過(guò)一個(gè)或多個(gè)網(wǎng)絡(luò)對(duì)其它網(wǎng)源提供數(shù)據(jù)通信。例如,網(wǎng)絡(luò)鏈路5514可以通過(guò)本地網(wǎng)絡(luò)5515將連接提供給主計(jì)算機(jī)5516或網(wǎng)絡(luò)存儲(chǔ)/服務(wù)器5517。另外或可選擇地,可以通過(guò)網(wǎng)關(guān)或防火墻5517將網(wǎng)絡(luò)鏈路5513連接到例如因特網(wǎng)等廣域網(wǎng)5518。從而,計(jì)算機(jī)平臺(tái)5501可以訪問(wèn)例如遠(yuǎn)程網(wǎng)絡(luò)存儲(chǔ)器/服務(wù)器等位于因特網(wǎng)5518上的任何地方的網(wǎng)源。另一方面,還可以由處于局域網(wǎng)5515和/或因特網(wǎng)5518上的任何地方的客戶來(lái)訪問(wèn)計(jì)算機(jī)平臺(tái)5501?;谟谄脚_(tái)5501類(lèi)似的計(jì)算機(jī)平臺(tái)可以執(zhí)行網(wǎng)絡(luò)客戶5520和5521本身。局域網(wǎng)5515和因特網(wǎng)5518都使用裝載數(shù)字?jǐn)?shù)據(jù)流的電的、電磁的或光的信號(hào)。通過(guò)各種網(wǎng)絡(luò)的信號(hào)及網(wǎng)絡(luò)鏈路5514上并通過(guò)通信接口5513的信號(hào)是傳輸信息的載波的示例形式,這些信號(hào)將數(shù)字?jǐn)?shù)據(jù)裝載到計(jì)算機(jī)平臺(tái)5501或從計(jì)算機(jī)平臺(tái)5501裝載數(shù)據(jù)。計(jì)算機(jī)平臺(tái)5501能夠通過(guò)包括因特網(wǎng)5518和局域網(wǎng)5515、網(wǎng)絡(luò)鏈路5514及通信接口5513的各種網(wǎng)絡(luò)來(lái)發(fā)送消息并接收數(shù)據(jù),這些消息和數(shù)據(jù)包括程序代碼。在因特網(wǎng)的示例中,當(dāng)系統(tǒng)5501作為網(wǎng)絡(luò)服務(wù)器時(shí),其可以通過(guò)因特網(wǎng)5518、網(wǎng)關(guān)/防火墻5517、局域網(wǎng)5515及通信接口5513來(lái)傳送用于在客戶5520和/或5521上運(yùn)行的應(yīng)用程序的被請(qǐng)求的代碼或凄史據(jù)。類(lèi)似地,系統(tǒng)5501可以接收來(lái)自其它網(wǎng)源的代碼。如果接收到代碼,所接收到的代碼可以由處理器5505來(lái)執(zhí)行,和/或被分別存儲(chǔ)在永久或易失性存儲(chǔ)設(shè)備5508和5506,或存儲(chǔ)在其它非易失性存儲(chǔ)器中以將來(lái)執(zhí)行該代碼。以該方式,計(jì)算機(jī)系統(tǒng)5501可以獲得載波形式的應(yīng)用程序代碼。應(yīng)該注意,本發(fā)明不限于任何特定的防火墻系統(tǒng),基于內(nèi)容處理系統(tǒng)的本發(fā)明可以被用于任意的三種防火墻操作模式(特定地,NAT、專(zhuān)線(routed)和透明)。最后,應(yīng)該理解,本文描述的處理和技術(shù)不是固有地與任意特定設(shè)備相關(guān),并且可以由部件的任意合適的組合實(shí)施本文描述的處理和4支術(shù)。另外,根據(jù)本文描述的宗義可以使用各種類(lèi)型的通用設(shè)備。還可以證明構(gòu)建特定設(shè)備來(lái)執(zhí)行本文描述的方法步驟是有利的。關(guān)于特定示例已經(jīng)描述了本發(fā)明,該示例意欲描述所有的方面而非限制。本領(lǐng)域技術(shù)人員將理解,硬件、軟件及固件的很多不同組合將適于實(shí)施本發(fā)明。例如,可以以例如Assembler、c/c++、Perl、shell、PHP、Java等各種各樣的程序或腳本語(yǔ)言來(lái)實(shí)施所描述的軟件。此外,通過(guò)考慮本文揭示的本發(fā)明的說(shuō)明書(shū)和示例,本領(lǐng)域技術(shù)人員將清楚本發(fā)明的其它實(shí)施??梢栽诰哂袆?dòng)態(tài)存儲(chǔ)區(qū)域分配功能的計(jì)算機(jī)化的存儲(chǔ)系統(tǒng)中單獨(dú)使用或任意結(jié)合地使用所描述的實(shí)施例的各個(gè)方面和/或部件。說(shuō)明書(shū)和示例僅被作為示例考慮,下面的權(quán)利要求指定本發(fā)明的實(shí)際范圍和宗義。權(quán)利要求1.一種計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),包括a.至少一個(gè)外部卷,b.包括第一存儲(chǔ)子系統(tǒng)和第二存儲(chǔ)子系統(tǒng)的兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng),第一存儲(chǔ)子系統(tǒng)包括第一虛擬卷,第二存儲(chǔ)子系統(tǒng)包括第二虛擬卷,第一虛擬卷和第二虛擬卷形成對(duì),其中,i.第一虛擬卷和第二虛擬卷是動(dòng)態(tài)存儲(chǔ)區(qū)域分配卷;ii.第一虛擬卷可用來(lái)從與第一虛擬卷相關(guān)聯(lián)的第一容量池中分配容量;iii.第二虛擬卷可用于從與第二虛擬卷相關(guān)聯(lián)的第二容量池中分配容量;及iv.所述容量包括至少一個(gè)外部卷;v.所述至少一個(gè)外部卷由第一容量池和第二容量池共享;vi.所述至少一個(gè)外部卷、所述第一存儲(chǔ)子系統(tǒng)或所述第二存儲(chǔ)子系統(tǒng)存儲(chǔ)至少一個(gè)動(dòng)態(tài)存儲(chǔ)區(qū)域分配信息表;vii.在動(dòng)態(tài)存儲(chǔ)區(qū)域分配的分配處理的執(zhí)行時(shí),如果第一存儲(chǔ)子系統(tǒng)已經(jīng)從所共享的至少一個(gè)外部卷中分配了容量,則第二存儲(chǔ)子系統(tǒng)可用來(lái)參照分配信息并建立虛擬卷地址和容量池地址之間的關(guān)系。2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,第一存儲(chǔ)子系統(tǒng)和第二存儲(chǔ)子系統(tǒng)中的每一個(gè)都包括可用于連接至少一個(gè)^f茲盤(pán)驅(qū)動(dòng)器的接口。3.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,第一容量池和第二容量池中的每一個(gè)都可被操作以包括至少一個(gè)石茲盤(pán)驅(qū)動(dòng)器。4.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的每一個(gè)都包括具有控制器存儲(chǔ)器和控制器CPU的存儲(chǔ)控制器;具有被組為RAID組的零個(gè)或更多個(gè)硬盤(pán)的磁盤(pán)單元;管理終端;其中,硬盤(pán)和外部巻中的每一個(gè)包括容量池頁(yè),其中,第一RAID組的容量池頁(yè)中的零個(gè)或更多個(gè)形成容量池組塊,其中,虛擬巻包括虛擬巻槽,一個(gè)或更多個(gè)虛擬巻槽形成虛擬巻頁(yè),以及其中,高速緩沖存儲(chǔ)區(qū)包括高速緩沖存儲(chǔ)器槽。5.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,控制器存儲(chǔ)器包括巻操作模塊;1/0模塊;硬盤(pán)訪問(wèn)模塊;容量池管理模塊;槽操作模塊虛擬巻管理表;容量池管理表;容量池部件管理表;容量池頁(yè)管理表;高速緩沖存儲(chǔ)器管理表;及對(duì)管理表;以及其中,在控制器存儲(chǔ)器中包括高速緩沖存儲(chǔ)區(qū)以存儲(chǔ)數(shù)據(jù)。6.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,控制器存儲(chǔ)器還包括RAID組管理表;及容量池組塊管理表。7.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,主計(jì)算機(jī)包括存儲(chǔ)器,該存儲(chǔ)器包括巻管理表,及其中,巻管理表提供存儲(chǔ)子系統(tǒng)中的虛擬巻的配對(duì)。8.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,巻操作模塊包括巻操作等待模塊,對(duì)生成模塊,及對(duì)刪除模塊,其中,對(duì)生成模塊建立一個(gè)存儲(chǔ)子系統(tǒng)的虛擬巻和另一個(gè)存儲(chǔ)子系統(tǒng)中的虛擬巻之間的巻復(fù)制關(guān)系,及對(duì)刪除^f莫塊解除所述巻復(fù)制關(guān)系。9.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,所述容量池管理模塊包括容量池頁(yè)分配模塊,其中,所述容量池頁(yè)分配模塊接收到來(lái)自一個(gè)存儲(chǔ)子系統(tǒng)上的容量池的新的容量池頁(yè)和新的容量池組塊,并向其它存儲(chǔ)子系統(tǒng)發(fā)送請(qǐng)求以排除其它存儲(chǔ)子系統(tǒng)上的任意一個(gè)容量池組塊,其中,容量池回收模塊通過(guò)移除包括臟的數(shù)據(jù)的容量池頁(yè)來(lái)從容量池組塊執(zhí)行回收,及其中,響應(yīng)于容量池?cái)U(kuò)充請(qǐng)求,容量池組塊解除模塊將一組硬盤(pán)或一部分外部巻增加到容量池中。10.根據(jù)權(quán)利要求9所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,所述容量池管理模塊還包括容量池回收模塊;及容量池組塊解除模塊。11.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,容量池管理表體現(xiàn)了每一個(gè)容量池、與每一個(gè)容量池相關(guān)的RAID組及在每一個(gè)容量池中剩余的空閑容量之間的關(guān)系。12.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,容量池部件管理表體現(xiàn)了每一個(gè)RAID組、相關(guān)的容量池及與空閑容量池組塊、被使用的容量池組塊及被排除的容量池組塊相對(duì)應(yīng)的隊(duì)列之間的關(guān)系。13.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,高速緩沖存儲(chǔ)器管理表體現(xiàn)了每一個(gè)高速緩沖存儲(chǔ)器槽、相應(yīng)的一個(gè)硬盤(pán)或相應(yīng)的一個(gè)虛擬巻、該相應(yīng)的硬盤(pán)的地址、該高速緩沖存儲(chǔ)器槽的鎖定狀態(tài)、包括高速緩沖存儲(chǔ)器槽和相應(yīng)的隊(duì)列指針的隊(duì)列的類(lèi)型之間的關(guān)系,隊(duì)列的類(lèi)型是空閑、千凈或臟。14.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,對(duì)管理表體現(xiàn)了第一存儲(chǔ)子系統(tǒng)上的指定虛擬巻和與第一存儲(chǔ)子系統(tǒng)配對(duì)的被配對(duì)的存儲(chǔ)子系統(tǒng)、被配對(duì)的存儲(chǔ)子系統(tǒng)上的被配對(duì)的虛擬巻與指定的虛擬巻配對(duì)、由指定的虛擬巻和被配對(duì)的虛擬巻形成的對(duì)中的指定的虛擬巻的主狀態(tài)或從狀態(tài)之間的關(guān)系。15.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,容量池管理表根據(jù)RAID組來(lái)參照容量池部件管理表,其中,容量池部件管理表根據(jù)容量池組塊來(lái)參照容量池管理表,其中,容量池部件管理表根據(jù)空閑的組塊隊(duì)列、被使用的組塊隊(duì)列及被排除的組塊隊(duì)列來(lái)參照容量池組塊管理表,其中,被刪除的容量被使用在容量池組塊管理表中以用一個(gè)容量池組塊參照另一個(gè)容量池組塊,其中,容量池部件管理表和RAID組管理表之間的關(guān)系是固定的,其中,容量池組塊和容量池組塊管理表之間的關(guān)系也是固定的。16.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,虛擬巻管理表根據(jù)當(dāng)前正在使用的組塊信息來(lái)參照對(duì)一個(gè)虛擬巻分配的被分配的容量池組塊,其中,容量池管理表根據(jù)RAID組列表來(lái)參照屬于磁盤(pán)單元或外部巻的零個(gè)或更多個(gè)RAID組,其中,虛擬巻頁(yè)管理表根據(jù)容量池頁(yè)地址和容量池頁(yè)大小來(lái)參照容量池頁(yè),其中,虛擬巻和虛擬巻管理表之間的關(guān)系是固定的,其中,虛擬巻管理表和虛擬巻頁(yè)管理表之間的關(guān)系是固定的,及其中,虛擬巻和虛擬巻頁(yè)管理表之間的關(guān)系是固定的。17.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,容量池組塊管理表根據(jù)虛擬巻號(hào)碼來(lái)參照虛擬巻,其中,容量池頁(yè)管理表根據(jù)虛擬巻頁(yè)號(hào)碼來(lái)參照虛擬巻頁(yè),其中,容量池組塊和容量池組塊管理表之間的關(guān)系是固定的,其中,根據(jù)容量池頁(yè)管理表的條目將容量池頁(yè)管理表與容量池頁(yè)相關(guān)聯(lián)。18.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,對(duì)管理表將一個(gè)存儲(chǔ)子系統(tǒng)上的虛擬巻與另一個(gè)存儲(chǔ)子系統(tǒng)上的虛擬巻相關(guān)聯(lián)。19.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,外部巻的相同的容量池頁(yè)能夠由不同的存儲(chǔ)子系統(tǒng)的被配對(duì)的虛擬巻共享。20.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,巻操作等待模塊包括確定控制器CPU是否已經(jīng)接收到巻操作請(qǐng)求,該巻操作請(qǐng)求包括對(duì)生成請(qǐng)求和對(duì)刪除請(qǐng)求,如果控制器CPU已經(jīng)接收到巻操作請(qǐng)求,則確定該接收到的請(qǐng)求是對(duì)生成請(qǐng)求還是對(duì)刪除請(qǐng)求,如果對(duì)生成請(qǐng)求被接收到,則執(zhí)行對(duì)生成模塊,如果對(duì)刪除請(qǐng)求被接收到,則執(zhí)行對(duì)刪除模塊,其中,對(duì)生成請(qǐng)求或?qū)h除請(qǐng)求的發(fā)出者是主計(jì)算機(jī)或一個(gè)存儲(chǔ)子系統(tǒng)的管理終端。21.根據(jù)權(quán)利要求20所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,對(duì)生成模塊包括確定第一存儲(chǔ)子系統(tǒng)上的被指定的虛擬巻是否已經(jīng)與第二存儲(chǔ)子系統(tǒng)上的另一個(gè)虛擬巻配對(duì);如果被指定的虛擬巻已經(jīng)被配對(duì),則確定被指定的虛擬巻的狀態(tài)是主或從;如果被指定的虛擬巻是主,則將對(duì)生成請(qǐng)求發(fā)送到第二存儲(chǔ)子系統(tǒng),并且如果第二存儲(chǔ)子系統(tǒng)接受該請(qǐng)求,則根據(jù)對(duì)管理表,將被指定的虛擬巻作為主并將第二存儲(chǔ)子系統(tǒng)中的一個(gè)虛擬巻作為從來(lái)進(jìn)行配對(duì),并將完成消息發(fā)送到對(duì)生成請(qǐng)求的發(fā)出者;及如果被指定的虛擬巻的狀態(tài)被確定為從,則根據(jù)對(duì)管理表,將被指定的虛擬巻作為從并將第二存儲(chǔ)子系統(tǒng)中的一個(gè)虛擬巻作為主來(lái)進(jìn)行配對(duì),并將OK消息發(fā)送到主虛擬巻。22.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,對(duì)刪除模塊包括通過(guò)參照對(duì)管理表,確定形成對(duì)的第一存儲(chǔ)系統(tǒng)上的被指定的虛擬巻和第二存儲(chǔ)子系統(tǒng)上的另一個(gè)虛擬巻之間的配對(duì)關(guān)系是否存在;如果找到該對(duì),則將被指定的虛擬巻的狀態(tài)確定為主或從;如果被指定的虛擬巻是主,則將對(duì)刪除請(qǐng)求發(fā)送到包括從的第二存儲(chǔ)子系統(tǒng),并請(qǐng)求解除配對(duì)關(guān)系,接收關(guān)于配對(duì)關(guān)系的解除的確認(rèn)消息,從對(duì)管理表中移除配對(duì)關(guān)系以及將完成消息發(fā)送到請(qǐng)求方;及如果被指定的虛擬巻是從,則從對(duì)管理表中移除配對(duì)關(guān)系并將確認(rèn)消息發(fā)送到主。23.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,響應(yīng)于槽鎖定請(qǐng)求,通過(guò)將鎖定狀態(tài)寫(xiě)入高速緩沖存儲(chǔ)器關(guān)系表,槽操作模塊可用來(lái)鎖定高速緩沖存儲(chǔ)器槽,如果高速緩沖存儲(chǔ)器管理表中的高速緩沖存儲(chǔ)器槽的狀態(tài)還沒(méi)有被設(shè)置為鎖定,及其中,響應(yīng)于槽解鎖請(qǐng)求,通過(guò)將解鎖狀態(tài)寫(xiě)入高速緩沖存儲(chǔ)器管理表,槽搡作模塊可用來(lái)將高速緩沖存儲(chǔ)器解鎖。24.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,寫(xiě)I/0模塊可用于接收來(lái)自包括主計(jì)算機(jī)或一個(gè)存儲(chǔ)子系統(tǒng)的發(fā)出者的寫(xiě)I/O請(qǐng)求;通過(guò)參照高速緩沖存儲(chǔ)器槽,相應(yīng)于包括寫(xiě)1/0數(shù)據(jù)的虛擬巻,查找高速緩沖存儲(chǔ)器槽中的空閑高速緩沖存儲(chǔ)器槽的位置;鎖定高速緩沖存儲(chǔ)器槽,將寫(xiě)1/0數(shù)據(jù)寫(xiě)入高速緩沖存儲(chǔ)器槽并將該高速緩沖存儲(chǔ)器槽解鎖;及如果發(fā)出者是具有主狀態(tài)的虛擬巻,則將寫(xiě)1/0數(shù)據(jù)復(fù)制到相應(yīng)的從虛擬巻。25.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,讀I/0模塊可用于接收來(lái)自主計(jì)算機(jī)的讀I/O請(qǐng)求;如果讀I/O數(shù)據(jù)在多個(gè)高速緩沖存儲(chǔ)器槽中的一個(gè)高速緩沖存儲(chǔ)器槽中是可用的,則將該高速緩沖存儲(chǔ)器槽鎖定并將讀I/0數(shù)據(jù)發(fā)送到主計(jì)算機(jī);及如果讀1/0數(shù)據(jù)在一個(gè)硬盤(pán)中是可用的,則從多個(gè)高速緩沖存儲(chǔ)器槽中獲得一個(gè)空閑的高速緩沖存儲(chǔ)器槽,并將讀1/0數(shù)據(jù)從硬盤(pán)升級(jí)到空閑高速緩沖存儲(chǔ)器槽,以獲得包括數(shù)據(jù)的高速緩沖存儲(chǔ)器槽,鎖定包括數(shù)據(jù)的高速緩沖存儲(chǔ)器槽,并將讀I/O數(shù)據(jù)發(fā)送到主計(jì)算機(jī)。26.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,容量池管理模塊中的容量池頁(yè)分配模塊可用于如果被參照的容量池頁(yè)屬于從虛擬巻,則從包括相應(yīng)的主虛擬巻的存儲(chǔ)子系統(tǒng)中請(qǐng)求相應(yīng)的主容量池頁(yè),如果主容量池頁(yè)沒(méi)有與外部巻關(guān)聯(lián),則將主容量池頁(yè)與外部巻相關(guān)聯(lián);及如果被參照的容量池頁(yè)屬于主虛擬巻,或被參照的容量池頁(yè)的主容量池頁(yè)屬于從虛擬巻,則不將該主容量池頁(yè)與外部巻關(guān)聯(lián),獲得與主虛擬巻關(guān)聯(lián)的容量池組塊中的空閑容量池頁(yè),或如果沒(méi)有相關(guān)的容量池組塊被找到,則獲得新的容量池組塊并將與容量池組塊相關(guān)的外部巻中的新的容量池頁(yè)進(jìn)行分配。27.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,高速緩沖存儲(chǔ)器升級(jí)才莫塊可用于傳送來(lái)自硬盤(pán)的數(shù)據(jù)。28.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,盤(pán)刷新模塊可用于從高速緩沖存儲(chǔ)器槽中尋找臟的高速緩沖存儲(chǔ)器槽;及將來(lái)自臟的高速緩沖存儲(chǔ)器槽的數(shù)據(jù)降級(jí)。29.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,高速緩沖存儲(chǔ)器降級(jí)模塊可用于對(duì)于包括具有數(shù)據(jù)的高速緩沖存儲(chǔ)器槽的主虛擬巻,識(shí)別或分配與該高速緩沖存儲(chǔ)器槽相關(guān)的容量池頁(yè),并將數(shù)據(jù)從高速緩沖存儲(chǔ)器槽傳送到具有容量池頁(yè)的硬盤(pán);對(duì)于包括高速緩沖存儲(chǔ)器槽并與容量池頁(yè)不相關(guān)的從虛擬巻,識(shí)別分配給被配對(duì)的主虛擬巻的容量池頁(yè),#皮配對(duì)的主虛擬巻與從虛擬巻配對(duì);及對(duì)于包括高速緩沖存儲(chǔ)器槽并與容量池頁(yè)相關(guān)的從虛擬巻,如果被配對(duì)的主虛擬巻上的相應(yīng)的高速緩沖存儲(chǔ)器槽是臟的,則將數(shù)據(jù)從高速緩沖存儲(chǔ)器槽傳送到硬盤(pán),并且如果被配對(duì)的主虛擬巻上的相應(yīng)的高速緩沖存儲(chǔ)器槽是干凈的,則將從虛擬巻的狀態(tài)改變?yōu)楦蓛簟?0.根據(jù)權(quán)利要求5所述的計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中,將來(lái)自包括臟的數(shù)據(jù)的臟的高速緩沖存儲(chǔ)器槽的臟的數(shù)據(jù)發(fā)送到外部巻。31.—種計(jì)算機(jī)化的數(shù)據(jù)存儲(chǔ)系統(tǒng),該系統(tǒng)包括外部存儲(chǔ)巻,耦合到一起并耦合到外部存儲(chǔ)巻的兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng),每一個(gè)存儲(chǔ)子系統(tǒng)包括高速緩沖存儲(chǔ)區(qū),每一個(gè)存儲(chǔ)子系統(tǒng)包括至少一個(gè)虛擬巻和至少一個(gè)容量池,從至少一個(gè)容量池的存儲(chǔ)部件中分配至少一個(gè)虛擬巻,該至少一個(gè)容量池包括至少一部分外部存儲(chǔ)巻,其中,響應(yīng)于數(shù)據(jù)訪問(wèn)請(qǐng)求,將至少一個(gè)容量池的存儲(chǔ)部件分配給虛擬巻;及主計(jì)算機(jī)可操作地耦合到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)并可用于在兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)之間切換輸入/輸出;其中,基于接收到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的第一存儲(chǔ)子系統(tǒng)發(fā)出的數(shù)據(jù)寫(xiě)請(qǐng)求,第一存儲(chǔ)子系統(tǒng)可操作來(lái)至少對(duì)兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)中的第二存儲(chǔ)子系統(tǒng)提供已接收的數(shù)據(jù)寫(xiě)請(qǐng)求,其中,基于接收到來(lái)自第一存儲(chǔ)子系統(tǒng)的請(qǐng)求,第二存儲(chǔ)子系統(tǒng)可用于防止至少一個(gè)容量池的至少一個(gè)存儲(chǔ)部件被分配給第二存儲(chǔ)子系統(tǒng)的至少一個(gè)虛擬巻。32.—種使用耦合到兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的主計(jì)算機(jī)的用于數(shù)據(jù)存儲(chǔ)的計(jì)算機(jī)執(zhí)行的方法,該兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)被耦合到一起并耦合到外部存儲(chǔ)巻,每一個(gè)存儲(chǔ)子系統(tǒng)包括高速緩沖存儲(chǔ)區(qū),每一個(gè)存儲(chǔ)子系統(tǒng)包括至少一個(gè)虛擬巻和至少一個(gè)容量池,從至少一個(gè)容量池的存儲(chǔ)部件中分配至少一個(gè)虛擬巻,該至少一個(gè)容量池包括至少一部分外部存儲(chǔ)巻,其中,至少一個(gè)虛擬巻是動(dòng)態(tài)存儲(chǔ)區(qū)域分配巻,該方法包括將兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第一存儲(chǔ)子系統(tǒng)的第一虛擬巻與兩個(gè)或更多個(gè)存儲(chǔ)子系統(tǒng)的第二存儲(chǔ)子系統(tǒng)的第二虛擬巻配對(duì)為主巻和從巻;及基于接收到來(lái)自第一存儲(chǔ)子系統(tǒng)的請(qǐng)求,防止第二存儲(chǔ)子系統(tǒng)的至少一個(gè)容量池的至少一個(gè)存儲(chǔ)部件被分配給第二虛擬巻。33.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,其中,至少一個(gè)容量池可用于包括至少一個(gè)磁盤(pán)驅(qū)動(dòng)器或外部巻。34.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,其中,包括主巻的存儲(chǔ)子系統(tǒng)是主存儲(chǔ)子系統(tǒng),包括從巻的存儲(chǔ)子系統(tǒng)是從存儲(chǔ)子系統(tǒng),其中,高速緩沖存儲(chǔ)區(qū)包括用于存儲(chǔ)數(shù)據(jù)的高速緩沖存儲(chǔ)器槽,及其中,硬盤(pán)包括用于存儲(chǔ)數(shù)據(jù)的盤(pán)槽。35.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,還包括將寫(xiě)1/0操作從主計(jì)算機(jī)復(fù)制到主巻,該復(fù)制包括在主存儲(chǔ)子系統(tǒng)上接收到寫(xiě)1/0請(qǐng)求和寫(xiě)數(shù)據(jù);在主存儲(chǔ)子系統(tǒng)的高速緩沖存儲(chǔ)器槽中存儲(chǔ)寫(xiě)數(shù)據(jù);將寫(xiě)1/0請(qǐng)求和寫(xiě)數(shù)據(jù)復(fù)制到從存儲(chǔ)子系統(tǒng);在從存儲(chǔ)子系統(tǒng)的高速緩沖存儲(chǔ)器槽中存儲(chǔ)寫(xiě)數(shù)據(jù);將完成寫(xiě)1/0請(qǐng)求的確認(rèn)從從存儲(chǔ)子系統(tǒng)返回到主存儲(chǔ)子系統(tǒng);及將確認(rèn)從主存儲(chǔ)子系統(tǒng)發(fā)送到從存儲(chǔ)子系統(tǒng)。36.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,還包括將寫(xiě)1/0操作從主計(jì)算機(jī)復(fù)制到從巻,該復(fù)制包括在從存儲(chǔ)子系統(tǒng)上接收到寫(xiě)1/0請(qǐng)求和寫(xiě)數(shù)據(jù);將寫(xiě)1/0請(qǐng)求和寫(xiě)數(shù)據(jù)復(fù)制到主存儲(chǔ)子系統(tǒng);在主存儲(chǔ)子系統(tǒng)的高速緩沖存儲(chǔ)器槽中存儲(chǔ)寫(xiě)數(shù)據(jù);將完成寫(xiě)I/O請(qǐng)求的確認(rèn)從主存儲(chǔ)子系統(tǒng)返回到從存儲(chǔ)子系統(tǒng);在從存儲(chǔ)子系統(tǒng)的高速緩沖存儲(chǔ)器槽中存儲(chǔ)寫(xiě)數(shù)據(jù);及將確認(rèn)從從存儲(chǔ)子系統(tǒng)發(fā)送到主計(jì)算機(jī)。37.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,還包括從主巻將數(shù)據(jù)降級(jí)到外部巻,該降級(jí)包括在未被分配的虛擬巻的容量池中的主存儲(chǔ)子系統(tǒng)中尋找臟的高速緩沖存儲(chǔ)器槽;獲得屬于外部巻的新的容量池組塊;將頁(yè)解除請(qǐng)求發(fā)送到從存儲(chǔ)子系統(tǒng);在從存儲(chǔ)子系統(tǒng)中搜索并排除包括容量池頁(yè)的共享的容量池組塊;將完成頁(yè)解除請(qǐng)求的確認(rèn)從從存儲(chǔ)子系統(tǒng)發(fā)送到主存儲(chǔ)子系統(tǒng);在主存儲(chǔ)子系統(tǒng)上從屬于外部巻的新的容量池組塊中將新的容量池頁(yè)分配到未被分配的虛擬巻;將臟的高速緩沖存儲(chǔ)器槽中的數(shù)據(jù)傳送到外部巻;在主存儲(chǔ)子系統(tǒng)上接收到來(lái)自外部巻的完成傳送的確認(rèn);及將臟的高速緩沖存儲(chǔ)器槽的狀態(tài)從臟改變?yōu)楦蓛簟?8.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)執(zhí)行的方法,還包括從從巻將數(shù)據(jù)降級(jí)到外部巻,該降級(jí)包括在從存儲(chǔ)子系統(tǒng)上尋找臟的高速緩沖存儲(chǔ)器槽,臟的高速緩沖存儲(chǔ)器槽相應(yīng)于從存儲(chǔ)子系統(tǒng)中的未被分配的容量池頁(yè),該未被分配的容量池頁(yè)沒(méi)有被分配給從虛擬巻;從主存儲(chǔ)子系統(tǒng)請(qǐng)求未被分配的容量池頁(yè)的狀態(tài);獲得未被分配的容量池頁(yè)和主存儲(chǔ)子系統(tǒng)中的主虛擬巻之間的關(guān)系,并將該關(guān)系發(fā)送到從存儲(chǔ)子系統(tǒng);在從存儲(chǔ)子系統(tǒng)上,將未被分配的容量池頁(yè)分配給從虛擬巻;將鎖定請(qǐng)求從從存儲(chǔ)子系統(tǒng)發(fā)送到主存儲(chǔ)子系統(tǒng);在主存儲(chǔ)子系統(tǒng)接收到鎖定請(qǐng)求,并鎖定相應(yīng)于從存儲(chǔ)子系統(tǒng)上的臟的高速緩沖存儲(chǔ)器槽的主存儲(chǔ)子系統(tǒng)上的目標(biāo)高速緩沖存儲(chǔ)器槽;將完成鎖定請(qǐng)求的確認(rèn)返回到從存儲(chǔ)子系統(tǒng);如果主虛擬巻上的目標(biāo)高速緩沖存儲(chǔ)器槽的槽狀態(tài)是臟,則將該臟的高速緩沖存儲(chǔ)器槽中的數(shù)據(jù)從從存儲(chǔ)子系統(tǒng)傳送到外部巻;在從虛擬巻上接收到來(lái)自外部巻的數(shù)據(jù)傳送的確認(rèn);及在從存儲(chǔ)子系統(tǒng)上將該臟的高速緩沖存儲(chǔ)器槽的槽狀態(tài)從臟改變?yōu)楦蓛?。全文摘要本發(fā)明高可用性以及低容量的動(dòng)態(tài)存儲(chǔ)區(qū)域分配同時(shí)提供動(dòng)態(tài)存儲(chǔ)區(qū)域分配和高可用性的數(shù)據(jù)存儲(chǔ)系統(tǒng)和方法。該系統(tǒng)包括外部存儲(chǔ)卷和連接到一起并連接到外部存儲(chǔ)卷的兩個(gè)存儲(chǔ)子系統(tǒng)。每個(gè)存儲(chǔ)子系統(tǒng)包括硬盤(pán)驅(qū)動(dòng)和高速緩沖存儲(chǔ)區(qū),每個(gè)存儲(chǔ)子系統(tǒng)包括至少一個(gè)虛擬卷和至少一個(gè)容量池。從至少一個(gè)容量池的存儲(chǔ)部件中分配至少一個(gè)虛擬卷。該容量池包括硬盤(pán)驅(qū)動(dòng)和至少一部分外部存儲(chǔ)卷。響應(yīng)于數(shù)據(jù)訪問(wèn)請(qǐng)求,將容量池的存儲(chǔ)部件分配給虛擬卷。該系統(tǒng)還包括連接到存儲(chǔ)子系統(tǒng)并配置來(lái)在存儲(chǔ)子系統(tǒng)之間切換輸入/輸出路徑的主計(jì)算機(jī)。每個(gè)存儲(chǔ)子系統(tǒng)適于將接收到的寫(xiě)I/O請(qǐng)求復(fù)制到其它存儲(chǔ)子系統(tǒng)。基于接收到來(lái)自其它存儲(chǔ)子系統(tǒng)的請(qǐng)求,防止存儲(chǔ)子系統(tǒng)的容量池的存儲(chǔ)部件被分配給該存儲(chǔ)子系統(tǒng)的虛擬卷。文檔編號(hào)G06F12/08GK101539841SQ200910004838公開(kāi)日2009年9月23日申請(qǐng)日期2009年1月19日優(yōu)先權(quán)日2008年3月21日發(fā)明者川口智大申請(qǐng)人:株式會(huì)社日立制作所
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
长宁区| 株洲市| 娄底市| 历史| 太和县| 繁昌县| 南皮县| 万载县| 威信县| 肇源县| 衡南县| 珲春市| 南平市| 佛山市| 化州市| 天峨县| 崇州市| 长汀县| 楚雄市| 竹山县| 左云县| 兰州市| 安徽省| 彰武县| 迁安市| 菏泽市| 吉隆县| 镶黄旗| 德州市| 通道| 西丰县| 康平县| 铜山县| 汉沽区| 海原县| 大竹县| 彰武县| 长宁区| 宜阳县| 都昌县| 渑池县|