新四季網

一種用於虛擬機的內存轉儲的方法和裝置與流程

2023-06-25 11:06:56


本申請涉及計算系統的內存轉儲的技術領域,具體涉及一種用於虛擬機的內存轉儲的方法和裝置,另外還涉及一種用於虛擬機的內存轉儲的系統。



背景技術:

內存轉儲一般是用於系統崩潰時,將內存中的數據進行轉儲以保存在轉儲文件中,供有關的技術人員進行排錯分析。內存轉儲過程中所保存生成的文件可稱為內存轉儲文件。

一般傳統的內存轉儲方法是依賴於主機所對應的系統的,一般採用的系統為windows系統,而windows系統的內存轉儲方法存在以下諸多的問題:

1,該內存轉儲過程需要通過kebugcheck函數(產生藍屏函數)完成,即轉儲完成時系統再不能正常工作,需要重啟恢復。

2,在轉儲的過程中需要通過當前存儲棧,即sata(硬碟或者光碟機接口)或scsi(小型計算機系統接口)磁碟等,如果磁碟有問題則將無法進行內存的轉儲過程。

3,轉儲的成功需要進行諸多設置,包括註冊表,pagefile(系統虛擬內存文件)等,即使轉儲成功還需要將memorydump文件(轉儲文件)從虛擬機中複製出來分析。

因此,傳統的windows的內存轉儲只是將內存數據通過本地存儲設備棧保存本地磁碟上,而雲線上windows主機數量眾多,傳統內存轉儲方法有居多不便,不適合雲虛擬機故障分析。



技術實現要素:

本申請提供一種用於虛擬機的內存轉儲的方法,以解決現有技術中存在的上述問題。

本申請另外提供一種用於虛擬機的內存轉儲的裝置。

本申請另外還提供一種用於虛擬機的內存轉儲的裝置。

本申請提供一種用於虛擬機的內存轉儲的方法,包括:

接收內存轉儲的指令;

根據所述指令,抓取該虛擬機當前的內存數據信息;

將所述內存數據信息存儲為標準文件;

所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心。

可選的,所述接收內存轉儲的指令的為虛擬機的總線驅動系統,所述總線驅動系統還包括信息抓取模塊和轉儲模塊;

所述根據所述指令,抓取該虛擬機當前的內存數據信息具體是,所述信息抓取模塊將所述虛擬機當前的內存數據進行收集;

所述將所述內存數據信息存儲為標準文件具體是,所述轉儲模塊將收集的所述內存數據轉存為標準文件,並將所述標準文件向外發送。

可選的,所述轉儲模塊將收集的所述內存數據轉存為標準文件,並將所述標準文件向外發送包括:所述轉儲模塊將收集的所述內存數據按照預設方式轉存為若干批次的標準文件,所述標準文件向外發送是按照預設方式分批次發送;

所述轉儲模塊將收集的所述內存數據按照預設方式轉存為若干批次的標準文件中的預設方式將所述內存數據按照數據類型分類為若干個批次。

可選的,在所述接收內存轉儲的指令之前,包括:

物理主機的管理中心向所述總線驅動系統發送主動轉儲的指令;

相應的,所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心包括:

所述標準文件通過所述帶外通道的主動路徑通道傳輸至物理主機的管理中心。

可選的,在所述接收內存轉儲的指令之前,還包括:

虛擬機的故障系統向所述總線驅動系統發送被動轉儲的指令;

相應的,所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心包括:

所述標準文件通過所述帶外通道的被動路徑通道傳輸至物理主機的管理中心。

可選的,所述標準文件通過所述帶外通道的被動路徑通道傳輸至物理主機的管理中心步驟中的採用的傳輸方式包括:數據同步方式;

所述數據同步方式包括共享內存方式和poll方式。

可選的,所述數據同步方式為共享內存方式時,所述共享內存方式包括:

所述總線驅動系統向所述帶外通道調取讀寫函數;

所述讀寫函數將所述標準文件設置為共享信息;

所述物理主機的管理中心通過共享的方式讀取所述共享信息。

可選的,所述數據同步方式為poll方式時,所述poll方式包括:

所述總線驅動系統生成的標準文件主動發送至所述物理主機的管理中心。

可選的,在所述虛擬機的故障系統向所述總線驅動系統發送內存轉儲的指令之前,還包括:

檢查物理主機或虛擬機的系統是否發生故障,若是,則啟動虛擬機的故障系統。

可選的,所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心步驟還包括:

所述標準文件通過預設的帶外通道傳輸至虛擬機的傳輸埠;

所述虛擬機的傳輸埠通過預設通道將所述標準文件傳輸至物理主機的管理中心。

可選的,所述虛擬機的傳輸埠與所述物理主機的管理中心之間的數據傳輸方式採用雙向傳輸的方式。

可選的,在所述根據所述指令,抓取主機當前的內存數據信息步驟中,若抓取的數據為加密的內存數據,則所述將所述內存數據信息存儲為標準文件包括:

將抓取的所述加密的內存數據進行逆向分析;

根據所述逆向分析獲得所述加密數據的分析結果數據;

將所述分析結果數據存儲為標準文件。

本申請還提供一種用於虛擬機的內存轉儲的裝置,包括:

指令接收單元,用於接收內存轉儲的指令;

信息抓取單元,用於根據所述指令,抓取該虛擬機當前的內存數據信息;

標準文件生成單元,用於將所述內存數據信息存儲為標準文件;

傳輸單元,用於所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心。

可選的,所述接收內存轉儲的指令的為虛擬機的總線驅動系統,所述總線驅動系統還包括信息抓取模塊和轉儲模塊;

所述信息抓取單元具體用於所述信息抓取模塊將所述虛擬機當前的內存數據進行收集;

所述標準文件生成單元具體用於所述轉儲模塊將收集的所述內存數據轉存為標準文件,並將所述標準文件向外發送。

可選的,所述標準文件生成單元還包括批次發送子單元;

所述批次發送子單元用於所述轉儲模塊將收集的所述內存數據按照預設方式轉存為若干批次的標準文件,所述標準文件向外發送是按照預設方式分批次發送。

可選的,還包括:

主動轉儲指令發送單元,用於物理主機的管理中心向所述總線驅動系統發送主動轉儲的指令;

相應的,所述傳輸單元具體用於所述標準文件通過所述帶外通道的主動路徑通道傳輸至物理主機的管理中心。

可選的,還包括:

被動轉儲指令發送單元,用於虛擬機的故障系統向所述總線驅動系統發送被動轉儲的指令;

相應的,所述傳輸單元具體用於所述標準文件通過所述帶外通道的被動路徑通道傳輸至物理主機的管理中心。

可選的,所述傳輸單元採用的傳輸方式包括:數據同步方式;所述數據同步方式包括共享內存方式和poll方式;

所述數據同步方式為共享內存方式時,所述傳輸單元還包括:

函數調取子單元,用於所述總線驅動系統向所述帶外通道調取讀寫函數;

共享信息設置子單元,用於所述讀寫函數將所述標準文件設置為共享信息;

共享信息讀取子單元,用於所述物理主機的管理中心通過共享的方式讀取所述共享信息。

可選的,所述傳輸單元還包括:

傳輸埠傳輸子單元,用於所述標準文件通過預設的帶外通道傳輸至虛擬機的傳輸埠;

預設通道傳輸子單元,用於所述虛擬機的傳輸埠通過預設通道將所述標準文件傳輸至物理主機的管理中心。

可選的,在所述信息抓取單元中,若抓取的數據為加密的內存數據,則所述標準文件生成單元包括:

逆向分析子單元,用於將抓取的所述加密的內存數據進行逆向分析;

結果數據獲得子單元,用於根據所述逆向分析獲得所述加密數據的分析結果數據;

標準文件存儲子單元,用於將所述分析結果數據存儲為標準文件。

本申請另外還一種用於虛擬機的內存轉儲的系統,包括:總線驅動模塊、信息抓取模塊、轉儲模塊、帶外通道模塊和後端管理模塊;

所述總線驅動模塊接收內存轉儲指令,將所述內存轉儲指令發送至信息抓取模塊;

所述信息抓取模塊分級所述指令抓取虛擬機當前的內存數據信息,並將所述內存數據信息發送至所述轉儲模塊;

所述轉儲模塊將接收的所述內存數據信息轉儲為標準文件,並將所述標準文件發送至所述帶外通道模塊;

所述帶外通道模塊將所述標準文件傳輸至所述後端管理模塊。

與現有技術相比,本申請具有以下優點:

本申請提供一種用於虛擬機的內存轉儲的方法,該方法包括:接收內存轉儲的指令;根據所述指令,抓取該虛擬機當前的內存數據信息;將所述內存數據信息存儲為標準文件;所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心。該方法是將抓取的當前的內存數據信息儲存為標準文件,並將該標 準文件通過預設的單獨的帶外通道傳輸至後端的物理主機的管路中心,而所述預設的單獨的帶外通道是不依賴於虛擬機系統(windows系統)本身的內存轉儲工具,抓取的內存數據信息可以直接通過預設的帶外通道傳輸至後端。另外,該方法中的內存轉儲過程可以是被動的轉儲,也可以是主動的轉儲。當前端系統接收到轉儲指令後,不管該指令是被動轉儲的指令還是主動轉儲的指令,均會根據該接收的指令進行內存轉儲過程,並且,兩種方式均可生成標準文件,而不依賴windows系統的存儲棧等過程,因此,採用該方法生成的標準的轉儲文件,以用於採用分析工具進行數據的分析。

附圖說明

圖1是本申請第一實施例提供的一種用於虛擬機的內存轉儲的方法的流程圖。

圖2是本申請第二實施例提供的一種用於虛擬機的內存轉儲的裝置的示意圖。

圖3是本申請第三實施例提供的一種用於虛擬機的內存轉儲的系統的結構示意圖。

具體實施方式

本申請提供一種用於虛擬機的內存轉儲的方法,該方法是用於雲線上多臺虛擬機的數據分析的,並且該方法適用於內存數據的主動轉儲和被動轉儲,即可以從虛擬機的後端(物理主機)抓取虛擬機的內存進行轉儲,也可以是當系統發生故障時,被動的將虛擬機發生故障時刻的內存轉儲到虛擬機的後端。當需要對轉儲的數據進行分析時,直接從虛擬機的後端調取轉儲後的標準文件,或者與標準文件兼容的轉儲文件進行分析即可。

具體的,本申請第一實施例提供的一種用於虛擬機的內存轉儲的方法,圖1是本申請第一實施例提供的一種用於虛擬機的內存轉儲的方法的流程圖,該方法包括:

步驟s101,接收內存轉儲的指令。

該方法主要是應用於虛擬機作業系統,而虛擬機是相對於物理主機而言的, 一臺物理主機可衍生出多臺虛擬機,而衍生出的多臺虛擬機的作業系統可以相同也可以不同。而該方法涉及上述虛擬機及物理主機。

現階段雲計算平臺在實際應用中較為廣泛,所述虛擬機可以是雲虛擬機,所述雲虛擬機一般是採用網絡作為埠進行虛擬機與主機間數據傳輸。

在所述虛擬機的作業系統中設置有總線驅動系統,該總線驅動系統是虛擬作業系統中安裝的一個驅動,可以接收內存轉儲的指令。

具體的所述總線驅動系統對所述指令的進一步操作可參考下述步驟s102。

步驟s102,根據所述指令,抓取該虛擬機當前的內存數據信息;步驟s103,將所述內存數據信息存儲為標準文件。

由於步驟s102和步驟s103的過程均是在所述總線驅動系統中完成的,因此,可以將所述步驟s102和步驟s103結合進行介紹。

具體的,所述總線驅動系統包括信息抓取模塊和轉儲模塊,所述總線驅動系統可以接收作業系統或者後端物理主機管理中心發送的轉儲的指令,所述信息抓取模塊可以根據所述指令,將所述虛擬機當前的內存數據進行收集。收集後的所述內存數據經過所述轉儲模塊形成標準文件,並將形成的該標準文件向外發送。

所述總線驅動系統接收作業系統或者後端物理主機管理中心發送的轉儲的指令是包括主動轉儲過程和被動轉儲過程。

針對主動轉儲過程,在後端的物理主機的管理中心會向所述總線驅動系統發送主動轉儲的指令,所述總線驅動系統接收該指令之後,會將該指令下達至所述信息抓取模塊中,所述信息抓取模塊根據該主動轉儲的指令,抓取所述虛擬機當前的內存數據信息,所述內存數據信息經過所述轉儲模塊形成標準文件,該標準文件可被數據分析工具進行直接分析。

經過所述轉儲模塊形成的標準文件需要向後端的物理主機的管理中心進行傳輸,而該傳輸過程是經過預設的主動通道進行傳輸的,而該傳輸的具體過程可參考下述步驟s104,在此僅介紹所述內存數據信息的轉儲過程,而對其傳輸過程不做詳述。

針對被動轉儲的過程,該被動轉儲的過程是發生在虛擬機的作業系統或者物理主機發生故障的情況下,當虛擬機的作業系統發生故障時,將會啟動虛擬機的故障系統,所述虛擬機的故障系統將會向所述驅動系統發送被動轉儲的指 令,所述總線驅動系統接收該指令之後,會將該指令下達至所述信息抓取模塊中,所述信息抓取模塊根據該被動轉儲的指令,抓取所述虛擬機發生故障時刻時的內存數據信息,所述內存數據信息經過所述轉儲模塊形成標準文件,該標準文件可被數據分析工具進行直接分析。

經過所述轉儲模塊形成的標準文件需要向後端的物理主機的管理中心進行傳輸,而該傳輸過程是經過預設的被動通道進行傳輸的,而該傳輸的具體過程可參考下述步驟s104,在此僅介紹所述內存數據信息的轉儲過程,而對其傳輸過程不做詳述。

以上介紹的是內存轉儲的兩個過程,分別是主動轉儲的方式和被動轉儲的方式,兩種方式的啟動條件,以及在所述總線驅動系統中標準文件形成的過程。因此,該方法不但可以應用於在當作業系統發生故障時的內存轉儲,也可以是隨時將虛擬機作業系統的內存數據進行轉儲,分別可形成標準文件,採用數據分析工具可對所述標準文件進行數據分析,獲取進一步的分析結果。因此,該方法可以克服傳統的內存轉儲方法僅適用於系統崩潰狀態的問題,該方法不但可以應用在系統發生故障時,還可以應用在系統正常工作狀態。

特別的,針對步驟s103,將所述內存數據信息轉儲為標準文件,上述步驟是在所述總線驅動系統中的轉儲模塊中完成的。

而所述轉儲模塊需要根據信息抓取模塊抓取的內存數據信息的類型分類將所述內存數據信息分別形成標準文件。以下對所述內存數據信息的類型分類進行介紹。

當所述內存數據信息為一般數據信息(非加密的數據),針對非加密的數據信息,所述轉儲模塊可以將所述內存數據信息直接進行轉儲,保存形成為標準的轉儲文件。

而當所述內存數據信息比較少時,可以直接將抓取的所有數據信息進行保存行成標準的轉儲文件,但是,一般情況下,所述虛擬機的內存數據量較大,一次性將抓取的所有數據進行轉儲會造成效率不高的問題,因此,在該情況下,是將所述內存數據按照預設的方式分為若干個批次進行轉儲,相應的,形成若干個標準文件,而若干個標準文件向外發送也是按照預設方式分批次進行發送的。總之,當所述信息抓取模塊抓取一部分的內存數據信息之後,所述轉儲模塊將該部分的內存數據信息轉存為標準文件,並將該標準文件向外發送。在所 述轉儲模塊進行該部分數據的轉儲過程中,所述信息抓取模塊依次在抓取第二部分的內存數據信息,因此,當所述內存數據信息被依次全部抓取完成之後,所述轉儲模塊將根據抓取的順序完成轉儲的過程,形成的若干具有先後順序的標準文件將依次向外發送。

而上述針對所述內存數據信息採用何種方式分批次分類型,其採用的規則可以是依據數據類型的分類規則進行分類。

以上介紹的所述內存數據信息為一般的數據,而針對加密的數據信息,所述標準文件的形成需要進一步分析獲得。

虛擬機上的作業系統中的某些內存數據進行加密是為了保證安全性的考慮,例如,微軟從vista開始對一些內存數據結構進行了加密,導致傳統的內存轉儲方式形成的普通內存鏡像無法直接轉化為標準的windows轉儲文件格式,所以傳統的內存轉儲方法還需要通過一些特殊的方法從前端驅動中獲取這些加密的數據,才能生成標準的轉儲文件。

而本申請提供的該內存轉儲的方法可克服上述問題。具體是,若抓取的數據為加密的內存數據,所述將所述內存數據信息存儲為標準文件步驟採用以下步驟完成:

將抓取的所述加密的內存數據進行逆向分析。

所述逆向分析是指並不依賴於抓取的數據信息的原代碼或者算法等原始的細節的數據,而是根據所述數據表達的結果推斷出的該數據所體現的工作機制或工作方式等。

其次,根據所述逆向分析獲得所述加密數據的分析結果數據。

所述對內存數據進行逆向分析的過程是為了獲得抓取的數據的工作機制或工作方式等所體現的該數據信息所呈現的效果。而該數據工作機制或工作方式等逆向分析得出的一個結果。因此,經過所述逆向分析可以獲得所述加密數據的分析結果數據。

再次,將所述分析結果數據存儲為標準文件。

具體的,將上述逆向分析獲得的分析結果數據存儲為標準文件。所述標準文件中的數據信息並不是一些加密的原代碼,而是經過對這些加密數據進行逆向分析後獲得的一個結果數據,該結果數據可完全體現該加密數據的工作機制或方式等,因此,後續中對所述標準文件的分析並不是對原代碼的分析,而是 對根據原代碼獲得的分析結果數據的分析。

因此,採用上述逆向分析獲得分析結果數據的方式代替直接將加密數據進行鏡像的方式,可以避開加密數據無法直接形成標準文件的問題,採用上述逆向分析的方式解密加密文件可以在不影響數據真實性的基礎上,簡化分析過程和分析步驟。

以上是對虛擬機的作業系統的內存數據的抓取、轉儲的過程,所述總線驅動系統形成的標準文件需要傳輸至後端的物理主機的管理中心以供後續步驟的數據分析。因此,所述標準文件的傳輸過程和傳輸形式應參考步驟s104。

步驟s104,所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心。

所述標準文件通過的預設的帶外通道傳輸至管理中心的過程中,其傳輸的通道是預設的帶外通道,該預設的帶外通道是與虛擬機上的作業系統不相關的通道。所述標準文件將通過該通道傳輸至管理中心。

在步驟s102和步驟s103中均有介紹說,根據轉儲指令可分為主動轉儲過程和被動轉儲過程。

針對上述主動轉儲過程和被動轉儲過程,所述預設的帶外通道可分為主動路徑通道和被動路徑通道。

針對主動轉儲過程,所述總線驅動系統接收所述物理主機的管理中心的主動轉儲指令後,所述總線驅動系統中的信息抓取模塊將抓取虛擬機當前的內存數據信息,所述內存數據進行經過所述總線驅動系統中的轉儲模塊進行轉儲行為標準文件,所述總線驅動系統根據所述主動轉儲指令,將所述標準文件傳輸至所述主動路徑通道,經由所述主動路徑通道的所述標準文件被傳輸至後端的物理主機的管理中心。

相應的,針對被動轉儲過程,當檢查物理主機或虛擬機的系統發生故障時,則啟動虛擬機的故障系統,虛擬機的故障系統將向所述總線驅動系統發送被動轉儲的指令,所述總線驅動系統接收該指令後,所述總線驅動系統中的信息抓取模塊將抓取虛擬機發生故障時刻的內存數據信息,所述內存數據進行經過所述總線驅動系統中的轉儲模塊進行轉儲行為標準文件,所述總線驅動系統根據所述被動轉儲指令,將所述標準文件傳輸至所述被動路徑通道,經由所述被動路徑通道的所述標準文件被傳輸至後端的物理主機的管理中心。

不管上述主動路徑通道還是被動路徑通道,所述標準文件經由所述主動路 徑通道和被動路徑通道傳輸至管理中心的方式可以是多種,具體的,所述標準文件先通過預設的帶外通道傳輸至虛擬機的傳輸埠;之後,所述虛擬機的傳輸埠通過預設通道將所述標準文件傳輸至物理主機的管理中心。

所述虛擬機的傳輸埠為物理埠或網絡埠。針對所述虛擬機為雲虛擬機的情況,一般所述傳輸埠為網絡埠,所述虛擬機的預設的帶外通道(主動路徑通道和被動路徑通道)與後端的所述物理主機的管理中心之間通過內網網絡通道進行連接。

若所述傳輸埠為物理埠時,所述物理埠一般為輸入輸出埠。

此外,所述虛擬機的傳輸埠與所述物理主機的管理中心之間的數據傳輸方式採用雙向傳輸的方式。所述傳輸埠可以將數據主動的傳輸至所述管理中心,所述管理中心也可以向所述傳輸埠發送傳輸命令,所述傳輸接口再將數據傳輸至所述管理中心,因此,所述傳輸埠與所述物理主機的管理中心之間可實現雙向通訊。

針對所述總線驅動系統形成的標準文件採用何種傳輸方式傳輸至所述物理主機的管理中心,需要針對主動轉儲方式和被動轉儲方式進行分別介紹。

針對主動轉儲方式,所述標準文件通過所述帶外通道的主動路徑通道傳輸至物理主機的管理中心步驟中的傳輸方式採用以下傳輸方式的一種或多種:中斷方式、線程方式、輸入輸出接口方式、數據同步方式。

當所述內存數據信息驚醒主動轉儲時,說明虛擬機當前的作業系統是可以正常工作的,因此,形成的標準文件可採用傳統的任意的方式進行傳輸,例如,中斷方式或線程方式等。

而對於被動轉儲方式則不同,當進行被動轉儲時,說明虛擬機當前的作業系統是不能正常工作的,由於作業系統不能正常工作,因此,其傳輸方式也由於故障的作業系統受到限制。

針對被動轉儲方式,所述標準文件通過所述帶外通道的被動路徑通道傳輸至物理主機的管理中心步驟中的採用的傳輸方式包括:數據同步方式。

所述數據同步的方式可以是採用多種方式實現的數據同步,例如,所述數據同步方式包括共享內存方式和poll方式。

當所述數據同步方式為共享內存方式時,所述共享內存方式可以採用以下步驟實現:

所述總線驅動系統向所述帶外通道調取讀寫函數。

該共享內存的方式是採用函數調用的方式實現的,具體的,所述總線驅動系統向所述帶外通道調取讀寫函數,相應的,所述帶外通道將向所述總線驅動系統返回該讀寫函數,所述總線驅動模塊生成的標準文件將被寫入所述帶外通道。而該讀寫函數封裝了被動轉儲的讀寫方法。所述讀寫方式的具體可採用以下步驟完成。

所述讀寫函數將所述標準文件設置為共享信息。

所述讀寫函數具體的讀寫方法是將所述標準文件設置為共享信息,即將所述標準文件設置在一個共享區域,在該共享區域內,所述管理中心可以從該共享區域內讀取相應的數據信息。

所述物理主機的管理中心通過共享的方式讀取所述共享信息。

由於所述標準文件已經被放置在所述共享區域內,則所述物理主機的管理中心可以通過預設的共享原則從該共享區域內讀取所述標準文件,此時,所述標準文件即為所述總線驅動系統與管理中心共享的共享文件。

此外,所述數據同步方式為poll方式時,所述poll方式包括:所述總線驅動系統生成的標準文件主動發送至所述物理主機的管理中心。

採用poll方式為一種簡單推拉的傳送的方式,即可將生成的標準文件主動發送至所述管理中心;還可以採用物理主機的管理中心向所述總線驅動系統發送傳輸指令,所述總線驅動系統經由所述帶外通道向所述管理中心推動所述標準文件。

不管以何種方式將所述標準文件由總線驅動系統傳輸至物理主機的管理中心,均屬於本申請的保護範圍。

本申請第一實施例提供的該內存轉儲的方法包含主動轉儲和被動轉儲的過程,而這兩個過程均不依賴於虛擬機的作業系統(windows作業系統)本身的轉儲環境,同時,採用該方法生成的標準文件為標準的轉儲文件,該標準的轉儲文件與當前數據分析工具windbg工具是兼容格式,其可被直接方便的採用windbg工具進行數據的分析處理。通過該內存轉儲方法形成的windows的dump文件的格式均為標準的可以與windbg工具兼容的memorydump文件,為數據的分析帶來便利,減少不必要的格式的轉換。因此,該方法提供的標準文件更適用於進行雲虛擬機的線上問題的分析。

此外,本申請實施例通過具體的事例介紹該內存轉儲的方法,該具體事例可針對雲線上windows主機的內存的轉儲問題。在雲windows虛擬機上安裝有兩個驅動程序,一個為負責轉儲命令處理的總線驅動,可稱為aliobbus驅動,另一個為負責建立帶外通信通道的驅動,可稱為dumpchannel驅動。而在後端的物理主機上具有一個tcp客戶端,包括可以部署在任何位置的dumpmonitor模塊中心。

當需要進行內存的主動轉儲時,可以由後端的dumpmonitor向前端的aliobbus驅動發送主動轉儲命令,aliobbus驅動接收到該命令時,可以抓取和收集當前虛擬機的內存數據信息,形成標準的轉儲文件,即memorydump文件。並通過dumpchannel驅動建立的主動dump路徑將該轉儲文件傳輸至後端的dumpmonitor模塊中心,並被保存在後端的管理中心。

而針對內存的被動轉儲的方式,當windows虛擬機發生藍屏故障時,前端可以通過被動路徑將虛擬機當前內存數據轉儲至後端的管理中心。具體是,當windows虛擬機的系統發生藍屏故障時,系統的故障系統將向aliobbus驅動發送被動轉儲的指令,aliobbus驅動接收該轉儲指令後,進行內存數據的抓取和收集,將抓取的內存數據形成標準的memorydump文件,並通過dumpchannel驅動建立的被動dump路徑將該轉儲文件傳輸至後端的dumpmonitor模塊中心,並被保存在後端的管理中心。其中,標準的memorydump文件的傳輸方式可採用共享內存方式傳輸至後端的dumpmonitor模塊中心。

所述共享內存方式可具體採用如下方式:所述aliobbus驅動向dumpchannel驅動模塊調取讀寫函數,相應的,所述dumpchannel驅動模塊將向aliobbus驅動返回該讀寫函數,所述aliobbus驅動生成的標準memorydump文件將被寫入帶外通道。而該讀寫函數封裝了被動轉儲的讀寫方法。所述讀寫方式的具體可採用以下方式實現。

所述讀寫函數具體的讀寫方法是將所述memorydump文件設置為共享信息,即將所述memorydump文件設置在一個共享區域,在該共享區域內,後端的dumpmonitor模塊中心可以從該共享區域內讀取相應的數據信息。

由於所述memorydump文件已經被放置在所述共享區域內,則dumpmonitor模塊中心可以通過預設的共享原則從該共享區域內讀取所述memorydump文件,此時,所述memorydump文件即為aliobbus驅動與dumpmonitor 模塊中心共享的共享文件。

上述主動和被動轉儲方式所生成的標準的轉儲文件memorydump文件與當前數據分析工具windbg工具是兼容格式,其可被直接方便的採用windbg工具進行數據的分析處理。通過該內存轉儲方法形成的windows的dump文件的格式均為標準的可以與windbg工具兼容的memorydump文件,為數據的分析帶來便利,減少不必要的格式的轉換,以保證獲取的內存數據的有效性。

本申請第二實施例還提供一種用於虛擬機的內存轉儲的裝置,圖2是本申請第二實施例提供的一種用於虛擬機的內存轉儲的裝置的示意圖。如圖2所示,該裝置包括:

指令接收單元201,用於接收內存轉儲的指令;

信息抓取單元202,用於根據所述指令,抓取該虛擬機當前的內存數據信息;

標準文件生成單元203,用於將所述內存數據信息存儲為標準文件;

傳輸單元204,用於所述標準文件通過預設的帶外通道傳輸至物理主機的管理中心。

可選的,所述接收內存轉儲的指令的為虛擬機的總線驅動系統,所述總線驅動系統還包括信息抓取模塊和轉儲模塊;

所述信息抓取單元具體用於所述信息抓取模塊將所述虛擬機當前的內存數據進行收集;

所述標準文件生成單元具體用於所述轉儲模塊將收集的所述內存數據轉存為標準文件,並將所述標準文件向外發送。

可選的,所述標準文件生成單元還包括批次發送子單元;

所述批次發送子單元用於所述轉儲模塊將收集的所述內存數據按照預設方式轉存為若干批次的標準文件,所述標準文件向外發送是按照預設方式分批次發送。

可選的,還包括:

主動轉儲指令發送單元,用於物理主機的管理中心向所述總線驅動系統發送主動轉儲的指令;

相應的,所述傳輸單元具體用於所述標準文件通過所述帶外通道的主動路徑通道傳輸至物理主機的管理中心。

可選的,還包括:

被動轉儲指令發送單元,用於虛擬機的故障系統向所述總線驅動系統發送被動轉儲的指令;

相應的,所述傳輸單元具體用於所述標準文件通過所述帶外通道的被動路徑通道傳輸至物理主機的管理中心。

可選的,所述傳輸單元採用的傳輸方式包括:數據同步方式;所述數據同步方式包括共享內存方式和poll方式;

所述數據同步方式為共享內存方式時,所述傳輸單元還包括:

函數調取子單元,用於所述總線驅動系統向所述帶外通道調取讀寫函數;

共享信息設置子單元,用於所述讀寫函數將所述標準文件設置為共享信息;

共享信息讀取子單元,用於所述物理主機的管理中心通過共享的方式讀取所述共享信息。

可選的,所述傳輸單元還包括:

傳輸埠傳輸子單元,用於所述標準文件通過預設的帶外通道傳輸至虛擬機的傳輸埠;

預設通道傳輸子單元,用於所述虛擬機的傳輸埠通過預設通道將所述標準文件傳輸至物理主機的管理中心。

可選的,在所述信息抓取單元中,若抓取的數據為加密的內存數據,則所述標準文件生成單元包括:

逆向分析子單元,用於將抓取的所述加密的內存數據進行逆向分析;

結果數據獲得子單元,用於根據所述逆向分析獲得所述加密數據的分析結果數據;

標準文件存儲子單元,用於將所述分析結果數據存儲為標準文件。

本申請第三實施例還提供一種用於虛擬機的內存轉儲的系統,圖3是本申請第三實施例提供的一種用於虛擬機的內存轉儲的系統的結構示意圖,如圖3 所示,該系統包括:總線驅動模塊301、信息抓取模塊302、轉儲模塊303、帶外通道模塊304和後端管理模塊305;

所述總線驅動模塊接收內存轉儲指令,將所述內存轉儲指令發送至信息抓取模塊;

所述信息抓取模塊分級所述指令抓取虛擬機當前的內存數據信息,並將所述內存數據信息發送至所述轉儲模塊;

所述轉儲模塊將接收的所述內存數據信息轉儲為標準文件,並將所述標準文件發送至所述帶外通道模塊;

所述帶外通道模塊將所述標準文件傳輸至所述後端管理模塊。

本申請雖然以較佳實施例公開如上,但其並不是用來限定本申請,任何本領域技術人員在不脫離本申請的精神和範圍內,都可以做出可能的變動和修改,因此本申請的保護範圍應當以本申請權利要求所界定的範圍為準。

在一個典型的配置中,計算設備包括一個或多個處理器(cpu)、輸入/輸出接口、網絡接口和內存。內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(ram)和/或非易失性內存等形式,如只讀存儲器(rom)或快閃記憶體(flashram)。內存是計算機可讀介質的示例。

1、計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現信息存儲。信息可以是計算機可讀指令、數據結構、程序的模塊或其他數據。計算機的存儲介質的例子包括,但不限於相變內存(pram)、靜態隨機存取存儲器(sram)、動態隨機存取存儲器(dram)、其他類型的隨機存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內存技術、只讀光碟只讀存儲器(cd-rom)、數字多功能光碟(dvd)或其他光學存儲、磁盒式磁帶,磁帶磁磁碟存儲或其他磁性存儲設備或任何其他非傳輸介質,可用於存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質不包括非暫存電腦可讀媒體(transitorymedia),如調製的數據信號和載波。

2、本領域技術人員應明白,本申請的實施例可提供為方法、系統或電腦程式產品。因此,本申請可採用完全硬體實施例、完全軟體實施例或結合軟體 和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器、cd-rom、光學存儲器等)上實施的電腦程式產品的形式。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀