亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

虛擬計(jì)算機(jī)系統(tǒng)和方法與流程

文檔序號:12176744閱讀:228來源:國知局
虛擬計(jì)算機(jī)系統(tǒng)和方法與流程

本發(fā)明涉及虛擬計(jì)算機(jī)系統(tǒng)和方法。



背景技術(shù):

為了通過僅玩故障已發(fā)生的故障發(fā)生虛擬機(jī)(VM)并且再現(xiàn)故障實(shí)現(xiàn)故障原因調(diào)查,以調(diào)查人操作、VM之間的異步事件、以及其中多個(gè)VM以協(xié)作方式在虛擬機(jī)監(jiān)視器(VMM)上操作并且VM通過共享存儲(chǔ)器連接的系統(tǒng)中的OS造成的故障,日本未審專利申請公開No.2014-32498描述了一種技術(shù),其中再現(xiàn)操作工具在VM執(zhí)行管理表中設(shè)置故障發(fā)生VM,臨時(shí)停止在同時(shí)快照通知單元處正執(zhí)行的設(shè)置的VM,在快照記錄單元中記錄到該時(shí)間點(diǎn)的執(zhí)行內(nèi)容,VM輸入/輸出記錄單元將VM的虛擬硬件(HW)的輸入/輸出訪問記錄到事件記錄單元,同時(shí)快照通知單元在快照記錄完成后通過再現(xiàn)操作單元的操作再現(xiàn)記錄的VM內(nèi)容,輸入/輸出再現(xiàn)單元將VM再現(xiàn)執(zhí)行期間虛擬HW中發(fā)生的輸入/輸出訪問與事件記錄單元中的內(nèi)容進(jìn)行比較,并且再現(xiàn)與事件記錄單元中的內(nèi)容匹配的輸入/輸出訪問。

為了提供為了執(zhí)行安裝在虛擬機(jī)中的應(yīng)用程序而配置為向虛擬機(jī)應(yīng)用預(yù)先創(chuàng)建的參考快照然后執(zhí)行應(yīng)用程序的虛擬計(jì)算機(jī)系統(tǒng),日本專利No.5713138描述了一種虛擬計(jì)算機(jī)系統(tǒng),其存儲(chǔ)包括虛擬機(jī)中安裝的應(yīng)用程序的虛擬機(jī)的狀態(tài)的快照作為參考快照,當(dāng)接收對于應(yīng)用程序的執(zhí)行請求時(shí)向虛擬機(jī)應(yīng)用參考快照,執(zhí)行應(yīng)用程序,并且當(dāng)故障發(fā)生時(shí)存儲(chǔ)虛擬機(jī)的狀態(tài)作為快照。

沒有在虛擬OS上操作的設(shè)備的狀態(tài)沒有存儲(chǔ)在虛擬OS上操作的應(yīng)用的快照中。因此,僅使用快照可能不能再現(xiàn)故障發(fā)生狀態(tài)。此外,在日本專利No.5713138中公開的技術(shù)中,即使打印機(jī)生成故障發(fā)生時(shí)的快照,當(dāng)打印機(jī)在故障發(fā)生之后繼續(xù)執(zhí)行打印處理時(shí),由于故障發(fā)生之后執(zhí)行的打印處理而丟失故障發(fā)生時(shí)打印機(jī)的日志信息。因此,不可再現(xiàn)包括故障發(fā)生時(shí)打印機(jī)的日志信息的狀態(tài)。



技術(shù)實(shí)現(xiàn)要素:

相應(yīng)地,本發(fā)明的目的是提供一種虛擬計(jì)算機(jī)系統(tǒng)和方法,通過與應(yīng)用程序的快照關(guān)聯(lián)地存儲(chǔ)故障發(fā)生之后緊接的時(shí)間的外部設(shè)備的日志信息,實(shí)現(xiàn)包括故障發(fā)生之后緊接的時(shí)間的外部設(shè)備以及應(yīng)用程序的狀態(tài)的再現(xiàn)。

根據(jù)發(fā)明的第一方面,提供了一種虛擬計(jì)算機(jī)系統(tǒng),所述虛擬計(jì)算機(jī)系統(tǒng)包括:外部事件獲取控制器、外部事件存儲(chǔ)單元和快照創(chuàng)建單元。所述外部事件獲取控制器執(zhí)行用于獲取關(guān)于設(shè)置在虛擬計(jì)算機(jī)外部的外部設(shè)備的事件的控制,所述虛擬計(jì)算機(jī)裝載安裝了應(yīng)用程序的客機(jī)操作系統(tǒng)。所述外部事件存儲(chǔ)單元存儲(chǔ)所述外部事件獲取控制器獲取的外部事件。所述快照創(chuàng)建單元在所述外部事件存儲(chǔ)在所述外部事件存儲(chǔ)單元中之后創(chuàng)建包括所述應(yīng)用程序的所述客機(jī)操作系統(tǒng)的快照。

根據(jù)發(fā)明的第二方面,所述外部事件存儲(chǔ)單元可設(shè)置在所述虛擬計(jì)算機(jī)內(nèi)。

根據(jù)發(fā)明的第三方面,所述外部事件存儲(chǔ)單元可設(shè)置在所述外部設(shè)備內(nèi)。

根據(jù)發(fā)明的第四方面,所述外部事件存儲(chǔ)單元可以是裝載了不同于所述虛擬計(jì)算機(jī)的第二虛擬計(jì)算機(jī)的計(jì)算機(jī)內(nèi)的存儲(chǔ)單元,作為所述第二虛擬計(jì)算機(jī)的快照。

根據(jù)發(fā)明的第五方面,所述虛擬計(jì)算機(jī)系統(tǒng)還可包括:接收單元,其接收指示所述事件在所述外部事件存儲(chǔ)單元處的存儲(chǔ)完成的通知。所述快照創(chuàng)建單元可在所述接收單元接收所述通知之后創(chuàng)建快照。

根據(jù)發(fā)明的第六方面,一種方法,包括:執(zhí)行用于獲取關(guān)于設(shè)置在虛擬計(jì)算機(jī)外部的外部設(shè)備的事件的控制,所述虛擬計(jì)算機(jī)裝載安裝了應(yīng)用程序的客機(jī)操作系統(tǒng);存儲(chǔ)所獲取的外部事件;在所述外部事件存儲(chǔ)之后創(chuàng)建包括所述應(yīng)用程序的所述客機(jī)操作系統(tǒng)的快照。

根據(jù)發(fā)明的第一方面,故障發(fā)生之后緊接的時(shí)間的外部設(shè)備的日志信息與應(yīng)用程序的快照關(guān)聯(lián)地存儲(chǔ)。因此,可實(shí)現(xiàn)包括故障發(fā)生之后緊接的時(shí)間的外部設(shè)備以及應(yīng)用程序的狀態(tài)的再現(xiàn)。

根據(jù)發(fā)明的第二方面,通過在虛擬計(jì)算機(jī)內(nèi)提供外部事件存儲(chǔ)單元,關(guān)于外部設(shè)備的事件可包括在快照中。

根據(jù)發(fā)明的第三方面,通過在外部設(shè)備內(nèi)提供外部事件存儲(chǔ)單元,外部設(shè)備的日志信息可存儲(chǔ)在外部設(shè)備中

根據(jù)發(fā)明的第四方面,關(guān)于外部設(shè)備的事件可包括在第二虛擬計(jì)算機(jī)的快照中。

根據(jù)發(fā)明的第五方面,可在當(dāng)外部事件存儲(chǔ)單元處的事件存儲(chǔ)完成時(shí)的時(shí)間創(chuàng)建快照。

根據(jù)發(fā)明的第六方面,故障發(fā)生之后緊接的時(shí)間的外部設(shè)備的日志信息與應(yīng)用程序的快照關(guān)聯(lián)地存儲(chǔ)。因此,可實(shí)現(xiàn)包括故障發(fā)生之后緊接的時(shí)間的外部設(shè)備以及應(yīng)用程序的狀態(tài)的再現(xiàn)。

附圖說明

將基于下面的圖詳細(xì)描述本發(fā)明的示例性實(shí)施方式,其中:

圖1是根據(jù)第一示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖;

圖2是例示根據(jù)第一示例性實(shí)施方式的處理示例的說明圖;

圖3是例示根據(jù)第一示例性實(shí)施方式的處理示例的流程圖;

圖4是例示根據(jù)第一示例性實(shí)施方式的處理示例的流程圖;

圖5是例示根據(jù)第一示例性實(shí)施方式的處理示例的流程圖;

圖6是例示根據(jù)第一示例性實(shí)施方式的處理示例的流程圖;

圖7是根據(jù)第二示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖;

圖8是例示根據(jù)第二示例性實(shí)施方式的處理示例的說明圖;

圖9是例示根據(jù)第二示例性實(shí)施方式的處理示例的流程圖;

圖10是例示根據(jù)第二示例性實(shí)施方式的處理示例的流程圖;

圖11是例示根據(jù)第二示例性實(shí)施方式的處理示例的流程圖;

圖12是例示根據(jù)第二示例性實(shí)施方式的處理示例的流程圖;

圖13是根據(jù)第三示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖;

圖14是例示現(xiàn)有技術(shù)的示例的說明圖;

圖15是例示根據(jù)現(xiàn)有技術(shù)的處理示例的說明圖;

圖16是例示現(xiàn)有技術(shù)的示例的說明圖;

圖17是例示根據(jù)現(xiàn)有技術(shù)的處理示例的說明圖;

圖18是根據(jù)第四示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖;

圖19是例示根據(jù)第四示例性實(shí)施方式的處理示例的說明圖;

圖20是例示根據(jù)第四示例性實(shí)施方式的處理示例的流程圖;

圖21是例示根據(jù)第四示例性實(shí)施方式的處理示例的流程圖;

圖22是例示根據(jù)第五示例性實(shí)施方式的處理示例的說明圖;

圖23是例示根據(jù)第五示例性實(shí)施方式的處理示例的流程圖;

圖24是例示根據(jù)第五示例性實(shí)施方式的處理示例的流程圖;

圖25是例示現(xiàn)有技術(shù)的示例的說明圖;

圖26是例示根據(jù)現(xiàn)有技術(shù)的處理示例的說明圖;

圖27是例示現(xiàn)有技術(shù)的示例的說明圖;

圖28是例示根據(jù)現(xiàn)有技術(shù)的處理示例的說明圖;

圖29是例示實(shí)現(xiàn)示例性實(shí)施方式的計(jì)算機(jī)的硬件構(gòu)造的示例的框圖。

具體實(shí)施方式

首先,在將提供示例性實(shí)施方式的說明之前,將參考圖14-17中例示的示例說明現(xiàn)有技術(shù)的技術(shù)。將提供下面的說明以實(shí)現(xiàn)示例性實(shí)施方式的容易理解。將說明打印機(jī)的示例作為外部設(shè)備。

圖14是例示現(xiàn)有技術(shù)的示例的說明圖。信息處理設(shè)備1400控制作為外部設(shè)備的打印機(jī)1480執(zhí)行打印處理。信息處理設(shè)備1400是并非虛擬計(jì)算機(jī)系統(tǒng)的通用計(jì)算機(jī)(其中提供單個(gè)操作系統(tǒng)(OS)1410用于單個(gè)物理機(jī)1405的計(jì)算機(jī))。例如,信息處理設(shè)備1400用作打印機(jī)服務(wù)器或打印機(jī)控制器,打印機(jī)1480是高速打印機(jī)。

信息處理設(shè)備1400包括從底層起按次序的物理機(jī)1405和OS 1410。作為應(yīng)用程序的打印控制器模塊1425和故障信息收集模塊1435設(shè)置在OS 1410上。打印控制器模塊1425包括輸出控制模塊1430,并且存儲(chǔ)C-Log 1427A。輸出控制模塊1430是用于控制打印機(jī)1480的程序。打印機(jī)1480存儲(chǔ)I-Log 1482A。

當(dāng)信息處理設(shè)備1400或打印機(jī)1480中發(fā)生故障時(shí),打印控制器模塊1425根據(jù)來自故障信息收集模塊1435的指令(Get_Log)收集其內(nèi)部和OS 1410的日志信息(C-Log 1427A)。故障可由在打印控制器模塊1425的控制之外的打印機(jī)1480造成。因此,打印控制器模塊1425還通過其內(nèi)部的輸出控制模塊1430收集打印機(jī)1480的日志信息(I-Log 1482A)(根據(jù)從輸出控制模塊1430到打印機(jī)1480的get_log指令),并向故障信息收集模塊1435發(fā)送C-Log 1427A和I-Log 1482A。然后,故障信息收集模塊1435將C-Log 1427A和I-Log 1482A存儲(chǔ)在存儲(chǔ)區(qū)域1490中。

圖15是例示現(xiàn)有技術(shù)的處理示例的說明圖。

信息處理設(shè)備1400進(jìn)行操作以使打印機(jī)1480執(zhí)行打印處理,并且假設(shè)故障發(fā)生1510出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生1510時(shí),向OS 1410上的故障信息收集模塊1435發(fā)出故障信息收集指令1572。故障信息收集模塊1435向打印控制器模塊1425發(fā)出Get_Log 1574指令,并且獲取該時(shí)間打印控制器模塊1425內(nèi)部和OS 1410的狀態(tài)(日志信息)作為C-Log 1427A。然后,打印控制器模塊1425控制輸出控制模塊1430,輸出控制模塊1430在打印控制器模塊1425的控制下向打印機(jī)1480發(fā)出get_log 1576指令,并且從打印機(jī)1480獲取I-Log 1482A,其是該時(shí)間打印機(jī)1480的狀態(tài)(日志信息)。然后,輸出控制模塊1430向故障信息收集模塊1435發(fā)送I-log和C-Log 1578(C-Log 1427A和I-Log 1482A)作為對Get_Log 1574的響應(yīng)。故障信息收集模塊1435將I-log和C-Log 1578作為C-Log 1427B和I-Log 1482B存儲(chǔ)在存儲(chǔ)區(qū)域1490中。之后,執(zhí)行故障恢復(fù)處理1550,并且實(shí)現(xiàn)操作重新開始1560。

在此處理之后,當(dāng)打印機(jī)1480的操作完成時(shí),通過分析C-Log 1427B和I-Log 1482B,思考故障原因、故障對策等。在收集日志之后,為了繼續(xù)打印機(jī)1480處的打印處理,執(zhí)行恢復(fù)處理1550和操作重新開始1560而不分析日志。特別地,在打印機(jī)1480是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

接下來,將說明虛擬計(jì)算機(jī)系統(tǒng)的示例。圖16是例示現(xiàn)有技術(shù)的示例的說明圖。信息處理設(shè)備1600是虛擬計(jì)算機(jī)系統(tǒng),控制作為外部設(shè)備的打印機(jī)1680執(zhí)行打印處理。例如,信息處理設(shè)備1600用作打印機(jī)服務(wù)器,并且打印機(jī)1680是高速打印機(jī)。

稱為虛擬化系統(tǒng)的技術(shù)是使多個(gè)客機(jī)OS 1620在單個(gè)物理機(jī)1605(硬件)上操作的技術(shù)。如圖16的示例中例示的,通過物理機(jī)1605上的主機(jī)OS 1610和虛擬化軟件(SW)1615建立虛擬硬件。客機(jī)OS 1620安裝在虛擬硬件上,作為應(yīng)用程序(應(yīng)用)的打印控制器模塊1625安裝在客機(jī)OS 1620上。

虛擬化SW 1615是允許多個(gè)客機(jī)OS 1620在物理機(jī)1605上并行共存的結(jié)構(gòu)。即,虛擬化SW 1615以軟件方式建立諸如中央處理單元(CPU)、存儲(chǔ)器和硬盤驅(qū)動(dòng)(HDD)的硬件,并且準(zhǔn)備客機(jī)OS 1620依賴的硬件資源作為虛擬機(jī)。

例如,打印機(jī)控制程序(特定示例包括數(shù)字前端(DFE))用作打印控制器模塊1625。在這種情況下,虛擬機(jī)彼此分離,即使在任意虛擬機(jī)中發(fā)生故障(例如,崩潰等),不同虛擬機(jī)上的打印機(jī)控制程序繼續(xù)操作因此能夠執(zhí)行打印。

具體地,信息處理設(shè)備1600包括從底層起按次序的物理機(jī)1605、主機(jī)OS 1610、虛擬化SW 1615、客機(jī)OS 1620。作為應(yīng)用程序的打印控制器模塊1625和故障信息收集模塊1635設(shè)置在客機(jī)OS 1620上。虛擬化SW 1615包括SS管理模塊1617。打印控制器模塊1625包括輸出控制模塊1630并存儲(chǔ)C-Log 1627A。打印機(jī)1680存儲(chǔ)I-Log 1682A。存儲(chǔ)區(qū)域1690存儲(chǔ)快照1692。圖16例示單個(gè)客機(jī)OS 1620設(shè)置在虛擬化SW 1615上的示例。然而,由于信息處理設(shè)備1600是虛擬計(jì)算機(jī)系統(tǒng),多個(gè)客機(jī)OS 1620可設(shè)置在虛擬化SW 1615上。

在信息處理設(shè)備1600中,使作為應(yīng)用程序的打印控制器模塊1625在虛擬化環(huán)境下操作,在虛擬化環(huán)境下利用快照功能(SS管理模塊1617的功能)在存儲(chǔ)區(qū)域1690中保持故障發(fā)生時(shí)的故障狀態(tài)作為快照1692。然后,恢復(fù)故障,并且在完成預(yù)定打印處理之后(沒有打印服務(wù)正在執(zhí)行時(shí)),使用存儲(chǔ)的快照1692再現(xiàn)故障發(fā)生時(shí)的狀態(tài),然后獲取故障信息。打印控制器模塊1625在其上操作的客機(jī)OS 1620的快照的創(chuàng)建和再現(xiàn)由SS管理模塊1617執(zhí)行。

參考圖17中例示的示例,信息處理設(shè)備1600進(jìn)行操作使打印機(jī)1680執(zhí)行打印處理,假設(shè)故障發(fā)生1710出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生1710時(shí),根據(jù)通過主機(jī)OS 1610的用戶操作向SS管理模塊1617發(fā)出拍快照指令1722。通過監(jiān)視打印控制器模塊1625內(nèi)部的狀態(tài),可自動(dòng)發(fā)出拍快照指令1722。SS管理模塊1617在存儲(chǔ)區(qū)域1690中存儲(chǔ)該時(shí)間客機(jī)OS 1620和打印控制器模塊1625的狀態(tài)A:1740A作為快照1692。在打印機(jī)1680處,通過故障發(fā)生1710生成I-Log 1682A作為日志信息。然而,由于通過獲得信息處理設(shè)備1600內(nèi)部的狀態(tài)獲取SS管理模塊1617的快照,所以作為外部設(shè)備的打印機(jī)1680的I-Log 1682A不是快照目標(biāo)。

之后,執(zhí)行故障恢復(fù)處理1750,實(shí)現(xiàn)操作重新開始1760。

然后,在打印機(jī)1680的操作完成之后,根據(jù)通過主機(jī)OS 1610的用戶操作向SS管理模塊1617發(fā)出快照再現(xiàn)指令1770。SS管理模塊1617讀取存儲(chǔ)區(qū)域1690內(nèi)的快照1692,并且將客機(jī)OS 1620和打印控制器模塊1625的狀態(tài)返回到狀態(tài)A:1740B(與狀態(tài)A:1740A相同)。然后,根據(jù)通過主機(jī)OS 1610的用戶操作向故障信息收集模塊1635發(fā)出故障信息收集指令1772,并且執(zhí)行與圖15的示例中例示的類似處理。即,故障信息收集模塊1635向打印控制器模塊1625發(fā)出Get_Log 1774指令, 并且獲取該時(shí)間打印控制器模塊1625內(nèi)部和客機(jī)OS 1620的狀態(tài)(日志信息)作為C-Log 1627A。然后,打印控制器模塊1625控制輸出控制模塊1630,輸出控制模塊1630在打印控制器模塊1625的控制下向打印機(jī)1680發(fā)出get_log 1776指令,并且從打印機(jī)1680獲取I-LogX 1682B,其是該時(shí)間打印機(jī)1680的狀態(tài)(日志信息)。然后,輸出控制模塊1630向故障信息收集模塊1635發(fā)送I-LogX和C-Log 1778(C-Log 1627A和I-LogX 1682B),作為對Get_Log 1774的響應(yīng)。故障信息收集模塊1635將I-LogX和C-Log 1778作為C-Log 1927B和I-LogX 1682C存儲(chǔ)在存儲(chǔ)區(qū)域1690中。

在使用故障信息收集模塊1635收集在打印控制器模塊1625的控制之外的打印機(jī)1680的日志信息(I-LogX 1682B)的情況下,在故障發(fā)生1710與故障信息收集指令1772之間的時(shí)間期間執(zhí)行打印處理(操作重新開始1760),如圖17的示例中例示的。因此,故障發(fā)生之后的打印處理的信息(操作重新開始1760之后的打印處理)寫入I-LogX 1682B(故障信息收集指令1772時(shí)打印機(jī)1680的日志信息)中,I-LogX 1682B的內(nèi)容不同于I-Log 1682A(故障發(fā)生時(shí)打印機(jī)1680的日志信息)的內(nèi)容。因此,根據(jù)打印機(jī)1680的操作重新開始1760之后的打印處理,故障發(fā)生時(shí)的日志信息的I-Log 1682A消失(覆寫)的情況可出現(xiàn)。即,根據(jù)故障信息收集指令1772,故障發(fā)生1710時(shí)的I-Log 1682A不存儲(chǔ)在存儲(chǔ)區(qū)域1690中。

下文中,將參考附圖描述本發(fā)明的各種示例性實(shí)施方式。

第一示例性實(shí)施方式

圖1例示根據(jù)第一示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖。

通常,術(shù)語“模塊”是指可邏輯分離的諸如軟件(計(jì)算機(jī)程序)、硬件等的組件。因此,示例性實(shí)施方式中的模塊不僅是指計(jì)算機(jī)程序中的模塊,而且是指硬件構(gòu)造中的模塊。相應(yīng)地,通過示例性實(shí)施方式,描述用于致使組件用作模塊的計(jì)算機(jī)程序(用于致使計(jì)算機(jī)執(zhí)行各步驟的程序,用于致使計(jì)算機(jī)用作各單元的程序,用于致使計(jì)算機(jī)執(zhí)行各功能的程序)、系統(tǒng)和方法。然而,為了方便描述,將使用術(shù)語“存儲(chǔ)”、“致使某物存儲(chǔ)”和其它等同表述。當(dāng)示例性實(shí)施方式與計(jì)算機(jī)程序相關(guān)時(shí),術(shù)語和表述代表“致使存儲(chǔ)設(shè)備存儲(chǔ)”或“控制存儲(chǔ)設(shè)備存儲(chǔ)”。模塊和功能可一對一地關(guān)聯(lián)。然而,在實(shí)際實(shí)現(xiàn)中,一個(gè)模塊可由一個(gè)程序?qū)崿F(xiàn),多個(gè)模塊可由一個(gè)程序?qū)崿F(xiàn),或者一個(gè)模塊可由多個(gè)程序?qū)崿F(xiàn)。此外,多個(gè)模塊可由一個(gè)計(jì)算機(jī)執(zhí)行,或者一個(gè)模塊可由多個(gè)計(jì)算機(jī)在分布式計(jì)算機(jī)環(huán)境或并行計(jì)算機(jī)環(huán)境下執(zhí)行。此外,模塊可包括 另一模塊。此外,下文中,術(shù)語“連接”可指邏輯連接(諸如數(shù)據(jù)傳送,指令,和數(shù)據(jù)之間的交叉參考關(guān)系)以及物理連接。術(shù)語“預(yù)定”表示在執(zhí)行目標(biāo)處理之前設(shè)置。根據(jù)該時(shí)間的條件和狀態(tài),或者根據(jù)直至該時(shí)間的時(shí)段期間的條件和狀態(tài),“預(yù)定”不僅表示在示例性實(shí)施方式中的處理之前設(shè)置,而且表示甚至在示例性實(shí)施方式中的處理開始之后設(shè)置,只要在執(zhí)行目標(biāo)處理之前設(shè)置即可。當(dāng)存在多個(gè)“預(yù)定值”時(shí),值可彼此不同,或者兩個(gè)或更多個(gè)值(顯然,包括所有值)可相同。術(shù)語“在執(zhí)行A、B的情況下”表示“執(zhí)行關(guān)于是否是A的確定,當(dāng)確定是A時(shí),執(zhí)行B”,除非不獲取關(guān)于是否是A的確定。

此外,“系統(tǒng)”或“設(shè)備”可不僅用通過諸如網(wǎng)絡(luò)的通信單元連接(包括一對一通信連接)的多個(gè)計(jì)算機(jī)、硬件、設(shè)備等實(shí)現(xiàn),而且用單個(gè)計(jì)算機(jī)、硬件、設(shè)備等實(shí)現(xiàn)。術(shù)語“設(shè)備”和“系統(tǒng)”用作類似術(shù)語。顯然,術(shù)語“系統(tǒng)”不包括社交“機(jī)制”(社交系統(tǒng)),這僅是人工設(shè)置的。

此外,對于模塊中的各處理或執(zhí)行多個(gè)處理的模塊中的各個(gè)處理,從存儲(chǔ)設(shè)備讀取目標(biāo)信息,在執(zhí)行處理之后向存儲(chǔ)設(shè)備寫入處理結(jié)果。因此,可省略執(zhí)行處理之前從存儲(chǔ)設(shè)備讀取的描述,或者執(zhí)行處理之后寫入存儲(chǔ)設(shè)備的描述。存儲(chǔ)設(shè)備可以是硬盤,隨機(jī)存取存儲(chǔ)器(RAM),外部存儲(chǔ)介質(zhì),使用通信線路的存儲(chǔ)設(shè)備,CPU內(nèi)的寄存器等。

根據(jù)第一示例性實(shí)施方式的作為虛擬計(jì)算機(jī)系統(tǒng)的信息處理設(shè)備100存儲(chǔ)故障發(fā)生之后緊接的打印控制器模塊125和作為外部設(shè)備的打印機(jī)180的狀態(tài),作為快照,使得可再現(xiàn)狀態(tài)。如圖1的示例中例示的,信息處理設(shè)備100包括從底層起按次序的物理機(jī)105、主機(jī)OS 110、虛擬化SW 115和客機(jī)OS 120。作為應(yīng)用程序的打印控制器模塊125、故障信息收集模塊135、SS控制模塊140設(shè)置在客機(jī)OS 120上。虛擬化SW 115包括SS管理模塊117。即,SS管理模塊117是通常并入虛擬化SW 115的模塊。打印控制器模塊125包括輸出控制模塊130并且存儲(chǔ)C-Log 127A和I-Log 182B。打印機(jī)180存儲(chǔ)I-Log 182A。存儲(chǔ)區(qū)域190存儲(chǔ)快照192。

盡管例示打印機(jī)180作為外部設(shè)備的示例,外部設(shè)備可以是不同設(shè)備(例如,掃描儀)。即,外部設(shè)備可以是被虛擬計(jì)算機(jī)系統(tǒng)控制并且在分析故障之前被執(zhí)行恢復(fù)處理的任意設(shè)備。應(yīng)用程序可以是例如打印機(jī)控制程序。下文中,將說明打印機(jī)控制程序的示例。

如圖1的示例中例示的,向作為虛擬計(jì)算機(jī)的信息處理設(shè)備100引入SS控制模塊140,其指示收集打印機(jī)180的日志信息(I-Log 182A),并且利用SS管理模塊117創(chuàng)建打印控制器模塊125在其上操作的客機(jī)OS 120的快照(可包括快照的再現(xiàn))。故障信息收集模塊135收集打印控制器模塊125內(nèi)部和客機(jī)OS 120的日志信息(C-Log)并且獲取已經(jīng)被收集的打印機(jī)180的日志信息(I-Log 182B)。

即,SS控制模塊140執(zhí)行用于獲取關(guān)于設(shè)置在信息處理設(shè)備100外部的打印機(jī)180的事件的控制,信息處理設(shè)備100是裝載了已經(jīng)被安裝作為應(yīng)用程序的打印控制器模塊125的客機(jī)OS 120的虛擬計(jì)算機(jī)。“關(guān)于打印機(jī)180的事件”的特定示例包括I-Log 182A,其是故障發(fā)生時(shí)打印機(jī)180的日志信息。故障可發(fā)生在信息處理設(shè)備100中或打印機(jī)180中。

打印控制器模塊125存儲(chǔ)SS控制模塊140獲取的外部事件。即,I-Log 182B(與打印機(jī)180中的I-Log 182A內(nèi)容相同)存儲(chǔ)在打印控制器模塊125中。顯然,打印控制器模塊125位于信息處理設(shè)備100內(nèi)(作為SS管理模塊117的快照目標(biāo)的區(qū)域內(nèi)),因此打印控制器模塊125還存儲(chǔ)C-Log 127A,其是客機(jī)OS 120和打印控制器模塊125的日志信息。

在作為外部事件的I-Log 182A存儲(chǔ)在打印控制器模塊125中之后,SS管理模塊117創(chuàng)建包括打印控制器模塊125的客機(jī)OS 120的快照。因此,快照包括I-Log 182B以及C-Log 127A。具體地,在從SS控制模塊140接收指示事件存儲(chǔ)完成的通知之后,SS管理模塊117創(chuàng)建快照。

具體地,當(dāng)故障發(fā)生時(shí),SS控制模塊140向打印控制器模塊125發(fā)出獲取打印機(jī)180的I-Log 182A的指令(Get_Ilog)(步驟12)。在打印控制器模塊125的控制下,輸出控制模塊130向打印機(jī)180發(fā)出獲取I-Log 182A的指令(get_log)(步驟14)。打印機(jī)180向輸出控制模塊130傳送I-Log 182A(步驟16)。結(jié)果,I-Log 182B存儲(chǔ)在打印控制器模塊125中。然后,打印控制器模塊125(輸出控制模塊130)執(zhí)行指示Get_Ilog的處理完成的Res_Ilog處理(步驟18)。SS控制模塊140指示SS管理模塊117執(zhí)行快照處理(步驟20)。結(jié)果,快照192存儲(chǔ)在存儲(chǔ)區(qū)域190中??煺?92包括打印控制器模塊125內(nèi)的C-Log 127A和I-Log 182B。

然后,執(zhí)行故障恢復(fù)處理,并且重新開始操作。在完成操作之后執(zhí)行故障的收集和分析的情況下,SS管理模塊117利用存儲(chǔ)區(qū)域190中的快照192恢復(fù)故障發(fā)生時(shí) 的狀態(tài)。結(jié)果,在打印控制器模塊125中恢復(fù)故障發(fā)生時(shí)的I-Log 182B(故障發(fā)生時(shí)打印機(jī)180內(nèi)的I-Log 182A)以及C-Log 127A。故障信息收集模塊135向打印控制器模塊125發(fā)出獲取故障信息的指令(Get_Log)(步驟32)。打印控制器模塊125向故障信息收集模塊135發(fā)送C-Log 127A和I-Log 182B(步驟34)。負(fù)責(zé)人分析故障信息收集模塊135獲取的C-Log 127A和I-Log 182B,并且思考故障原因、故障對策等。

信息處理設(shè)備100執(zhí)行下面描述的處理作為概述。

在使打印控制器模塊125在客機(jī)OS 120上操作并且使用虛擬計(jì)算機(jī)系統(tǒng)的快照功能收集故障信息的情況下,如上所述,故障發(fā)生時(shí)間極大地不同于獲取故障信息的時(shí)間。因此,在獲取故障信息時(shí),諸如打印機(jī)180(不是快照目標(biāo))的外部設(shè)備可不保持故障發(fā)生時(shí)的日志信息。因此,已知故障信息收集功能分布在SS控制模塊140與故障信息收集模塊135之間,并且SS控制模塊140在拍快照之前將故障發(fā)生時(shí)打印機(jī)180的日志信息取出到打印控制器模塊125中。

相應(yīng)地,通過在故障發(fā)生之后立即創(chuàng)建花費(fèi)短時(shí)間完成處理的快照,可在故障恢復(fù)處理之后立即重新開始原始打印處理,而無需執(zhí)行花費(fèi)長時(shí)間的收集故障信息的操作。然后,通過再現(xiàn)期望時(shí)間(諸如打印服務(wù)完成之后緊接的時(shí)間)的快照,可獲取故障發(fā)生后緊接的故障信息(諸如打印機(jī)180以及打印控制器模塊125的外部設(shè)備的故障信息)。

即,打印機(jī)180的用戶不需要根據(jù)故障發(fā)生收集故障信息。結(jié)果,可增加打印機(jī)180的操作率。

圖2是根據(jù)第一示例性實(shí)施方式的處理示例的說明圖。

信息處理設(shè)備100進(jìn)行操作使打印機(jī)180執(zhí)行打印處理,并且假設(shè)故障發(fā)生210出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生210時(shí),向客機(jī)OS 120上的SS控制模塊140發(fā)出拍快照指令222。SS控制模塊140向打印控制器模塊125發(fā)出Get_ILog 224指令。在打印控制器模塊125的控制下,輸出控制模塊130向打印機(jī)180發(fā)出get_log 226指令,獲取I-Log 182A,在打印控制器模塊125中存儲(chǔ)獲取的I-Log 182A作為I-Log 182B。打印控制器模塊125(輸出控制模塊130)確認(rèn)存儲(chǔ)I-Log 182B,并且向SS控制模塊140發(fā)送指示獲取完成的Res_ILog 228。然后,接收到Res_ILog 228的SS控制模塊 140請求虛擬化SW 115內(nèi)的SS管理模塊117進(jìn)行快照處理。SS管理模塊117在存儲(chǔ)區(qū)域190中存儲(chǔ)客機(jī)OS 120和打印控制器模塊125的狀態(tài)A:240A(I-Log 182B存儲(chǔ)在打印控制器模塊125中)作為快照192。之后,執(zhí)行作為故障恢復(fù)的恢復(fù)處理250,并且實(shí)現(xiàn)操作重新開始260。

在完成預(yù)定打印處理之后(或者在沒有打印服務(wù)正執(zhí)行時(shí)),SS管理模塊117根據(jù)用戶操作接收快照再現(xiàn)指令270,利用存儲(chǔ)區(qū)域190中的快照192再現(xiàn)故障發(fā)生時(shí)的狀態(tài)A:240B(狀態(tài)A:240A)。然后,根據(jù)故障信息收集指令272,故障信息收集模塊135基于到打印控制器模塊125的Get_Log 274指令從打印控制器模塊125獲取C-Log 127A(打印控制器模塊125內(nèi)部和客機(jī)OS 120的日志信息)以及I-Log 182B(已經(jīng)收集的打印機(jī)180的日志信息)(I-Log,C-Log 276)。然后,C-Log 127B(C-Log 127A)和I-Log 182C(I-Log 182B和I-Log 182A)存儲(chǔ)在存儲(chǔ)區(qū)域190中。通過分析C-Log 127B和I-Log 182C,思考故障原因、故障對策等。在故障發(fā)生之后,為了繼續(xù)打印機(jī)180處的打印處理,執(zhí)行恢復(fù)處理250和操作重新開始260而不收集和分析日志。特別地,在打印機(jī)180是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

圖3和4是例示根據(jù)第一示例性實(shí)施方式的處理示例(生成快照192的處理示例)的流程圖。

在步驟S302,確定是否檢測到故障發(fā)生。當(dāng)檢測到故障發(fā)生時(shí),處理前進(jìn)到步驟S304。當(dāng)未檢測到故障發(fā)生時(shí),處理等待直到檢測到故障發(fā)生。

在步驟S304,根據(jù)用戶操作發(fā)出拍快照指令222。如上所述,通過監(jiān)視打印控制器模塊125內(nèi)部的狀態(tài),可自動(dòng)發(fā)出拍攝指令。

在步驟S306,SS控制模塊140接收拍快照指令222。

在步驟S308,SS控制模塊140發(fā)出I-Log獲取指令(Get_ILog 224)。

在步驟S310,輸出控制模塊130接收I-Log獲取指令(Get_ILog 224)。

在步驟S312,輸出控制模塊130發(fā)出I-Log獲取指令(get_log 226)。

在步驟S314,打印機(jī)180接收I-Log獲取指令(get_log 226)。

在步驟S316,打印機(jī)180發(fā)送I-Log 182A。

在步驟S318,輸出控制模塊130接收I-Log 182A。

在步驟S320,輸出控制模塊130在打印控制器模塊125中存儲(chǔ)I-Log 182A。

在步驟S322,輸出控制模塊130用指示I-Log的獲取完成的通知(Res_ILog 228)進(jìn)行回應(yīng)。

在步驟S324,SS控制模塊140接收Res_ILog 228。

在步驟S326,SS控制模塊140發(fā)出快照創(chuàng)建指令。

在步驟S328,SS管理模塊117接收快照創(chuàng)建指令。

在步驟S330,SS管理模塊117在存儲(chǔ)區(qū)域190中存儲(chǔ)當(dāng)前狀態(tài)A:240A(其中I-Log 182B存儲(chǔ)在打印控制器模塊125中的狀態(tài))作為快照192。

圖5是例示根據(jù)第一示例性實(shí)施方式的處理示例(再現(xiàn)快照192的處理示例)的流程圖。

在步驟S502,根據(jù)用戶操作,發(fā)出快照再現(xiàn)指令270。

在步驟S504,SS管理模塊117接收快照再現(xiàn)指令270。

在步驟S506,SS管理模塊117利用存儲(chǔ)區(qū)域190中的快照192再現(xiàn)狀態(tài)A:240B(其中I-Log 182B存儲(chǔ)在打印控制器模塊125中的狀態(tài))。

圖6是例示根據(jù)第一示例性實(shí)施方式的處理示例(收集作為故障信息的C-Log 127A和I-Log 182B的處理示例)的流程圖。

在步驟S602,根據(jù)用戶操作,發(fā)出故障信息收集指令272。

在步驟S604,故障信息收集模塊135接收故障信息收集指令272。

在步驟S606,故障信息收集模塊135發(fā)出日志獲取指令(Get_Log 274)。

在步驟S608,打印控制器模塊125接收日志獲取指令(Get_Log 274)。

在步驟S610,打印控制器模塊125發(fā)送C-Log 127A和I-Log 182B。

在步驟S612,故障信息收集模塊135接收I-Log和C-Log 276(C-Log 127A和I-Log 182B)。

在步驟S614,故障信息收集模塊135在存儲(chǔ)區(qū)域190中存儲(chǔ)C-Log 127B和I-Log 182C(I-Log和C-Log 276)。

第二示例性實(shí)施方式

圖7是根據(jù)第二示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖。

信息處理設(shè)備700包括從底層起按次序的物理機(jī)105、主機(jī)OS 110,虛擬化SW 115、客機(jī)OS 120,并且打印控制器模塊125、故障信息收集模塊135、SS控制模塊140設(shè)置在客機(jī)OS 120上。虛擬化SW 115包括SS管理模塊117,打印控制器模塊 125包括輸出控制模塊130并且存儲(chǔ)C-Log 127A。打印機(jī)180存儲(chǔ)I-Log 782A。存儲(chǔ)區(qū)域190存儲(chǔ)快照192。與以上描述的第一示例性實(shí)施方式中類似的部件用相同的附圖標(biāo)記引用,并且將省略重復(fù)說明(同樣應(yīng)用于其他示例性實(shí)施方式)。

如圖7的示例中例示的,向作為虛擬計(jì)算機(jī)的信息處理設(shè)備700引入SS控制模塊140,其發(fā)出打印機(jī)180的日志信息(I-Log 782A)的保持指令(save_log)并且指示信息處理設(shè)備700利用SS管理模塊117創(chuàng)建打印控制器模塊125在其上操作的客機(jī)OS 120的快照(可包括快照再現(xiàn))。故障信息收集模塊135收集打印控制器模塊125內(nèi)部和客機(jī)OS 120的日志信息(C-Log 127A)并且獲取存儲(chǔ)在打印機(jī)180中的日志信息(I-Log 782A)。

即,SS控制模塊140執(zhí)行用于保持設(shè)置在信息處理設(shè)備700外部的打印機(jī)180的I-Log 782A(打印機(jī)180的日志信息)的控制,信息處理設(shè)備700是裝載了已經(jīng)被安裝作為應(yīng)用程序的打印控制器模塊125的客機(jī)OS 120的虛擬計(jì)算機(jī)。

打印機(jī)180存儲(chǔ)根據(jù)來自SS控制模塊140的指令獲取的外部事件。即,I-Log 782A存儲(chǔ)在打印機(jī)180中。顯然,存儲(chǔ)I-Log 782A的單元設(shè)置在打印機(jī)180內(nèi)部。此外,在存儲(chǔ)I-Log 782A之后,新日志信息并不由于打印機(jī)180的重新開始處理而覆寫在I-Log 782A上,并且存儲(chǔ)指示故障發(fā)生時(shí)的狀態(tài)的I-Log 782A。

在作為外部事件的I-Log 782A存儲(chǔ)在打印機(jī)180中之后,SS管理模塊117創(chuàng)建包括打印控制器模塊125的客機(jī)OS 120的快照。因此,在快照創(chuàng)建的時(shí)間,I-Log 782A已經(jīng)存儲(chǔ)在打印機(jī)180中。

具體地,當(dāng)故障發(fā)生時(shí),SS控制模塊140向打印控制器模塊125發(fā)出存儲(chǔ)打印機(jī)180的I-Log 782A的指令(Save_ILog)(步驟72)。在打印控制器模塊125的控制下,輸出控制模塊130向打印機(jī)180發(fā)出存儲(chǔ)I-Log 782A的指令(save_log)(步驟74)。打印機(jī)180存儲(chǔ)I-Log 782A,并且向輸出控制模塊130發(fā)送指示存儲(chǔ)完成的通知(步驟76)。然后,打印控制器模塊125(輸出控制模塊130)執(zhí)行指示Save_Log的處理完成的Res_Ilog處理(步驟78)。SS控制模塊140指示SS管理模塊117執(zhí)行快照處理(步驟80)。結(jié)果,快照192存儲(chǔ)在存儲(chǔ)區(qū)域190中。打印控制器模塊125內(nèi)的C-Log 127A存儲(chǔ)在快照192中。

然后,執(zhí)行故障恢復(fù)處理,并且重新開始操作。在完成操作之后執(zhí)行故障的收集和分析的情況下,SS管理模塊117利用存儲(chǔ)區(qū)域190內(nèi)的快照192恢復(fù)故障發(fā)生時(shí) 的狀態(tài)。結(jié)果,在打印控制器模塊125中恢復(fù)故障發(fā)生時(shí)的C-Log 127A。故障信息收集模塊135向打印控制器模塊125發(fā)出獲取故障發(fā)生時(shí)的狀態(tài)的指令(Get_Log)(步驟92)。在打印控制器模塊125的控制下,輸出控制模塊130發(fā)出從打印機(jī)180獲取I-Log 782A的指令(get_log)(步驟94)。打印機(jī)180執(zhí)行向輸出控制模塊130發(fā)送I-Log 782A的處理(步驟96)。打印控制器模塊125向故障信息收集模塊135發(fā)送C-Log 127A和輸出控制模塊130獲取的I-Log 782A(步驟98)。負(fù)責(zé)人分析故障信息收集模塊135獲取的C-Log 127A和I-Log 782A并且思考故障原因、故障對策等。

圖8是例示根據(jù)第二示例性實(shí)施方式的處理示例的說明圖。

信息處理設(shè)備700進(jìn)行操作使打印機(jī)180執(zhí)行打印處理,并且假設(shè)故障發(fā)生210出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生210時(shí),向客機(jī)OS 120上的SS控制模塊140發(fā)出拍快照指令222。SS控制模塊140向打印控制器模塊125發(fā)出Save_ILog 824指令。在打印控制器模塊125的控制下,輸出控制模塊130向打印機(jī)180發(fā)出save_log 826指令,并且打印機(jī)180復(fù)制I-Log 782A以生成I-Log 782B(對應(yīng)于圖7的示例中的I-Log 782A)并且存儲(chǔ)生成的I-Log 782B。在從打印機(jī)180接收到完成通知時(shí),打印控制器模塊125(輸出控制模塊130)用指示處理完成的Res_ILog 828向SS控制模塊140進(jìn)行回應(yīng)。然后SS控制模塊140接收Res_ILog 828,并且請求虛擬化SW 115內(nèi)的SS管理模塊117進(jìn)行快照處理。SS管理模塊117在存儲(chǔ)區(qū)域190中存儲(chǔ)客機(jī)OS 120和打印控制器模塊125的狀態(tài)A:840A作為快照892。之后,執(zhí)行從故障恢復(fù)的恢復(fù)處理250并且實(shí)現(xiàn)操作重新開始260。

然后,在預(yù)定打印處理完成之后(或者在沒有打印服務(wù)正在執(zhí)行時(shí)),SS管理模塊117根據(jù)用戶操作接收快照再現(xiàn)指令270,并且利用存儲(chǔ)區(qū)域190中的快照892再現(xiàn)故障發(fā)生時(shí)的狀態(tài)A:840B(狀態(tài)A:840A)。然后,根據(jù)故障信息收集指令272,故障信息收集模塊135向打印控制器模塊125發(fā)出Get_Log 274指令。打印控制器模塊125向打印機(jī)180發(fā)出get_log 874B并且獲取I-Log 782C(I-Log 782B)。然后,向故障信息收集模塊135傳送作為打印控制器模塊125內(nèi)部和客機(jī)OS 120的日志信息的C-Log 127A、以及I-Log 782C(I-Log和C-Log 876)。然后,C-Log 127B(C-Log 127A)和I-Log 782D(I-Log 782C,I-Log 782B,I-Log 782A)存儲(chǔ)在存儲(chǔ) 區(qū)域190中。通過分析C-Log 127B和I-Log 782D,思考故障原因、故障對策等。在故障發(fā)生之后,為了繼續(xù)打印機(jī)180處的打印處理,執(zhí)行恢復(fù)處理250和操作重新開始260而不收集和分析日志。具體地,在打印機(jī)180是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

圖9和10是例示根據(jù)第二示例性實(shí)施方式的處理示例(生成快照892的處理示例和存儲(chǔ)I-Log 782A的處理示例)的流程圖。

在步驟S902,確定是否檢測到故障發(fā)生。當(dāng)檢測到故障發(fā)生時(shí),處理前進(jìn)到步驟S904。當(dāng)未檢測到故障發(fā)生時(shí),處理等待直到檢測到故障發(fā)生。

在步驟S904,根據(jù)用戶操作發(fā)出拍快照指令222。如上所述,通過監(jiān)視打印控制器模塊125內(nèi)部的狀態(tài),可自動(dòng)發(fā)出拍攝指令。

在步驟S906,SS控制模塊140接收拍快照指令222。

在步驟S908,SS控制模塊140發(fā)出I-Log存儲(chǔ)指令(Save_ILog 824)。

在步驟S910,輸出控制模塊130接收I-Log存儲(chǔ)指令(Save_ILog 824)。

在步驟S912,輸出控制模塊130發(fā)出I-Log存儲(chǔ)指令(save_log 826)。

在步驟S914,打印機(jī)180接收I-Log存儲(chǔ)指令(save_log 826)。

在步驟S916,打印機(jī)180存儲(chǔ)I-Log 182A(I-Log 782B)。

在步驟S918,打印機(jī)180用指示I-Log的存儲(chǔ)完成的通知進(jìn)行回應(yīng)。

在步驟S920,輸出控制模塊130用指示打印機(jī)180中的I-Log的存儲(chǔ)完成的通知(Res_ILog 828)進(jìn)行回應(yīng)。

在步驟S922,SS控制模塊140接收Res_ILog 828。

在步驟S924,SS控制模塊140發(fā)出快照創(chuàng)建指令。

在步驟S926,SS管理模塊117接收快照創(chuàng)建指令。

在步驟S928,SS管理模塊117在存儲(chǔ)區(qū)域190中存儲(chǔ)當(dāng)前狀態(tài)A:840A作為快照892。

圖11是例示根據(jù)第二示例性實(shí)施方式的處理示例(再現(xiàn)快照892的處理示例)的流程圖。

在步驟S1102,根據(jù)用戶操作,發(fā)出快照再現(xiàn)指令270。

在步驟S1104,SS管理模塊117接收快照再現(xiàn)指令270。

在步驟S1106,SS管理模塊117利用存儲(chǔ)區(qū)域190內(nèi)的快照892再現(xiàn)狀態(tài)A: 840B。

圖12是例示根據(jù)第二示例性實(shí)施方式的處理示例(收集作為故障信息的C-Log 127A和I-Log 782D的處理示例)的流程圖。

在步驟S1202,根據(jù)用戶操作,發(fā)出故障信息收集指令272。

在步驟S1204,故障信息收集模塊135接收故障信息收集指令272。

在步驟S1206,故障信息收集模塊135發(fā)出日志獲取指令(Get_Log 274)。

在步驟S1208,打印控制器模塊125接收日志獲取指令(Get_Log 274)。

在步驟S1210,打印控制器模塊125發(fā)送日志獲取指令(get_log 874B)。

在步驟S1211,打印機(jī)180接收日志獲取指令(get_log 874B)。

在步驟S1212,打印控制器模塊125發(fā)送C-Log 127A。

在步驟S1214,打印機(jī)180發(fā)送I-Log 782C。

在步驟S1216,故障信息收集模塊135接收I-Log和C-Log 876(C-Log 127A和I-Log 782C)。

在步驟S1218,故障信息收集模塊135在存儲(chǔ)區(qū)域190中存儲(chǔ)C-Log 127B和I-Log 782D(I-Log和C-Log 876)。

第三示例性實(shí)施方式

圖13是例示第三示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖。信息處理設(shè)備1300X響應(yīng)于來自信息處理設(shè)備1300Y(客戶端SW 1325)的打印請求使打印機(jī)180X執(zhí)行打印處理。當(dāng)故障發(fā)生時(shí),獲取信息處理設(shè)備1300Y的日志信息以及信息處理設(shè)備1300X的日志信息。

信息處理設(shè)備1300X是虛擬計(jì)算機(jī)系統(tǒng),包括從底層起按次序的物理機(jī)105X、主機(jī)OS 110X、虛擬化SW 115X、客機(jī)OS 120X,并且打印控制器模塊125X、故障信息收集模塊135X、SS控制模塊140X設(shè)置在客機(jī)OS 120X上。虛擬化SW 115X包括SS管理模塊117X,打印控制器模塊125X包括輸出控制模塊130X并且存儲(chǔ)C-Log 127AX。打印機(jī)180X存儲(chǔ)I-Log 182AX。存儲(chǔ)區(qū)域190X存儲(chǔ)快照192X。

信息處理設(shè)備1300Y是虛擬計(jì)算機(jī)系統(tǒng)包括從底層起按次序的物理機(jī)2 105Y、主機(jī)OS 110Y、虛擬化SW 2 115Y、客機(jī)OS 2 120Y,并且客戶端SW 1325、故障信息收集C模塊135Y、SS控制C模塊140Y設(shè)置在客機(jī)OS 2 120Y上。虛擬化SW 2 115Y包括SS管理2模塊117Y,客戶端SW 1325存儲(chǔ)Cl-Log 1327A。存儲(chǔ)區(qū)域2 190Y存 儲(chǔ)快照2:192Y。

信息處理設(shè)備1300X和信息處理設(shè)備1300Y通過通信線路連接。

信息處理設(shè)備1300X的SS控制模塊140X使信息處理設(shè)備1300Y存儲(chǔ)不同于信息處理設(shè)備1300X的信息處理設(shè)備1300Y(已向信息處理設(shè)備1300X發(fā)送了打印請求的虛擬計(jì)算機(jī))的快照。

在作為通過通信線路連接至信息處理設(shè)備1300X(打印控制器)的外部設(shè)備的信息處理設(shè)備1300Y(客戶端設(shè)備)按照與信息處理設(shè)備1300X類似的方式在虛擬化環(huán)境下操作的情況下,如果在信息處理設(shè)備1300X側(cè)(包括打印機(jī)180X)發(fā)生故障,則信息處理設(shè)備1300X的SS控制模塊140X根據(jù)拍快照指令向信息處理設(shè)備1300Y的SS控制C模塊140Y發(fā)出拍快照的指令(Get_CSS)(步驟132和步驟134)。

在接收到拍快照指令時(shí),SS控制C模塊140Y指示SS管理2模塊117Y創(chuàng)建客戶端SW 1325在其上操作的客機(jī)OS 2 120Y的快照(步驟136),因此創(chuàng)建客戶端SW 1325的快照作為用于客戶端SW 1325的存儲(chǔ)區(qū)域2 190Y中的快照2:192Y。此時(shí),信息處理設(shè)備1300X的SS控制模塊140X執(zhí)行日志處理,如之前示例性實(shí)施方式中一樣創(chuàng)建客機(jī)OS 120X的快照(步驟140)。

然后,在實(shí)現(xiàn)從故障的恢復(fù)并且完成預(yù)定打印處理之后(或者在沒有打印服務(wù)正在執(zhí)行時(shí)),信息處理設(shè)備1300X如根據(jù)之前示例性實(shí)施方式的處理示例中一樣再現(xiàn)快照192X,然后獲取打印控制器模塊125內(nèi)部和客機(jī)OS 120X的日志信息(C-Log 127AX)和打印機(jī)180的日志信息(I-Log 182AX)。

除此之外,還在信息處理設(shè)備1300Y(客戶端SW 1325)中,信息處理設(shè)備1300Y的SS管理2模塊117Y根據(jù)來自信息處理設(shè)備1300X的SS管理模塊117X的再現(xiàn)快照的指令,利用預(yù)先創(chuàng)建并存儲(chǔ)在存儲(chǔ)區(qū)域2 190Y內(nèi)的快照2:192Y再現(xiàn)故障發(fā)生時(shí)的狀態(tài)。然后,故障信息收集C模塊135Y獲取信息處理設(shè)備1300Y(客戶端SW 1325)的日志信息(Cl-Log 1327A)(步驟152),并且獲取日志信息(步驟154)。然后,故障信息收集C模塊135Y向信息處理設(shè)備1300X的故障信息收集模塊135X發(fā)送獲取的Cl-Log 1327A。信息處理設(shè)備1300X的故障信息收集模塊135X獲取信息處理設(shè)備1300Y的Cl-Log 1327A以及C-Log 127AX和I-Log 182AX。通過分析已發(fā)出打印請求的信息處理設(shè)備1300Y的C-Log 127AX、I-Log 182AX、Cl-Log 1327A,思考故障原因、故障對策等。

第四示例性實(shí)施方式

在第四及稍后的示例性實(shí)施方式中,存儲(chǔ)區(qū)域190是外部設(shè)備,并且獲取作為打印機(jī)180的處理數(shù)據(jù)的打印數(shù)據(jù)作為故障信息。

在將提供第四示例性實(shí)施方式的說明之前,將參考圖25-28的示例說明現(xiàn)有技術(shù)。將提供下面的說明以實(shí)現(xiàn)第四及稍后的示例性實(shí)施方式的更容易理解。

圖25是例示現(xiàn)有技術(shù)的示例的說明圖。信息處理設(shè)備2500控制作為外部設(shè)備的打印機(jī)2580和存儲(chǔ)區(qū)域2590執(zhí)行打印處理。信息處理設(shè)備2500是通用計(jì)算機(jī)(其中為單個(gè)物理機(jī)2505設(shè)置單個(gè)OS 2510的計(jì)算機(jī)),不是虛擬計(jì)算機(jī)系統(tǒng)。例如,信息處理設(shè)備2500用作打印機(jī)服務(wù)器或打印機(jī)控制器,打印機(jī)2580是高速打印機(jī)。

信息處理設(shè)備2500包括從底層起按次序的物理機(jī)2505和OS 2510,并且打印控制器模塊2525和故障信息收集模塊2535設(shè)置在OS 2510上。打印控制器模塊2525包括輸出控制模塊2530和作業(yè)控制模塊2532,存儲(chǔ)C-Log 2527A。打印機(jī)2580存儲(chǔ)I-Log 2582A。存儲(chǔ)區(qū)域2590存儲(chǔ)打印數(shù)據(jù)2594。

當(dāng)在信息處理設(shè)備2500或打印機(jī)2580中發(fā)生故障時(shí),打印控制器模塊2525根據(jù)來自故障信息收集模塊2535的指令(Get_Log)收集其內(nèi)部和OS 2510的日志信息(C-Log 2527A)。故障可由在打印控制器模塊2525的控制之外的打印機(jī)2580造成。因此,打印控制器模塊2525還通過設(shè)置在打印控制器模塊2525內(nèi)部的輸出控制模塊2530收集打印機(jī)2580的日志信息(I-Log 2582A)(根據(jù)從輸出控制模塊2530到打印機(jī)2580的get_log指令),并且向故障信息收集模塊2535發(fā)送C-Log 2527A和I-Log 2582A。然后,故障信息收集模塊2535在存儲(chǔ)區(qū)域2590中存儲(chǔ)C-Log 2527A和I-Log 2582A。盡管作為作業(yè)控制模塊2532的處理目標(biāo)的打印數(shù)據(jù)2594要被包括為故障信息,作業(yè)控制模塊2532不被包括為故障信息。

圖26是例示根據(jù)現(xiàn)有技術(shù)的處理示例的說明圖。

信息處理設(shè)備2500進(jìn)行操作以使打印機(jī)2580執(zhí)行打印處理,并且假設(shè)故障發(fā)生2610出現(xiàn)在操作期間。此時(shí),作業(yè)控制模塊2532的目標(biāo)數(shù)據(jù)是PrintDataA 2594A。

當(dāng)檢測到故障發(fā)生2610時(shí),向OS 2510上的故障信息收集模塊2535發(fā)出故障信息收集指令2674。故障信息收集模塊2535向打印控制器模塊2525發(fā)出故障信息收集指令2674,并且獲取該時(shí)間打印控制器模塊2525內(nèi)部和OS 2510的狀態(tài)(I-Log)和輸出控制模塊2530獲取的該時(shí)間的打印機(jī)2580狀態(tài)(C-Log)(I-Log和C-Log 2678)。然后,故障信息收集模塊2535在存儲(chǔ)區(qū)域2590中存儲(chǔ)狀態(tài)作為C-Log 2527B和I-Log 2582C。之后,執(zhí)行故障恢復(fù)處理2650,并且實(shí)現(xiàn)操作重新開始2660。在這種情況下,作業(yè)控制模塊2532的目標(biāo)數(shù)據(jù)是PrintDataA 2594B(故障發(fā)生2610時(shí)的PrintDataA 2594A)。當(dāng)操作完成時(shí)(當(dāng)PrintDataA 2594B的打印完成時(shí)),執(zhí)行作業(yè)A刪除2640。然后,下一個(gè)PrintDataB 2698變?yōu)樽鳂I(yè)控制模塊2532的處理目標(biāo)。

之后,通過在打印機(jī)2580的操作完成之后分析C-Log 2527B和I-Log 2582C,思考故障原因、故障對策等。然而,到該時(shí),PrintDataA 2594A(PrintDataA 2594B)已被刪除,并且不可收集為故障信息(思考時(shí),PrintDataB 2698,不同于PrintDataA2594A)。在收集日志之后,為了繼續(xù)打印機(jī)2580處的打印處理,執(zhí)行恢復(fù)處理2650和操作重新開始2660而不分析日志。特別地,在打印機(jī)2580是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

接下來,將說明虛擬計(jì)算機(jī)系統(tǒng)的示例。圖27是例示現(xiàn)有技術(shù)的示例的說明圖。信息處理設(shè)備2700是虛擬計(jì)算機(jī)系統(tǒng),控制作為外部設(shè)備的打印機(jī)2780和存儲(chǔ)區(qū)域2790執(zhí)行打印處理。例如,信息處理設(shè)備2700用作打印機(jī)服務(wù)器,打印機(jī)2780是高速打印機(jī)。

如圖27的示例中例示的,在物理機(jī)2705上建立利用主機(jī)OS 2710和虛擬化SW 2715的虛擬硬件,客機(jī)OS 2720安裝在虛擬硬件上,作為應(yīng)用程序(應(yīng)用)的打印控制器模塊2725安裝在客機(jī)OS 2720上。

虛擬化SW 2715是允許多個(gè)客機(jī)OS 2720并行共存在物理機(jī)2705上的軟件。即,虛擬化SW 2715以軟件方式建立諸如CPU、存儲(chǔ)器和HDD的硬件,并且準(zhǔn)備客機(jī)OS 2720依賴的硬件資源作為虛擬機(jī)。

例如,打印機(jī)控制程序(特定示例包括數(shù)字前端)用作打印控制器模塊2725。在這種情況下,虛擬機(jī)彼此分離,即使在任意虛擬機(jī)中發(fā)生故障(例如,崩潰等),不同虛擬機(jī)上的打印機(jī)控制程序繼續(xù)操作并且因此能夠執(zhí)行打印。

具體地,信息處理設(shè)備2700包括從底層起按次序的物理機(jī)2705、主機(jī)OS 2710、虛擬化SW 2715、客機(jī)OS 2720,并且作為應(yīng)用程序的打印控制器模塊2725和故障信息收集模塊2735設(shè)置在客機(jī)OS 2720上。虛擬化SW 2715包括SS管理模塊2717,打印控制器模塊2725包括輸出控制模塊2730和作業(yè)控制模塊2732并且存儲(chǔ)C-Log 2727A。打印機(jī)2780存儲(chǔ)I-Log 2782A。存儲(chǔ)區(qū)域2790存儲(chǔ)共享存儲(chǔ)區(qū)域2796,其 包括快照2792和打印數(shù)據(jù)2794。在圖27的示例中,例示其中單個(gè)客機(jī)OS 2720設(shè)置在虛擬化SW 2715上的示例。然而,由于信息處理設(shè)備2700是虛擬計(jì)算機(jī)系統(tǒng),多個(gè)客機(jī)OS 2720可設(shè)置在虛擬化SW 2715上。

在信息處理設(shè)備2700中,使作為應(yīng)用程序的打印控制器模塊2725在虛擬化環(huán)境下操作,在虛擬化環(huán)境下利用快照功能(SS管理模塊2717的功能)將故障發(fā)生時(shí)的故障狀態(tài)保持在存儲(chǔ)區(qū)域2790中作為快照2792,實(shí)現(xiàn)從故障的恢復(fù),并且在預(yù)定打印處理完成之后(沒有打印服務(wù)正在執(zhí)行時(shí)),利用存儲(chǔ)的快照2792再現(xiàn)故障發(fā)生時(shí)的狀態(tài),然后獲得故障信息。這里,由SS管理模塊2717執(zhí)行打印控制器模塊2725在其上操作的客機(jī)OS 2720的快照的創(chuàng)建和再現(xiàn)。

將參考圖28的示例提供說明。信息處理設(shè)備2700進(jìn)行操作以使打印機(jī)2780執(zhí)行打印處理,并且假設(shè)故障發(fā)生2810出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生2810時(shí),根據(jù)用戶操作向SS管理模塊2717發(fā)出拍快照指令2822。SS管理模塊2717在存儲(chǔ)區(qū)域2790中存儲(chǔ)該時(shí)間客機(jī)OS 2720和打印控制器模塊2725的狀態(tài)A:2840A作為快照。此時(shí),作業(yè)控制模塊2732執(zhí)行共享存儲(chǔ)區(qū)域2796中的PrintDataA 2794A的打印處理。然而,通過獲取信息處理設(shè)備2700內(nèi)部的狀態(tài)獲得SS管理模塊2717的快照,因此共享存儲(chǔ)區(qū)域2796(外部設(shè)備)中的PrintDataA 2794A不是快照目標(biāo)。

之后,執(zhí)行故障恢復(fù)處理2850,并且實(shí)現(xiàn)操作重新開始2860。在這種情況下,作業(yè)控制模塊2732的目標(biāo)數(shù)據(jù)是PrintDataA 2794B(故障發(fā)生2810時(shí)的PrintDataA 2794A)。當(dāng)操作完成時(shí)(當(dāng)PrintDataA 2794B的打印完成時(shí)),執(zhí)行作業(yè)A刪除2840。然后,下一個(gè)PrintDataB 2898變成作業(yè)控制模塊2732的處理目標(biāo)。

在打印機(jī)2780的操作完成之后,當(dāng)根據(jù)用戶操作向SS管理模塊2717發(fā)出快照再現(xiàn)指令2870時(shí),SS管理模塊2717讀取存儲(chǔ)區(qū)域2790內(nèi)的快照2792并且將客機(jī)OS 2720和打印控制器模塊2725的狀態(tài)返回狀態(tài)A:2840B(與狀態(tài)A:2840A相同的狀態(tài))。然后,根據(jù)用戶操作,向故障信息收集模塊2735發(fā)出故障信息收集指令2874,并且執(zhí)行與圖26的示例中例示的類似的處理。即,故障信息收集模塊2735向打印控制器模塊2725發(fā)出Get_Log 2876指令,獲取該時(shí)間打印控制器模塊2725內(nèi)部和客機(jī)OS 2720的狀態(tài)作為C-Log 2884和I-Log 2882。故障信息收集模塊2735在存儲(chǔ)區(qū)域2790中存儲(chǔ)狀態(tài)作為C-Log 2727B和I-Log 2782B。

在使用故障信息收集模塊2735收集在信息處理設(shè)備2700的控制之外的共享存儲(chǔ)區(qū)域2796(存儲(chǔ)區(qū)域2790)內(nèi)的打印數(shù)據(jù)情況下,在故障發(fā)生2810與故障信息收集指令2874之間的時(shí)間期間執(zhí)行打印處理(操作重新開始2860),如圖28的示例中例示的。因此,故障信息收集指令2874時(shí)共享存儲(chǔ)區(qū)域2796內(nèi)的PrintDataB 2898(其中寫入故障之后的打印處理(操作重新開始2860之后的打印處理)中的目標(biāo)數(shù)據(jù))不同于I-Log 2782A(故障發(fā)生時(shí)打印機(jī)2780的日志信息)。因此,根據(jù)打印機(jī)2780內(nèi)操作重新開始2860之后的打印處理,可發(fā)生已經(jīng)刪除了作為故障發(fā)生時(shí)的目標(biāo)數(shù)據(jù)的PrintDataA 2794A的情況。即,故障發(fā)生2810時(shí)的PrintDataA 2794A沒有根據(jù)故障信息收集指令2874存儲(chǔ)在存儲(chǔ)區(qū)域2790中。

在圖27的示例中例示的信息處理設(shè)備2700中,包括所有數(shù)據(jù)的快照具有大的大小,特定操作花費(fèi)的資源,新創(chuàng)建的存儲(chǔ)作業(yè)等要用于另一個(gè)操作因此設(shè)置在信息處理設(shè)備2700外部的存儲(chǔ)區(qū)域2790(共享存儲(chǔ)區(qū)域2796)中。此外,通過在存儲(chǔ)區(qū)域2790(共享存儲(chǔ)區(qū)域2796)中設(shè)置要臨時(shí)使用的打印數(shù)據(jù)(PrintDataA 2794A等),降低了快照容量。

然而,當(dāng)試圖使用快照再現(xiàn)故障發(fā)生時(shí)的狀態(tài)時(shí),設(shè)置在存儲(chǔ)區(qū)域2790(共享存儲(chǔ)區(qū)域2796)中的數(shù)據(jù)可改變,并且可不再現(xiàn)故障。例如,在打印數(shù)據(jù)存儲(chǔ)在存儲(chǔ)區(qū)域2790(共享存儲(chǔ)區(qū)域2796)中的情況下,如果如上所述快照用于在執(zhí)行從故障恢復(fù)并且完成打印處理之后再現(xiàn)故障發(fā)生時(shí)的狀態(tài),用于再現(xiàn)故障發(fā)生時(shí)的狀態(tài)的快照不包括故障發(fā)生時(shí)的打印數(shù)據(jù),使得難以再現(xiàn)故障發(fā)生時(shí)的狀態(tài)。

為了再現(xiàn)故障發(fā)生時(shí)的狀態(tài),有必要存儲(chǔ)打印處理所需并且在打印處理完成之后要被刪除或改變的數(shù)據(jù)。

圖18是根據(jù)第四示例性實(shí)施方式的構(gòu)造示例的概念模塊構(gòu)造圖。

信息處理設(shè)備1800包括從底層起按次序的物理機(jī)105、主機(jī)OS 110、虛擬化SW 115、客機(jī)OS 120,并且打印控制器模塊125、故障信息收集模塊135、SS控制模塊140設(shè)置在客機(jī)OS 120上。虛擬化SW 115包括SS管理模塊117,打印控制器模塊125包括輸出控制模塊130和作業(yè)控制模塊1832并且存儲(chǔ)C-Log 127A和I-Log 182B。打印機(jī)180存儲(chǔ)I-Log 182A。存儲(chǔ)區(qū)域190存儲(chǔ)共享存儲(chǔ)區(qū)域1896和快照192,共享存儲(chǔ)區(qū)域1896存儲(chǔ)打印數(shù)據(jù)1894。

信息處理設(shè)備1800執(zhí)行下面描述的處理作為概述。

在使打印控制器模塊125在客機(jī)OS 120上操作并且使用虛擬計(jì)算機(jī)系統(tǒng)的快照功能收集故障信息的情況下,如上所述,故障發(fā)生時(shí)間極大地不同于故障信息的獲取時(shí)間。因此,在獲取故障信息時(shí),存儲(chǔ)在存儲(chǔ)區(qū)域190中的打印數(shù)據(jù)1894(不是快照目標(biāo))、資源數(shù)據(jù)等可不保持故障發(fā)生時(shí)的數(shù)據(jù)。因此,已知故障信息收集功能分布在SS控制模塊140與故障信息收集模塊135之間,在SS控制模塊140的控制下,在拍快照之前不刪除關(guān)于故障發(fā)生時(shí)正處理的作業(yè)的數(shù)據(jù)(例如,打印數(shù)據(jù)1894)。

相應(yīng)地,通過故障發(fā)生之后立即創(chuàng)建快照,可在故障恢復(fù)處理之后立即重新開始原始打印處理,而不進(jìn)行花費(fèi)長時(shí)間的收集故障信息。然后,通過在諸如打印服務(wù)完成之后的時(shí)間的期望時(shí)間重新開始快照,可獲取故障發(fā)生之后緊接的故障信息(打印數(shù)據(jù)1894,是關(guān)于作業(yè)以及打印控制器模塊125和打印機(jī)180的信息)。

即,打印機(jī)180的用戶不收集關(guān)于故障發(fā)生的故障信息。結(jié)果,可增加打印機(jī)180的操作率。

收集C-Log 127A和I-Log 182B的處理類似于根據(jù)第一示例性實(shí)施方式的信息處理設(shè)備100的處理。

當(dāng)故障發(fā)生在信息處理設(shè)備1800或打印機(jī)180中時(shí),SS控制模塊140根據(jù)拍快照指令要求打印控制器模塊125收集正處理的作業(yè)信息,并且指示打印控制器模塊125保持打印數(shù)據(jù)。打印控制器模塊125通過作業(yè)控制模塊1832獲得當(dāng)前正處理的打印數(shù)據(jù)1894的文件名,并且在共享存儲(chǔ)區(qū)域1896中創(chuàng)建與打印數(shù)據(jù)的文件名(在這種情況下,例如,PrintDataA)鏈接的文件(在這種情況下,PrintDataA.lnk)。

在完成創(chuàng)建之后,打印控制器模塊125向SS控制模塊140發(fā)送指示數(shù)據(jù)保持完成的通知。SS控制模塊140指示SS管理模塊117創(chuàng)建客機(jī)OS 120的快照。

接下來,為了優(yōu)先化用戶處理,實(shí)現(xiàn)從故障恢復(fù),并且在預(yù)定打印處理完成之后,刪除作為以上描述的打印數(shù)據(jù)的文件名的PrintDataA。然而,由于存在鏈接的文件,所以實(shí)體不被刪除。

當(dāng)向SS管理模塊117發(fā)出快照再現(xiàn)指令以收集故障信息時(shí),返回獲取快照時(shí)的內(nèi)部狀態(tài),通過執(zhí)行使打印數(shù)據(jù)的名稱(PrintDataA.lnk)返回原始名稱的處理(打印數(shù)據(jù)名稱的恢復(fù)),恢復(fù)刪除的打印數(shù)據(jù)。

當(dāng)發(fā)出故障信息收集指令時(shí),故障信息收集模塊135從作業(yè)控制模塊1832獲得正處理的打印數(shù)據(jù)的名稱并且從共享存儲(chǔ)區(qū)域1896收集打印數(shù)據(jù)1894。故障信息收 集模塊135還收集打印控制器模塊125內(nèi)的C-Log 127A、以及作為打印機(jī)180的日志信息的I-Log 182B,并且提取它們作為故障信息。

相應(yīng)地,恢復(fù)故障發(fā)生時(shí)包括打印數(shù)據(jù)1894的狀態(tài),并且可實(shí)現(xiàn)打印數(shù)據(jù)1894造成的故障的信息的收集。

以上提到的鏈接文件的創(chuàng)建僅包括鏈接信息,而不復(fù)制實(shí)體。因此,僅使用短的處理時(shí)間和小的盤空間。

圖19是例示根據(jù)第四示例性實(shí)施方式的處理示例的說明圖。

信息處理設(shè)備1800進(jìn)行操作以使打印機(jī)180執(zhí)行打印處理,并且假設(shè)故障發(fā)生1910出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生1910時(shí),根據(jù)用戶操作向客機(jī)OS 120上的SS控制模塊140發(fā)出拍快照指令1922。通過監(jiān)視打印控制器模塊125內(nèi)部的狀態(tài),可自動(dòng)發(fā)出拍攝指令。SS控制模塊140向作業(yè)控制模塊1832發(fā)出取得PrintData文件名1924指令。作業(yè)控制模塊1832在打印控制器模塊125的控制下獲取共享存儲(chǔ)區(qū)域1896內(nèi)的PrintDataA 1894A的文件名(PrintDataA)。

作業(yè)控制模塊1832向SS控制模塊140發(fā)送作為文件名的“PrintDataA”1930。SS控制模塊140在共享存儲(chǔ)區(qū)域1896中創(chuàng)建與“PrintDataA”1930鏈接的文件(在這種情況下,將到PrintDataA的鏈接1926與PrintDataA 1894A相鏈接的PrintDataA.lnk 1928A)。

然后,SS控制模塊140向SS管理模塊117發(fā)送指示處理完成的已完成1932。SS管理模塊117在存儲(chǔ)區(qū)域190中存儲(chǔ)客機(jī)OS 120和打印控制器模塊125的狀態(tài)A:1940A作為快照192。之后,執(zhí)行恢復(fù)處理1950(故障恢復(fù)),并且實(shí)現(xiàn)操作重新開始1960。在此操作中,完成PrintDataA 1894B的打印處理。作業(yè)控制模塊1832針對PrintDataA 1894B(PrintDataA 1894A)執(zhí)行作業(yè)A刪除1940。因此,盡管刪除了PrintDataA 1894B,PrintDataA.lnk 1928A存在,因此未刪除PrintDataA 1894B的實(shí)體。在接下來的打印處理中,PrintDataB 1998(不同于PrintDataA 1894B)變成目標(biāo)數(shù)據(jù)。

然后,實(shí)現(xiàn)從故障的恢復(fù),并且在預(yù)定打印處理完成之后(沒有打印服務(wù)正在執(zhí)行時(shí)),SS管理模塊117根據(jù)用戶操作接收快照再現(xiàn)指令1970,利用存儲(chǔ)區(qū)域190內(nèi)的快照192再現(xiàn)故障發(fā)生時(shí)的狀態(tài)A:1940B(狀態(tài)A:1940A)。然后,SS管理模塊117對PrintDataA.lnk 1928C執(zhí)行設(shè)置數(shù)據(jù)1972(打印數(shù)據(jù)名稱的恢復(fù))。相應(yīng) 地,恢復(fù)PrintDataA 1894C(PrintDataA 1894B)。

根據(jù)故障信息收集指令1974,故障信息收集模塊135根據(jù)到打印控制器模塊125的取得數(shù)據(jù)1976指令從作業(yè)控制模塊1832獲取共享存儲(chǔ)區(qū)域1896內(nèi)的“PrintDataA”1978(PrintDataA 1894C)。然后,故障信息收集模塊135根據(jù)到打印控制器模塊125的Get_Log 1980指令從輸出控制模塊130獲取I-Log 1982和C-Log 1984。然后,C-Log 127B(C-Log 1984)、I-Log 182C(I-Log 1982)、PrintDataA 1894D(PrintDataA 1894C)存儲(chǔ)在存儲(chǔ)區(qū)域190中。通過分析C-Log 127B、I-Log 182C、PrintDataA 1894D,思考故障原因、故障對策等。特別地,恢復(fù)故障發(fā)生時(shí)包括打印數(shù)據(jù)的狀態(tài),并且可收集打印數(shù)據(jù)造成的故障的信息。在收集日志之后,為了繼續(xù)打印機(jī)180處的打印處理,執(zhí)行恢復(fù)處理1950和恢復(fù)重新開始1960而不分析日志。特別地,在打印機(jī)180是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

圖20是例示根據(jù)第四示例性實(shí)施方式的處理示例的流程圖。

在步驟S2002,SS控制模塊140接收拍快照指令1922。

在步驟S2004,SS控制模塊140確定是否獲得正處理的打印數(shù)據(jù)的名稱。當(dāng)獲得正處理的打印數(shù)據(jù)的名稱時(shí),處理前進(jìn)到步驟S2006。當(dāng)未獲得正處理的打印數(shù)據(jù)的名稱時(shí),處理前進(jìn)到步驟S2008。

在步驟S2006,SS控制模塊140建立與其中后綴“l(fā)nk”添加到獲得的打印數(shù)據(jù)名稱的文件的硬鏈接。

在步驟S2008,SS控制模塊140針對打印數(shù)據(jù)名稱設(shè)置NULL。

在步驟S2010,SS控制模塊140通知SS管理模塊117打印數(shù)據(jù)名稱。

圖21是例示根據(jù)第四示例性實(shí)施方式的處理示例的流程圖。

在步驟S2102,SS管理模塊117接收快照再現(xiàn)指令1970。

在步驟S2104,SS管理模塊117確定打印數(shù)據(jù)名稱是否是NULL。當(dāng)打印數(shù)據(jù)名稱是NULL時(shí),處理結(jié)束(步驟S2199)。當(dāng)打印數(shù)據(jù)名稱不是NULL時(shí),處理前進(jìn)到步驟S2106。

在步驟S2106,SS管理模塊117確定文件“打印數(shù)據(jù)名稱.lnk”是否存在。當(dāng)文件“打印數(shù)據(jù)名稱.lnk”存在時(shí),處理前進(jìn)到步驟S2108。當(dāng)文件“打印數(shù)據(jù)名稱.lnk”不存在時(shí),處理結(jié)束(步驟S2199)。

在步驟S2108,SS管理模塊117將文件名改變?yōu)榇蛴?shù)據(jù)名稱(具體地,刪除 “.lnk”)。

第五示例性實(shí)施方式

圖22是例示根據(jù)第五示例性實(shí)施方式的處理示例的說明圖。模塊構(gòu)造示例類似于根據(jù)第四示例性實(shí)施方式的構(gòu)造示例(圖18中例示的示例)。

引入SS控制模塊140,其發(fā)出收集共享存儲(chǔ)區(qū)域1896內(nèi)的數(shù)據(jù)信息并且利用SS管理模塊117創(chuàng)建打印控制器模塊125在其上操作的客機(jī)OS 120的快照的指令,并且在存儲(chǔ)區(qū)域190中恢復(fù)刪除的打印數(shù)據(jù)信息。

收集C-Log 127A和I-Log 182B的處理類似于根據(jù)第五示例性實(shí)施方式的信息處理設(shè)備100的處理。

當(dāng)在信息處理設(shè)備1800或打印機(jī)180中發(fā)生故障時(shí),SS控制模塊140根據(jù)拍快照指令要求打印控制器模塊125收集正處理的作業(yè)信息。打印控制器模塊125通過作業(yè)控制模塊1832獲得當(dāng)前正處理的打印數(shù)據(jù)1894的文件名,并且向SS控制模塊140傳送文件名。SS控制模塊140向SS管理模塊117傳送當(dāng)前正處理的打印數(shù)據(jù)1894的文件名,并且指示SS管理模塊117執(zhí)行包括打印數(shù)據(jù)1894的快照處理。SS管理模塊117創(chuàng)建包括當(dāng)前正處理的打印數(shù)據(jù)1894的快照。

接下來,為了優(yōu)先化用戶處理,實(shí)現(xiàn)從故障的恢復(fù),并且完成預(yù)定的打印處理。通過完成打印處理,從共享存儲(chǔ)區(qū)域1896刪除打印數(shù)據(jù)1894。

當(dāng)向SS管理模塊117發(fā)出快照再現(xiàn)指令以收集故障信息時(shí),恢復(fù)快照獲取時(shí)的內(nèi)部狀態(tài)。同時(shí),執(zhí)行將打印數(shù)據(jù)1894返回原始狀態(tài)的處理,并且在共享存儲(chǔ)區(qū)域1896中恢復(fù)刪除的打印數(shù)據(jù)1894。

當(dāng)發(fā)出故障信息收集指令時(shí),故障信息收集模塊135從作業(yè)控制模塊1832獲得正處理的打印數(shù)據(jù)的名稱,并且從共享存儲(chǔ)區(qū)域1896收集打印數(shù)據(jù)1894。同時(shí),收集打印控制器模塊125內(nèi)的C-Log 127A和作為打印機(jī)180的日志信息的I-Log 182B并且提取為故障信息。

相應(yīng)地,恢復(fù)故障發(fā)生時(shí)包括打印數(shù)據(jù)1894的狀態(tài),并且可收集打印數(shù)據(jù)1894造成的故障的信息。

將詳細(xì)說明圖22中例示的示例。

信息處理設(shè)備1800進(jìn)行操作以使打印機(jī)180執(zhí)行打印處理,并且假設(shè)故障發(fā)生2210出現(xiàn)在操作期間。

當(dāng)檢測到故障發(fā)生2210時(shí),根據(jù)用戶操作向客機(jī)OS 120上的SS控制模塊140發(fā)出拍快照指令2222。通過監(jiān)視打印控制器模塊125內(nèi)部的狀態(tài),可自動(dòng)發(fā)出拍攝指令。SS控制模塊140向作業(yè)控制模塊1832發(fā)出得到PrintData文件名2224指令。作業(yè)控制模塊1832在打印控制器模塊125的情況下獲取共享存儲(chǔ)區(qū)域1896內(nèi)的PrintDataA 2228A的文件名(PrintDataA)。

作業(yè)控制模塊1832向SS控制模塊140發(fā)送作為文件名的“PritnDataA”2226。SS控制模塊140通知SS管理模塊117“PrintDataA”2226作為快照目標(biāo)文件。SS管理模塊117生成客機(jī)OS 120和打印控制器模塊125的快照192作為狀態(tài)A:2240A,其包括指定的打印數(shù)據(jù)(“PrintDataA”2226的實(shí)體數(shù)據(jù)),并且在存儲(chǔ)區(qū)域190中存儲(chǔ)快照192。之后,執(zhí)行作為故障恢復(fù)的恢復(fù)處理2250,并且實(shí)現(xiàn)操作重新開始2260。在此操作中,完成PrintDataA 2228B的打印處理。作業(yè)控制模塊1832對于PrintDataA 2228B(PrintDataA 2228A)執(zhí)行作業(yè)A刪除2242。因此,從共享存儲(chǔ)區(qū)域1896刪除PrintDataA 2228B。在接下來的打印處理中,PrintDataB 2298(不同于PrintDataA 2228B)變?yōu)槟繕?biāo)數(shù)據(jù)。

然后,實(shí)現(xiàn)從故障的恢復(fù),并且在預(yù)定打印處理完成之后(沒有打印服務(wù)正在執(zhí)行時(shí)),SS管理模塊117根據(jù)用戶操作接收快照再現(xiàn)指令2270,并且利用存儲(chǔ)區(qū)域190內(nèi)的快照192再現(xiàn)故障發(fā)生時(shí)的狀態(tài)A:2240B(狀態(tài)A:2240A)。然后,SS管理模塊117再現(xiàn)共享存儲(chǔ)區(qū)域1896中的快照192內(nèi)的PrintDataA 2228A(PrintDataA 2228C)。

根據(jù)故障信息收集指令2274,故障信息收集模塊135根據(jù)到打印控制器模塊125的GetData 2276指令從作業(yè)控制模塊1832獲取共享存儲(chǔ)區(qū)域1896內(nèi)的“PrintDataA”2278(PrintDataA 2228C)。然后,故障信息收集模塊135根據(jù)到打印控制器模塊125的Get_Log 2280指令從輸出控制模塊130獲取I-Log 2282和C-Log 2284。然后,C-Log 127B、I-Log 182C、PrintDataA 1894D(PrintDataA 2228C)存儲(chǔ)在存儲(chǔ)區(qū)域190中。通過分析C-Log 127B、I-Log 182C、PrintDataA 1894D,思考故障原因、故障對策等。特別地,恢復(fù)故障發(fā)生時(shí)包括打印數(shù)據(jù)的狀態(tài),并且可收集打印數(shù)據(jù)造成的故障的信息。在收集日志之后,為了繼續(xù)打印機(jī)180處的打印處理,執(zhí)行恢復(fù)處理2250和操作重新開始2260而不分析日志。特別地,在打印機(jī)180是高速打印機(jī)的情況下,存在縮短停工期(不可執(zhí)行打印的期間)的需求。

圖23是例示根據(jù)第五示例性實(shí)施方式的處理示例的流程圖。

在步驟S2302,SS控制模塊140接收拍快照指令2222。

在步驟S2304,SS控制模塊140確定是否獲得正處理的打印數(shù)據(jù)的名稱。當(dāng)獲得了正處理的打印數(shù)據(jù)的名稱時(shí),處理前進(jìn)到步驟S2306。當(dāng)未獲得正處理的打印數(shù)據(jù)的名稱時(shí),處理前進(jìn)到步驟S2308。

在步驟S2306,SS控制模塊140通知SS管理模塊117打印數(shù)據(jù)名稱作為快照目標(biāo)文件。

在步驟2308,SS控制模塊140為打印數(shù)據(jù)名稱設(shè)置NULL。

圖24是例示根據(jù)第五示例性實(shí)施方式的處理示例的流程圖。

在步驟S2402,SS管理模塊117接收快照再現(xiàn)指令2270。

在步驟S2404,SS管理模塊117確定打印數(shù)據(jù)名稱是否是NULL。當(dāng)打印數(shù)據(jù)名稱是NULL時(shí),處理結(jié)束(步驟S2499)。當(dāng)打印數(shù)據(jù)名稱不是NULL時(shí),處理前進(jìn)到步驟S2406。

在步驟S2406,SS管理模塊117在共享存儲(chǔ)區(qū)域1896中存儲(chǔ)打印數(shù)據(jù)。

將參考圖29說明根據(jù)示例性實(shí)施方式的硬件構(gòu)造的示例。圖29中例示的構(gòu)造包括例如個(gè)人計(jì)算機(jī)(PC),是包括諸如掃描儀的數(shù)據(jù)讀取單元2917和諸如打印機(jī)的數(shù)據(jù)輸出單元2918的硬件構(gòu)造的示例。

CPU 2901是根據(jù)計(jì)算機(jī)程序執(zhí)行處理的控制器,之前的示例性實(shí)施方式中說明的各個(gè)模塊(即,諸如主機(jī)OS 110、虛擬化SW 115、客機(jī)OS 120、打印控制器模塊125、輸出控制模塊130、SS控制模塊140、故障信息收集模塊135的各個(gè)模塊)的執(zhí)行順序。

只讀存儲(chǔ)器(ROM)2902存儲(chǔ)要由CPU 2901使用的程序、算術(shù)參數(shù)等。RAM 2903存儲(chǔ)CPU 2901的執(zhí)行中要使用的程序、在CPU 2901的執(zhí)行中適當(dāng)變化的參數(shù)等。CPU 2901、ROM 2902、RAM 2903通過主機(jī)總線2904(例如是CPU總線)連接。

主機(jī)總線2904通過橋接器2905連接到諸如外圍組件互連/接口(PCI)總線的外部總線2906。

鍵盤2908和諸如鼠標(biāo)的指點(diǎn)設(shè)備2909是操作者操作的輸入設(shè)備。顯示器2910可以是液晶顯示器或陰極射線管(CRT),顯示各種類型的信息,作為文本和圖像信息。

硬盤驅(qū)動(dòng)(HDD)2911包含硬盤(可以是閃存等)。HDD 2911驅(qū)動(dòng)硬盤并且記錄或再現(xiàn)CPU 2901執(zhí)行的程序和信息。C-Log 127、I-Log 182、打印數(shù)據(jù)1894等存儲(chǔ)在硬盤中。此外,其他各種數(shù)據(jù)、各種計(jì)算機(jī)程序等也存儲(chǔ)在硬盤中。

驅(qū)動(dòng)2912讀取諸如磁盤、光盤、磁光盤或半導(dǎo)體存儲(chǔ)器的安裝的可移除記錄介質(zhì)2913中記錄的數(shù)據(jù)或程序,并且向通過接口2907、外部總線2906、橋接器2905和主機(jī)總線2904連接的RAM 2903提供數(shù)據(jù)或程序??梢瞥涗浗橘|(zhì)2913也可用作類似于硬盤的數(shù)據(jù)記錄區(qū)域。

連接端口2914是外部連接設(shè)備2915連接的端口,并且包括諸如USB或IEEE1394的連接端口。連接端口2914通過2907、外部總線2906、橋接器2905和主機(jī)總線2904連接到CPU 2901等。通信單元2916連接到通信線路并且執(zhí)行與外部設(shè)備數(shù)據(jù)通信的處理。數(shù)據(jù)讀取單元2917例如是掃描儀,執(zhí)行文檔讀取處理。數(shù)據(jù)輸出單元2918例如是打印機(jī),執(zhí)行文檔數(shù)據(jù)輸出處理。

圖29中例示的計(jì)算機(jī)的硬件構(gòu)造是單個(gè)構(gòu)造示例。示例性實(shí)施方式不限于圖29中例示的構(gòu)造,只要可執(zhí)行示例性實(shí)施方式中說明的模塊即可。例如,一些模塊可配置為專用硬件(例如,專用集成電路(ASIC)),一些模塊可位于可經(jīng)由通信線路連接的外部系統(tǒng)中,或者圖29中例示的多個(gè)系統(tǒng)可經(jīng)由通信線路彼此連接,使得它們一起合作。此外,特別地,模塊可并入便攜式信息通信設(shè)備(包括移動(dòng)電話、智能電話、移動(dòng)設(shè)備、可穿戴計(jì)算機(jī))、家庭信息家電、機(jī)器人、復(fù)印機(jī)、傳真機(jī)、掃描儀、打印機(jī)、多功能機(jī)器(具有掃描儀、打印機(jī)、復(fù)印機(jī)、傳真機(jī)等功能中的兩種或更多種的圖像處理設(shè)備)等,以及個(gè)人計(jì)算機(jī)中。

上述程序可存儲(chǔ)在記錄介質(zhì)中并提供,或者可通過通信供應(yīng)。在這種情況下,例如,上述程序可視為“記錄程序的計(jì)算機(jī)可讀記錄介質(zhì)”的發(fā)明。

“記錄程序的計(jì)算機(jī)可讀記錄介質(zhì)”代表記錄要用于程序的安裝、執(zhí)行和分發(fā)的程序的計(jì)算機(jī)可讀記錄介質(zhì)。

記錄介質(zhì)例如是數(shù)字多功能盤(DVD),包括作為DVD論壇設(shè)置的標(biāo)準(zhǔn)的“DVD-R、DVD-RW、DVD-RAM等”以及作為DVD+RW設(shè)置的標(biāo)準(zhǔn)的“DVD+R、DVD+RW等”,壓縮盤(CD),包括只讀存儲(chǔ)器(CD-ROM)、CD可刻錄(CD-R)、CD可重寫(CD-RW)等,藍(lán)光TM盤,磁光盤(MO),柔性盤(FD),磁帶,硬盤,ROM,電可擦除可編程只讀存儲(chǔ)器(EEPROMTM),閃存,RAM,安全數(shù)字(SD) 存儲(chǔ)卡等。

以上描述的程序或程序的一部分可記錄在以上記錄介質(zhì)中,被存儲(chǔ)和分發(fā)。此外,程序可通過用于局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)、互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、外聯(lián)網(wǎng)的通信(例如,有線網(wǎng)絡(luò)或無線通信網(wǎng)絡(luò)),或以上網(wǎng)絡(luò)的組合的傳輸介質(zhì)發(fā)送。另選地,程序或程序的一部分可通過載波傳送。

以上提到的程序可以是另一程序的部分或者可與不同程序一起記錄在記錄介質(zhì)中。另外,程序可劃分并記錄到多個(gè)記錄介質(zhì)。程序可以任何格式存儲(chǔ),諸如壓縮或加密,只要程序可再現(xiàn)即可。

已經(jīng)為了例示和描述的目的提供了本發(fā)明的示例性實(shí)施方式的前述描述。不意圖窮舉或?qū)l(fā)明限于公開的精確形式。顯然,許多修改和變型對于本領(lǐng)域技術(shù)人員將是明顯的。為了最佳地說明本發(fā)明的原理及其實(shí)際應(yīng)用選擇并描述了實(shí)施方式,從而使得本領(lǐng)域技術(shù)人員能夠理解本發(fā)明的各種實(shí)施方式以及適于設(shè)想的特定用途的各種修改。本發(fā)明的范圍旨在被所附權(quán)利要求及其等同物限定。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1