專利名稱:用于協(xié)調(diào)訪問(wèn)本地和遠(yuǎn)程輸出文件系統(tǒng)的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及文件訪問(wèn),特別是協(xié)調(diào)文件系統(tǒng)訪問(wèn)。
技術(shù)背景在通用計(jì)算機(jī)系統(tǒng)環(huán)境中,應(yīng)用可以通過(guò)一組包括文件系統(tǒng)的操作系統(tǒng) 服務(wù)訪問(wèn)存儲(chǔ)在磁盤(pán)驅(qū)動(dòng)器上的數(shù)據(jù)。文件系統(tǒng)包括磁盤(pán)上的文件集和維持 該文件集的程序工具??刂茖?duì)象物理表示的文件系統(tǒng),例如目錄和文件,被認(rèn)為是物理文件系統(tǒng)(PFS)。同樣包含在通用計(jì)算機(jī)系統(tǒng)環(huán)境中的是執(zhí)行基本功能(諸如分配硬件) 的內(nèi)核。內(nèi)核在大多數(shù)計(jì)算機(jī)系統(tǒng)中是中心部分并管理系統(tǒng)的資源和在硬件 和軟件部件之間的通信。作為操作系統(tǒng)的基本部件,內(nèi)核為硬件提供抽象層 以允許硬件和軟件的通信。邏輯文件系統(tǒng)(LFS)是其中用戶能使用系統(tǒng)呼叫以請(qǐng)求文件操作的文 件系統(tǒng)層。LFS提供內(nèi)核,帶有多重物理文件系統(tǒng)和多重文件系統(tǒng)實(shí)現(xiàn)的一 致視圖。文件系統(tǒng)實(shí)現(xiàn)的一致性視圖可能是由虛擬文件系統(tǒng)(VFS)產(chǎn)生的。該 虛擬文件系統(tǒng)是物理文件系統(tǒng)實(shí)現(xiàn)的抽象。它提供了到多個(gè)文件系統(tǒng)的一致 性接口,包括本地的和遠(yuǎn)程的。該接口允許內(nèi)核中的LFS代碼操作而無(wú)需關(guān) 心^t訪問(wèn)的文件系統(tǒng)的類型。每次文件被打開(kāi)或變得可訪問(wèn),文件系統(tǒng)創(chuàng)建稱為"vnode"的數(shù)據(jù)結(jié)構(gòu), 該結(jié)構(gòu)鏈接到VFS。 vnode是活動(dòng)庫(kù)存(activefile)的抽象表現(xiàn),并提供了在其 代表的實(shí)際文件上操作的 一 般方法,而不考慮其常駐的文件系統(tǒng)。在分布式計(jì)算環(huán)境中,多個(gè)計(jì)算機(jī)系統(tǒng)能夠通過(guò)通信網(wǎng)絡(luò)互連并通過(guò)分 布式文件系統(tǒng)共享文件。分布式計(jì)算機(jī)系統(tǒng)的一個(gè)例子是服務(wù)器-客戶端系 統(tǒng),在其中一個(gè)或多個(gè)遠(yuǎn)程客戶端設(shè)備被一個(gè)或多個(gè)服務(wù)器設(shè)備來(lái)服務(wù)。服 務(wù)器設(shè)備控制由客戶設(shè)備對(duì)包括文件系統(tǒng)數(shù)據(jù)的磁盤(pán)的訪問(wèn)。運(yùn)行于服務(wù)器上的文件輸出者向(和它相連接的)遠(yuǎn)程客戶端提供數(shù)據(jù)。對(duì)本地輸出文件系統(tǒng)數(shù)據(jù)的訪問(wèn)被稱為本地訪問(wèn),而對(duì)遠(yuǎn)程輸出文件系統(tǒng)數(shù) 據(jù)的訪問(wèn)稱為遠(yuǎn)程訪問(wèn)。當(dāng)文件服務(wù)器獲得數(shù)據(jù)來(lái)滿足遠(yuǎn)程客戶端的數(shù)據(jù)請(qǐng) 求時(shí),在文件服務(wù)器核心中的高速緩存的管理器處理高速緩存數(shù)據(jù)的副本。 只要數(shù)據(jù)沒(méi)有改變,本地高速緩存的副本保持對(duì)遠(yuǎn)程客戶端的可用。只有當(dāng) 另一處理改變數(shù)據(jù)時(shí)才檢索新的副本。相對(duì)于在外部但是連接到分布式文件系統(tǒng)的遠(yuǎn)程客戶端,還存在作為部 分分布式文件系統(tǒng)的應(yīng)用。與來(lái)自遠(yuǎn)程客戶端的請(qǐng)求不同地處理應(yīng)用的數(shù)據(jù) 請(qǐng)求。為了 了解如何處理應(yīng)用的數(shù)據(jù)請(qǐng)求,考慮系統(tǒng)綜合體(sysplex),它是多 個(gè)大型機(jī)(mainframe)共同作用為分布式文件系統(tǒng)的系統(tǒng)。在傳統(tǒng)的系統(tǒng)綜合 體中,由LFS來(lái)接收應(yīng)用請(qǐng)求,以及LFS向擁有文件服務(wù)器的PFS轉(zhuǎn)發(fā)對(duì)遠(yuǎn) 程擁有的輸出文件系統(tǒng)的請(qǐng)求。在這類系統(tǒng)中,服務(wù)類型文件輸出器在服務(wù) 器上提供程序"G"來(lái)控制對(duì)它的輸出文件系統(tǒng)的本地訪問(wèn)。該程序用來(lái)同 步文件改變并由LFS調(diào)用。LFS不區(qū)別文件系統(tǒng)的類型,無(wú)論是本地的、遠(yuǎn) 程的或嚴(yán)格邏輯的。"G"程序在每個(gè)vnode操作(也就是,每次文件打開(kāi)或 變得可訪問(wèn),并創(chuàng)建vnode)之前和之后被LFS調(diào)用。在每個(gè)vnode操作之前 和之后,文件改變的協(xié)調(diào)由取得和撤回使用G程序的標(biāo)記來(lái)執(zhí)行。每個(gè)文件 服務(wù)器的文件輸出器分配標(biāo)記(token)來(lái)允許代表遠(yuǎn)程客戶端從文件服務(wù)器訪 問(wèn)數(shù)據(jù)或者允許LFS訪問(wèn)PFS數(shù)據(jù)。文件輸出器使用標(biāo)記來(lái)管理對(duì)數(shù)據(jù)和元 數(shù)據(jù)的訪問(wèn)。標(biāo)記保證向訪問(wèn)同樣的數(shù)據(jù)的遠(yuǎn)程客戶端和應(yīng)用提供數(shù)據(jù)的最 近版本,并且該多個(gè)用戶端不以沖突的方式訪問(wèn)同樣的數(shù)據(jù)。至于遠(yuǎn)程客戶端,當(dāng)遠(yuǎn)程客戶端希望訪問(wèn)或改變由文件輸出器管理的文 件或目錄時(shí),它首先從文件輸出器請(qǐng)求適當(dāng)?shù)臄?shù)據(jù)標(biāo)記。文件輸出器對(duì)于客 戶端的請(qǐng)求的響應(yīng)取決于客戶端想要操作的數(shù)據(jù)、客戶端希望對(duì)數(shù)據(jù)執(zhí)行的 操作、和其他客戶端當(dāng)前是否有了數(shù)據(jù)的標(biāo)記。如果LFS和其他客戶端都沒(méi)有數(shù)據(jù)標(biāo)記,那么文件輸出器可向遠(yuǎn)程客戶 端發(fā)出適當(dāng)?shù)臉?biāo)記。如果數(shù)據(jù)的顯著標(biāo)記存在,則文件輸出器可授予請(qǐng)求(如 果在請(qǐng)求和顯著標(biāo)記之間沒(méi)有沖突出現(xiàn))、撤回現(xiàn)有標(biāo)記授予請(qǐng)求、或者考慮 未決的請(qǐng)求直到它能夠授予。在某些情形下,文件輸出器簡(jiǎn)單地拒絕準(zhǔn)予請(qǐng) 求。如果文件輸出器給客戶端必要的標(biāo)記,則客戶端依次可以請(qǐng)求的的方式 從文件輸出器訪問(wèn)數(shù)據(jù)。在傳統(tǒng)的系統(tǒng)綜合體中,文件服務(wù)器僅僅該輸出文件服務(wù)器在其上允許 的系統(tǒng)綜合體所擁有的文件系統(tǒng),也就是,該輸出文件服務(wù)器具有到其直接 訪問(wèn)的文件系統(tǒng)。在該類文件系統(tǒng)中,舉例來(lái)說(shuō), 一組Z/0S系統(tǒng)通過(guò)某些多系統(tǒng)硬件和軟件組件而互相通信和協(xié)作,來(lái)處理用戶工作量。當(dāng)G程序在本 地系統(tǒng)取得調(diào)用時(shí),它與文件服務(wù)器通信來(lái)由LFS和遠(yuǎn)程客戶端協(xié)調(diào)訪問(wèn)。當(dāng)PFS作為知道系統(tǒng)綜合體(sysplex-aware)運(yùn)行時(shí),也就是說(shuō),PFS 允許文件系統(tǒng)在系統(tǒng)綜合體的所有成員上本地^L訪問(wèn)時(shí),因?yàn)長(zhǎng)FS未向擁有 文件系統(tǒng)輸出器的文件服務(wù)器(即,具有到文件系統(tǒng)的直接訪問(wèn)和負(fù)責(zé)協(xié)調(diào) 對(duì)文件系統(tǒng)的訪問(wèn)的文件服務(wù)器)轉(zhuǎn)發(fā)對(duì)遠(yuǎn)程擁有玩具系統(tǒng)的文件訪問(wèn)請(qǐng)求, 所以該模型失敗。因此,G程序不被調(diào)用,并且文件輸出器沒(méi)有辦法知道數(shù) 據(jù)何時(shí)改變或者何時(shí)刷新/更新高速緩存。作為代替,PFS處理本地的或遠(yuǎn)程 的請(qǐng)求,并執(zhí)行它自身的高速緩存。因?yàn)椴荒苡行У膮f(xié)調(diào)訪問(wèn)遠(yuǎn)程擁有的文 件系統(tǒng),所以文件輸出器的高速緩存數(shù)據(jù)可能是不準(zhǔn)確的。因此有必要提高現(xiàn)有的分布式文件系統(tǒng)訪問(wèn)模式來(lái)向文件輸出器提供輸 出本地?fù)碛械奈募到y(tǒng)和遠(yuǎn)程擁有的文件系統(tǒng)并且還保持高速緩存的 一致性 的能力。發(fā)明內(nèi)容依照示例性實(shí)施例,提供了一種方法,計(jì)算機(jī)程序產(chǎn)品和系統(tǒng)用于協(xié)調(diào) 對(duì)本地和遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)。響應(yīng)于對(duì)文件系統(tǒng)訪問(wèn)的應(yīng)用請(qǐng)求,調(diào) 用程序來(lái)確定請(qǐng)求是否和本地輸出文件系統(tǒng)或遠(yuǎn)程輸出文件系統(tǒng)相關(guān)聯(lián)。如 果請(qǐng)求和本地輸出文件系統(tǒng)相關(guān)聯(lián),則調(diào)用本地訪問(wèn)例程以獲得對(duì)本地輸出 文件系統(tǒng)的訪問(wèn)許可。如果請(qǐng)求和遠(yuǎn)程輸出文件系統(tǒng)相關(guān)聯(lián),則調(diào)用遠(yuǎn)程訪通信來(lái)獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可。當(dāng)查看以下附圖和詳細(xì)描述時(shí),根據(jù)實(shí)施例的其他系統(tǒng),方法,和/或計(jì) 算機(jī)程序產(chǎn)品對(duì)本領(lǐng)域技術(shù)人員是明顯的。意圖將所有這樣的附加系統(tǒng)、方 法和/或計(jì)算機(jī)程序產(chǎn)品都包括在本說(shuō)明書(shū)之內(nèi)、在當(dāng)前申請(qǐng)的范圍之內(nèi)、被 附帶的權(quán)利要求所保護(hù)。
被視為本申請(qǐng)的主題是在說(shuō)明書(shū)的總結(jié)的權(quán)利要求中特別指出和清楚要 求的。通過(guò)以下結(jié)合附圖的具體描述,本申請(qǐng)的前面所述的和其它目的、特 征和優(yōu)點(diǎn)是明顯的。附圖1 A和1B根據(jù)示例性實(shí)施例圖解了用于協(xié)調(diào)訪問(wèn)本地和遠(yuǎn)程輸出文 件系統(tǒng)的系統(tǒng)。附圖2根據(jù)示例性實(shí)施例圖解了用于協(xié)調(diào)訪問(wèn)本地和遠(yuǎn)程輸出文件系統(tǒng) 的方法。作為示例、通過(guò)參考附圖,詳細(xì)的描述解釋了本發(fā)明的示例性實(shí)施例, 以及優(yōu)點(diǎn)和特征。
具體實(shí)施方式
根據(jù)示例性實(shí)施例,向文件輸出器服務(wù)器提供不考慮所有權(quán)而輸出知道 系統(tǒng)綜合體的PFS,并且仍然協(xié)調(diào)來(lái)自任意系統(tǒng)綜合體成員的本地訪問(wèn)的能 力。根據(jù)一個(gè)實(shí)施例,這通過(guò)向LFS提供具有附加例程的程序模塊以調(diào)用遠(yuǎn) 程擁有的文件系統(tǒng)來(lái)實(shí)現(xiàn)。依照實(shí)施例,為了程序模塊"G"向每一個(gè)系統(tǒng)綜合體成員提供兩個(gè)例 程,在此稱為"G1" , "G2"??稍诘怯洉r(shí)提供包含這兩個(gè)例程的模塊。Gl 例程可與上述"g"程序相似,被lfs調(diào)用用于訪問(wèn)本地輸出文件系統(tǒng)。如 果系統(tǒng)綜合體成員不擁有輸出文件系統(tǒng),也就是,如果系統(tǒng)綜合體成員不具 有文件系統(tǒng)輸出,則包含在"G"模塊中的G2例程可為新的例程,其加載系 統(tǒng)綜合體的所有成員和在系統(tǒng)綜合體成員的每個(gè)vnode操作之前和之后由 LFS調(diào)用。G2例程在擁有輸出文件系統(tǒng)(也就是,有輸出的文件系統(tǒng))的文 件服務(wù)器中和Gl通信來(lái)在系統(tǒng)綜合體上協(xié)調(diào)訪問(wèn)。這樣就允許單獨(dú)的文件 輸出器輸出所有知道系統(tǒng)綜合體的文件系統(tǒng)。這可通過(guò)參考圖1A和1B來(lái)理解,所述圖1A和1B圖解了根據(jù)本發(fā)明 的實(shí)施例分別用于協(xié)調(diào)對(duì)本地和遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)的示例系統(tǒng)100a和 100b。參考圖1A,系統(tǒng)100a包括系統(tǒng)綜合體成員110和120。每個(gè)系統(tǒng)綜合體 成員可以通過(guò)例如z/OS系統(tǒng)實(shí)現(xiàn)。每個(gè)系統(tǒng)綜合體包括LFS層、PFS層和一 個(gè)或多個(gè)應(yīng)用。在圖1A中,由數(shù)據(jù)庫(kù)140在物理層和系統(tǒng)綜合體成員110 和120中的邏輯層表示PFS。根據(jù)示例性實(shí)施例,如參考系統(tǒng)綜合體成員110所示,可在系統(tǒng)綜合體成員上運(yùn)行例如分布式文件服務(wù)服務(wù)器消息塊(SMB服務(wù)器)的文件服務(wù)器。 SMB服務(wù)器包括內(nèi)核(標(biāo)記為DFSKERN以表示分布式文件系統(tǒng)內(nèi)核)。在 系統(tǒng)綜合體成員120中,不運(yùn)行SMB服務(wù)器。圖1B中所示的系統(tǒng)和圖1A 中所示的相似,除了它還包括具有運(yùn)行的SMB服務(wù)器的附加系統(tǒng)綜合體成員 115。雖然為了說(shuō)明簡(jiǎn)便圖1A中僅僅示出了兩個(gè)系統(tǒng)綜合體成員而圖1B中 示出了三個(gè)系統(tǒng)綜合體成員,但是應(yīng)當(dāng)理解可以包括任意數(shù)量的系統(tǒng)綜合體 成員。正如在圖1A和圖1B中PFS之間的箭頭所示,PFS, s表示"知道系統(tǒng) 綜合體",表示它們互相通信,來(lái)為L(zhǎng)FS, s獲得數(shù)據(jù)。在該類型系統(tǒng)中,LFS 向本地PFS詢問(wèn)數(shù)據(jù),如果存在數(shù)據(jù),則PFS從它的高速緩存獲得數(shù)據(jù)。否 則從磁盤(pán)獲得數(shù)據(jù)。在系統(tǒng)100a和100b中,向每個(gè)系統(tǒng)綜合體成員提供包含兩個(gè)訪問(wèn)例程 G1和G2的模塊G。例如,注冊(cè)文件服務(wù)器時(shí)可以加載該包含兩個(gè)例程的模 塊。如可替換的,可以作為分開(kāi)的模塊加載例程G1和G2。根據(jù)示例性實(shí)施例,可由LFS調(diào)用G模塊以使用Gl例程協(xié)調(diào)取得和撤 回用于訪問(wèn)本地輸出文件系統(tǒng)的標(biāo)記,而G2例程提供獲得訪問(wèn)遠(yuǎn)程輸出文 件系統(tǒng)的機(jī)制。每個(gè)G模塊知道系統(tǒng)綜合體中的所有輸出和哪個(gè)系統(tǒng)擁有該 輸出??梢愿挛募敵銎鱽?lái)允許輸出遠(yuǎn)程擁有的文件系統(tǒng)。當(dāng)收到對(duì)遠(yuǎn)程 擁有的文件系統(tǒng)的請(qǐng)求時(shí),可更新為Gl例程調(diào)用G模塊的現(xiàn)有LFS代碼以 使用G2例程?,F(xiàn)有LFS系統(tǒng)綜合體通信可用于一個(gè)系統(tǒng)綜合體成員中的G2 例程來(lái)和其它具有運(yùn)行的文件服務(wù)器的另一個(gè)系統(tǒng)綜合體成員中的Gl例程 的通信,以獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可。依照實(shí)施例,Gl例程和 G2例程能夠經(jīng)由跨系統(tǒng)耦合功能(XCF)通信。前置/后置操作使LFS能夠 獲得對(duì)文件系統(tǒng)訪問(wèn)的適當(dāng)允許。前置操作請(qǐng)求訪問(wèn)的許可,而后置操作釋 放訪問(wèn),也就是,讓適當(dāng)?shù)腉程序的例程獲知LFS不再訪問(wèn)文件系統(tǒng)。在文件服務(wù)器不運(yùn)行的系統(tǒng)綜合體成員中,例如系統(tǒng)綜合體成員120, 包括例程Gl和G2的程序G可以-故加載,但是唯一被使用的例程是G2例程。 這是因?yàn)橛捎赟MB服務(wù)器需要運(yùn)行本地輸出,所以在系統(tǒng)綜合體成員120 上不能本地輸出的文件系統(tǒng)。在系統(tǒng)綜合體成員120中,可發(fā)出應(yīng)用請(qǐng)求以 請(qǐng)求到由系統(tǒng)綜合體中的任意文件服務(wù)器輸出的任意文件系統(tǒng)的訪問(wèn)。在此情景下,系統(tǒng)綜合體成員120中的LFS調(diào)用G程序,并且G2例程向輸出器 擁有者發(fā)送標(biāo)記請(qǐng)求,無(wú)論所述輸出器擁有者為系統(tǒng)綜合體成員110或是系 統(tǒng)綜合體成員115。然后擁有輸出的SMB服務(wù)器可協(xié)調(diào)訪問(wèn)文件系統(tǒng),因此 保持為滿足遠(yuǎn)程客戶端請(qǐng)求的高速緩存。在系統(tǒng)100a中,系統(tǒng)綜合體成員110可連接到遠(yuǎn)程客戶端130a、 130b 和130c,并且在系統(tǒng)100b中,系統(tǒng)綜合體成員115可連接到遠(yuǎn)程客戶端130d。 可經(jīng)由例如TCPIP連接來(lái)連接遠(yuǎn)程客戶端。雖然為了簡(jiǎn)單說(shuō)明只示出四個(gè)遠(yuǎn) 程客戶端,但將理解可將任意數(shù)量的遠(yuǎn)程客戶端連接到系統(tǒng)綜合體110和115 上。系統(tǒng)綜合體成員110和115可向遠(yuǎn)程客戶端提供對(duì)存儲(chǔ)和高速緩存在他 們各自的PFS上的數(shù)據(jù)的訪問(wèn)。在系統(tǒng)綜合體110和115中也可有訪問(wèn)文件 系統(tǒng)的應(yīng)用。這些應(yīng)用可以包含在系統(tǒng)綜合體成員110和115中,或者例如 系統(tǒng)綜合體成員120的其它系統(tǒng)綜合體成員中。如果應(yīng)用請(qǐng)求訪問(wèn)文件系統(tǒng),則在包含該應(yīng)用的系統(tǒng)綜合體成員中的 LFS將調(diào)用G程序。做出是對(duì)本地輸出文件系統(tǒng)還是遠(yuǎn)程輸出文件系統(tǒng)的請(qǐng) 求的確定。如果是對(duì)本地輸出文件系統(tǒng)的請(qǐng)求,則Gl例程將與系統(tǒng)綜合體 成員中的DFSKERN通信以適當(dāng)?shù)漠a(chǎn)生標(biāo)記、撤銷標(biāo)記或者拒絕標(biāo)記。擁有 文件系統(tǒng)的文件服務(wù)器中的Gl例程知曉是否已存在對(duì)文件系統(tǒng)的訪問(wèn)并且 知曉是否存在沖突的請(qǐng)求。如果存在沖突的請(qǐng)求,則Gl例程可撤銷現(xiàn)有的 標(biāo)記并發(fā)布新的標(biāo)記來(lái)允許訪問(wèn)、拒絕提供標(biāo)記或者保持請(qǐng)求待決。 一旦獲 得標(biāo)記,LFS從本地系統(tǒng)上的PFS中檢索數(shù)據(jù)并將它返還到請(qǐng)求應(yīng)用。只要 LFS保持標(biāo)記,SMB服務(wù)器就獲知不使用高速緩存數(shù)據(jù)滿足遠(yuǎn)程客戶端的對(duì) 同樣文件的請(qǐng)求。如果應(yīng)用的請(qǐng)求是遠(yuǎn)程輸出文件系統(tǒng),則調(diào)用G2例程以轉(zhuǎn)發(fā)請(qǐng)求,該 請(qǐng)求是對(duì)于到在擁有遠(yuǎn)程輸出文件系統(tǒng)的系統(tǒng)綜合體成員中的Gl例程的訪 問(wèn)。根據(jù)實(shí)施例,在不擁有輸出的系統(tǒng)綜合體成員上的每個(gè)vnode操作之前 和之后可在每個(gè)系統(tǒng)綜合體成員中調(diào)用G2例程,來(lái)保持任意高速緩存的數(shù) 據(jù)是最新的。當(dāng)擁有遠(yuǎn)程輸出文件系統(tǒng)的系統(tǒng)綜合體成員中的Gl例程收到 訪問(wèn)請(qǐng)求時(shí),它與擁有遠(yuǎn)程輸出文件系統(tǒng)的系統(tǒng)綜合體成員中的DFSKERN 通信、生成適當(dāng)?shù)臉?biāo)記、并且將生成的標(biāo)記返還到請(qǐng)求系統(tǒng)綜合體成員的G2 例程,以允許PFS中的數(shù)據(jù)被檢索并經(jīng)由跨系統(tǒng)耦合功能(XCF)被返回到請(qǐng) 求應(yīng)用。由擁有遠(yuǎn)程輸出文件系統(tǒng)的系統(tǒng)綜合體成員的LFS持有標(biāo)記,并且只要LFS持有標(biāo)記,系統(tǒng)綜合體成員中的SMB服務(wù)器就將得知不使用高速 緩存數(shù)據(jù)來(lái)滿足遠(yuǎn)程客戶端的同樣文件的請(qǐng)求。圖2圖解了用于協(xié)調(diào)對(duì)本地和遠(yuǎn)程擁有的文件系統(tǒng)的訪問(wèn)的方法。在步 驟200,接收對(duì)文件系統(tǒng)訪問(wèn)的請(qǐng)求。根據(jù)實(shí)施例,在多節(jié)點(diǎn)系統(tǒng)綜合體成 員中的G程序接收請(qǐng)求。在步驟210, G程序做出是對(duì)本地輸出文件系統(tǒng)的 請(qǐng)求還是對(duì)遠(yuǎn)程輸出文件系統(tǒng)的請(qǐng)求的確定。請(qǐng)求可以由應(yīng)用產(chǎn)生或者從遠(yuǎn) 程客戶端接收。遠(yuǎn)程客戶端只能訪問(wèn)本地輸出文件系統(tǒng),而應(yīng)用能夠訪問(wèn)本 地或者遠(yuǎn)程輸出文件系統(tǒng)。如果在步驟210確定是對(duì)本地輸出文件系統(tǒng)的請(qǐng) 求,則在步驟220調(diào)用本地訪問(wèn)例程(Gl)以獲得對(duì)本地輸出文件系統(tǒng)數(shù)據(jù) 的訪問(wèn)許可。如杲在步驟210確定是對(duì)遠(yuǎn)程輸出文件系統(tǒng)的請(qǐng)求,則在步驟 230調(diào)用遠(yuǎn)程訪問(wèn)例程(G2)。在步驟240,遠(yuǎn)程訪問(wèn)例程與擁有輸出的文件 服務(wù)器(也就是,負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)的文件服務(wù)器)中的本地 訪問(wèn)例程(Gl)通信,以獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)。如上所述,可以計(jì)算機(jī)實(shí)現(xiàn)的處理和用于實(shí)行這些處理的設(shè)備的形式實(shí) 現(xiàn)實(shí)施例。在具體實(shí)現(xiàn)中,本申請(qǐng)以由一個(gè)或多個(gè)網(wǎng)絡(luò)元件執(zhí)行的計(jì)算機(jī)程 序代碼實(shí)現(xiàn)。實(shí)施例包括包含在有形介質(zhì)中實(shí)現(xiàn)的指令的計(jì)算機(jī)程序代碼, 所述有形介質(zhì)例如軟盤(pán)、CD-ROM、硬盤(pán)驅(qū)動(dòng)器或者任何其它計(jì)算機(jī)讀取的 存儲(chǔ)介質(zhì),在其中,當(dāng)計(jì)算機(jī)加載并執(zhí)行計(jì)算機(jī)程序代碼時(shí),計(jì)算機(jī)成為實(shí) 現(xiàn)本申請(qǐng)的裝置。實(shí)施例包括計(jì)算機(jī)程序代碼,例如,無(wú)論存儲(chǔ)在存儲(chǔ)介質(zhì) 中、由計(jì)算機(jī)執(zhí)行加載和/或執(zhí)行,還是通過(guò)傳輸介質(zhì)傳輸,例如在電線或電 纜上、通過(guò)光纖或者經(jīng)由電磁發(fā)射物,其中,當(dāng)計(jì)算機(jī)加載和執(zhí)行計(jì)算機(jī)程 序代碼時(shí),計(jì)算機(jī)成為執(zhí)行本申請(qǐng)的裝置。當(dāng)在通用微處理器上執(zhí)行時(shí),計(jì) 算機(jī)程序代碼段配置微處理器創(chuàng)建特定邏輯電路。雖然參照示例性實(shí)施例描述了本申請(qǐng),但是本領(lǐng)域技術(shù)人員應(yīng)理解可做 出各種改變并且元件可由等價(jià)物替代而不脫離本申請(qǐng)的范圍。此外可做出許 多修改以使特定情況或材料適于本發(fā)明的教導(dǎo),而不脫離其實(shí)質(zhì)范圍。因此,本申請(qǐng)并不意于限定于描述為預(yù)期實(shí)現(xiàn)本發(fā)明的最佳模式的特定實(shí)施例,但 是本申請(qǐng)將包括所有落入所附權(quán)利要求范圍之內(nèi)的實(shí)施例。而且,使用的術(shù)語(yǔ)第一,第二等不代表任何順序或重要性,而是術(shù)語(yǔ)第一、第二等用于將一 個(gè)元素與另一個(gè)區(qū)分。此外,使用的術(shù)語(yǔ)一、 一個(gè)、等等,不代表數(shù)量的限 定,而表示所指示項(xiàng)目的至少一個(gè)。
權(quán)利要求
1、一種用于協(xié)調(diào)對(duì)本地和遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)的方法,包括響應(yīng)于對(duì)文件系統(tǒng)訪問(wèn)的請(qǐng)求,判斷請(qǐng)求涉及本地輸出文件系統(tǒng)還是遠(yuǎn)程輸出文件系統(tǒng);如果請(qǐng)求涉及本地輸出文件系統(tǒng),則調(diào)用本地訪問(wèn)例程以獲得對(duì)本地輸出文件系統(tǒng)的訪問(wèn)許可;以及如果請(qǐng)求涉及遠(yuǎn)程輸出文件系統(tǒng),則調(diào)用遠(yuǎn)程訪問(wèn)例程以獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可;
2、 如權(quán)利要求l所述的方法,其中,所述遠(yuǎn)程訪問(wèn)例程與文件服務(wù)器中 的本地訪問(wèn)例程通信來(lái)獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可,其中所述文件 服務(wù)器負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)。
3、 如權(quán)利要求1所述的方法,其中由用于獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪 問(wèn)許可的應(yīng)用執(zhí)行所述調(diào)用遠(yuǎn)程訪問(wèn)例程的步驟。
4、 如權(quán)利要求1所述的方法,其中在系統(tǒng)綜合體的多個(gè)文件服務(wù)器中的 一個(gè)接收對(duì)文件系統(tǒng)訪問(wèn)的請(qǐng)求,所述系統(tǒng)綜合體包括知道系統(tǒng)綜合體的物 理文件系統(tǒng)。
5、 如權(quán)利要求1所述的方法,還包括高速緩存文件系統(tǒng)的數(shù)據(jù)并當(dāng)文件 系統(tǒng)改變時(shí)更新該高速緩存的數(shù)據(jù)。
6、 如權(quán)利要求1所述的方法,其中所述本地訪問(wèn)例程提供標(biāo)記來(lái)允許對(duì) 本地輸出文件系統(tǒng)的訪問(wèn)許可。
7、 如權(quán)利要求2所述的方法,其中負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)訪問(wèn)的 文件服務(wù)器的本地訪問(wèn)例程提供標(biāo)記來(lái)允許對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許 可。
8、 一種用于協(xié)調(diào)對(duì)本地和遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)的系統(tǒng),包括用于確定收到的對(duì)文件系統(tǒng)的訪問(wèn)請(qǐng)求關(guān)于本地輸出文件系統(tǒng)還是遠(yuǎn)程 輸出文件系統(tǒng)的程序;本地訪問(wèn)例程,用于獲得對(duì)本地輸出文件系統(tǒng)的訪問(wèn); 遠(yuǎn)程訪問(wèn)例程,用于獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可,其中,如果 所述程序確定請(qǐng)求關(guān)于本地輸出文件系統(tǒng),則程序調(diào)用本地訪問(wèn)例程以獲得 對(duì)本地輸出文件系統(tǒng)的訪問(wèn)許可,而如果程序確定請(qǐng)求關(guān)于遠(yuǎn)程輸出文件系統(tǒng),則所述程序調(diào)用遠(yuǎn)程訪問(wèn)例程以獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可。
9、 如權(quán)利要求8所述的系統(tǒng),其中,所述遠(yuǎn)程訪問(wèn)例程與文件服務(wù)器中 的本地訪問(wèn)例程通信來(lái)獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可,其中所述文件 服務(wù)器負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)。
10、 如權(quán)利要求8所述的系統(tǒng),其中應(yīng)用調(diào)用遠(yuǎn)程訪問(wèn)例程來(lái)獲得對(duì)遠(yuǎn) 程輸出文件系統(tǒng)的訪問(wèn)許可。
11、 如權(quán)利要求8所述的系統(tǒng),其中在系統(tǒng)綜合體的多個(gè)文件服務(wù)器中 的一個(gè)接收對(duì)文件系統(tǒng)訪問(wèn)的請(qǐng)求,所述系統(tǒng)綜合體包括知道系統(tǒng)綜合體的 物理文件系統(tǒng)。
12、 如權(quán)利要求8所述的系統(tǒng),還包括從文件系統(tǒng)獲得高速緩存數(shù)據(jù)的 高速緩存,其中當(dāng)文件系統(tǒng)改變時(shí)更新該高速緩存的數(shù)據(jù)。
13、 如權(quán)利要求8所述的系統(tǒng),其中,所述本地訪問(wèn)例程提供標(biāo)記以允 許對(duì)本地輸出文件系統(tǒng)的訪問(wèn)許可。
14、 如權(quán)利要求9所述的系統(tǒng),其中負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)訪問(wèn) 的文件服務(wù)器的本地訪問(wèn)例程提供標(biāo)記來(lái)允許對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許 可。
全文摘要
遠(yuǎn)程客戶端協(xié)調(diào)對(duì)本地和遠(yuǎn)程輸出文件系統(tǒng)應(yīng)用訪問(wèn)來(lái)允許高速緩存的輸出文件系統(tǒng)數(shù)據(jù)的訪問(wèn)。響應(yīng)文件系統(tǒng)訪問(wèn)請(qǐng)求,判斷請(qǐng)求是關(guān)于本地輸出文件系統(tǒng)還是遠(yuǎn)程輸出文件系統(tǒng)。如果請(qǐng)求是關(guān)于本地輸出文件系統(tǒng),則調(diào)用本地訪問(wèn)例程來(lái)獲得對(duì)本地輸出文件系統(tǒng)的訪問(wèn)許可。如果請(qǐng)求是關(guān)于遠(yuǎn)程輸出文件系統(tǒng),則調(diào)用遠(yuǎn)程訪問(wèn)和負(fù)責(zé)協(xié)調(diào)對(duì)遠(yuǎn)程輸出文件系統(tǒng)訪問(wèn)的文件服務(wù)器中的本地訪問(wèn)例程通信來(lái)獲得對(duì)遠(yuǎn)程輸出文件系統(tǒng)的訪問(wèn)許可。
文檔編號(hào)G06F17/30GK101236570SQ20081008566
公開(kāi)日2008年8月6日 申請(qǐng)日期2008年1月3日 優(yōu)先權(quán)日2007年1月3日
發(fā)明者威廉·J·舍恩, 戴維·A·懷斯, 約翰·L·布魯克斯, 詹姆斯·M·肖沃爾特, 里納塔·R·麥克法登 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司