專利名稱:計算機系統和文件管理方法
技術領域:
本發明涉及一種在例如網絡連接的多個計算機構成的網絡計算環境等當中,適用需要高可靠性的群計算處理、數據庫處理和事務處理等的較理想計算機系統和文件管理方法。
定期采集CPU所執行的進程的地址空間、關聯和文件等狀態(稱它為進程單位的檢驗點系統),發生故障時,恢復最后采集的檢驗點狀態,從這一時刻起重新開始執行進程,在具有上述這種從故障中恢復功能的系統中,以往在外部輸入輸出處理方面有問題。具體來說,發生故障的時候,從最后采集的檢驗點起重新執行進程時,進程的地址空間和處理器關聯等狀態可以恢復,但外部輸入裝置狀態的恢復不太容易。
例如由于難以取消對于文件的寫入,因而向文件寫入時,數據寫入文件之前事先讀取寫入以前的數據進行保存,然后向文件寫入數據。
圖15是就難以取消對于文件的寫入,故向文件寫入時,數據寫入文件之前事先讀取寫入以前的數據進行保存,然后向文件進行數據寫入的現有系統結構進行說明的說明圖。
本例中,在時刻t2向時刻t1采集檢驗點時刻由“ABCD”4字節數據組成的文件中第一字節寫入“X”(1)。這種場合,現有例向文件第一字節寫入“X”前,先將文件第一字節數據“B”讀出(這也稱為undo記錄)(2),然后向文件第一字節寫入“X”(3)。
然后,在時刻t3有故障發生,因而在最后采集的檢驗點狀態(t1)重新運行進程。文件是在檢驗點t1以后將第一字節更新為“X”的,但通過用更新時所采集的undo記錄,恢復檢驗點t1狀態。另外,這種undo記錄在下一檢驗點時被廢棄不要。
還有這樣一種系統,由例如2臺計算機構成,其中一臺(主計算機)作為運行子系統,另一臺(備用計算機)作為待機子系統,實現雙重化,主計算機發生故障時,通過由備用計算機繼續處理,提高系統可用性。而且,這種系統如上文所述定期采集檢驗點的話,便能夠使可靠性進一步提高。
這樣不斷定期采集進程地址空間、關聯和文件等狀態(即檢驗點),故障發生時,恢復最后采集的檢驗點狀態,從這一時刻起重新開始執行進程,具有這種從故障中恢復功能的系統(不論是否是雙重化)中,其可靠性有所提高,但有這樣的問題,對文件進行更新(例如寫入)時,必須從文件讀取一次更新前的數據,隨后才對文件進行更新,所以使得文件的更新性能下降。
本發明正是鑒于這種情況,其目的在于提供一種在具有定期采集檢驗點,發生故障時恢復最后采集的檢驗點狀態,從這一時刻起重新開始執行進程這種從故障中恢復功能的系統中,對文件進行更新時不需要從文件當中讀取更新前數據等,能夠大幅改善文件更新性能的計算機系統和文件管理方法。
本發明計算機系統,為2臺運行子系統和待機子系統計算機實現雙重化的計算機系統,在定期采集用于重新開始中斷處理的檢驗點,并保存在所述運行子系統和待機子系統兩者計算機上的計算機系統中,其特征在于包括由所述運行子系統和待機子系統兩者計算機雙重化設置可由所述運行子系統計算機執行的進程加以更新的文件,所述進程有文件更新指令來時,將該更新信息保存在所述待機子系統計算機上,僅更新運行子系統的文件,在該更新結束時刻向該更新請求源通知更新結束的裝置;采集所述檢驗點之后,再向所述待機子系統文件反映所述更新信息表示的更新內容的裝置。
本發明計算機系統中,進程請求文件更新時,取得并且保存表示該更新內容的更新信息,同時立即僅僅更新運行子系統計算機配置的文件(運行子系統文件),并將此結果返回作為請求源的進程。而且,采集檢驗點之后,將其保存的更新信息所表示的更新內容反映給待機子系統計算機配置的文件(待機子系統文件)。
而當進程異常終止等時候,便根據所保存的更新信息,從待機子系統文件將最后采集的檢驗點以后更新的數據所對應的更新前數據全部讀出,用這樣讀出的更新前數據使運行子系統文件恢復至檢驗點時刻。
具體來說,本計算機系統實現故障時的文件恢復時,避免象以往那樣更新文件時讓通常處理處于待機狀態直到結束讀出和保留更新前數據這種處理,從而能夠在不損害可靠性的情況下使文件更新性能大幅提高。
此外,也可以利用最終檢驗點以前保存的、并反映有更新信息表示的全部更新內容的待機子系統文件,從檢驗點起重新執行進程來代替運行子系統的恢復。具體來說,可以確保因運行子系統計算機故障而不能用運行子系統重新開始等場合下的處理得以繼續,從而使系統可用性提高。此外,這時若讓第三計算機重新確保待機子系統文件,則能夠使系統可用性進一步提高。
圖1是說明本發明基本原理用的概念圖。
圖2示意的是本發明第一實施例計算機系統的系統構成。
圖3示意的是適用該實施例計算機系統的概略構成。
圖4示意的是該實施例更新文件的狀態。
圖5示意的是該實施例在發生故障時恢復主文件的狀態。
圖6是示意該實施例指令文件操作部“寫入文件”時處理流程的流程圖。
圖7是示意該實施例指令文件操作部“采集檢驗點”時處理流程的流程圖。
圖8是示意該實施例備份文件更新部處理流程的流程圖。
圖9是示意該實施例進程發生異常終止等故障,從在主計算機30上最后采集的檢驗點起重新執行進程場合處理流程的流程圖。
圖10是示意該實施例指令主計算機上檢驗點信息恢復部“恢復地址空間和處理器關聯”時處理流程的流程圖。
圖11是示意該實施例指令主文件恢復部“恢復主文件”時處理流程的流程圖。
圖12示意的是該實施例發生故障時由備份文件繼續處理的狀態。
圖13示意的是本發明第二實施例計算機系統的系統構成。
圖14示意的是適用該實施例計算機系統的概略構成。
圖15是就難以取消對于現有文件的寫入,故向文件寫入時,數據寫入文件之前事先讀取寫入以前的數據進行保存,然后向文件進行數據寫入的現有系統結構進行說明的說明圖。
首先參照圖1說明本發明基本原理。如圖1所示,本發明計算機系統是以由運行子系統10和待機子系統20實現多重化的系統為前提的。以下說明各自的動作。
(正常處理)(1)應用程序11在運行子系統10上發出WRITE(寫入)系統調用。
(2)嵌套例行程序12嵌有WRITE系統調用,向運行子系統的操作系統發出WRITE系統調用,同時將該WRITE(寫入)請求發送給待機子系統20。但不需要立即向待機子系統20發送WRITE請求,可以在下一檢驗點到來之前發送。而且,待機子系統20并非立即執行接收到的WRITE請求,而是在不確定隊列211中存儲一次。
(3)指令檢驗點處理的話,運行子系統10必須將保留下來的WRITE請求全部發送給待機子系統20。
(4)另一方面,待機子系統20將不確定隊列211存儲的WRITE請求移至確定隊列212。
(5)移至該確定隊列212的WRITE請求由待機子系統20的操作系統順序處理。
具體來說,正常處理過程中發生的文件更新,并非處于待機狀態直到讀出和保留更新前數據這種處理結束。
(重新運行處理)(3)發生故障這種時候,向運行子系統10和待機子系統20兩者指令重新運行處理。
(4)這時將運行子系統10留下的WRITE請求全部發送至待機子系統20。而且,存儲于待機子系統不確定隊列211的WRITE請求由于是最后檢驗點以后發出的,因而反之參照這一情況,從待機子系統文件23讀出更新前數據,用該讀出的更新前數據使運行子系統文件14重新運行。因此,運行子系統文件14和待機子系統文件23兩者文件均處于最后的檢驗點時刻狀態。
(5)接著待機子系統20將不確定隊列211留下的WRITE請求全部取消。
因此能夠從檢驗點時刻重新開始。
接下來說明本發明實施例。
(第一實施例)首先說明本發明第一實施例。圖2示出本發明第一實施例計算機系統的系統構成。如圖2所示,本實施例計算機系統其計算機由主計算機30和備用計算機40實現雙重化,它們由網絡50連接。這種主計算機30和備用計算機40分別包括上述運行子系統10和待機子系統20兩者,某一臺是運行子系統10動作時,另一臺則是待機子系統20動作。這里,分別在主計算機30一側說明運行子系統10,在備用計算機40一側說明待機子系統20。
進程35在主計算機30上執行,更新由主文件39和備份文件41實現雙重化的文件。這里,主文件39配置在主計算機30上,備份文件41配置在備用計算機40上,通過主計算機30上文件系統36和備用計算機40上文件系統48進行更新。
主計算機30上的文件系統36包含主文件操作部38和主文件恢復部37。另一方面,備用計算機40上的文件系統48則包含備份文件操作部43、不確定隊列431、確定隊列432、備份文件更新部44和主文件恢復信息讀出部42。
進程35更新這種雙重化文件時,經由主文件操作部38和備份文件操作部43進行。進程35對這種實現雙重化文件進行WRITE(寫入)的話,主文件39就原樣立即更新,但備份文件41在此時不被更新,而是經由備份文件操作部43在備用計算機40上不確定隊列431中保存“文件寫入信息”。
而進程35采集檢驗點時,檢驗點控制部31便向檢驗點信息保存部32和主文件操作部38發出該指令。檢驗點信息保存部32一旦受理檢驗點采集指令,便將檢驗點信息(地址空間和處理器關聯)保存在主計算機30上和備用計算機40上(主計算機30上的檢驗點信息34和備用計算機40上的檢驗點信息45)。
而主文件操作部38一旦受理檢驗點采集指令,便經由備份文件操作部43將保存在不確定隊列431中的“文件寫入信息”移至確定隊列432。移至該確定隊列432的“文件寫入信息”在檢驗點采集之后,由備份文件更新部44用于備份文件41的更新,在備份文件41更新后廢棄。因此,與檢驗點以后對主文件39所進行的動作相同的WRITE操作也對備份文件41進行。
進程35發生異常終止等故障,而從主計算機30上最后采集的檢驗點起重新執行進程3 5時,由主計算機30上檢驗點信息恢復部37恢復地址空間和處理器關聯。
就文件而言,備份文件41只是檢驗點以后的更新仍在不確定隊列431中保存“文件寫入信息”,由于實際未更新因而不需要恢復。但主文件39在檢驗點以后卻已經更新過了,因此需要恢復。因而,根據不確定隊列431所保存的“文件寫入信息”,通過從備份文件41中讀出主文件39更新前數據,并將該讀出的更新前數據寫入主文件39中來恢復。而且,之后將保存在不確定隊列431中的“文件寫入信息”廢棄。另外,在確定隊列432中保存“文件寫入信息”時,該“文件寫入信息”向備份文件41反映結束后,才開始上述恢復處理。
而主計算機30或控制主計算機30的操作系統發生系統故障這類故障,從備用計算機40上最后采集的檢驗點起重新執行進程35時,進程47由檢驗點信息恢復部46恢復地址空間和處理器關聯。
就文件而言,備份文件41只是檢驗點以后的更新仍在不確定隊列431中保存“文件寫入信息”,由于實際未更新因而不需要恢復。
另外,對于該“文件寫入信息”從主計算機30傳送至備用計算機40,可以最優化處理。發生故障時,主計算機30沒有故障時,則恢復主文件39,用主文件39重新開始從檢驗點起的處理。而故障發生的時候,主計算機30故障時,則用備份文件41重新開始從檢驗點起的處理。
因此,“文件寫入信息”不需要即時從主文件操作部38送至備份文件操作部43。具體來說,這些“文件寫入信息”可以在下一檢驗點之前傳送,因而若考慮傳送效率的話,便在主文件操作部38存儲一次,一旦有“存儲了規定容量”、“經過了規定時間”和“請求過檢驗點采集”這種情況發生,可以匯總送至備份文件操作部43。
圖3示出適用本實施例的計算機系統的概略構成。計算機由主計算機30和備用計算機40實現雙重化,主計算機30連接有盤裝置60a,備用計算機40連接有盤裝置60b。進程35在主計算機上執行,而且該進程35存取的文件由主文件39和備份文件41實現雙重化,并分別配置于盤裝置60a和盤裝置60b。
而且,檢驗點將檢驗點信息保持在主計算機30一側(主檢驗點信息34)和備用計算機40一側(備份檢驗點信息45)兩處位置。另外,此圖中是將檢驗點保持在盤裝置上的,但保持在存儲器上也行。
萬一主計算機30或控制主計算機30的操作系統發生系統故障這類故障時,便在備用計算機40一側用檢驗點信息45重新執行進程47。這時進程47便采用備份文件41。
而且,也可以擁有多個主文件39或備份文件41,作成三重化以上文件系統。這時,若為三重化系統的話,可以考慮下述組合(1)2個主文件和1個備份文件(2)1個主文件和2個備份文件圖4示意的是本實施例更新文件的狀態。本例中,在主計算機30上工作的進程35對于具有4字節數據“ABCD”的雙重化文件(主計算機30上的主文件39和備用計算機40上的備份文件41),在時刻t1將“X”寫入第一字節(1)。主文件39由此即時更新,但備份文件41沒有被即時更新,而是僅僅保存“文件寫入信息”。
然后,通過在時刻t2采集檢驗點,確定是否保存了方才說明的“文件寫入信息”(2)。接下來在時刻t2以后,根據所確定的“文件寫入信息”,執行對備份文件41的更新。
圖5示意的是本實施例在故障發生時恢復主文件的狀態。本例中,在主計算機30上工作的進程35對于具有4字節數據“ABCD”的雙重化文件(主計算機30上的主文件39和備用計算機40上的備份文件41),在時刻t1將“X”寫入第一字節(1)。主文件39由此即時更新,但備份文件41沒有被即時更新,而是僅僅保存“文件寫入信息”。
然后,在時刻t2發生故障(2)。具體來說,主文件39被時刻t1的“文件寫入信息”更新,因而需要恢復,但備份文件41尚未被更新,因而不需要恢復。按照這里時刻t1保存的“文件寫入信息”,主文件39的更新部分改變。因此,在主文件39恢復過程中,通過從備份文件41當中讀出不確定“文件寫入信息”所示位置的數據,向主文件39寫入這種讀出的數據,來恢復主文件39。
接下來,利用主計算機30上采集的檢驗點,在主計算機30上重新執行進程35。這種重新執行的進程35采用已恢復主文件39。
圖6是示意指令文件操作部“寫入文件”時處理流程的流程圖。這時,首先保存“文件寫入信息”,并與不確定隊列431相聯(步驟A1)。接下來,按照“文件寫入信息”,對主文件39進行更新(步驟A2)。在這一時刻,一旦“文件寫入”操作結束,就向請求側發出結束通知(步驟A3)。
圖7是示意指令文件操作部“采集檢驗點”時處理流程的流程圖。這時,所保存的“文件寫入信息”從不確定隊列431移至確定隊列432(步驟B1)。
圖8是示意備份文件更新部處理流程的流程圖。這時,首先檢查“文件寫入信息”是否與確定隊列432相聯(步驟C1)。若未相聯時(步驟C1的N),備份文件更新部44繼續該檢查。而相聯時(步驟C1的Y),便根據與確定隊列432相聯的“文件寫入信息”,更新備份文件41(步驟C2)。接著,從確定隊列432刪除已執行的“文件寫入信息”(步驟C3)。
圖9是示意進程35發生異常終止這類故障,在主計算機30上從最后采集的檢驗點起重新執行進程35時的處理流程的流程圖。
進程35發生故障的話,首先向主計算機30上的檢驗點信息恢復部33指令“恢復地址空間和處理器關聯”(步驟D1)。接著,向主文件恢復部37指令“恢復主文件”(步驟D2)。
圖10是示意指令主計算機30上檢驗點信息恢復部33“恢復地址空間和處理器關聯”時處理流程的流程圖。這時,首先恢復進程35的地址空間(步驟E1)。接著,恢復進程35在檢驗點采集時的處理器關聯狀態(步驟E2)。
圖11是示意指令主文件恢復部37“恢復主文件”時處理流程的流程圖。這時,首先檢查“文件寫入信息”是否與不確定隊列431相聯(步驟F1)。“文件寫入信息”相聯時(步驟F1的Y),按照與不確定隊列431相聯的“文件寫入信息”,通過從備份文件41中讀出主文件39當中更新部分的數據,并向主文件39寫入該讀出的數據,恢復主文件39其更新部分的數據(步驟F2)。接著,從不確定隊列431中刪除(廢棄)用于恢復的“文件寫入信息”(步驟F3)。重復這種處理直至沒有與不確定隊列431相聯的“文件寫入信息”為止。
主計算機30或控制主計算機30的操作系統發生系統故障這類故障時,在備用計算機40上從最后采集的檢驗點起重新執行進程35。這時,由備份文件41繼續處理。圖12示意的是故障發生時由備份文件41繼續處理的狀態。
本例中,在主計算機30上工作的進程35對于具有4字節數據“ABCD”的雙重化文件(主計算機30上的主文件39和備用計算機40上的備份文件41),在時刻t1將“X”寫入第一字節(1)。主文件39由此即時更新,但備份文件41沒有被即時更新,而是僅僅保存“文件寫入信息”。
然后,在時刻t2主計算機30發生故障(2)。這時,利用備用計算機40上采集的檢驗點,在備用計算機40上重新執行進程47。這時,進程47當然是利用備份文件41繼續處理的,由于在時刻t1主文件39被更新,而備份文件41尚未被更新,因而在備用計算機40上對進程47重新執行過程中,仍然可以用備份文件41。
另外,因發生故障而斷開備份文件時,通過此后制成新備份文件,便可以再次重現圖1那種初始狀態,對于再次發生故障也能進行恢復處理。
而因發生故障由備份文件繼續處理,從檢驗點起重新執行處理時,通過此后以備份文件為主文件再制作備份文件,可以再次重現圖1那種初始狀態,對于再次發生故障也能進行恢復處理。制作這種再次備份文件時,有下述三種方法。
(1)保存備份文件斷開后主文件的更新信息和數據,使備份文件重新連接時,向備份文件反映上述斷開后主文件更新信息和數據。
(2)將主文件復制為備份文件。但在復制中主文件還在繼續更新時,在開始復制的同時也向備份文件反映文件的更新信息和數據。
此外,將這2種方法組合起來的下述方法也有效。
(3)以重新連接已斷開的備份文件(或故障發生前主文件)為前提,要規定時間之前可采取方法(1),保存備份文件斷開后主文件的更新信息和數據。若經過規定時間,則不采用方法(1),停止保存備份文件斷開后主文件的更新信息和數據,而采取方法(2)。此外,由已斷開備份文件以外文件重新連接時,也停止對備份文件斷開后主文件更新信息和數據的保存,而采取方法(2)。
(第二實施例)以下說明本發明第二實施例。第一實施例中說明的是雙重化計算機系統,但本發明運用于未實現雙重化的計算機上的文件系統也是有效的。因此,本實施例以運用于未實現雙重化的計算機上的文件系統的場合為例進行說明。圖13是將本發明運用于未實現雙重化的計算機上的文件系統的場合的結構圖。本系統中計算機未雙重化,只有計算機30。進程35在該計算機30上執行,對由主文件39和備份文件41實現雙重化的文件進行更新。具體來說,這些主文件39和備份文件41一起配置在計算機30上,通過文件系統36更新。
計算機30上的文件系統36包括主文件操作部38,主文件恢復部37,備份文件操作部43,不確定隊列431,確定隊列432,備份文件更新部44和主文件恢復信息讀出部42。
進程35更新這種雙重化文件時,是經由主文件操作部38和備份文件操作部43進行的。進程35對這種雙重化文件進行寫入的話,主文件39就原樣被更新,而備份文件41則不被更新,“文件寫入信息”經由備份文件操作部43保存在不確定隊列431中。
而且,進程35采集檢驗點時,檢驗點控制部31向檢驗點信息保存部32和主文件操作部43發出指令。檢驗點信息保存部32一旦接收檢驗點采集指令,便在計算機30上采集地址空間和處理器關聯(檢驗點信息34)。
而主文件操作部38一旦接收檢驗點采集指令,便經由備份文件操作部43將保存在不確定隊列431中的“文件寫入信息”移至確定隊列432。移至確定隊列432的“文件寫入信息”,在檢驗點采集后由備份文件更新部44用于備份文件41的更新,在備份文件41更新后廢棄。因此,與檢驗點以后對主文件39進行的動作相同,對備份文件41進行寫入操作。
進程35發生異常終止等故障,在計算機30上從最后采集的檢驗點起重新執行進程35時,由計算機30上檢驗點信息恢復部33恢復地址空間和處理器關聯。
就文件而言,備份文件41只是檢驗點以后的更新仍在不確定隊列431中保存“文件寫入信息”,由于實際未更新因而不需要恢復。但主文件39在檢驗點以后卻已經更新過了,因此需要恢復。因而,根據不確定隊列431所保存的“文件寫入信息”,通過從備份文件41中讀出主文件39更新前數據,并將這種讀出的更新前數據寫入主文件39中來恢復。而且,之后將保存在不確定隊列431中的“文件寫入信息”廢棄。另外,在確定隊列432中保存“文件寫入信息”時,該“文件寫入信息”向備份文件41反映結束后,才開始上述恢復處理。
圖14示出適用本實施例的計算機系統的概略構成。本實施例系統僅僅為計算機30,未實現雙重化。計算機30連接有盤裝置60a和盤裝置60b。進程35在計算機30上執行,而且該進程35存取的文件由主文件39和備份文件41實現雙重化,并分別配置于盤裝置60a和盤裝置60b。
象這樣通過運用本發明,一面定期保存進程地址空間和處理器關聯等狀態(檢驗點信息),一面繼續執行,當故障發生時從最后保存的檢驗點起重新執行進程,在具有這種故障應付措施的系統中,對文件更新時,不需要從文件當中讀取一次更新前數據,因而可大幅改善文件更新性能。
另外,上述實施例記載的文件管理方法作為在計算機上可執行的程序可以存儲于軟磁盤、光盤和半導體存儲器等存儲介質進行發布。
綜上所述,按照本發明,進程請求文件更新時,取得并保存表示其更新內容的更新信息,同時立即僅僅對主文件更新,采集過檢驗點以后,向備份文件反映由該保存的更新信息表示的更新內容。而且,在例如進程異常終止等時候,根據所保存的更新信息,從備份文件當中將最后采集的檢驗點以后更新的數據所對應的更新前數據全部讀出,用這種讀出的更新前數據將主文件恢復至檢驗點時刻,再開始重新執行進程(也可以開始重新執行用備份文件的進程)。
具體來說,本計算機系統實現故障時的文件恢復時,避免象以往那樣更新文件時讓通常處理處于待機狀態直到結束讀出和保留更新前數據這種處理,從而能夠在不損害可靠性的情況下使文件更新性能大幅提高。
權利要求
1.一種計算機系統,為運行子系統和待機子系統的2臺計算機實現雙重化的計算機系統,所述計算機系統定期采集重新開始中斷處理用的檢驗點,并保存在所述運行子系統和待機子系統兩者的計算機上,其特征在于包括由所述運行子系統和待機子系統兩者的計算機雙重化設置可由所述運行子系統計算機上執行的進程加以更新的文件;所述進程有文件更新指令來時,將其更新信息保存在所述待機子系統計算機上,僅更新運行子系統的文件,在該更新結束時刻向該更新請求源通知更新結束的裝置;采集所述檢驗點之后,向所述待機子系統的文件反映所述更新信息表示的更新內容的裝置。
2.如權利要求1所述的計算機系統,其特征在于還包括在所述運行子系統計算機上對所述更新信息進行緩存,并在所述檢驗點采集時刻之前匯總傳送至所述待機子系統計算機的裝置。
3.如權利要求1所述的計算機系統,其特征在于還包括所述進程異常終止時,根據所述更新信息,從所述待機子系統的文件當中,讀出最后檢驗點以后執行的文件更新所對應的更新前數據,將所述運行子系統的文件恢復至所述檢驗點時刻狀態之后,從所述檢驗點起重新執行所述進程的裝置。
4.如權利要求1所述的計算機系統,其特征在于還包括所述進程異常終止時,刪除最后檢驗點以后保存的更新信息,向所述待機子系統文件反映所述檢驗點以前更新信息所表示的更新之后,在所述待機子系統計算機上從所述檢驗點起重新執行所述進程的裝置。
5.如權利要求1所述的計算機系統,其特征在于還包括所述運行子系統計算機或控制該運行子系統計算機的操作系統發生故障時,刪除最后檢驗點以后保存的更新信息,向所述待機子系統文件反映所述檢驗點以前更新信息所表示的更新之后,在所述待機子系統計算機上從所述檢驗點起重新執行所述進程的裝置。
6.如權利要求1所述的計算機系統,其特征在于還包括所述待機子系統計算機或控制該待機子系統計算機的操作系統發生故障時,停止將所述檢驗點和更新信息傳送至待機子系統計算機的裝置。
7.如權利要求1所述的計算機系統,其特征在于還包括所述運行子系統的文件發生故障時,刪除最后檢驗點以后保存的更新信息,向所述待機子系統文件反映所述檢驗點以前更新信息所表示的更新之后,在所述待機子系統計算機上從所述檢驗點起重新執行所述進程的裝置。
8.如權利要求1所述的計算機系統,其特征在于還包括所述待機子系統的文件發生故障時,停止將所述檢驗點和更新信息傳送至待機子系統計算機的裝置。
9.如權利要求1所述的計算機系統,其特征在于還包括將所述待機子系統的文件斷開時,在第三計算機上重新確保待機子系統的文件的裝置。
10.如權利要求1所述的計算機系統,其特征在于還包括用待機子系統的文件從所述檢驗點起重新執行所述進程時,將所述待機子系統的文件切換為運行子系統,在所述運行子系統計算機上重新確保待機子系統的文件的裝置。
11.一種文件管理系統,為運行子系統和待機子系統的2臺計算機實現雙重化的計算機系統,定期采集重新開始中斷處理用的檢驗點,并保存在所述運行子系統和待機子系統兩者的計算機上的計算機系統的文件管理方法,其特征在于包括由所述運行子系統和待機子系統兩者的計算機雙重化設置可由所述運行子系統計算機上執行的進程加以更新的文件;所述進程有文件更新指令來時,將其更新信息保存在所述待機子系統計算機上,僅更新運行子系統的文件,在該更新結束時刻向該更新請求源通知更新結束的步驟;采集所述檢驗點之后,向所述待機子系統的文件反映所述更新信息表示的更新內容的步驟。
12.一種可供計算機讀取的存儲介質,存儲有一種計算機系統文件管理用程序,用于管理由運行子系統和待機子系統的2臺計算機實現雙重化,定期采集重新開始中斷處理用的檢驗點,并保存在所述運行子系統和待機子系統兩者的計算機上,在所述運行子系統和待機子系統兩者的計算機上多重化設置可由所述運行子系統計算機上執行的進程加以更新的文件這樣一種計算機系統,其特征在于,所述程序用于控制計算機,當所述進程有文件更新指令來時,在所述待機子系統計算機上保存該更新信息,而僅僅更新運行子系統的文件,在該更新結束時刻向該更新請求源通知更新結束,采集了所述檢驗點之后,向所述待機子系統的文件反映所述更新信息所表示的更新內容。
全文摘要
本發明提供一種文件更新時不必待機等待更新前數據保留,故障發生時即實現重新運行的計算機系統。請求向文件寫入等時候,將其“文件寫入信息”保存于不確定隊列431,立即僅對主文件39進行更新。采集了檢驗點之后,將不確定隊列431保存的“文件寫入信息”移至確定隊列432,并反映至備分文件41。而恢復時,根據不確定隊列431保存的“文件寫入信息”,從備分文件當中將最后采集的檢驗點以后更新的數據所對應的更新前數據全部讀出,用以將主文件39恢復至檢驗點時刻。
文檔編號G06F11/14GK1175739SQ97114600
公開日1998年3月11日 申請日期1997年7月17日 優先權日1996年9月3日
發明者平山秀昭, 白木原敏雄 申請人:東芝株式會社