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

虛擬機(jī)控制結(jié)構(gòu)譯碼器的制作方法

文檔序號(hào):6626083閱讀:506來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):虛擬機(jī)控制結(jié)構(gòu)譯碼器的制作方法
技術(shù)領(lǐng)域
本發(fā)明的實(shí)施方案涉及虛擬機(jī)擴(kuò)展(VMX)體系結(jié)構(gòu)。更具體地,本發(fā)明的實(shí)施方案涉及使用虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)譯碼器來(lái)譯碼VMX指令的方法和裝置。
背景技術(shù)
虛擬機(jī)擴(kuò)展(VMX)體系結(jié)構(gòu)通過(guò)將處理器資源在不同的時(shí)間分配給各種軟件應(yīng)用程序和操作系統(tǒng),從而允許多個(gè)軟件程序和操作系統(tǒng)使用相同的微處理器邏輯(“硬件”)。
VMX體系結(jié)構(gòu)一般使用虛擬機(jī)監(jiān)控(VMM)程序,該程序?qū)⒁粋€(gè)或多個(gè)軟件程序(例如虛擬機(jī)(VM))接口到單個(gè)微處理器或一組處理元件。運(yùn)行在每個(gè)VM上的賓客(guest)軟件可以包括賓客操作系統(tǒng)和各種賓客軟件應(yīng)用程序。此外,運(yùn)行在VMM上的應(yīng)用程序和操作系統(tǒng)可以被統(tǒng)一地稱(chēng)為VM或賓客。
典型地,每個(gè)VMCS條目由一個(gè)唯一的標(biāo)識(shí)符來(lái)標(biāo)識(shí),而不是由從體系結(jié)構(gòu)上定義的存儲(chǔ)器地址來(lái)標(biāo)識(shí)。在至少一種現(xiàn)有技術(shù)的例子中,VMCS標(biāo)識(shí)(ID)是一個(gè)唯一的32位標(biāo)識(shí)符。
在VMX體系結(jié)構(gòu)中支持的兩種指令包括VMREAD和VMWRITE,它們分別對(duì)VMCS條目讀寫(xiě)數(shù)據(jù)。這些指令在被執(zhí)行時(shí)可以使用VMCS ID來(lái)定位所要讀寫(xiě)的適當(dāng)VMCS條目。然而,VMREAD和VMWRITE指令一般能夠讀寫(xiě)大小變化的數(shù)據(jù),這些數(shù)據(jù)可以使VMREAD和VMWRITE產(chǎn)生處理時(shí)間和資源的訪問(wèn)。如果VMREAD和VMWRITE訪問(wèn)那些不可訪問(wèn)的數(shù)據(jù),可能導(dǎo)致進(jìn)一步的處理?yè)p失。VMCS數(shù)據(jù)可能由于某些原因而對(duì)VMREAD和VMWRITE指令來(lái)說(shuō)是不可訪問(wèn)的,這些原因例如是VMCS條目包含只寫(xiě)或只讀數(shù)據(jù)字段,或者所述數(shù)據(jù)通常不能被這些指令訪問(wèn)。
VMX體系結(jié)構(gòu)中由VMREAD或VMWRITE招致的處理?yè)p失也可能使得計(jì)算機(jī)系統(tǒng)的性能遭受損害。此外,現(xiàn)有技術(shù)的VMCS ID譯碼系統(tǒng)已不能有效地解決這個(gè)問(wèn)題。

發(fā)明內(nèi)容
為了解決以上問(wèn)題,本發(fā)明提供了一種虛擬機(jī)擴(kuò)展(VMX)體系結(jié)構(gòu)。更具體地說(shuō),本發(fā)明的實(shí)施方案涉及改進(jìn)VMREAD和VMWRITE指令的執(zhí)行性能。根據(jù)本發(fā)明的一個(gè)方面,提供了一種裝置,包括虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)譯碼器,該譯碼器將VMCS ID數(shù)據(jù)譯碼成VMCS字段的地址和偏移值,用以幫助識(shí)別與將被執(zhí)行的至少一條虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的多個(gè)微操作(uop)之一。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種方法,包括從存儲(chǔ)器中取得第一指令;執(zhí)行第一微操作(uop),以存儲(chǔ)與所述第一指令相關(guān)聯(lián)的多個(gè)uop之一的基地址;執(zhí)行第二uop,以將虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)值譯碼成虛擬機(jī)控制結(jié)構(gòu)字段的地址和多個(gè)uop所述之一的偏移值;從由所述基地址和所述偏移值的和所指示的地址發(fā)出第三uop。
根據(jù)本發(fā)明的再一個(gè)方面,提供了一種系統(tǒng),包括存儲(chǔ)單元,其包括虛擬機(jī)管理器(VMM),該管理器包括虛擬機(jī)讀(VMREAD)指令;處理器,其包括虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)譯碼器,該譯碼器對(duì)與所述VMREAD指令相關(guān)聯(lián)的微操作(uop)進(jìn)行譯碼。
根據(jù)本發(fā)明的又一個(gè)方面,提供了一種裝置,包括譯碼裝置,其將VMCS ID數(shù)據(jù)譯碼成VMCS字段的地址和偏移值,用以幫助識(shí)別與將被執(zhí)行的至少一條虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的多個(gè)微操作(uop)之一。


在附圖中以示例而非限制的方式圖示說(shuō)明了本發(fā)明的實(shí)施方案,其中相同的標(biāo)號(hào)表示相似的元件,在附圖中圖1圖示了其中可以使用本發(fā)明實(shí)施方案的虛擬機(jī)環(huán)境。
圖2圖示了其中可以實(shí)現(xiàn)本發(fā)明至少一個(gè)實(shí)施方案的計(jì)算機(jī)系統(tǒng)。
圖3圖示了其中可以實(shí)現(xiàn)本發(fā)明一個(gè)實(shí)施方案的點(diǎn)對(duì)點(diǎn)(PtP)計(jì)算機(jī)系統(tǒng)。
圖4中的流程圖根據(jù)本發(fā)明的一個(gè)實(shí)施方案圖示了VMREAD或VMWRITE指令的操作。
圖5圖示了根據(jù)本發(fā)明一個(gè)實(shí)施方案的邏輯,該邏輯對(duì)虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)字段進(jìn)行譯碼。
具體實(shí)施例方式
本發(fā)明的實(shí)施方案涉及虛擬機(jī)擴(kuò)展(VMX)體系結(jié)構(gòu)。更具體地,本發(fā)明的實(shí)施方案涉及改進(jìn)VMREAD和VMWRITE指令的執(zhí)行性能。
為了改進(jìn)VMX體系結(jié)構(gòu)中的處理性能,本發(fā)明的實(shí)施方案提高了對(duì)虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)字段的譯碼速度。在本發(fā)明的一個(gè)實(shí)施方案中,可位于一個(gè)處理元件(例如微處理器)中的邏輯被用來(lái)通過(guò)利用在VMCS內(nèi)的字段所對(duì)應(yīng)的、在VMCS ID中所提供的信息,來(lái)提高VMREAD或VMWRITE指令可以訪問(wèn)所述字段的速度。
圖1圖示了用于將賓客軟件接口到微處理器的結(jié)構(gòu)(“虛擬機(jī)環(huán)境”)。具體地說(shuō),圖1圖示了將兩個(gè)虛擬機(jī)(VM)105(“賓客軟件”)接口到微處理器110的虛擬機(jī)管理器(VMM)101。在每個(gè)VM內(nèi)運(yùn)行的軟件可以包括賓客操作系統(tǒng)以及各種軟件應(yīng)用。為了將每個(gè)VM與處理器資源(例如寄存器、存儲(chǔ)器和輸入/輸出(“I/O”)資源)相接口,經(jīng)由虛擬機(jī)控制結(jié)構(gòu)(VMCS)115內(nèi)的一組字段(這些字段可能駐留在存儲(chǔ)器120中)可以對(duì)狀態(tài)和控制信息進(jìn)行修改,否則進(jìn)行跟蹤。更具體地說(shuō),諸如VMCS的控制結(jié)構(gòu)一般被用來(lái)在VMM和VM賓客之間傳遞對(duì)處理器資源的控制權(quán)以及訪問(wèn)權(quán)。本發(fā)明至少有一個(gè)實(shí)施方案125可以駐留在處理器中,然而其他實(shí)施方案可以駐留在虛擬機(jī)環(huán)境的其他元件中。
圖2圖示了其中可以使用本發(fā)明的至少一個(gè)實(shí)施方案的計(jì)算機(jī)系統(tǒng)。處理器205從一級(jí)(L1)緩存存儲(chǔ)器210和主存儲(chǔ)器215訪問(wèn)數(shù)據(jù)。在本發(fā)明的其他實(shí)施方案中,緩存存儲(chǔ)器可以是二級(jí)(L2)緩存或者在計(jì)算機(jī)系統(tǒng)存儲(chǔ)器層級(jí)結(jié)構(gòu)中的其他存儲(chǔ)器。在圖2的處理器內(nèi)所圖示的是本發(fā)明的一個(gè)實(shí)施方案206。然而,本發(fā)明的其他實(shí)施方案可以實(shí)現(xiàn)在所述系統(tǒng)內(nèi)的其他設(shè)備中,例如單獨(dú)的總線主體(agent),或者以硬件、軟件或其某種組合的方式分布在整個(gè)系統(tǒng)內(nèi)。
可以用各種存儲(chǔ)器源來(lái)實(shí)現(xiàn)主存儲(chǔ)器,例如動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器(DRAM)、硬盤(pán)驅(qū)動(dòng)器(HDD)220、或者經(jīng)由網(wǎng)絡(luò)接口230位于所述計(jì)算機(jī)系統(tǒng)遠(yuǎn)程的存儲(chǔ)器源,其包含各種存儲(chǔ)設(shè)備和技術(shù)。緩存存儲(chǔ)器可位于處理器內(nèi),或者位于很靠近處理器的地方,例如在處理器的局部總線207上。此外,緩存存儲(chǔ)器可以包含相對(duì)快速的存儲(chǔ)單元,例如6晶體管(6T)單元,或者具有大致相等或者更快訪問(wèn)速度的其他存儲(chǔ)單元。
圖2的計(jì)算機(jī)系統(tǒng)可以是總線主體(例如微處理器)的點(diǎn)對(duì)點(diǎn)(PtP)網(wǎng)絡(luò),這些主體在PtP網(wǎng)絡(luò)上經(jīng)由專(zhuān)用于每個(gè)主體的總線信號(hào)來(lái)進(jìn)行通信。本發(fā)明至少有一個(gè)實(shí)施方案206位于每個(gè)總線主體內(nèi),或者至少與其相關(guān)聯(lián),從而可以有助于以迅速的方式在總線主體之間進(jìn)行存儲(chǔ)操作。
圖3圖示了以點(diǎn)對(duì)點(diǎn)(PtP)配置來(lái)安排的計(jì)算機(jī)系統(tǒng)。具體地說(shuō),圖3示出了處理器、存儲(chǔ)器和輸入/輸出設(shè)備通過(guò)多個(gè)點(diǎn)對(duì)點(diǎn)接口而互連的系統(tǒng)。
圖3的系統(tǒng)也可以包括幾個(gè)處理器,但為清楚起見(jiàn)只示出了兩個(gè)處理器370、380。處理器370、380每一個(gè)都可以包括與存儲(chǔ)器32、34相連的本地存儲(chǔ)器控制器中心(MCH)372、382。處理器370、380可以使用點(diǎn)對(duì)點(diǎn)接口電路378、388,經(jīng)由點(diǎn)對(duì)點(diǎn)接口350來(lái)交換數(shù)據(jù)。處理器370、380每一個(gè)都可以使用點(diǎn)對(duì)點(diǎn)接口電路376、394、386、398,經(jīng)由各自的點(diǎn)對(duì)點(diǎn)接口352、354與芯片組390交換數(shù)據(jù)。芯片組390也可以經(jīng)由高性能圖形接口392,與高性能圖形電路338交換數(shù)據(jù)。
本發(fā)明至少有一個(gè)實(shí)施方案可以位于存儲(chǔ)器控制器中心或處理器的CSI接口372、382內(nèi)。然而,本發(fā)明的其他實(shí)施方案可存在于圖3的系統(tǒng)內(nèi)的其他電路、邏輯單元或設(shè)備中。此外,本發(fā)明的其他實(shí)施方案可以分布在圖3中所圖示的幾個(gè)電路、邏輯單元或設(shè)備內(nèi)。
在本發(fā)明的一個(gè)實(shí)施方案中,VMCS內(nèi)的每個(gè)字段都可以用一個(gè)32位標(biāo)識(shí)符的一部分來(lái)標(biāo)識(shí)。此外,VMCS的某些字段由于不同的體系結(jié)構(gòu)上的原因是可訪問(wèn)的,有些是只讀的,其他則是只寫(xiě)的。另外,所述字段內(nèi)的某些數(shù)據(jù)包含16位信息,而其他數(shù)據(jù)卻包含32位或64位信息。
為了適應(yīng)不同的VMCS字段屬性,例如大小和可訪問(wèn)性,本發(fā)明的實(shí)施方案具有足夠的一般性,足以在執(zhí)行VMREAD或VMWRITE指令以訪問(wèn)諸如16位、32位和64位字段的數(shù)據(jù)大小時(shí),提供改進(jìn)的VMCS ID譯碼性能。此外,本發(fā)明的實(shí)施方案可以提高對(duì)諸如VMREAD和VMWRITE一類(lèi)指令無(wú)法訪問(wèn)的字段進(jìn)行VMCS ID譯碼的性能,從而允許系統(tǒng)更有效率地吸納(absorb)這些情形。
在本發(fā)明的一個(gè)實(shí)施方案中,通過(guò)利用VMCS ID內(nèi)標(biāo)識(shí)由VMREAD或VMWRITE指令尋址的VMCS字段的位置的信息,來(lái)改進(jìn)VMCS ID譯碼。此外,在本發(fā)明的一個(gè)實(shí)施方案中,VMCS ID被利用來(lái)對(duì)VMREAD或VMWRITE指令內(nèi)負(fù)責(zé)執(zhí)行讀/寫(xiě)或者例如為無(wú)效訪問(wèn)發(fā)信令的(一個(gè)或多個(gè))微操作(uop)的起始的偏移量進(jìn)行譯碼。
圖4是圖示了與本發(fā)明的一個(gè)實(shí)施方案有關(guān)的操作的流程圖。在操作401處取得VMREAD或VMWRITE指令,并且該指令被譯碼成單獨(dú)的uop后,在操作405處執(zhí)行uop,其存儲(chǔ)與VMREAD/VMWRITE指令的正確源/目的地相對(duì)應(yīng)的所要執(zhí)行的uop的位置。
例如,如果VMREAD指令的目的地是一個(gè)寄存器,則X被指定為對(duì)應(yīng)于將VMCS數(shù)據(jù)讀入寄存器中的uop的位置。然而,如果VMREAD指令的目的地是一個(gè)存儲(chǔ)器,則X被指定為對(duì)應(yīng)于將VMCS數(shù)據(jù)讀入存儲(chǔ)器中的uop的位置。同樣,如果用于VMWRITE指令的源數(shù)據(jù)來(lái)自一個(gè)寄存器,則X被指定為對(duì)應(yīng)于從寄存器中寫(xiě)出VMCS數(shù)據(jù)的uop的位置。然而,如果用于VMWRITE指令的源數(shù)據(jù)是來(lái)自存儲(chǔ)器,則X被指定為對(duì)應(yīng)于從存儲(chǔ)器中寫(xiě)出VMCS數(shù)據(jù)的uop的位置。
在操作410處,執(zhí)行uop,使得用于特定VMCS字段的VMCS ID被譯碼。在本發(fā)明的一個(gè)實(shí)施方案中,對(duì)VMCS ID的譯碼導(dǎo)致確定出VMCS字段的地址(“Y”)和可被加到X上的偏移值(“Z”),用以確定將分別使得對(duì)應(yīng)于VMREAD或VMWRITE指令的讀操作或?qū)懖僮鞅粓?zhí)行的(一個(gè)或多個(gè))uop的位置。在已計(jì)算出X和Z的和后,在操作415處可以執(zhí)行在uop定序器中對(duì)應(yīng)于這個(gè)和的位置處開(kāi)始的uop。此外,執(zhí)行對(duì)目標(biāo)VMCS字段的訪問(wèn)的uop中至少有一個(gè)可以使用Y值來(lái)獲得所訪問(wèn)字段的地址。
為了實(shí)現(xiàn)本發(fā)明的至少一個(gè)實(shí)施方案,例如圖4的流程圖所示出的實(shí)施方案,邏輯可以被用于所述實(shí)施方案的至少一部分。在其他實(shí)施方案中,在圖4的流程圖中示出的部分或全部操作可以通過(guò)存儲(chǔ)在機(jī)器可讀介質(zhì)上的指令(軟件)來(lái)完成,所述指令在由處理器執(zhí)行時(shí)使得該處理器執(zhí)行包括圖4中所示操作的方法。在其他實(shí)施方案中,軟件和邏輯可被一起用來(lái)執(zhí)行在圖4的流程圖中示出的操作。
圖5圖示了根據(jù)本發(fā)明的一個(gè)實(shí)施方案,包括VMCS ID譯碼器的處理邏輯,其中可以執(zhí)行在圖4的流程圖中示出的操作。具體地說(shuō),圖5的譯碼器圖示了用于存儲(chǔ)和組織由指令取接口502獲取或“取得”的指令(例如VMREAD和VMWRITE)的uop的定序器501。例如在圖4的操作405處所提及的(一個(gè)或多個(gè))uop被從定序器發(fā)出到執(zhí)行單元505,執(zhí)行單元505包含用于生成(在圖4的操作410處提及的)偏移值Z的VMCS ID譯碼器510,可由加法器515將Z加到(在圖4的操作405處提及的)X,以便生成指向在定序器中將被發(fā)到執(zhí)行單元的下一個(gè)uop的指針517。
VMCS ID被譯碼成地址Y,地址Y是指寄存器文件520內(nèi)VMREAD/VMWRITE指令的目標(biāo)字段。在至少一個(gè)實(shí)施方案中,使目標(biāo)字段被訪問(wèn)的uop使用地址Y來(lái)標(biāo)識(shí)目標(biāo)字段。此外,在一個(gè)實(shí)施方案中,Z和X都被存儲(chǔ)在寄存器文件中對(duì)應(yīng)于Y的位置處,隨后被相加以生成uop的定序器內(nèi)的起始點(diǎn),以訪問(wèn)期望的VMCS字段。在X和Z在加法器中相加,從而指明在定序器中將要執(zhí)行的正確的下一個(gè)uop后,根據(jù)指令是VMREAD還是VMWRITE,執(zhí)行正確的讀/寫(xiě)uop并且對(duì)期望數(shù)據(jù)進(jìn)行讀或?qū)?。然后所有的uop通過(guò)退休邏輯525而退休。
在本發(fā)明的一個(gè)實(shí)施方案中,只有五種可能的Z值(如圖4中所示),如果VMCS ID不對(duì)應(yīng)于這些有效字段之一,則Y是未定義的。如果Y是未定義的,意味著所述字段是不可訪問(wèn)的,那么Z將表示在執(zhí)行時(shí)將發(fā)信號(hào)通知無(wú)效VMCS ID的uop的偏移量。相反,如果Y包含一個(gè)定義值,表示所述字段是可訪問(wèn)的,則Z將表示將執(zhí)行VMCS訪問(wèn)(讀或?qū)懖僮?的uop的偏移量。Z與X相加后,將表示指向?qū)?zhí)行期望操作的正確uop的指針。
可以用多種方式實(shí)現(xiàn)這里所圖示的本發(fā)明實(shí)施方案的任何或所有部分,這些方式包括但不限于使用互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)電路器件(硬件)的邏輯、存儲(chǔ)在存儲(chǔ)介質(zhì)內(nèi)的指令(軟件)或者硬件和軟件的組合,所述指令在被諸如微處理器的機(jī)器執(zhí)行時(shí)使得該微處理器執(zhí)行這里所描述的操作。這里提及的“微處理器”或“處理器”是想指因接收到一個(gè)或多個(gè)輸入信號(hào)或指令而執(zhí)行操作的任何機(jī)器或設(shè)備,包括CMOS器件在內(nèi)。
雖然參考圖示的實(shí)施方案描述了本發(fā)明,但是不想以限制性的方式來(lái)解釋這篇說(shuō)明書(shū)。對(duì)本發(fā)明所屬領(lǐng)域的技術(shù)人員而言很清楚的那些對(duì)示意性實(shí)施方案以及其他實(shí)施方案的各種修改都被視為落入本發(fā)明的精神和范圍之內(nèi)。
權(quán)利要求
1.一種裝置,包括虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)譯碼器,以將VMCS ID數(shù)據(jù)譯碼成VMCS字段的地址和偏移值,用以幫助識(shí)別與將被執(zhí)行的至少一條虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的多個(gè)微操作之一。
2.如權(quán)利要求1所述的裝置,還包括寄存器文件,用以存儲(chǔ)所述VMCS字段,并且存儲(chǔ)與所述至少一條虛擬機(jī)指令相關(guān)聯(lián)的第一微操作(uop)的基地址。
3.如權(quán)利要求2所述的裝置,還包括加法器,以將所述偏移值與所述基地址相加,以便生成所述第一uop的地址。
4.如權(quán)利要求3所述的裝置,其中所述偏移值取決于所述VMCS字段的大小,并且取決于所述字段是否能夠只被讀、只被寫(xiě)或者是不可訪問(wèn)的。
5.如權(quán)利要求1所述的裝置,還包括定序器,以存儲(chǔ)所述第一uop以及與所述虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的其他uop。
6.如權(quán)利要求5所述的裝置,其中所述虛擬機(jī)體系結(jié)構(gòu)指令是VMWRITE指令。
7.如權(quán)利要求5所述的裝置,其中所述虛擬機(jī)體系結(jié)構(gòu)指令是VMREAD指令。
8.一種方法,包括從存儲(chǔ)器中取得第一指令;執(zhí)行第一微操作(uop),以存儲(chǔ)與所述第一指令相關(guān)聯(lián)的多個(gè)uop之一的基地址;執(zhí)行第二uop,以將虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)值譯碼成VMCS字段的地址和所述多個(gè)uop之一的偏移值;從由所述基地址和所述偏移值的和所指示的地址發(fā)出第三uop。
9.如權(quán)利要求8所述的方法,其中所述基地址取決于所述第一指令是否將數(shù)據(jù)從所述VMCS字段讀入寄存器或存儲(chǔ)器位置。
10.如權(quán)利要求8所述的方法,其中所述基地址取決于所述第一指令是否將數(shù)據(jù)從寄存器或存儲(chǔ)器位置寫(xiě)入所述VMCS字段。
11.如權(quán)利要求8所述的方法,其中所述偏移值取決于所述VMCS字段的大小。
12.如權(quán)利要求11所述的方法,其中所述偏移值還取決于所述VMCS字段是否可以只被讀,可以只被寫(xiě),或者無(wú)法被讀寫(xiě)。
13.如權(quán)利要求8所述的方法,其中所述第一指令是虛擬存儲(chǔ)器體系結(jié)構(gòu)指令。
14.如權(quán)利要求13所述的方法,其中所述第一指令是執(zhí)行讀操作的指令。
15.如權(quán)利要求13所述的方法,其中所述第一指令是執(zhí)行寫(xiě)操作的指令。
16.一種系統(tǒng),包括存儲(chǔ)單元,其包括虛擬機(jī)管理器(VMM),該管理器包括虛擬機(jī)讀(VMREAD)指令;處理器,其包括虛擬機(jī)控制結(jié)構(gòu)(VMCS)標(biāo)識(shí)(ID)譯碼器,該譯碼器對(duì)與所述VMREAD指令相關(guān)聯(lián)的微操作(uop)進(jìn)行譯碼。
17.如權(quán)利要求16所述的系統(tǒng),其中所述VMM還包括VMWRITE指令,該指令的uop將由所述VMCS ID譯碼器來(lái)譯碼。
18.如權(quán)利要求17所述的系統(tǒng),其中所述VMCS ID譯碼器生成將由所述VMWRITE指令或所述VMREAD指令進(jìn)行訪問(wèn)的VMCS字段地址。
19.如權(quán)利要求18所述的系統(tǒng),其中所述VMCS字段與將從所述字段讀或?qū)λ鲎侄螌?xiě)的訪問(wèn)uop的對(duì)應(yīng)偏移地址相關(guān)聯(lián)。
20.如權(quán)利要求19所述的系統(tǒng),其中所述VMCS ID譯碼器生成所述訪問(wèn)uop的基地址。
21.如權(quán)利要求20所述的系統(tǒng),其中所述訪問(wèn)uop的地址等于所述偏移地址和所述基地址之和。
22.如權(quán)利要求21所述的系統(tǒng),其中所述基地址和所述VMCS字段地址是由譯碼VMCS ID uop的VMCS ID譯碼器生成的。
23.如權(quán)利要求22所述的系統(tǒng),其中所述VMCS ID譯碼器是包括互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)晶體管的邏輯。
24.一種裝置,包括譯碼裝置,以將VMCS ID數(shù)據(jù)譯碼成VMCS字段的地址和偏移值,用以幫助識(shí)別與將被執(zhí)行的至少一條虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的多個(gè)uop之一。
25.如權(quán)利要求24所述的裝置,還包括存儲(chǔ)裝置,以存儲(chǔ)所述VMCS字段,并且存儲(chǔ)與所述至少一條虛擬機(jī)指令相關(guān)聯(lián)的第一微操作(uop)的基地址。
26.如權(quán)利要求25所述的裝置,還包括加法器裝置,以將所述偏移值與所述基地址相加,以便生成所述第一uop的地址。
27.如權(quán)利要求26所述的裝置,其中所述偏移值取決于所述VMCS字段的大小,并且取決于所述字段是否能夠只被讀、只被寫(xiě)或者是不可訪問(wèn)的。
28.如權(quán)利要求25所述的裝置,還包括定序裝置,以存儲(chǔ)所述第一uop以及與所述虛擬機(jī)體系結(jié)構(gòu)指令相關(guān)聯(lián)的其他uop。
29.如權(quán)利要求28所述的裝置,其中所述虛擬機(jī)體系結(jié)構(gòu)指令是VMWRITE指令。
30.如權(quán)利要求28所述的裝置,其中所述虛擬機(jī)體系結(jié)構(gòu)指令是VMREAD指令。
全文摘要
本發(fā)明提供了一種虛擬機(jī)擴(kuò)展(VMX)體系結(jié)構(gòu)。更具體地,本發(fā)明的實(shí)施方案涉及改進(jìn)VMREAD和VMWRITE指令的執(zhí)行性能。
文檔編號(hào)G06F9/318GK1713134SQ20051007971
公開(kāi)日2005年12月28日 申請(qǐng)日期2005年6月24日 優(yōu)先權(quán)日2004年6月25日
發(fā)明者桑喬伊·蒙代爾, 羅伯特·法雷爾 申請(qǐng)人:英特爾公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
泰宁县| 大埔区| 忻州市| 安丘市| 四会市| 伊金霍洛旗| 叶城县| 福鼎市| 若尔盖县| 金塔县| 甘谷县| 牟定县| 玛纳斯县| 宕昌县| 旬邑县| 松原市| 平南县| 班玛县| 车致| 阿图什市| 沧源| 新龙县| 个旧市| 江西省| 阿图什市| 花莲县| 武穴市| 邳州市| 富川| 开封市| 廊坊市| 射洪县| 保康县| 潞城市| 崇仁县| 遂宁市| 仙游县| 上虞市| 迁安市| 娄底市| 宣化县|