專利名稱:Windows平臺下動態(tài)管理存儲資源的通用方法
技術領域:
Windows平臺下動態(tài)管理存儲資源的通用方法屬于存儲區(qū)域網絡領域,尤其涉及其中的虛擬化存儲技術領域。
背景技術:
存儲區(qū)域網絡(Storage Area Networks,SAN)技術是專門針對計算機存儲領域的技術,具有高可靠性(High Reliability)、可延伸性(Extendibility)和高性能性(HighPerformance)等特點。虛擬化存儲系統(tǒng)是在實際的物理存儲設備基礎上,虛擬出邏輯磁盤設備供文件系統(tǒng)使用,它被認為是可以簡化管理大型、復雜、異構的存儲環(huán)境的技術,它具有存儲資源控制靈活,能夠動態(tài)更改存儲資源和數(shù)據鏡像等功能。根據存儲網絡工業(yè)協(xié)會(SNIA)的定義,虛擬化技術要實現(xiàn)“使存儲系統(tǒng)的實現(xiàn)同主機視圖相分離的存儲抽象”。一個更為具體的定義則是實現(xiàn)“模擬物理設備的產品或體系結構,并將模擬設備的特性映射到實際的物理設備”的存儲技術。
SAN系統(tǒng)中的虛擬化技術可分為兩類帶內虛擬化(In-Band Virtualization)和帶外虛擬化(Out-of-Band)。目前,StoreAge的Virtualization Manager,HP的OpenView StorageOperations Manager等都是帶外虛擬化的實現(xiàn)方案方案,它們均采用了在應用服務器上的主機總線適配器(HBA,Host Bus Adapter)驅動上完成虛擬化功能。這種方法的實現(xiàn)位置較低,對應用服務器的操作系統(tǒng)的依賴性比較小。但是,他們必須要使用指定的HBA及相應的驅動程序。本文描述了一個Windows平臺下帶外虛擬化系統(tǒng)的設計實現(xiàn)方案。方案中虛擬化客戶端軟件在Windows系統(tǒng)的卷管理器(Volume Manager)級別實現(xiàn)虛擬化功能,使用標準的HBA和相應驅動。此外,方案中使用了專門的虛擬化服務器實現(xiàn)了對SAN系統(tǒng)的集中式管理。
發(fā)明內容
本發(fā)明的目的在于提供一種在Windows環(huán)境下實現(xiàn)分布式存儲資源部署的通用動態(tài)方法。采用本方法可以在運行Windows操作系統(tǒng)的應用程序服務器上實現(xiàn)統(tǒng)一的基于卷的存儲資源的動態(tài)管理,從而更加有效的利用網絡存儲資源。本方法的核心是在Windows操作系統(tǒng)的卷管理器級別,設計利用Windows系統(tǒng)的卷設備實現(xiàn)存儲資源部署,將應用程序對虛擬設備的操作映射到物理設備上,同時屏蔽Windows操作系統(tǒng)的其他組件對物理存儲設備的訪問。同時通過設定存儲資源管理服務器,統(tǒng)一管理存儲系統(tǒng)的存儲資源,決定虛擬化操作和行為,提供給存儲區(qū)域網絡(SAN)系統(tǒng)管理員一個統(tǒng)一一致的虛擬化存儲視圖和多種管理方式,實現(xiàn)基于Windows操作系統(tǒng)的虛擬化存儲管理平臺。
本發(fā)明的特征在于它是在由基于Windows NT的通過自身卷管理器級別實現(xiàn)存儲資源管理客戶端的應用服務器、通過基于TCP/IP的以太網和上述應用服務器連接的存儲資源管理服務器、通過光纖通道卡和上述應用服務器、存儲資源管理服務器相連的光纖交換機、和上述光纖交換機相連相連的網絡磁盤共同組成的存儲區(qū)域網絡環(huán)境中實現(xiàn)的,所述的方法依次會有以下步驟步驟1建立模塊結構客戶端會有以下兩個模塊通信模塊它是用戶模式下的網絡通信程序,它使用TCP/IP協(xié)議接收來自于存儲資源g管理服務器也成分配服務器的虛擬華命令,然后據此命令調度下述的內核模塊進行配置,并隨后將執(zhí)行結果返回給上述帶外虛擬化服務器即存儲資源管理服務器;內核模塊它創(chuàng)建內核虛擬通信設備接收來自于上述通信模塊的調度,根據命令和參數(shù)的不同采取不同的操作并把操作結果返回給上述通信模塊,對基于NT技術的Windows操作系統(tǒng)的其他組件通過其附屬的設備屏蔽模塊去屏蔽底層物理設備,完成應用程序對虛擬卷的I/O操作到實際物理存儲設備的映射,同時通過光線交換機對上述網絡磁盤完成讀寫控制;所述的內核虛擬設備含有物理卷,用PV表示,它是存儲資源分配或處理的對象,即單個的物理存儲設備,每個物理卷都包含以下數(shù)據結構物理卷名稱、通用唯一標識符即UUID,磁盤設備句柄,磁盤設備名以及下一結構對象指針,在內核模塊中維護著一個描述所有物理卷的列表;邏輯卷,用LV表示,它作為內核模塊所創(chuàng)建的設備對象為用戶狀態(tài)下的應用程序所見并可對其進行操作;它的數(shù)據結構包含有下一設備、驅動對象以及設備擴展的數(shù)據,所述的驅動對象數(shù)據含有設備對象和系統(tǒng)調用的數(shù)據,所述的設備擴展含有設備對象指針、地址信息表、任務隊列和工作線程的數(shù)據,系統(tǒng)調用通過物理指針調用物理卷對象,設備擴展中設備對象指針調用下一級設備,驅動對象就以下一級設備作為設備對象;內核模塊同時向Windows系統(tǒng)的裝配管理設備接口注冊,由其完成虛擬卷設備的命名;存儲資源管理服務器則包含以下模塊界面模塊,面向系統(tǒng)管理員;通信模塊,通過TCP/IP協(xié)議連接到以太網;管理模塊,它與上述界面模塊、通信模塊互連;設備監(jiān)視模塊,它實時監(jiān)測系統(tǒng)中的物理磁盤設備,同時與上述的管理模塊和光纖交換機互連;設備代理模塊,它同時與上述管理模塊以及光纖交換機互連;步驟2客戶端軟件按以下步驟依次進行資源動態(tài)分配步驟2.1存儲區(qū)域網絡系統(tǒng)管理員通過存儲資源管理服務器,也稱動態(tài)管理服務器界面結構模塊所提供的圖形界面接口向上述管理模塊發(fā)出虛擬化指令,要求在指定的應用服務器上創(chuàng)建虛擬卷;步驟2.2上述管理模塊得到此命令后檢查相應參數(shù)是否正確,若正確,便通過存儲資源管理服務器的通信模塊按照TCP/IP協(xié)議把指令和參數(shù)通過以太網發(fā)給上述應用服務器的通信模塊;步驟2.3運行于上述應用服務器上的通信模塊把接收到的數(shù)據重新組織后經過Windows NT API傳遞給內核模塊的上述虛擬通信設備,所述通信設備是通過把操作碼封裝為自定義的設備控制命令,所述操作碼將隨不通的操作而異;步驟2.4上述內核模塊根據所得到的命令和參數(shù)使用標準Windows API來完成所述的虛擬卷的創(chuàng)建;步驟2.5內核模塊把執(zhí)行結果返回客戶端的通信模塊,即上述應用服務器上的通信模塊;步驟2.6上述客戶端通信模塊再把執(zhí)行結果通過以太網返回給存儲資源管理服務器的通信模塊,再由所述通信模塊傳送給上述管理模塊;步驟2.7上述管理模塊根據執(zhí)行結果更新界面接口模塊上的視圖并最終為上述管理員所見。同時,還把更新后的元數(shù)據通過上述設備代理模塊再經過交換機寫入到指定物理設備的指定位置。
本系統(tǒng)在清華大學計算機高性能研究所的光纖存儲區(qū)域網絡存儲系統(tǒng)上進行了功能的有效性測試。在前端的Windows應用程序服務器上安裝了資源管理客戶端軟件,借助此客戶端軟件實現(xiàn)了Windows環(huán)境下的網絡存儲資源的虛擬化功能,為應用服務器提供了可操作的虛擬卷設備,實現(xiàn)了虛擬存儲池。在資源管理服務器的配合下提供了磁盤空間的動態(tài)隨意分配和修改邏輯磁盤大小的功能,同時還提供了邏輯磁盤數(shù)據鏡像和快照功能,充分驗證了本發(fā)明的有效性。
圖1存儲資源動態(tài)管理系統(tǒng)原理示意圖;圖2存儲資源動態(tài)管理系統(tǒng)結構示意圖;
圖3存儲資源動態(tài)管理系統(tǒng)軟件結構圖;圖4邏輯卷與虛擬卷在內核模塊中的邏輯組織關系;圖5存儲資源動態(tài)管理系統(tǒng)軟件模塊框圖;圖6Windows操作系統(tǒng)讀寫操作模型;圖7本發(fā)明所述內核模塊的讀寫操作模型;圖8軟件流程圖;圖9物理卷的數(shù)據結構圖;圖10數(shù)據分布信息的數(shù)據結構圖;圖11對于讀寫請求進行管理用的數(shù)據結構圖。
具體實施例方式
本發(fā)明的具體應用的硬件平臺是基于光纖存儲區(qū)域網絡環(huán)境的Windows應用程序服務器,多個Windows服務器通過存儲網絡共享底層物理設備。應用程序服務器和存儲資源管理服務器通過以太網絡連接,通過基于TCP/IP協(xié)議的以太網進行數(shù)據通訊。具體的硬件連接環(huán)境如圖1所示。
其中,應用服務器使用Windows操作系統(tǒng),它們和存儲資源管理服務器上均安裝了光纖通道卡。并且所有光纖通道卡及其驅動都是標準的,不需要使用特別的底層驅動。這些服務器通過光纖通道卡與光纖交換機相連,組成了存儲光纖網絡。服務器通過光纖網絡共享使用網絡磁盤陣列提供的存儲資源。網絡磁盤是直接連入光纖網絡的光纖磁盤陣列,具體的硬件框圖如圖2所示。
應用程序服務器的操作系統(tǒng)為Window,具體版本為Window Server 2003或Windows Server2000。存儲資源管理客戶端軟件在Windows系統(tǒng)所在的邏輯位置如圖3所示。其中DiskFilter用于屏蔽其他組件對物理存儲設備的訪問。
圖4描述了存儲資源在客戶端軟件的邏輯組織關系。其中,物理卷(PV,Physical Volume)是存儲資源分配的處理對象,它是單個的物理存儲設備。每個物理卷都包含有通用唯一標識符(UUID,Universal Unique Identifier),它用于在整個系統(tǒng)中唯一標識這個物理存儲設備。在客戶端程序中維護一個描述所有PV的列表,并把這個列表作為整個驅動對象(DriverObject)內的全局對象保存??蛻舳塑浖梢愿鶕噶钪匦聮呙璧讓游锢碓O備的狀態(tài)并根據狀態(tài)的變化更新此列表。
物理卷的數(shù)據結構見圖9。
在模塊加載(初始化)的過程中(對于Windows系統(tǒng)內的驅動程序來說,是指在DriverEntry例程中所完成的工作)檢索系統(tǒng)中的磁盤,獲得其通用唯一標識符;為物理卷建立相應的數(shù)據結構,建立對其的訪問機制。
這部分的具體功能函數(shù)包括獲得磁盤句柄函數(shù)(GetDiskFileHandle)取得某個物理磁盤設備的句柄和設備棧頂設備對象。
讀取UUID函數(shù)() 從某個物理磁盤上讀取其通用唯一標識符。
最后所有的獲得的針對物理磁盤的數(shù)據結構組織為鏈表的結構,并一直駐留在內存中。
邏輯卷(LV)作為客戶端程序的內核模塊所創(chuàng)建的設備對象為用戶狀態(tài)下的應用程序所見并可對其進行操作。圖4表示了物理卷和邏輯卷在內核模塊下的組織關系。我們的動態(tài)存儲資源分配系統(tǒng)的核心思想是基于物理磁盤資源虛擬出邏輯卷設備,供Windows文件系統(tǒng)使用??蛻舳塑浖罁?shù)據分布情況適當修改文件系統(tǒng)發(fā)出的讀寫請求命令的操作地址,將讀寫操作從針對邏輯卷設備映射到針對物理存儲設備的物理地址空間后再執(zhí)行讀寫操作。
以下結合圖5,對本發(fā)明中的資源部署的方法作詳盡描述。
客戶端軟件中的通信模塊是用戶模式下(User Mode)的網絡通信程序,它使用TCP/IP協(xié)議接受來自于資源分配服務器的虛擬化命令,然后將此命令及相關參數(shù)組織為適當形式經由Windows API交由內核模塊執(zhí)行,并隨后將執(zhí)行結果返回給帶外虛擬化服務器。下邊我們以虛擬卷的創(chuàng)建過程為例描述通信模塊的功能,并展示整個帶外虛擬化存儲系統(tǒng)中虛擬化指令的完成流程。
1.儲區(qū)域網絡系統(tǒng)的管理員通過存儲資源動態(tài)管理服務器所提供的圖形界面接口(或命令行或遠程命令行解釋器(Shell))(過程1)向服務器(V Server)的發(fā)出虛擬化指令(過程2),要在應用服務器A上創(chuàng)建虛擬卷X(Virtual Volume X)。
2.存儲資源動態(tài)管理服務器得到此命令后檢查相應參數(shù)是否正確,然后通過虛擬化服務器的通信模塊(過程3)將指令和參數(shù)經過以太網發(fā)送給運行Windows操作系統(tǒng)的應用程序服務器A(過程4)。
3.運行于A上的通信模塊將接收到數(shù)據重新組織后經過Windows NT API傳遞給內核模塊的虛擬通訊設備(過程5)。這里不同的操作對應著不同的操作碼,通訊模塊將這些操作碼封裝為自定義的設備控制命令。
4.內核模塊根據得到的命令和參數(shù)完成虛擬卷X的創(chuàng)建(過程6)。并將執(zhí)行結果返回給客戶端的通信模塊(過程7)。
這里創(chuàng)建虛擬卷完全使用標準Windows來完成的,實現(xiàn)過程位于函數(shù)CreateLv中,其具體過程為●通過IoCreateDevice創(chuàng)建邏輯卷設備對象,●通過RegisterMountedDeviceInterface()向裝配管理器(Mount Manager)注冊邏輯卷設備以自動分配符號鏈接,●置虛擬卷的狀態(tài)為離線,這是因為數(shù)據分布信息現(xiàn)在還不可用,所以將虛擬卷置為不可操作狀態(tài),●啟動虛擬卷的工作者線程,因為目前狀態(tài)為離線,所以所有的控制請求包和讀寫請求包都會被直接返回無此設備(NO_SUCH_DEVICE)信息,●通信模塊獲得數(shù)據分布信息后通過PutCMT函數(shù)將信息加載到邏輯卷的設備對象中,然后將邏輯卷的狀態(tài)置位為在線,邏輯卷開始正常工作。
這里數(shù)據分布信息的數(shù)據結構見圖10。
5.客戶端通信模塊再將結果通過TCP連接傳遞給虛擬化服務器上的客戶端接口通信模塊(過程8)并最終傳遞給存儲資源動態(tài)管理服務器(過程9)。
6.管理服務器根據執(zhí)行結果更新接口模塊的視圖(10)并最終為管理員所見(過程11)。此外,管理服務器還要將更新后的元數(shù)據寫入到指定物理設備的相應位置(過程12)。在完成了如上的操作之后,系統(tǒng)在應用服務器A創(chuàng)建了虛擬卷X,A上的應用程序對X的讀寫操作經由內核模塊映射后轉發(fā)給底層的實際物理存儲設備完成。內核模塊必須完成Windows操作系統(tǒng)對虛擬設備所發(fā)送的設備控制命令的處理。這些設備控制命令的處理是由函數(shù)MagicDiskDeviceControl實現(xiàn)的。為了使內核模塊所創(chuàng)建的虛擬設備為用戶模式下的應用程序所見,必須為所創(chuàng)建的虛擬設備建立符號鏈接或再解析點。完成這一功能可以有兩種,一種是采用驅動程序內部規(guī)定的方式創(chuàng)建符號鏈接;另一種是向Windows系統(tǒng)的裝配管理器設備接口注冊,由其完成虛擬設備的命名。
我們采用的是后一種方式,這種方式首先需要在設備創(chuàng)建的時候向裝配管理器設備接口注冊,這一步驟我們在前邊的創(chuàng)建LV的過程描述中已經介紹過。然后邏輯卷設備還必須完成三種設備控制命令的處理IOCTL_MOUNTDEV_QUERY_DEVICE_NAME返回創(chuàng)建設備的過程中為設備對象所取的名字,如“/device/magicdisk/magicdisk0”IOCTL_MOUNTDEV_QUERY_UNIQUE_ID返回在向裝配管理器接口注冊時所返回的接口名IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME返回設備所希望獲得符號鏈接或再解析點,此項可以返回空。若返回空則由裝配管理器分配符號連接。
裝配管理器設備接口會自動尋找存儲設備的通用唯一標識符,并將其作為虛擬卷的標識存放在注冊表中。
在完成了以上的操作之后,應用程序就可以像使用其他的卷設備一樣來使用虛擬卷設備了。從應用程序和文件系統(tǒng)的角度看,內核模塊所創(chuàng)建的虛擬卷同其他的卷設備是完全相同的,因而他們對二者的訪問和操作也完全相同。以應用程序向虛擬卷發(fā)出的讀操作請求為例,在經過文件系統(tǒng)驅動的處理后,所得的讀寫請求包(圖7中 )從虛擬化內核模塊的角度看來,是要讀取虛擬卷上指定范圍的數(shù)據。這樣,內核模塊首先掛起原讀寫請求包,然后根據分布策略的不同,創(chuàng)建新的讀寫請求包(圖7中 )從一個或多個物理存儲設備上讀取所需的數(shù)據。在這些讀寫請求包從驅動棧中的下層返回后,內核模塊將它們讀入的數(shù)據填入到原讀寫請求包的相應位置中并完成原讀寫請求包,過程如圖7所示。
創(chuàng)建新的讀寫請求包的過程中需要使用數(shù)據分布信息,這些信息存儲在內核模塊中與虛擬卷設備對象相關的一塊內存區(qū)域中。對于每一個到來的讀寫請求包,內核模塊都會為其分配一個管理結構。具體的處理過程描述如下對于到來的讀寫請求包,申請一個管理其子讀寫請求包的數(shù)據結構實例;利用虛擬化信息對此讀寫請求包進行拆分,拆分所得的讀寫請求包由上邊所提到的數(shù)據結構進行管理;如果拆分出來的子讀寫請求包只有一個,則釋放上邊所說的管理數(shù)據結構,直接轉發(fā)子讀寫請求包;若有多個子讀寫請求包,則在拆分完成后將所有子讀寫請求包發(fā)射出去,等待所有子讀寫請求包返回后釋放管理結構實例,完成父讀寫請求包。
對子IRP進行管理的數(shù)據結構見圖11。結構中的自旋鎖對象負責在對稱多處理器情況下對后邊兩個隊列的共享操作的安全性。未決隊列索引尚未完成的子讀寫請求包,完成隊列中索引已經完成了的子讀寫請求包。在子讀寫請求包的CompleteRoutine例程中,每個子讀寫請求包會被檢測是否其結果是否正確并將主讀寫請求包中的未決讀寫請求包個數(shù)減1,然后將此讀寫請求包從未決隊列中移除放入完成隊列中。
目前這個管理結構的功能是將所有的子讀寫請求包一起發(fā)射并等待所有的子讀寫請求包返回。在所有的子讀寫請求包都完成之后將原讀寫請求包返回。
這一部分的幾個關鍵函數(shù)介紹如下分割主讀寫請求包函數(shù)(SplitIRP)根據數(shù)據分布信息對主讀寫請求包進行拆分,將新分配的讀寫請求包放入到未決隊列當中。
讀操作完成主讀寫請求包函數(shù)(ReadCompleteMasterIrp),在所有子讀寫請求包完成后完成讀操作的主讀寫請求包并向上返回。
讀操作完成例程(ReadCompletion),讀操作的子讀寫請求包完成回調函數(shù)。
讀操作完成主讀寫請求包函數(shù)(WriteCompleteMasterIrp),在所有子讀寫請求包完成后完成寫操作的主讀寫請求包并向上返回。
寫操作完成例程(WriteCompletion),寫操作的子讀寫請求包完成回調函數(shù)。
本發(fā)明在清華大學計算機系高性能研究所的光纖存儲區(qū)域網絡系統(tǒng)上進行了功能的有效性測試。在前端Windows應用程序服務器上安裝了分布式存儲資源管理客戶端軟件。借助統(tǒng)一的存儲資源管理服務器,該系統(tǒng)實現(xiàn)了Windows環(huán)境下的網絡存儲資源虛擬化的功能,提供了存儲區(qū)域網絡系統(tǒng)存儲資源的統(tǒng)一部署和分配和虛擬存儲池。由于客戶端軟件基于Windows的卷管理器級別設計,因而不需要使用特別的總線適配器及為其定制的驅動程序。
權利要求
1.Windows平臺下動態(tài)管理存儲資源的方法其特點在于它是在由基于Windows NT的通過自身卷管理器級別實現(xiàn)存儲資源管理客戶端的應用服務器、通過基于TCP/IP的以太網和上述應用服務器連接的存儲資源管理服務器、通過光纖通道卡和上述應用服務器、存儲資源管理服務器相連的光纖交換機、和上述光纖交換機相連相連的網絡磁盤共同組成的存儲區(qū)域網絡環(huán)境中實現(xiàn)的,所述的方法依次會有以下步驟步驟1建立模塊結構客戶端會有以下兩個模塊通信模塊它是用戶模式下的網絡通信程序,它使用TCP/IP協(xié)議接收來自于存儲資源管理服務器也成分配服務器的虛擬華命令,然后據此命令調度下述的內核模塊進行配置,并隨后將執(zhí)行結果返回給上述帶外虛擬化服務器即存儲資源管理服務器;內核模塊它創(chuàng)建內核虛擬通信設備接收來自于上述通信模塊的調度,根據命令和參數(shù)的不同采取不同的操作并把操作結果返回給上述通信模塊,對基于NT技術的Windows操作系統(tǒng)的其他組件通過其附屬的設備屏蔽模塊去屏蔽底層物理設備,完成應用程序對虛擬卷的I/O操作到實際物理存儲設備的映射,同時通過光線交換機對上述網絡磁盤完成讀寫控制;所述的內核虛擬設備含有物理卷,用PV表示,它是存儲資源分配或處理的對象,即單個的物理存儲設備,每個物理卷都包含以下數(shù)據結構物理卷名稱、通用唯一標識符即UUID,磁盤設備句柄,磁盤設備名以及下一結構對象指針,在內核模塊中維護著一個描述所有物理卷的列表;邏輯卷,用LV表示,它作為內核模塊所創(chuàng)建的設備對象為用戶狀態(tài)下的應用程序所見并可對其進行操作;它的數(shù)據結構包含有下一設備、驅動對象以及設備擴展的數(shù)據,所述的驅動對象數(shù)據含有設備對象和系統(tǒng)調用的數(shù)據,所述的設備擴展含有設備對象指針、地址信息表、任務隊列和工作線程的數(shù)據,系統(tǒng)調用通過物理指針調用物理卷對象,設備擴展中設備對象指針調用下一級設備,驅動對象就以下一級設備作為設備對象;內核模塊同時向Windows系統(tǒng)的裝配管理設備接口注冊,由其完成虛擬卷設備的命名;存儲資源管理服務器則包含以下模塊界面模塊,面向系統(tǒng)管理員;通信模塊,通過TCP/IP協(xié)議連接到以太網;管理模塊,它與上述界面模塊、通信模塊互連;設備監(jiān)視模塊,它實時監(jiān)測系統(tǒng)中的物理磁盤設備,同時與上述的管理模塊和光纖交換機互連;設備代理模塊,它同時與上述管理模塊以及光纖交換機互連;步驟2客戶端軟件按以下步驟依次進行資源動態(tài)分配步驟2.1存儲區(qū)域網絡系統(tǒng)管理員通過存儲資源管理服務器,也稱動態(tài)管理服務器界面結構模塊所提供的圖形界面接口向上述管理模塊發(fā)出虛擬化指令,要求在指定的應用服務器上創(chuàng)建虛擬卷;步驟2.2上述管理模塊得到此命令后檢查相應參數(shù)是否正確,若正確,便通過存儲資源管理服務器的通信模塊按照TCP/IP協(xié)議把指令和參數(shù)通過以太網發(fā)給上述應用服務器的通信模塊;步驟2.3運行于上述應用服務器上的通信模塊把接收到的數(shù)據重新組織后經過WindowsNT API傳遞給內核模塊的上述虛擬通信設備,所述通信設備是通過把操作碼封裝為自定義的設備控制命令,所述操作碼將隨不通的操作而異;步驟2.4上述內核模塊根據所得到的命令和參數(shù)使用標準Windows API來完成所述的虛擬卷的創(chuàng)建;步驟2.5內核模塊把執(zhí)行結果返回客戶端的通信模塊,即上述應用服務器上的通信模塊;步驟2.6上述客戶端通信模塊再把執(zhí)行結果通過以太網返回給存儲資源管理服務器的通信模塊,再由所述通信模塊傳送給上述管理模塊;步驟2.7上述管理模塊根據執(zhí)行結果更新界面接口模塊上的視圖并最終為上述管理員所見。同時,還把更新后的元數(shù)據通過上述設備代理模塊再經過交換機寫入到指定物理設備的指定位置。
全文摘要
Windows平臺下動態(tài)管理存儲資源的通用方法屬于存儲區(qū)域網絡(SAN)系統(tǒng)中存儲資源動態(tài)管理技術,其特征在于使用基于Windows NT操作系統(tǒng)卷管理器的內核模塊實現(xiàn)存儲資源的動態(tài)分配和使用,同時利用用戶模式下的通信軟件與全局的存儲資源管理服務器連接,由后者進行全局的存儲資源在不同應用服務器之間的調度和分配。內核模塊除了要支持與存儲資源管理服務器相對應的存儲資源調度方法外,還要將應用程序對由其提供的虛擬存儲設備的操作提供映射到物理存儲設備中。此外內核模塊還會對Windows NT操作系統(tǒng)的其他組件屏蔽對其所控制的物理設備的訪問。
文檔編號G06F12/00GK1655129SQ20051001135
公開日2005年8月17日 申請日期2005年2月25日 優(yōu)先權日2005年2月25日
發(fā)明者舒繼武, 薛巍, 孟冉, 張廣艷, 鄭緯民 申請人:清華大學