新四季網

指令解析的方法及裝置的製作方法

2023-10-04 02:02:24

專利名稱:指令解析的方法及裝置的製作方法
技術領域:
本發明涉及計算機領域,特別涉及一種指令解析的方法及裝置。
背景技術:
為了提高計算機的工作效率,通常採用虛擬機技術,在物理主機中虛擬出多個虛擬機,同時運行多個獨立的作業系統。虛擬機由於需要通過VMM (Virtual MachineMonitor,虛擬機監視器)訪問實際的物理資源,因此具有一定的局限性,不能直接執行如訪問 APIC (Advanced Programmable Interrupt Controller,高級可編程中斷控制)寄存器等敏感指令,而是通過虛擬機vCPU (virtual Central Processing Unit,虛擬中央處理器單元)陷入(Exit)的方法,將敏感指令交由VMM來模擬執行。VMM為了實現模擬執行敏感指令,需要先進行指令解析。現有技術中進行指令解析的方法是VMM服務於虛擬機,在虛擬機由於敏感指令而發生虛擬機vCPU陷入後,VMM直接對敏感指令進行指令解析,根據敏感指令的不同,指令解析的過程稍有不同,但至少包括計算指令的操作碼的長度,獲取操作碼,解碼源操作數,以及解碼目的操作數等多個步驟。在實現本發明的過程中,發明人發現現有技術至少存在以下問題現有技術在指令解析的過程中,由於直接解析指令的過程複雜,解析指令的耗時較長,甚至長於指令模擬操作的耗時,導致系統開銷較大,虛擬機的性能降低。

發明內容
為了解決現有技術的問題,本發明實施例提供了一種指令解析的方法及裝置。所述技術方案如下第一方面,提供了一種指令解析的方法,所述方法包括獲取所服務的虛擬機發生虛擬機vCPU陷入的信息;根據所述信息解析所述虛擬機的IP (Instruction Pointer,指令指針)寄存器,得到引起所述虛擬機vCPU陷入的敏感指令的IP ;確定所述敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,所述指令信息至少包括操作碼、源操作數和目的操作數。結合第一方面,在第一方面的第一種可能的實現方式中,所述確定所述敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,包括將所述敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與所述敏感指令的IP相匹配的IP ;在預先設置的IP與指令信息的對應關係中確定所述相匹配的IP對應的指令信息,並將所述對應的指令信息作為所述敏感指令的解析結果。結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述虛擬機為多個,每個虛擬機對應各自的作業系統的類型;
相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。結合第一方面的第一種可能的實現方式或第一方面的第二種可能的實現方式,在第一方面的第三種可能的實現方式中,所述將所述敏感指令的IP與預先保存的IP列表中的IP進行比對之後,還包括如果未得到與所述敏感指令的IP相匹配的IP,則直接解析所述敏感指令,得到指令信息,並將所述指令信息作為所述敏感指令的解析結果。結合第一方面的第三種可能的實現方式,在第一方面的第四種可能的實現方式中,所述將所述指令信息作為所述敏感指令的解析結果之後,還包括將所述敏感指令的IP添加到所述預先保存的IP列表中,並將所述敏感指令的IP與所述指令信息的對應關係添加到所述預先設置的IP與指令信息的對應關係中。結合第一方面和第一方面的第一種可能的實現方式至第一方面的第四種可能的實現方式,在第一方面的第五種可能的實現方式中,所述將所述指令信息作為所述敏感指令的解析結果之後,還包括 根據所述解析結果,模擬執行所述敏感指令。結合第一方面的第五種可能的實現方式,在第一方面的第六種可能的實現方式中,其特徵在於,所述根據所述解析結果,模擬執行所述敏感指令之後,還包括更新所述虛擬機的IP寄存器的IP,使得所述IP寄存器中的IP指向所述虛擬機的下一條指令。第二方面,提供了一種指令解析的裝置,所述裝置包括第一獲取模塊,用於獲取所服務的虛擬機發生虛擬機vCPU陷入的信息;第一解析模塊,用於根據所述第一獲取模塊獲取到的信息解析所述虛擬機的IP寄存器,得到引起所述虛擬機vCPU陷入的敏感指令的IP ;確定模塊,用於確定所述第一解析模塊解析得到的敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,所述指令信息至少包括操作碼、源操作數和目的操作數。結合第二方面,在第二方面的第一種可能的實現方式中,所述確定模塊,包括比對單元,用於將所述敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與所述敏感指令的IP相匹配的IP ;確定單元,用於在預先設置的IP與指令信息的對應關係中確定所述比對單元比對得到的相匹配的IP對應的指令信息,並將所述對應的指令信息作為所述敏感指令的解析結果。結合第二方面的第一種可能的實現方式,在第二方面的第二種可能的實現方式中,所述虛擬機為多個,每個虛擬機對應各自的作業系統的類型;相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。結合第二方面的第一種可能的實現方式或第二方面的第二種可能的實現方式,在第二方面的第三種可能的實現方式中,所述裝置還包括第二解析模塊,用於如果未得到與所述敏感指令的IP相匹配的IP,則直接解析所述敏感指令,得到指令信息,並將所述指令信息作為所述敏感指令的解析結果。結合第二方面的第三種可能的實現方式,在第二方面的第四種可能的實現方式中,所述裝置還包括添加模塊,用於將所述敏感指令的IP添加到所述預先保存的IP列表中,並將所述敏感指令的IP與所述指令信息的對應關係添加到所述預先設置的IP與指令信息的對應關係中。結合第二方面和第二方面的第一種可能的實現方式至第二方面的第四種可能的實現方式,在第二方面的第五種可能的實現方式中,所述裝置還包括執行模塊,用於根據所述解析結果,模擬執行所述敏感指令。結合第二方面的第五種可能的實現方式,在第二方面的第六種可能的實現方式中,所述裝置還包括更新模塊,用於更新所述虛擬機的IP寄存器的IP,使得所述IP寄存器中的IP指向所述虛擬機的下一條指令。本發明實施例提供的技術方案帶來的有益效果是通過獲取虛擬機發生虛擬機vCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。


為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1是本發明實施例一提供的一種指令解析的方法流程圖;圖2是本發明實施例二提供的一種指令解析的方法流程圖;圖3是本發明實施例三提供的第一種指令解析的裝置結構示意圖;圖4是本發明實施例三提供的第二種指令解析的裝置結構示意圖;圖5是本發明實施例三提供的第三種指令解析的裝置結構示意圖;圖6是本發明實施例三提供的第四種指令解析的裝置結構示意圖;圖7是本發明實施例三提供的第五種指令解析的裝置結構示意圖;圖8是本發明實施例三提供的第六種指令解析的裝置結構示意圖。
具體實施例方式為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。實施例一本發明實施例提供了一種指令解析的方法,參見圖1,方法流程包括101 :獲取所服務的虛擬機發生虛擬機vCPU陷入的信息。
102 :根據信息解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IPo103 :確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,指令信息至少包括操作碼、源操作數和目的操作數。具體地,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,包括但不限於將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP ;在預先設置的IP與指令信息的對應關係中確定相匹配的IP對應的指令信息,並將對應的指令信息作為敏感指令的解析結果。進一步地,虛擬機為多個,每個虛擬機對應各自的作業系統的類型;相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。進一步地,將敏感指令的IP與預先保存的IP列表中的IP進行比對之後,還包括如果未得到與敏感指令的IP相匹配的IP,則直接解析敏感指令,得到指令信息,並將指令信息作為敏感指令的解析結果。進一步地,將指令信息作為敏感指令的解析結果之後,還包括將敏感指令的IP添加到預先保存的IP列表中,並將敏感指令的IP與指令信息的對應關係添加到預先設置的IP與指令信息的對應關係中。進一步地,將指令信息作為敏感指令的解析結果之後,還包括根據解析結果,模擬執行敏感指令。進一步地,將指令信息作為敏感指令的解析結果之後,還包括更新虛擬機的IP寄存器的IP,使得IP寄存器中的IP指向虛擬機的下一條指令。綜上所述,本發明實施例的方法,通過獲取虛擬機發生虛擬機vCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。實施例二由於虛擬機不能直接執行敏感指令,而是通過虛擬機vCPU陷入的方法,將敏感指令交由VMM模擬執行。在模擬執行敏感指令時,需要進行指令解析。為了降低進行指令解析時的系統開銷,本發明實施例提供了一種指令解析的方法,結合上述實施例一的內容,參見圖2,方法流程包括201 =VMM獲取虛擬機發生虛擬機vCPU陷入的信息。其中,VMM為用於模擬執行虛擬機vCPU陷入的敏感指令的一種設備,除了 VMM之夕卜,還可以選用其他設備。對於具體選用哪種設備,本發明實施例在此不進行具體限定。虛擬機為VMM所服務的虛擬機,為了便於說明,本實施例及後續實施例中提到的虛擬機均為VMM所服務的虛擬機。敏感指令是指虛擬機不能直接執行,而需要VMM模擬執行的指令,例如訪問APIC寄存器,訪問I/O (Input/Output)接口的指令、訪問特定寄存器的指令等。除此之外,敏感指令還可以是其他指令,本發明實施例在此不對敏感指令進行具體限定。
具體地,VMM從 VMCS (Virtual Machine Control Structure,虛擬機控制結構)中獲取VMCS保存的虛擬機發生虛擬機vCPU陷入的信息。除了上述方法之外,VMM還可以通過其他方式獲取虛擬機發生虛擬機vCPU陷入的信息。對於VMM具體採用哪種方獲取虛擬機發生虛擬機vCPU陷入的信息,本發明實施例在此不進行限定。202 =VMM根據虛擬機發生虛擬機vCPU陷入的信息解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IP。其中,在虛擬機的IP寄存器中保存有當前正在執行的指令的IP。具體地,VMM根據該虛擬機發生虛擬機vCPU陷入的信息可以得知虛擬機由於執行敏感指令而發生虛擬機vCPU陷入,從而解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IP。舉例來說,在虛擬機中有兩個vCPU (Virtual Central Processing Unit,虛擬中央處理單元),即vCPUl和vCPU2。vCPUl與vCPU2進行通信時,需要通過發送IPI(Inter-processor Interrupt,處理器之間中斷)中斷來完成的,完成每個IPI中斷需要執行三條指令讀ICR (Interrupt Controller Register,中斷控制寄存器)寄存器,寫ICR2寄存器和寫ICR寄存器。由於這三條指令的都是敏感指令,在虛擬機需要完成vCPUl發送IPI中斷給vCPU2時,會引發三次虛擬機vCPU陷入。在執行「讀ICR寄存器」敏感指令時,VMCS發送虛擬機發生虛擬機vCPU陷入的信息給VMM,VMM在獲取到該信息後,根據該信息訪問虛擬機的IP寄存器,得到敏感指令「讀ICR寄存器」的IP。當虛擬機執行其餘兩個敏感指令時,VMCS也會發送虛擬機發生虛擬機vCPU陷入的信息給VMM,VMM根據該信息也會分別得到敏感指令「寫ICR2寄存器」的IP和敏感指令「寫ICR寄存器」的IP。203 :VMM將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP,則執行204,未得到與敏感指令的IP相匹配的ID,則執行205。針對該步驟,在同一類型的虛擬機的作業系統中,同一敏感指令在內存中的地址保持不變,由於IP對應於保存當前指令在內存中的地址,同一敏感指令對應的IP也保持不變。因此,可以將該虛擬機中已知的敏感指令的IP預先保存到IP列表中,並預先設置敏感指令的IP與該敏感指令的指令信息之間的對應關係。舉例來說,將敏感指令的「讀ICR寄存器」的IP在預先保存的IP列表中的IP進行比對,得到與敏感指令「讀ICR寄存器」的IP相匹配的IP1 ;將敏感指令「寫ICR2寄存器」的IP在預先保存的IP列表中得到與敏感指令「寫ICR2寄存器」的IP相匹配的IP2 ;將敏感指令「寫ICR寄存器」的IP在預先保存的IP列表中的IP進行比對,無法得到與敏感指令「寫ICR寄存器」相匹配的IP。除了上述方法之外,還可以採用其他方式將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP。對於具體採用哪種方式將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP,本發明實施例在此不進行具體限定。需要說明的是,VMM自身所服務的虛擬機為多個,每個虛擬機對應各自的作業系統的類型;相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。如果有多個不同的IP列表,在進行比對的時候,將敏感指令的IP與多個不同的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP。204 VMM在預先設置的IP與指令信息的對應關係中確定相匹配的IP對應的指令信息,並將對應的指令信息作為敏感指令的解析結果。其中,指令信息至少包括操作碼,源操作數和目的操作數。舉例來說,VMM在預先設置的IP與指令信息的對應關係中確定於敏感指令「讀ICR寄存器」相匹配的IP1對應的指令信息A,並將指令信息A作為敏感指令「讀ICR寄存器」的解析結果。相應的,還可以確定與敏感指令「寫ICR2寄存器」相匹配的IP2對應的指令信息B,將指令信息B作為敏感指令「寫ICR2寄存器」的解析結果。除了上述方法之外,還可以採用其他方式在預先設置的IP與指令信息的對應關係中確定相匹配的IP對應的指令信息。對於具體採用哪種方式在預先設置的IP與指令信息的對應關係中確定相匹配的IP對應的指令信息,本發明實施例在此不進行具體限定。205 =VMM直接解析敏感指令,得到指令信息,並將指令信息作為敏感指令的解析結果。具體地,直接解析敏感指令的具體方式為讀取VMCS中保存的虛擬機vCPU陷入的原因,解析虛擬機vCPU陷入的類型,從而根據虛擬機vCPU陷入的類型直接解析敏感指令。根據虛擬機vCPU陷入的原因的不同,解析得到的虛擬機vCPU陷入的類型不同,從而使得直接解析敏感指令的方式也不同。舉例來說,VMM在預先保存的IP列表中未得到與敏感指令「寫ICR寄存器」的IP相匹配的IP,則讀取VMCS中保存的由於敏感指令「寫ICR寄存器」引發的虛擬機vCPU陷入的原因,解析虛擬機vCPU陷入的類型,從而根據虛擬機vCPU陷入的類型直接解析敏感指令「寫ICR寄存器」,得到敏感指令「寫ICR寄存器」的指令信息C,並將指令信息C作為敏感指令「寫ICR寄存器」的解析結果。除了上述方法之外,還可以採用其他方式直接解析敏感指令,得到指令信息。對於具體採用哪種方式直接解析敏感指令,得到指令信息,本發明實施例在此不進行具體限定。針對該步驟,在將指令信息作為敏感指令的解析結果之後,還可以將敏感指令的IP添加到預先保存的IP列表中,並將敏感指令的IP與指令信息的對應關係添加到預先設置的IP與指令信息的對應關係中。此外,當VMM所服務的虛擬機對應的作業系統的類型為多種時,在將指令信息作為敏感指令的解析結果之後,還可以將敏感指令的IP添加到作業系統的類型對應的預先保存的IP列表中,並將敏感指令的IP與指令信息的對應關係添加到作業系統的類型對應的預先設置的IP與指令信息的對應關係中。通過上述添加操作,使得當VMM再次需要解析該敏感指令時,可以在預先保存的IP列表中得到與該敏感指令的IP相匹配的IP。進一步地,在步驟204或步驟205中將指令信息作為敏感指令的解析結果之後,VMM還可以包括根據解析結果,模擬執行敏感指令的操作;還可以包括更新虛擬機的IP寄存器的IP,使得IP寄存器中的IP指向虛擬機的下一條指令。並且,在更新IP寄存器的IP,將IP指向虛擬機的下一條指令之後,還可以通過虛擬機進入(Entry)的方法,將執行指令的操作切換給虛擬機,從而使得虛擬機可以保持執行指令的連續性。除此之外,VMM在將指令信息作為敏感指令的解析結果之後,還可以執行其他的操作,本發明實施例在此不對將指令信息作為敏感指令的解析結果之後的進一步操作進行具體限定。綜上所述,本發明實施例的方法,通過獲取虛擬機發生虛擬機vCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。實施例三本發明實施例提供了一種指令解析的裝置,該裝置用於執行上述實施例一或實施例二提供的指令解析的方法。參見圖3,該裝置包括第一獲取模塊301,用於獲取所服務的虛擬機發生虛擬機vCPU陷入的信息;第一解析模塊302,用於根據第一獲取模塊301獲取到的信息解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IP ;確定模塊303,用於確定第一解析模塊302解析得到的敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,指令信息至少包括操作碼、源操作數和目的操作數。具體地,參見圖4,確定模塊303,包括比對單元3031,用於將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP ;確定單元3032,用於在預先設置的IP與指令信息的對應關係中確定比對單元3031比對得到的相匹配的IP對應的指令信息,並將對應的指令信息作為敏感指令的解析結果。進一步地,虛擬機為多個,每個虛擬機對應各自的作業系統的類型;相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。進一步地,參見圖5,該裝置還包括第二解析模塊304,用於如果未得到與敏感指令的IP相匹配的IP,則直接解析敏感指令,得到指令信息,並將指令信息作為敏感指令的解析結果。進一步地,參見圖6,該裝置還包括添加模塊305,用於將敏感指令的IP添加到預先保存的IP列表中,並將敏感指令的IP與指令信息的對應關係添加到預先設置的IP與指令信息的對應關係中。進一步地,參見圖7,該裝置還包括執行模塊306,用於根據解析結果,模擬執行敏感指令。進一步地,參見圖8,該裝置還包括更新模塊307,用於更新虛擬機的IP寄存器的IP,使得IP寄存器中的IP指向虛擬機的下一條指令。綜上所述,本發明實施例提供的指令解析的裝置,通過獲取虛擬機發生虛擬機VCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。
實施例四本發明實施例提供了一種指令解析的裝置,該裝置包括至少一個存儲器和至少一個處理器,例如CPU (Central Processing Unit,中央處理器單元)等,處理器通過總線與多個存儲節點耦合,以執行指令解析的功能。處理器,用於獲取所服務的虛擬機發生虛擬機vCPU陷入的信息;根據信息解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IP ;確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,指令信息至少包括操作碼、源操作數和目的操作數。具體地,處理器,還用於將敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與敏感指令的IP相匹配的IP ;在預先設置的IP與指令信息的對應關係中確定相匹配的IP對應的指令信息,並將對應的指令信息作為敏感指令的解析結果。進一步地,虛擬機為多個,每個虛擬機對應各自的作業系統的類型;相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。進一步地,處理器還用於如果未得到與敏感指令的IP相匹配的IP,則直接解析敏感指令,得到指令信息,並將指令信息作為敏感指令的解析結果。進一步地,處理器還用於將敏感指令的IP添加到預先保存的IP列表中,並將敏感指令的IP與指令信息的對應關係添加到預先設置的IP與指令信息的對應關係中。進一步地,處理器還用於根據解析結果,模擬執行敏感指令。進一步地,處理器還用於更新虛擬機的IP寄存器的IP,使得IP寄存器中的IP指向虛擬機的下一條指令。綜上所述,本發明實施例的指令解析的裝置,通過獲取虛擬機發生虛擬機vCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。需要說明的是上述實施例提供的指令解析的裝置在指令解析時,僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模塊完成,即將指令解析的裝置的內部結構劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的指令解析的裝置與指令解析的方法實施例屬於同一構思,其具體實現過程詳見方法實施例,這裡不再贅述。 上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種指令解析的方法,其特徵在於,所述方法包括: 獲取所服務的虛擬機發生虛擬機虛擬中央處理單元VCPU陷入的信息; 根據所述信息解析所述虛擬機的指令指針IP寄存器,得到引起所述虛擬機VCPU陷入的敏感指令的IP ; 確定所述敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,所述指令信息至少包括操作碼、源操作數和目的操作數。
2.根據權利要求1所述的方法,其特 徵在於,所述確定所述敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,包括: 將所述敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與所述敏感指令的IP相匹配的IP ; 在預先設置的IP與指令信息的對應關係中確定所述相匹配的IP對應的指令信息,並將所述對應的指令信息作為所述敏感指令的解析結果。
3.根據權利要求2所述的方法,其特徵在於,所述虛擬機為多個,每個虛擬機對應各自的作業系統的類型; 相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。
4.根據權利要求2或3所述的方法,其特徵在於,所述將所述敏感指令的IP與預先保存的IP列表中的IP進行比對之後,還包括: 如果未得到與所述敏感指令的IP相匹配的IP,則直接解析所述敏感指令,得到指令信息,並將所述指令信息作為所述敏感指令的解析結果。
5.根據權利要求4所述的方法,其特徵在於,所述將所述指令信息作為所述敏感指令的解析結果之後,還包括: 將所述敏感指令的IP添加到所述預先保存的IP列表中,並將所述敏感指令的IP與所述指令信息的對應關係添加到所述預先設置的IP與指令信息的對應關係中。
6.根據權利要求1至5任一所述的方法,其特徵在於,所述將所述指令信息作為所述敏感指令的解析結果之後,還包括: 根據所述解析結果,模擬執行所述敏感指令。
7.根據權利要求6所述的方法,其特徵在於,所述根據所述解析結果,模擬執行所述敏感指令之後,還包括: 更新所述虛擬機的IP寄存器的IP,使得所述IP寄存器中的IP指向所述虛擬機的下一條指令。
8.一種指令解析的裝置,其特徵在於,所述裝置包括: 第一獲取模塊,用於獲取所服務的虛擬機發生虛擬機虛擬中央處理器單元VCPU陷入的信息; 第一解析模塊,用於根據所述第一獲取模塊獲取到的信息解析所述虛擬機的指令指針IP寄存器,得到引起所述虛擬機VCPU陷入的敏感指令的IP ; 確定模塊,用於確定所述第一解析模塊解析得到的敏感指令的IP所對應的指令信息,並將所述指令信息作為所述敏感指令的解析結果,所述指令信息至少包括操作碼、源操作數和目的操作數。
9.根據權利要求8所述的裝置,其特徵在於,所述確定模塊,包括: 比對單元,用於將所述敏感指令的IP與預先保存的IP列表中的IP進行比對,得到與所述敏感指令的IP相匹配的IP ; 確定單元,用於在預先設置的IP與指令信息的對應關係中確定所述比對單元比對得到的相匹配的IP對應的指令信息,並將所述對應的指令信息作為所述敏感指令的解析結果O
10.根據權利要求9所述的裝置,其特徵在於,所述虛擬機為多個,每個虛擬機對應各自的作業系統的類型; 相同類型的作業系統的類型對應相同的IP列表,不同類型的作業系統的類型對應不同的IP列表。
11.根據權利要求9或10所述的裝置,其特徵在於,所述裝置還包括: 第二解析模塊,用於如果未得到與所述敏感指令的IP相匹配的IP,則直接解析所述敏感指令,得到指令信息,並將所述指令信息作為所述敏感指令的解析結果。
12.根據權利要求11所述的裝置,其特徵在於,所述裝置還包括: 添加模塊,用於將所述敏感指令的IP添加到所述預先保存的IP列表中,並將所述敏感指令的IP與所述指令信息的對應關係添加到所述預先設置的IP與指令信息的對應關係中。
13.根據權利 要求8至12任一所述的裝置,其特徵在於,所述裝置還包括: 執行模塊,用於根據所述解析結果,模擬執行所述敏感指令。
14.根據權利要求13所述的裝置,其特徵在於,所述裝置還包括: 更新模塊,用於更新所述虛擬機的IP寄存器的IP,使得所述IP寄存器中的IP指向所述虛擬機的下一條指令。
全文摘要
本發明公開了一種指令解析的方法及裝置,屬於計算機領域。所述方法包括獲取所服務的虛擬機發生虛擬機vCPU陷入的信息;根據信息解析虛擬機的IP寄存器,得到引起虛擬機vCPU陷入的敏感指令的IP;確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,指令信息至少包括操作碼、源操作數和目的操作數。本發明通過獲取虛擬機發生虛擬機vCPU陷入的信息,並根據信息解析虛擬機的IP寄存器得到敏感指令的IP,得到敏感指令的IP後,確定敏感指令的IP所對應的指令信息,並將指令信息作為敏感指令的解析結果,從而避免了直接解析指令的冗雜過程,使得解析指令的耗時較短,從而降低了系統開銷,提高了虛擬機的性能。
文檔編號G06F9/455GK103077069SQ201210585519
公開日2013年5月1日 申請日期2012年12月28日 優先權日2012年12月28日
發明者鄭寒 申請人:華為技術有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀