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

在分布式系統(tǒng)中租用委派證的方法、裝置和產(chǎn)品的制作方法

文檔序號:6418924閱讀:147來源:國知局
專利名稱:在分布式系統(tǒng)中租用委派證的方法、裝置和產(chǎn)品的制作方法
相關(guān)申請這是美國專利申請?zhí)?8/729,421(1996年10月11日申請,并作為參考資料在此引入)的部分續(xù)展申請。
現(xiàn)引證下列美國專利申請作為本申請依據(jù)并歸并于本申請中。
1998年2月26日申請的發(fā)明名稱為“分布式計算系統(tǒng)”(“DistributedComputing System”)的臨時美國專利申請U.S.Ser.No.:60/076,048。
上述相同日期申請的發(fā)明名稱為“用于租用存儲的方法和系統(tǒng)”(“Methodand System for Leasing Storage”)(標注有代理人案卷號No.:06502.0011-01000)的美國專利申請U.S.Ser.No.:09/044,923。
上述相同日期申請的發(fā)明名稱為“用于在分布式系統(tǒng)中租用組成員資格的方法、裝置和產(chǎn)品”(“Method,Apparatus and Product for Leasing of GroupMembership in a Distributed System”)(標注有代理人案卷號No.:06502.0011-03000)的美國專利申請U.S.Ser.No.:09/044,834。
上述相同日期申請的發(fā)明名稱為“故障檢測的租用”(“Leasing forFailure Detection”)(標注有代理人案卷號No.:06502.0011-04000)的美國專利申請U.S.Ser.No.:09/044,916。
上述相同日期申請的發(fā)明名稱為“基于事件的系統(tǒng)中用于傳輸行為的方法”(“Method for Transporting Behavior in Event Based System”)(標注有代理人案卷號No.:06502.0054-00000)的美國專利申請U.S.Ser.No.:09/044,933。
上述相同日期申請的發(fā)明名稱為“分布式系統(tǒng)中對象的延遲重組和事件通知的遠程裝載”(“Deferred Reconstruction of Objects and Remote Loadingfor Event Notification in a Distributed System”)(標注有代理人案卷號No.:06502.0062-01000)的美國專利申請U.S.Ser.No.:09/044,919。
上述相同日期申請的發(fā)明名稱為“用于遠程方法調(diào)用的方法和裝置”(“Methods and Apparatus for Remote Method Invocation”)(標注有代理人案卷號No.:06502.0102-00000)的美國專利申請U.S.Ser.No.:09/044,938 。
上述相同日期申請的發(fā)明名稱為“用于確定性散列識別遠程方法的方法和系統(tǒng)”(“Method and System for Deterministic Hashes to identify RemoteMethods”)(標注有代理人案卷號No.:06502.0103-00000)的美國專利申請U.S.Ser.No.:09/045,652。
上述相同日期申請的發(fā)明名稱為“用于確定分布式系統(tǒng)內(nèi)遠程對象狀態(tài)的方法和裝置”(標注有代理人案卷號No.:06502.0104-00000)的美國專利申請U.S.Ser.No.:09/044,790。
上述相同日期申請的發(fā)明名稱為“分布式系統(tǒng)中用于執(zhí)行與遠程過程調(diào)用相關(guān)聯(lián)的處理的可下載智能代理”(“Downloadable Smart Proxies forPerforming Processing Associated with a Remote Procedure Call in aDistributed System”)(標注有代理人案卷號No.:06502.0105-00000)的美國專利申請U.S.Ser.No.:09/044,930。
上述相同日期申請的發(fā)明名稱為“遠程方法的暫停和繼續(xù)”(“Suspensionand Continuation of Remote Methods”)(標注有代理人案卷號No.:06502.0106-00000)的美國專利申請U.S.Ser.No.:09/044,917。
上述相同日期申請的發(fā)明名稱為“數(shù)據(jù)庫中用于多索引條目以及多模板匹配的方法和系統(tǒng)”(“Method and System for Multi-Entry and Multi-TemplateMatching in a Database”)(標注有代理人案卷號No.:06502.0107-00000)的美國專利申請U.S.Ser.No.:09/044,835。
上述相同日期申請的發(fā)明名稱為“數(shù)據(jù)庫中用于原地修改的方法和系統(tǒng)”(“Method and System for In-Place Modifications in a Database”)(標注有代理人案卷號No.:06502.0108)的美國專利申請U.S.Ser.No.:09/044,839。
上述相同日期申請的發(fā)明名稱為“數(shù)據(jù)庫中用于類型安全屬性匹配的方法和系統(tǒng)”(“Method and System for Typesafe Attribute Matching in aDatabase”)(標注有代理人案卷號No.:06502.0109-00000)的美國專利申請U.S.Ser.No.:09/044,945。
上述相同日期申請的發(fā)明名稱為“分布式系統(tǒng)中動態(tài)查詢服務(wù)”(“DynamicLookup Service in a Distributed System”)(標注有代理人案卷號No.:06502.0110-00000)的美國專利申請U.S.Ser.No.:09/044,931。
上述相同日期申請的發(fā)明名稱為“分布式系統(tǒng)中提供可下載代碼用于與一設(shè)備通信的裝置和方法”(“Apparatus and Method for Providing DownloadableCode for Use in Communicating with a Device in a Distributed System”)(標注有代理人案卷號No.:06502.0112-00000)的美國專利申請U.S.Ser.No.:09/044,939。
上述相同日期申請的發(fā)明名稱為“促進訪問查詢業(yè)務(wù)的方法和系統(tǒng)”(“Method and System for Facilitating Access to a Lookup Service”)(標注有代理人案卷號No.:06502.0113-00000)的美國專利申請U.S.Ser.No.:09/044,826。
上述相同日期申請的發(fā)明名稱為“分布式系統(tǒng)中用于動態(tài)驗證信息的裝置和方法”(“Apparatus and Method for Dynamically Verifying Informationin a Distributed System”)(標注有代理人案卷號No.:06502.0114-00000)的美國專利申請U.S.Ser.No.:09/044,932。
1998年2月26日申請的發(fā)明名稱為“用于網(wǎng)絡(luò)上動態(tài)分布式計算的方法和裝置”(“Method and Apparatus for Dynamic Distributed Computing Overa Network”)的美國專利申請U.S.Ser.No.:09/030,840。
上述相同日期申請的發(fā)明名稱為“永久性共享存儲空間的互動設(shè)計工具”(“An Interactive Design Tool for Persistent Shared Memory Spaces”)(標注有代理人案卷號No.:06502.0116-00000)的美國專利申請U.S.Ser.No.:09/044,936。
上述相同日期申請的發(fā)明名稱為“基于多形態(tài)令牌的控制”(“PolymorphicToken-Based Control”)(標注有代理人案卷號No.:06502.0117-00000)的美國專利申請U.S.Ser.No.:09/044,934。
上述相同日期申請的發(fā)明名稱為“基于堆棧的訪問控制”(“Stack-BasedAccess Control”)(標注有代理人案卷號No.:06502.0118-00000)的美國專利申請U.S.Ser.No.:09/044,915。
上述相同日期申請的發(fā)明名稱為“基于堆棧的安全要求”(“Stack-BasedSecurity Requirements”)(標注有代理人案卷號No.:06502.0119-00000)的美國專利申請U.S.Ser.No.:09/044,944。
上述相同日期申請的發(fā)明名稱為“安全要求的逐個方法指定”(“Per-Method Designation of Security Requirements”)(標注有代理人案卷號No.:06502.0120-00000)的美國專利申請U.S.Ser.No.:09/044,837。
背景技術(shù)
A.發(fā)明領(lǐng)域本發(fā)明一般涉及數(shù)據(jù)處理系統(tǒng),特別是,涉及在數(shù)據(jù)處理系統(tǒng)中租用委派證(delegation certificate)。
B.相關(guān)技術(shù)的描述適當資源管理對于有效使用計算機是一個重要方面。一般,資源管理包括響應(yīng)于請求分配資源(例如,存儲器)以及在適當?shù)臅r候(例如,當該請求者不再要求資源時)除去分配資源。一般,資源包括在計算機中執(zhí)行的計算實體(例如,應(yīng)用、程序、小應(yīng)用程序,等等)所參照的數(shù)據(jù)。
實踐中,當在計算機上執(zhí)行的應(yīng)用尋求參照資源時,計算機必須首先分配或指定資源,從而應(yīng)用可適當?shù)貐⒄账鼈?。當?yīng)用不再參照資源,那么計算機可以去分配或回收資源重新使用。在計算機中,每個資源具有唯一“句柄(handle)”,通過該句柄可參照該資源??赏ㄟ^各種方法(諸如,地址、陣列索引、唯一值、指針,等等)來實施該句柄。
資源管理對于單個計算機來說相對簡單,因為容易確定指示何時可回收資源的事件(諸如,何時應(yīng)用不再參照它們或者在掉電之后)。對于連接多個計算機的分布式系統(tǒng)而言,資源管理就較難一些了,因為在幾個不同計算機中的應(yīng)用都可應(yīng)用相同的資源。
在分布式系統(tǒng)中的斷開可能導(dǎo)致不適當和過早回收資源或者回收資源失敗。例如,在分布式系統(tǒng)中的不同計算機上操作的多個應(yīng)用可參照位于其他機器上的資源。如果在設(shè)有資源的計算機與參照那些資源的應(yīng)用之間的連接被中斷,那么計算機可能過早地回收資源。另一方面,盡管應(yīng)用不能訪問資源的時間很長,但是計算機還是可永久地保持該資源。
這些困難導(dǎo)致發(fā)展系統(tǒng)來管理網(wǎng)絡(luò)資源,其中之一被稱為“分布式垃圾收集”。該術(shù)語描述了由用于分布式系統(tǒng)的語音或運行期系統(tǒng)提供的能夠自動管理由在網(wǎng)絡(luò)中的不同計算機上的應(yīng)用或應(yīng)用組所用到的資源的功能(facility)。
一般,垃圾收集運用當任一應(yīng)用部分不再參照資源時可釋放它們以供將來使用的概念。分布式垃圾收集擴展這一概念到分布式計算領(lǐng)域,當沒有應(yīng)用在任何計算機上引用它們時,回收資源。
分布式垃圾收集必須在分配資源和引用這些資源之間保持完整性。換句話說,當在網(wǎng)絡(luò)中的任一計算機上運行的應(yīng)用繼續(xù)參照該資源時,不能允許該系統(tǒng)去分配或釋放資源。這種參照資源結(jié)合(reference-to-resourcebinding)(被稱為“參照完整性”)不保證該參考總是允許訪問它所參照的資源。例如,網(wǎng)絡(luò)故障可導(dǎo)致該訪問不可行。然而,完整性保證了如果可用該參考來獲得對任一資源的訪問,那么它將是首先參照的相同的資源。
運用垃圾收集的分布式系統(tǒng)還必須回收在有限的將來不再參照的資源。換句話說,系統(tǒng)必須提供沒有“存儲漏洞”的保證。存儲漏洞通常在所有應(yīng)用撤消對資源的參考時發(fā)生,但是由于例如錯誤地確定一些仍然參照該資源的應(yīng)用,所以系統(tǒng)不能回收資源來重新使用。
參照完整性故障和存儲漏洞通常導(dǎo)致在參照該資源的應(yīng)用和管理這些資源的分配和去分配的垃圾收集系統(tǒng)之間斷開。例如,斷開在參照資源的應(yīng)用和管理該資源的垃圾收集系統(tǒng)之間的網(wǎng)絡(luò)連接可能阻止垃圾收集系統(tǒng)確定是否以及何時回收資源。另一方面,垃圾收集系統(tǒng)可能錯誤地確定由于應(yīng)用不在預(yù)定時間內(nèi)訪問資源,所以它可收集該資源。以用大量技術(shù)來通過嘗試保證這種機理在沒有存儲漏洞的條件下保持參照完整性,提高分布式垃圾收集機理。一種傳統(tǒng)的方法用參考計數(shù)(reference counting)形式,其中對于參考每個資源的應(yīng)用數(shù)進行計數(shù)。當資源的計數(shù)到了零時,垃圾收集系統(tǒng)可回收資源。然而,這種資源計數(shù)方法只有在用相應(yīng)的參考計數(shù)器來產(chǎn)生資源時才有用。在這種情況下,當附加應(yīng)用參考該資源時,垃圾收集系統(tǒng)遞增資源的參考計數(shù),而當應(yīng)用不再參考該資源時便遞減計數(shù)。
然而,特別在分布式系統(tǒng)中可能發(fā)生故障的情況下,參考計數(shù)方法就有問題。這種故障可采取計算機或應(yīng)用故障或網(wǎng)絡(luò)故障的形式,它們阻止傳遞通知垃圾收集系統(tǒng)一個資源不再參考的消息。如果由于網(wǎng)絡(luò)斷開而不傳遞消息,那么垃圾收集系統(tǒng)不知道何時回收資源。
為了阻止這種故障,一些傳統(tǒng)參考計數(shù)方法包括“保持活性(keepalive)”消息,它們還被稱為“砰回(ping back)”。根據(jù)該方法,在網(wǎng)絡(luò)中的應(yīng)用把消息發(fā)送到監(jiān)督資源的垃圾收集系統(tǒng),并指示應(yīng)用仍可傳播。這些消息阻止垃圾收集系統(tǒng)丟失對資源的參考。不能接收到這種“保持活性”消息意味著垃圾收集系統(tǒng)可遞減對于資源的參考計數(shù),并當計數(shù)到零時,垃圾收集系統(tǒng)可回收該資源。然而,這仍可導(dǎo)致在由于網(wǎng)絡(luò)故障而不能接收“保持活性”消息發(fā)生的參考計數(shù)達到零之后過早回收資源。這破壞了參考完整性需求。
解決在垃圾收集系統(tǒng)中的參考完整性問題的另一個建議方法是不僅保持參考計數(shù),而且還保持與參考資源的每個計算實體相對應(yīng)的標識符。參見A.Birrell等人所著的“對于網(wǎng)絡(luò)對象的分布式垃圾收集”(號116,數(shù)字系統(tǒng)研究中心,1993年12月15日)。這種方法存在著于參考計數(shù)方法相同的問題。此外,該方法要求對于參考每個資源的每個計算實體的附加唯一標識符,添加開銷,這導(dǎo)致在分布式系統(tǒng)中不必要地增加通信以及增加存儲要求(即,與參考每個資源的應(yīng)用相對應(yīng)的標識符表)。
發(fā)明概述根據(jù)本發(fā)明,通過在分布式系統(tǒng)中的各方(例如,保持參考資源的應(yīng)用和管理該資源的垃圾收集系統(tǒng))同意保證資源和對該資源的參考期間租用資源,保證參考完整性而沒有代價大的存儲漏洞。在租用日期結(jié)束時,對參考資源的保證將繼續(xù),允許垃圾收集系統(tǒng)回收資源。由于應(yīng)用保持了對資源的參考以及管理該資源的垃圾收集系統(tǒng)同意有限的保證租用時期,所以這兩者都可知道租用和保證何時期滿。這保證了在參考租用持續(xù)時間內(nèi)的參考完整性,并避免了由于網(wǎng)絡(luò)差錯而不能釋放資源的情況。除了存儲器之外,還可將租用技術(shù)用于委派證。
根據(jù)本發(fā)明的另一個實施例(如在下面將具體描述),提供了一種租用委派證的方法。該方法包括下列步驟接收來自客戶的特定資源和租用時期的租用請求、確定其間客戶有權(quán)向服務(wù)器請求訪問資源的租用時期、建議客戶提出準許的租用時期、準許客戶獲得委派證,其中客戶可用該委派證訪問來自服務(wù)器的資源。
附圖簡述加入并構(gòu)成本說明書一部分的附圖示出了本發(fā)明的實施例,并于說明書一起用來解釋本發(fā)明的優(yōu)點和原理。在附圖中,

圖1是根據(jù)本發(fā)明的實施方法由應(yīng)用調(diào)用處理器執(zhí)行的步驟的流程圖;圖2是根據(jù)本發(fā)明的實施方法由服務(wù)器調(diào)用處理器執(zhí)行的處理骯臟調(diào)用的步驟的流程圖3是根據(jù)本發(fā)明的實施方法由服務(wù)器調(diào)用處理器執(zhí)行的處理清除調(diào)用的步驟的流程圖;圖4是根據(jù)本發(fā)明的實施方法由服務(wù)器調(diào)用處理器執(zhí)行的啟動垃圾收集處理的步驟的流程圖;圖5是在分布式處理系統(tǒng)中較佳調(diào)用流的示圖;圖6是根據(jù)本發(fā)明的實施方法調(diào)用(invocation)服務(wù)的組件的方框圖;圖7是可用在本發(fā)明的實施過程中的分布式處理系統(tǒng)的示圖;圖8是根據(jù)本發(fā)明的實施方法在分布式處理系統(tǒng)的平臺中的各軟件組件(component)的示圖;圖9是可在本發(fā)明的另一個實施例中用到的用于在分布式處理系統(tǒng)中租用委派證的數(shù)據(jù)處理系統(tǒng)的示圖;圖10是根據(jù)本發(fā)明的另一個實施例,當另一個處理(潛在被委派者(delegatee))請求租用時,由委派者(delegator)處理執(zhí)行的步驟的流程圖;和圖11A和圖11B表示根據(jù)本發(fā)明的另一個實施例,當向委派者處理請求租用時,由處理(潛在被委派者)執(zhí)行的步驟的流程圖;圖12是根據(jù)本發(fā)明的另一個實施例,當被委派者要求訪問資源時,由服務(wù)器執(zhí)行的步驟的流程圖。
詳細描述下面,詳細描述在附圖中所示的本發(fā)明的實施方法。其中,在附圖和下面的說明中用相同標號表示相同或相似的部分。
由以傳統(tǒng)分布式處理系統(tǒng)體系結(jié)構(gòu)組成的計算機實施本發(fā)明。然而,實施本發(fā)明的體系結(jié)構(gòu)和步驟不是傳統(tǒng)的,因為對于它們提供保證參考完整性并消除存儲漏洞的分布式垃圾收集方案。
A.概觀位于分布式處理系統(tǒng)中的每個計算機中的方法調(diào)用(MI)組件實施本發(fā)明的分布式垃圾收集方案。MI組件可包括最好以JAVATM編程語言編寫的多個軟件模塊。
一般,無論何時在分布式處理系統(tǒng)中的應(yīng)用通過名稱查詢作為對一些其他調(diào)用的返回值或另一種方法和搜尋存取資源獲得對分布式資源的參照,應(yīng)用調(diào)用資源或管理該資源的MI組件。該MI組件(稱為管理MI組件)留意對該資源的未完結(jié)(outstanding)參考的數(shù)量。當對一資源(參考)的參照數(shù)是零時,管理MI組件可回收資源。通常將對一資源的參考數(shù)的計數(shù)稱為“參考計數(shù)”,而且還將遞增參考計數(shù)的調(diào)用稱為“骯臟調(diào)用(dirty call)”。
當應(yīng)用不再要求分布式資源時,它把不同調(diào)用發(fā)送到該資源或管理MI組件。一旦接收到該調(diào)用,管理MI組件遞減對于該資源的參考計數(shù)??蓪⑦@種丟失參考的調(diào)用稱為“清除調(diào)用(clean call)”。
根據(jù)本發(fā)明的實施方法,骯臟調(diào)用可包括用于參考資源的請求時間間隔,被稱為租用日期。一旦接收到骯臟調(diào)用,管理MI組件發(fā)出表示允許租用的周期的返回調(diào)用。管理MI組件跟蹤用于那些參考的租用日期以及未完結(jié)參考的數(shù)量。結(jié)果,當對資源的參考計數(shù)到零時或當對于資源的租用日期期滿時,管理MI組件可回收資源。
B.過程在MI組件中的應(yīng)用調(diào)用處理器執(zhí)行如圖1所式的應(yīng)用調(diào)用過程100的步驟。在管理MI組件中的服務(wù)器調(diào)用處理器分別執(zhí)行如圖2-4所示的過程200、300和400的步驟,管理MI組件的垃圾收集器根據(jù)服務(wù)器調(diào)用處理器的指令,執(zhí)行傳統(tǒng)的過程來回收前面必定參照的資源。因此,不解釋對于垃圾回收器的傳統(tǒng)過程。
1.應(yīng)用調(diào)用處理器圖1是過程100的流程圖,其中MI組件的應(yīng)用調(diào)用處理器用該過程100來處理對于參考由分布式處理系統(tǒng)中的相同或另一個MI組件管理的資源的應(yīng)用請求。
在應(yīng)用已獲得對資源的參考之后,應(yīng)用調(diào)用處理器把骯臟調(diào)用,包括資源的參考和所請求的租用日期,發(fā)送到對于該資源的管理MI組件(步驟110)??砂洋a臟調(diào)用發(fā)送到資源本身或管理MI組件。
于是,應(yīng)用調(diào)用處理器等待和接收來自管理MI組件(步驟120)的返回調(diào)用。返回調(diào)用包括準許租用日期,在該周期內(nèi)管理MI組件保證骯臟調(diào)用的參考將該資源結(jié)合。換句話說,管理MI組件不同意在準許時期(grant period)內(nèi)收集與骯臟調(diào)用的參考相對應(yīng)的資源。如果管理MI組件不提供準許周期,或者拒絕租用請求,那么應(yīng)用調(diào)用處理器將必須發(fā)出另一個骯臟調(diào)用直至它接收到準許周期。
應(yīng)用調(diào)用處理器監(jiān)視該應(yīng)用對參考的運用,而且或者當應(yīng)用清楚地通知應(yīng)用調(diào)用處理器不再需要該參考或者當應(yīng)用調(diào)用處理器本身作出這個決定(步驟130)時,應(yīng)用調(diào)用處理器向管理MI組件發(fā)出清除調(diào)用(步驟140)。通過類似于用于骯臟調(diào)用的方法,可將清除調(diào)用直接送到參考的資源,而且管理MI組件將處理清除調(diào)用。后來,應(yīng)用調(diào)用處理器從該應(yīng)用所用到的參考表中去除該參考(步驟150)。
如果用該參考該應(yīng)用還未做完(步驟130),但是應(yīng)用調(diào)用處理器確定該參考的準許周期大約期滿(步驟160),于是應(yīng)用調(diào)用處理器重復(fù)步驟110和120以保證由代表該應(yīng)用的管理MI組件保持對該資源的參考。
2.服務(wù)器調(diào)用處理器MI組件的服務(wù)器調(diào)用處理器執(zhí)行三個主要過程(1)處理骯臟調(diào)用;(2)處理輸入(incoming)清除調(diào)用;和(3)啟動垃圾收集循環(huán)以在適當?shù)臅r候回收資源。
(ⅰ)骯臟調(diào)用圖2是過程200的流程圖,其中MI組件的服務(wù)器調(diào)用處理器用該過程來處理MI軟件組件管理的參考資源的請求,即,骯臟調(diào)用。這些請求來自分布式處理系統(tǒng)中的MI組件的應(yīng)用調(diào)用處理器,包括相同MI組件的應(yīng)用調(diào)用處理器作為處理請求的服務(wù)器調(diào)用處理器。
首先,服務(wù)器調(diào)用處理器接收骯臟調(diào)用(步驟210)。服務(wù)器調(diào)用處理器確定可接受的準許周期(步驟220)。準許周期可于請求的租用日期或一些其他時間周期相同。服務(wù)器調(diào)用處理器根據(jù)大量條件(包括所請求的資源量和前面對于相同資源準許的其他準許周期數(shù))確定適當?shù)臏试S周期。
當服務(wù)器調(diào)用處理器確定不分配資源用于參考骯臟調(diào)用(步驟230),服務(wù)器調(diào)用處理器分配所需的資源(步驟240)。
于是,服務(wù)器調(diào)用處理器遞增與骯臟調(diào)用的參考相對應(yīng)的參考計數(shù)(步驟250),設(shè)定用于參考資源結(jié)合的可接受準許周期(步驟260)和以準許周期把返回調(diào)用發(fā)送到應(yīng)用調(diào)用處理器(步驟270)。通過這種方法,服務(wù)器調(diào)用處理器控制關(guān)于在它的控制下的資源參考的輸入骯臟調(diào)用。
應(yīng)用可通過在當前租用期滿之前請求延長而發(fā)送骯臟調(diào)用來延長租用。如過程200所示,將延長租用的請求視為如同初始請求租用。延長只意味著在一些附加時間間隔內(nèi)不回收資源,除非參考計數(shù)到零。
(ⅱ)清除調(diào)用MI組件的服務(wù)器調(diào)用處理器還處理來自應(yīng)用調(diào)用處理器的輸入清除調(diào)用。當在分布式處理系統(tǒng)中的應(yīng)用不再要求參考資源時,它通知管理所參考的資源的MI組件,從而可回收資源來重新使用。圖3是帶有MI組件的服務(wù)器調(diào)用處理器用來處理清除調(diào)用的步驟的過程300的流程圖。
當服務(wù)器調(diào)用處理器接收帶有MI組件管理的資源參考的清除調(diào)用時(步驟310),服務(wù)器調(diào)用處理器遞減相應(yīng)的參考計數(shù)(步驟320)??砂亚宄{(diào)用發(fā)送到該資源,同時服務(wù)器調(diào)用處理器監(jiān)視資源并執(zhí)行過程300來處理調(diào)用。結(jié)果,服務(wù)器調(diào)用處理器將返回調(diào)用發(fā)送到MI組件,它發(fā)送清除調(diào)用以確認接收(步驟330)。根據(jù)本發(fā)明的實施方法,不能重新使用丟失參考的清除調(diào)用,但是必須確認它。
(ⅲ)垃圾收集服務(wù)器調(diào)用處理器還啟動垃圾收集循環(huán)來回收資源,為此它確定是對該資源不做任何參考還是對于該資源的同意租用日期已期滿。如圖4所示的過程400包括服務(wù)器調(diào)用處理器用來啟動垃圾收集循環(huán)的步驟的流程圖。
服務(wù)器調(diào)用處理器監(jiān)視參考計數(shù)以及準許的租用日期,并確定對于MI組件所管理的資源,參考計數(shù)是否為零,或者對于該參考的準許周期是否已期滿(步驟410)。當任一條件存在時,服務(wù)器調(diào)用處理器啟動該資源的垃圾收集(步驟420)。否則,服務(wù)器調(diào)用處理器繼續(xù)監(jiān)視參考計數(shù)和準許租用日期。
C.調(diào)用流程圖5是示出在分布式處理系統(tǒng)中的MI組件之間的調(diào)用流程圖。管理MI組件525通過監(jiān)視對那些資源530的參考來管理資源530(參見垃圾收集505)。由于管理MI組件525管理資源,所以管理MI組件525的服務(wù)器調(diào)用處理器執(zhí)行該調(diào)用流程描述的操作。
圖5還分別示出應(yīng)用510和540具有相應(yīng)的MI組件515和545。每個應(yīng)用510和540都獲得對一個資源530的參考,并尋求獲得訪問資源530之一,從而必定對相應(yīng)的資源做參考。為了獲得訪問,應(yīng)用510和540分別調(diào)用它們的相應(yīng)MI組件515和545,以分別將骯臟調(diào)用551和571發(fā)送到MI組件525。由于MI組件515和525處理應(yīng)用請求來訪問另一個MI組件(諸如,管理MI組件525)管理的資源530,所以MI組件515和545的應(yīng)用調(diào)用處理器執(zhí)行該調(diào)用流程描述的操作。
響應(yīng)于骯臟調(diào)用551和571,管理MI組件525分別把返回調(diào)用552和572發(fā)送到每個MI組件515和545。骯臟調(diào)用包括用于骯臟調(diào)用551和571的參考的準許租用日期。
類似地,圖5還示出MI組件515和545,它們分別把清除調(diào)用561和581發(fā)送到管理MI組件525。清除調(diào)用561和581通知管理MI組件525應(yīng)用510和540分別不再請求訪問在清除調(diào)用561和581規(guī)定的資源。管理MI組件525分別以返回調(diào)用562和582響應(yīng)于清除調(diào)用561和581。返回調(diào)用562和582與返回調(diào)用552和572的不同之處在于返回調(diào)用562和582是來自接收到的清除調(diào)用561和581的M1組件525的簡單確認。
應(yīng)用510和540都請求訪問相同的資源。例如,應(yīng)用510可請求訪問“RESOURCE(1)”,同時前面準許應(yīng)用540訪問該資源。MI組件525通過在同意的租用日期內(nèi)使該資源對應(yīng)用510和540都可用來處理這種情況。于是,MI組件525將不啟動垃圾收集循環(huán)來回收“RESOURCE(1)”直至應(yīng)用510和540都丟下它們對該資源的參考或者最近的同意周期已期滿,任何一種情況都首次發(fā)生。
通過允許多于一個應(yīng)用同時訪問相同資源,本發(fā)明還允許應(yīng)用在它把清除調(diào)用發(fā)送到管理MI組件以丟下對資源的參考之后,訪問資源。發(fā)生這種情況是因為仍由另一個應(yīng)用參考該資源或者參考的租用還沒有期滿,從而管理MI組件525還不回收資源。然而,在有限周期之后,或者當不再在任何應(yīng)用租用或當最后租用期滿時,回收資源。
D.MI組件圖6是根據(jù)本發(fā)明的實施方法的MI組件600的模塊的方框圖。MI組件600可包括對于上述每個參考監(jiān)控的參考組件605、應(yīng)用調(diào)用處理器640、服務(wù)器調(diào)用處理器650和垃圾收集器660。
參考組件605最好用參考數(shù)據(jù)部分610、參考計數(shù)620和準許周期寄存器630構(gòu)成一張表格或可比較結(jié)構(gòu)。MI組件600將參考計數(shù)620和準許周期630用于在相應(yīng)參考數(shù)據(jù)部分610中規(guī)定的每個參考,來確定何時啟動垃圾收集器660回收相應(yīng)資源。
應(yīng)用調(diào)用處理器640是執(zhí)行圖1中的過程100的步驟的軟件模塊。服務(wù)器調(diào)用處理器650是執(zhí)行圖2-4中的過程200、300和400的步驟的軟件模塊。垃圾收集器660是響應(yīng)于來自服務(wù)器調(diào)用處理器650的指令回收資源的軟件模塊,如上所述。
E.分布式處理系統(tǒng)圖7示出可用來執(zhí)行本發(fā)明的分布式處理系統(tǒng)50。在圖7中,分布式處理系統(tǒng)50包括以由網(wǎng)絡(luò)云(network cloud)55表示的網(wǎng)絡(luò)結(jié)構(gòu)連接的三個獨立和異構(gòu)平臺100、200和300。由圖7中的云55表示的網(wǎng)絡(luò)結(jié)構(gòu)的組合和協(xié)議并不重要,只要它允許在平臺700、800和900之間進行信息傳播。此外,用三個平臺僅僅是為了說明而不是將本發(fā)明局限于用特定數(shù)量的平臺。此外,特定為了體現(xiàn)結(jié)構(gòu)對于本發(fā)明并不關(guān)鍵。例如,可根據(jù)本發(fā)明使用的另一種網(wǎng)絡(luò)體系結(jié)果可將一個平臺用作所有其他平臺連接到其上的網(wǎng)絡(luò)控制器。
在分布式處理系統(tǒng)50的實施方法中,平臺700、800和900中的每個平臺都分別包括處理器710、810和910和存儲器750、850和950。包括在每個處理器710、810和910中的分別是應(yīng)用720、820和920;操作系統(tǒng)740、840和940以及MI組件730、830和930。
應(yīng)用720、820和920可以是前面被寫入并修正以根據(jù)本發(fā)明工作或者特別被寫入以利用由本發(fā)明提供的服務(wù)的程序。應(yīng)用720、820和920啟動操作以根據(jù)本發(fā)明執(zhí)行。
MI組件730、830和930對應(yīng)于參照圖6所述的MI組件600。
操作系統(tǒng)740、840和940分別是依靠相應(yīng)處理器710、810和910的標準操作系統(tǒng)。平臺700、800和900可以是異構(gòu)。例如,平臺700具有SunMicrosystem Corp.制造的UltraSparc微處理器作為處理器710,并用Solaris操作系統(tǒng)740。平臺800具有由Silicon Graphics Corps制造的MIPS微處理器作為處理器810并用Unix操作系統(tǒng)840。最后,平臺900具有由IntelCorp.制造的Pentium微處理器作為處理器910并運用Microsoft Windows95操作系統(tǒng)940。本發(fā)明并不局限于此,還可容納同構(gòu)平臺。
Sun,Sun Microsystem、Solaris、Java和Sun Logo是Sun Microsystems,Inc.在美國和其他國家的商標或已登記商標。許可使用UltraSparc和所有其他SPARC商標,而且是SPARC International Inc.在美國和其他國家的商標。帶有SPARC商標的產(chǎn)品是根據(jù)Sun Microsystems,Inc.開發(fā)的體系結(jié)構(gòu)。
存儲器750、850和950具有幾個功能,諸如用于相關(guān)平臺的通用存儲器。另一個功能是分別在處理器710、810和910執(zhí)行之前存儲應(yīng)用720、820和920;MI組件730、830和930以及操作系統(tǒng)740、840和940。此外,存儲器部分750、850和850可構(gòu)成網(wǎng)絡(luò)50中的所有平臺700、800和900可用的共享存儲器。
E.MI服務(wù)可用客戶/服務(wù)器模式實施本發(fā)明??蛻舢a(chǎn)生請求,諸如骯臟調(diào)用和清除調(diào)用,而且服務(wù)器響應(yīng)該請求。
如圖7所示的每個MI組件730、830和930最好包括客戶組件和服務(wù)器組件。圖8示出了客戶平臺100和服務(wù)器平臺110的方框圖,它采用了圖7中的平臺700、800和900的任意兩個。
平臺1000和1100分別包括存儲器1050和1150以及處理器1010和1110。在平臺1000和1100中的元件起到類似于上面參照圖7所述的元件的功能。在該例子中,處理器1010執(zhí)行客戶應(yīng)用1020和處理器1110執(zhí)行服務(wù)器應(yīng)用1120。處理器1010和1110還分別執(zhí)行操作系統(tǒng)1040和1140以及MI組件1030和1130。
MI組件1030和1130都包括服務(wù)器調(diào)用處理器1031和1131;應(yīng)用調(diào)用處理器1032和1132和垃圾收集器1033和1133。每個MI組件1030和1130還包括參考組件,它們分別包含對于各MI組件1030和1130監(jiān)視的每個參考的參考數(shù)據(jù)部分1034和1134;參考計數(shù)1035和1135以及準許周期寄存器1036和1136。
應(yīng)用調(diào)用處理器1032和1132表示客戶服務(wù)并分別與表示服務(wù)器服務(wù)的服務(wù)器調(diào)用處理器1031和1131進行通信。由于平臺1000和1100包括服務(wù)器調(diào)用處理器、應(yīng)用調(diào)用處理器、垃圾收集器和參考組件,平臺可作為客戶或服務(wù)器。
然而,為了討論下列情況,平臺1000被指定為客戶平臺和平臺1100被指定為服務(wù)器平臺。在該例子中,客戶應(yīng)用1020獲得對分布式資源的參考,并用MI組件1030來把骯臟調(diào)用送到由服務(wù)器平臺1100的MI組件1130管理的資源。
此外,服務(wù)器平臺1100可執(zhí)行服務(wù)器應(yīng)用1120。服務(wù)器應(yīng)用1120還可用MI組件1130來發(fā)送骯臟調(diào)用,其中當MI組件1130管理那些骯臟調(diào)用的資源時,可由MI組件1130處理上述骯臟調(diào)用。另一方面,服務(wù)器應(yīng)用1120可用MI組件1130來把骯臟調(diào)用發(fā)送到由MI組件1030管理的資源。
因此,對于客戶平臺1000的MI組件1030的服務(wù)器調(diào)用處理器1031、垃圾收集器1033和參考計數(shù)1035不是活動的,因此在圖8用陰影線表示。同樣,服務(wù)器平臺1100的MI組件1130的應(yīng)用調(diào)用處理器1132也用陰影線表示因為它還處于靜止狀態(tài)。
當客戶應(yīng)用1020獲得與資源相對應(yīng)的參考時,應(yīng)用調(diào)用處理器1032發(fā)送服務(wù)器調(diào)用處理器1131接收到的骯臟調(diào)用。骯臟調(diào)用包括請求租用日期。服務(wù)器調(diào)用處理器1131遞增對于在骯臟調(diào)用中的參考的參考計數(shù)1135,并確定準許周期。作為響應(yīng),服務(wù)器調(diào)用處理器1131在準許周期內(nèi)把返回調(diào)用發(fā)送到應(yīng)用調(diào)用處理器1030。應(yīng)用調(diào)用處理器1032用準許周期來更新記錄的準許周期1035,并確定何時回收與它的骯臟調(diào)用相對應(yīng)的資源。
服務(wù)器調(diào)用處理器1131還監(jiān)視與對它管理的資源參考相對應(yīng)的參考計數(shù)和準許周期。當它的參考計數(shù)1135之一是零時,或者當對于參考的準許周期1135期滿時,無論首先發(fā)生哪種情況,服務(wù)器調(diào)用處理器1131都啟動垃圾收集器1133來回收與具有參考計數(shù)零或期滿準許周期的參考相對應(yīng)的資源。
根據(jù)本發(fā)明的實施方法的租用參考方案不要求包含在協(xié)議內(nèi)的平臺1000和1100上的時鐘同步。該方案只要求它們的可比較周期增加。租用不在特定時刻到期,但是在特定時間間隔之后到期。只要在時間間隔上大致一致,平臺1000和1100將對于準許租用日期大致一致。此外,由于對計算機而言,租用時間是很長的,所以時鐘速率的微小差別的影響不大或沒有影響。
骯臟調(diào)用的傳輸時間可影響協(xié)議。如果MI組件1030保持租用參考并等待直至在租用期滿之前請求更新,那么租用可在MI組件1130接收請求之前期滿。如果是這樣的話,MI組件1130可在接收到更新請求之前回收資源。于是,考慮到發(fā)送到處理骯臟調(diào)用的平臺的時間,當發(fā)送骯臟調(diào)用時,發(fā)送者應(yīng)把時間因子添加到請求的租用日期,從而可在資源租用日期到期之前更新骯臟調(diào)用。
F.總結(jié)根據(jù)本發(fā)明,分布式垃圾收集方案通過提供對應(yīng)于在分布式處理系統(tǒng)中的資源參考的準許租用日期,保證參考完整性并消除存儲漏洞,從而當準許的租用日期到期時,對資源的參考也到期。于是,可收集資源。當在分布式處理系統(tǒng)中的處理參照分配給資源參考的計數(shù)器不再參考資源時,還可收集資源。
本發(fā)明的另一個實施例如上所述,租用技術(shù)與垃圾收集相關(guān)。然而,本發(fā)明的另一個實施例,如下所述,可與委派證一起使用。
委派證允許一個參與者(actor)(“一個委派者”)具有充分的特權(quán)來訪問資源以授權(quán)另一個參與者(“一個被委派者”)訪問該資源,它代表委派者訪問該資源。
然而,出于安全的目的,委派者可能不想委派被委派者全權(quán)訪問該資源以免被委派者故意或不經(jīng)意地濫用這種特權(quán)。于是,委派者可能需要限定被委派者的訪問,諸如,所允許的訪問類型或所允許的訪問時間長度。委派證的租用允許委派者控制和限定被委派者的訪問,從而提供附加的安全性。
可租用委派證來訪問諸如文件的各種資源。委派的一個例子如下委派者可具有保密的由文件系統(tǒng)管理器管理的稅務(wù)文件(tax file)。通過預(yù)先的協(xié)商,文件系統(tǒng)管理器只準許擁有者(委派者)訪問這些文件。然而,擁有者可能需要由稅務(wù)程序來計算稅務(wù),從而擁有者授權(quán)稅務(wù)程序委派被委派者在有限的時間內(nèi)訪問稅務(wù)文件直至4月15日。因此,擁有者準許稅務(wù)程序通過委派證準許訪問由文件系統(tǒng)管理器控制的文件直至4月15日。這通過租用委派證給稅務(wù)程序諸如其租用其到4月15日到期。如果稅務(wù)程序嘗試在該日期之后訪問該文件,租用期滿且文件系統(tǒng)管理器不允許這樣做。
租用委派證允許擁有者控制或限定稅務(wù)程序訪問文件。具體地說,稅務(wù)程序向擁有者請求租用以訪問利用文件系統(tǒng)管理器存儲的文件便于讀取訪問直至4月15日。如果準許租用,那么擁有者把委派證發(fā)送到稅務(wù)程序,它指示稅務(wù)程序有權(quán)只讀訪問擁有者的文件。
文件系統(tǒng)管理器有責任鑒別委派證并確定稅務(wù)程序的訪問類型和長度。稅務(wù)程序在任何時刻都不能直接改變委派證的內(nèi)容。然而,稅務(wù)程序可請求擁有者更新租用(即,如果稅務(wù)程序需要附加時間來訪問文件)或者刪除租用(即,如果稅務(wù)程序的訪問在租用時期到期之前完成)。
委派證是證明委派者的身份并具有附在其上的一組對應(yīng)的權(quán)利的對象。特別是,委派證對象包括主標識符(principle identifier),一些證明標識以及權(quán)利說明的手段。權(quán)利說明包括確定所請求的訪問類型和租用持續(xù)時間的方法。此外,對象包括刪除租用并更新租用的方法。最后,方法也有例外,當訪問時,列出為何調(diào)用該方法不成功的原因。
該對象是可以多種方法擴展來提供更多功能性的那種例子,但是將基本種類定義如下interface Lease{obj FileHandle;public void getIdentifier();public void getAuthentication();public void getAccesstype();public void long getDuration();public void renew (long renewDuration) throwsLeaseDeniedException,UnknownLeaseException,RemoteException;public void cancel () throwsUnknownLeaseException,RemoteException}當被委派者與系統(tǒng)管理器進行通信時,主標識符向被委派者呈現(xiàn)委派者的外貌(appearance)。通過任何數(shù)量的以資鑒定方法(諸如,公鑰,挑戰(zhàn)響應(yīng)(challenge-response)協(xié)議或共享秘密技術(shù))來保證標識的完整性。
調(diào)用訪問類型方法提供委派者允許的那種訪問。只要具有委派證的人(委派者、被委派者或文件系統(tǒng)管理器)都可調(diào)用這種方法。例如,被委派者將調(diào)用該方法來確定允許它從文件系統(tǒng)管理器搜索哪種訪問。文件系統(tǒng)管理器將調(diào)用該方法來確定允許它準許哪種訪問。例如,委派者可能將特殊文件看成只讀訪問。在這種情況下,文件系統(tǒng)管理器將只允許后來準許的租用只讀訪問該特殊文件。相反地,文件系統(tǒng)管理器將不允許被委派者嘗試寫入該存儲器位置。
調(diào)用持續(xù)時間方法提供準許的租用時期長度。該周期代表委派這準許的最新租用。
更新方法允許更新租用,需要更多時間,而不必重新啟動原始的租用請求。被委派者希望更新租用的情況包括當證明原始租用是不充分的(即,被委派者需要附加運用存儲位置),或者當只準許一部分租用(即,小于所請求的租用)。
此外,更新方法可持續(xù)調(diào)用,以便于獲得速率的租用時期。然而,如果被委派者不具備有效的租用,那么更新方法不能被調(diào)用。此外,更新方法沒有返回值;如果準許更新,那么性租用時期將在租用對象中反映出來,其中對上述租用對象進行調(diào)用。如果委派者不能或不愿意更新租用,在通過更新方法產(chǎn)生的LeaseDeniedException中提到了原因。
當租用仍然有剩余時間但是被委派者不能再希望訪問了,那么調(diào)用刪除方法。例如,如果它想要刪除被委派者的訪問,那么還可由委派者調(diào)用刪除方法。于是,例如刪除允許回收。相反,一旦租用結(jié)束(即,發(fā)生自然終止),那么被委派者沒有通知義務(wù)。
圖9示出適于本發(fā)明的另一個實施例使用的數(shù)據(jù)處理系統(tǒng)9000。數(shù)據(jù)處理系統(tǒng)9000包括連接到因特網(wǎng)9004的計算機系統(tǒng)9002。計算機系統(tǒng)9002包括存儲器9010、輔助存儲裝置9018、中央處理單元(CPU)9024、輸入裝置9026和視頻顯示器9022。輔助存儲裝置9018還包括多個文件9020。存儲器9010還包括委派者程序9008、被委派者程序9010和包含文件系統(tǒng)管理器9016的操作系統(tǒng)9014。文件系統(tǒng)管理器9016管理在輔助存儲裝置9018上的文件9020。被委派者9010通過請求委派者9008租用來請求訪問輔助存儲裝置9018。作為響應(yīng),委派者9008可能準許或否定租用,如下所述。如果委派者9008準許被委派者9010租用,那么為被委派者9010將從文件系統(tǒng)管理器9016請求訪問輔助存儲裝置9018。熟悉本技術(shù)領(lǐng)域的人員應(yīng)理解,計算機9000可包括附加或不同的元件。
雖然描述另一個實施例的方面為存儲在存儲器9010中,但是熟悉本技術(shù)領(lǐng)域的人員應(yīng)理解還可將這些方面存儲在其他計算機可讀媒體中,諸如輔助存儲裝置、同硬盤、軟盤或CD-ROM;來自因特網(wǎng)9004的載波;或RAM或ROM的其他形式。
圖10示出當接收來自被委派者9010的租用請求時由委派者9008執(zhí)行的步驟的流程圖。由委派者執(zhí)行的第一步驟是請求被委派者以委派者的名義訪問資源,諸如文件(步驟10002)。一些時間之后,委派者將接收到來自被委派者的租用請求(步驟10004)。該請求是功能調(diào)用,它包括一些參數(shù),有(1)被委派者希望租用的請求文件,(2)所需租用時期,和(3)被委派者所希望的訪問類型。
所請求的文件參數(shù)包括要租用的文件指示。所需租用時期包括被委派者想利用文件的時間量。所請求的訪問類型表示客戶請求的訪問類型。例如,被委派者可能要求只讀訪問或?qū)懭朐L問。為了形成有效的請求,被委派者請求必須包括所需文件和所需租用。在接收該請求之后,委派者檢查參數(shù)來證實請求合法(步驟10006)。
在檢查參數(shù)之后,委派者確定實際上請求是否適當(步驟10008)。例如,委派者檢查所請求文件是否是委派者有能力租用的文件。此外,委派者證實規(guī)定一些租用時期。此外,委派者檢查是否可用所請求的訪問類型。如果委派者確定租用請求是不適當?shù)?,那么委派者產(chǎn)生一個例外(步驟10010),而且處理結(jié)束。
如果委派者確定租用請求是適當?shù)?,那么委派者確定充分的租用時期(步驟10012)。例如,如果請求訪問委派者的稅務(wù)文件,那么委派者可準許租用時期直至4月15日。接著,委派者產(chǎn)生租用對象,并把該對象返回到被委派者(步驟10020)且處理結(jié)束。
圖11A和11B表示當向委派者9008請求租用時,由被委派者9010執(zhí)行的步驟的流程圖。由潛在的被委派者執(zhí)行的第一步驟是接收被委派者發(fā)出的請求,請求能夠代表委派者的名義訪問文件(步驟11001)。一些時候以后,被委派者把租用請求發(fā)送到委派者(步驟11002)。該請求是一個功能調(diào)用,且在圖10的步驟10004中描述。
在發(fā)送請求之后,被委派者接收來自委派者的租用對象(步驟11004)。租用對象(如上所述)包括主標識符、鑒別方法、訪問類型方法、租用持續(xù)時間方法、更新方法、刪除方法。
接著,被委派者通過檢查租用對象,確定是否準許租用(步驟110006)。如果被委派者確定不準許租用,那么被委派者調(diào)用例外方法(步驟110008),它允許被委派者確定為何不準許租用。如果被委派者確定不準許租用是因為不適當?shù)恼埱?步驟11010),那么被委派者重新構(gòu)成請求(步驟11012),并處理繼續(xù)直至步驟11002。然而,如果被委派者確定不準許租用是處于不適當請求之外的其他原因,那么處理結(jié)束。注意,委派者可準許多次租用相同的文件,因為仲裁實際文件訪問最終是文件系統(tǒng)管理器的責任。
如果在步驟11006中被委派者確定委派者準許租用,那么接著被委派者通過發(fā)送訪問請求向文件系統(tǒng)管理器請求訪問文件(步驟11018)。于是,處理繼續(xù)到步驟圖11B中的步驟11020。
在被委派者向文件系統(tǒng)管理器發(fā)送訪問請求(圖11A中的步驟11018)之后,被委派者通過檢查租用對象來確定文件系統(tǒng)管理器是否準許被委派者訪問文件(步驟11020)。如果被委派者確定文件系統(tǒng)管理器不準許訪問,那么被委派者調(diào)用包含在文件系統(tǒng)管理器返回的對象中的例外方法,它允許被委派者確定為何不準許訪問(步驟11022)。
如果被委派者確定由于不適當?shù)恼埱蠖粶试S訪問(步驟11024),那么處理結(jié)束。另一方面,如果請求是適當?shù)?,那么被委派者確定是否因為文件系統(tǒng)管理器把文件分配給另一個租用持有者而不準許訪問(步驟11026)。如果被委派者確定文件很忙,那么被委派者等待預(yù)定的時間(步驟11028)并處理繼續(xù)到圖11A中的步驟11018。如果被委派確定由于一些其他原因而否定對文件的訪問,那么處理結(jié)束。
如果在步驟11020中被委派者確定文件系統(tǒng)管理器準許被委派者訪問文件,那么被委派可訪問文件(步驟11030)。接著,被委派者確定它是否完成訪問文件(步驟11032)。
如果被委派者的使用完成,那么被委派確定租用是否到期(即,租用不再有效)(步驟11034)。如果租用到期,那么處理結(jié)束且在被委派者和文件系統(tǒng)管理器(即,發(fā)生自然終止)之間不需要再進行通信。否則,如果租用仍然有效且被委派者調(diào)用刪除方法(步驟11036)。被委派者通過租用對象訪問刪除方法。刪除方法通知文件系統(tǒng)管理器和委派者被委派者不再對文件感興趣。因此,刪除方法允許文件系統(tǒng)管理器回收文件以供其他租用持有者以快速的方式使用。
如果在步驟11032中被委派者確定它仍然希望訪問文件,那么被委派者確定租用是否大約要到期(步驟11038)。這由被委派通過將租用持續(xù)時間和當前時間減去準許租用的時間來獲得。通過調(diào)用持續(xù)時間方法來找到租用持續(xù)時間。如果租用不是即將到期,那么被委派者繼續(xù)訪問文件(步驟11030)。
然而,如果租用即將到期(在步驟11038),那么被委派者必須確定是否更新租用(步驟11040)。如果被委派者選擇更新租用,那么被委派者對租用對象調(diào)用新方法。如果調(diào)用更新方法,那么處理繼續(xù)到圖11A中的步驟11002。如果被委派者不更新租用,那么處理結(jié)束且在被委派者和文件系統(tǒng)管理器之間沒有必須的通信(即,發(fā)生自然終止)。
圖12示出當被委派者處理9008請求訪問文件時由文件系統(tǒng)管理器9016執(zhí)行的步驟的流程圖。由文件系統(tǒng)管理器執(zhí)行的第一步驟是接收被委派者的訪問請求(步驟1202)。在接收到請求之后,文件系統(tǒng)管理器通過租用對象調(diào)用主標識符方法和鑒定方法來鑒定被委派者的身份(步驟1203)。如果文件系統(tǒng)管理器確定被委派者缺乏適當?shù)纳矸輥碓L問文件(步驟1204),那么文件系統(tǒng)管理器產(chǎn)生一個例外(步驟1206)且處理結(jié)束。
如果文件系統(tǒng)管理器在步驟1204中確定被委派人的身份是真實的,那么文件系統(tǒng)調(diào)用getAccess型方法(步驟1208)。通過調(diào)用getAccess型方法,文件系統(tǒng)管理器能夠確定被委派人希望的訪問類型。接著,文件系統(tǒng)管理器確定該文件對于所請求的訪問類型是否可用(步驟1210)。如果文件系統(tǒng)管理器確定該文件不可用,那么文件系統(tǒng)管理器產(chǎn)生一個例外(步驟1206)且處理結(jié)束。
如果文件系統(tǒng)管理器確定該文件可用(步驟1210),那么文件系統(tǒng)管理器調(diào)用持續(xù)時間方法(步驟1212)。文件系統(tǒng)管理器調(diào)用持續(xù)時間方法來確定被委派者的租用是否還有剩余時間。如果文件系統(tǒng)管理器確定被委派者的租用仍然有效(步驟1214),那么文件系統(tǒng)管理器準許被委派者訪問文件(步驟1218)。在準許被委派者訪問文件之后,文件系統(tǒng)管理器返回到步驟1212。
如果文件系統(tǒng)管理器確定租用無效(步驟1214),那么文件系統(tǒng)管理器回收文件(步驟1216)。在回收文件之后,文件系統(tǒng)管理器產(chǎn)生一個例外(步驟1206)且處理結(jié)束。
為了說明和描述清楚,呈現(xiàn)本發(fā)明的實施方法的上述描述。但并不窮舉且不將本發(fā)明局限于這里所述的。根據(jù)上述教義,修正和改變是可行的,或者可從本發(fā)明的實踐中獲得。例如,所述實施方法包括軟件,但是可實施本發(fā)明作為硬件和軟件組合或單硬件。本發(fā)明的范圍由權(quán)利要求所限定。
權(quán)利要求
1. 一種在處理系統(tǒng)中的方法,其特征在于,包括下列步驟接收來自程序的租用請求,所述租用請求規(guī)定資源和請求租用時期;確定其間所述程序有權(quán)訪問所述資源的租用時期;和把委派證發(fā)送到所述程序以供所述程序在所述確定租用時期內(nèi)訪問所述資源之用。
全文摘要
提供一種在分布式處理系統(tǒng)中租用委派證的方法、裝置和產(chǎn)品。與該方法、裝置和產(chǎn)品一致,被委派者請求委派者在委派有權(quán)訪問的期間內(nèi)訪問資源。響應(yīng)于該請求,委派者確定其間被委派有權(quán)訪問資源的適當租用時期。
文檔編號G06F17/30GK1298509SQ99805396
公開日2001年6月6日 申請日期1999年2月17日 優(yōu)先權(quán)日1998年2月26日
發(fā)明者J·H·瓦爾多, A·M·沃爾蕾斯, R·謝夫勒 申請人:太陽微系統(tǒng)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
天津市| 东台市| 宁陕县| 和林格尔县| 岳西县| 张家界市| 丰原市| 天长市| 蚌埠市| 宜春市| 炎陵县| 兴宁市| 亳州市| 阳原县| 梁河县| 沈丘县| 瑞金市| 平昌县| 乌鲁木齐市| 盐边县| 宜城市| 依兰县| 丰县| 麦盖提县| 伽师县| 弥渡县| 嘉禾县| 延津县| 汾西县| 乳源| 恩施市| 抚顺县| 吉首市| 芦山县| 本溪| 曲松县| 黄平县| 神木县| 伊吾县| 金塔县| 郧西县|