国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      執(zhí)行進(jìn)程的遷移的制作方法

      文檔序號(hào):9769167閱讀:501來(lái)源:國(guó)知局
      執(zhí)行進(jìn)程的遷移的制作方法
      【技術(shù)領(lǐng)域】
      [0001]本文所描述的實(shí)施方案一般涉及在平臺(tái)之間迀移當(dāng)前執(zhí)行的應(yīng)用。
      【背景技術(shù)】
      [0002]除非在此處進(jìn)行說(shuō)明,否則此處所描述的材料不是本申請(qǐng)權(quán)利要求的現(xiàn)有技術(shù)并且不因包含在該部分中而承認(rèn)是現(xiàn)有技術(shù)。
      [0003]隨著基于云計(jì)算的快速發(fā)展,數(shù)據(jù)中心負(fù)責(zé)提供用于連續(xù)擴(kuò)展客戶(hù)端的量的特別大量任務(wù)的高效處理。因此,數(shù)據(jù)中心負(fù)擔(dān)著平衡功率使用、硬件額定負(fù)荷、資源負(fù)荷等的需求;換言之,為了高效地且有效地實(shí)施它們的處理使命,數(shù)據(jù)中心需要持續(xù)地追求改進(jìn)的負(fù)荷平衡解決方案。作為這種解決方案的示例,數(shù)據(jù)中心在執(zhí)行且支持的體系結(jié)構(gòu)類(lèi)型方面是多樣化的。例如,其中的處理器可以基于處理需求(例如速度對(duì)強(qiáng)度)來(lái)實(shí)現(xiàn)不同類(lèi)型的指令集體系結(jié)構(gòu)(ISA)。
      [0004]概述
      [0005]在一個(gè)示例性實(shí)施例中,一種在數(shù)據(jù)中心中實(shí)時(shí)迀移的方法,可以包括:JIT(SP時(shí))編譯配置為在源指令集體系結(jié)構(gòu)和目的地指令集體系結(jié)構(gòu)上執(zhí)行的進(jìn)程;將所述源指令集體系結(jié)構(gòu)和所述目的地指令集體系結(jié)構(gòu)上的進(jìn)程的變量和地址堆棧映射成變量和地址堆棧的標(biāo)記形式;以及將變量和地址堆棧的標(biāo)記形式映射到目的地指令集體系結(jié)構(gòu)上。
      [0006]在另一示例性實(shí)施例中,一種迀移進(jìn)程的方法可以包括:在第一指令集體系結(jié)構(gòu)上執(zhí)行進(jìn)程時(shí),編譯進(jìn)程;在進(jìn)程在第一指令集體系結(jié)構(gòu)上執(zhí)行時(shí),生成進(jìn)程的至少一些函數(shù)的函數(shù)映射;在進(jìn)程在第一指令集體系結(jié)構(gòu)上執(zhí)行時(shí),生成進(jìn)程的至少一些變量的變量映射;將來(lái)自函數(shù)映射的函數(shù)映射到進(jìn)程的函數(shù)堆棧;以及將來(lái)自變量映射的變量映射到第二指令集體系結(jié)構(gòu)上的進(jìn)程的對(duì)應(yīng)地址。
      [0007]在又一示例性實(shí)施例中,非暫態(tài)計(jì)算機(jī)可讀介質(zhì)可以存儲(chǔ)可執(zhí)行指令,當(dāng)執(zhí)行時(shí),可執(zhí)行指令可以使虛擬機(jī)管理器將可以在第一平臺(tái)和第二平臺(tái)上執(zhí)行的細(xì)化二元(thinbinary)的至少一個(gè)進(jìn)程進(jìn)行JIT編譯,將細(xì)化二元的至少所述進(jìn)程的函數(shù)地址和函數(shù)堆棧解引用(dereference),將細(xì)化二元的至少所述進(jìn)程的變量地址解引用,以及生成函數(shù)映射以將對(duì)應(yīng)于進(jìn)程的細(xì)化二元表示的函數(shù)和變量連接到第一平臺(tái)和第二平臺(tái)上的等同的指針和地址。
      [0008]在又一示例性實(shí)施例中,非暫態(tài)計(jì)算機(jī)可讀介質(zhì)可以存儲(chǔ)可執(zhí)行指令,當(dāng)執(zhí)行時(shí),所述可執(zhí)行指令可以使一個(gè)或多個(gè)處理器通過(guò)如下操作來(lái)迀移執(zhí)行的應(yīng)用:將來(lái)自可以執(zhí)行細(xì)化二元中所包含的至少一個(gè)進(jìn)程的第一指令集體系結(jié)構(gòu)和第二指令集體系結(jié)構(gòu)的低層級(jí)字典散列表收集到函數(shù)映射集合中;將來(lái)自第一指令集體系結(jié)構(gòu)和第二指令集體系結(jié)構(gòu)的低層級(jí)重命名散列表收集到變量映射集合中;基于函數(shù)映射將來(lái)自第一指令集體系結(jié)構(gòu)的函數(shù)堆棧轉(zhuǎn)移到第二指令集體系結(jié)構(gòu);基于變量映射將來(lái)自第一指令集體系結(jié)構(gòu)的變量轉(zhuǎn)移到第二指令集體系結(jié)構(gòu)。
      [0009]前面的概述僅僅是示例性的,而不意在以任何方式進(jìn)行限制。通過(guò)參考附圖以及下面的詳細(xì)說(shuō)明,除了上文所描述的示例性的方面、實(shí)施例和特征之外,另外的方面、實(shí)施例和特征將變得清晰可見(jiàn)。
      【附圖說(shuō)明】
      [0010]在下面的詳細(xì)說(shuō)明中,僅因?yàn)楦鶕?jù)下面的詳述各個(gè)改變和變型例對(duì)于本領(lǐng)域技術(shù)人員而言將變得顯而易見(jiàn)。在不同的圖中使用相同的附圖標(biāo)記來(lái)指示類(lèi)似或相同的項(xiàng)。
      [0011]圖1示出了依照本文所描述的至少一些實(shí)施例布置的可以實(shí)現(xiàn)迀移執(zhí)行進(jìn)程的示例性的數(shù)據(jù)中心架構(gòu);
      [0012]圖2示出了依照本文所描述的至少一些實(shí)施例布置的圖示出用于迀移執(zhí)行進(jìn)程的示例的數(shù)據(jù)流的框圖;
      [0013]圖3示出了依照本文所描述的至少一些實(shí)施例布置的用于迀移執(zhí)行進(jìn)程的操作的示例的處理流程、和子流程;以及
      [0014]圖4示出了依照本文所描述的至少一些實(shí)施例布置的圖示出可以實(shí)現(xiàn)本文所描述的各個(gè)示例的解決方案的示例的計(jì)算設(shè)備的框圖。
      【具體實(shí)施方式】
      [0015]在下面的詳細(xì)說(shuō)明中,將參考附圖,附圖構(gòu)成了詳細(xì)說(shuō)明的一部分。在附圖中,除非上下文指出,否則相似的符號(hào)通常表示相似的部件。在詳細(xì)說(shuō)明、附圖和權(quán)利要求中所描述的示例性實(shí)施例不意在限制??梢允褂闷渌鼘?shí)施例,并且可以做出其它改變,而不偏離本文呈現(xiàn)的主題的精神或范圍。將易于理解的是,如本文大致描述且如圖中所圖示的,本公開(kāi)的方案能夠以各種不同配置來(lái)布置、替代、組合、分離和設(shè)計(jì),所有這些都在本文中明確地構(gòu)思出。
      [0016]圖1示出了依照本文所描述的至少一些實(shí)施例布置的可以實(shí)現(xiàn)迀移執(zhí)行進(jìn)程的示例的數(shù)據(jù)中心架構(gòu)100。如圖所示,數(shù)據(jù)中心架構(gòu)100可以代表云計(jì)算環(huán)境且包括平臺(tái)A102、平臺(tái)B 104和實(shí)時(shí)迀移器106。
      [0017]平臺(tái)A102和平臺(tái)B 104(可以或者可以不包含在相同的硬件基礎(chǔ)結(jié)構(gòu)中)均可代表了配置為利用彼此不同的相應(yīng)的指令集體系結(jié)構(gòu)(ISA)來(lái)執(zhí)行應(yīng)用的平臺(tái)。如本文所提到的,平臺(tái)可以是指軟件體系結(jié)構(gòu),甚至硬件體系結(jié)構(gòu);并且因此,任一個(gè)或兩個(gè)可以被構(gòu)思用于本文所描述的實(shí)施例。根據(jù)本文所描述的實(shí)施例,正在平臺(tái)A 102上執(zhí)行的應(yīng)用可以被迀移到平臺(tái)B 104。因此,無(wú)論ISA是否是例如x86、高級(jí)RISC機(jī)器(ARM)或Tilera中的一個(gè),本文所描述的示例性實(shí)施例均可以包括:例如當(dāng)虛擬機(jī)(VM)不處于峰值需求時(shí),運(yùn)行(執(zhí)行)進(jìn)程在不同的ISA之間的迀移,從而提高性能。這種迀移可以另外稱(chēng)為實(shí)時(shí)迀移。
      [0018]實(shí)時(shí)迀移器106可以是指管理程序?qū)蛹?jí)上的組件或模塊,其配置、編程或以其他方式設(shè)計(jì)成利于應(yīng)用或程序的至少執(zhí)行進(jìn)程從一個(gè)指令集體系結(jié)構(gòu)到另一個(gè)指令集體系結(jié)構(gòu)的實(shí)時(shí)迀移。為了這樣做,實(shí)時(shí)迀移器106可以將函數(shù)映射和/或變量映射進(jìn)行托管或以其他方式排隊(duì)列,所述函數(shù)映射和/或變量映射提供相應(yīng)的函數(shù)和變量值到提供給平臺(tái)A102和平臺(tái)B104的其細(xì)化二元中的相應(yīng)名稱(chēng)的鏈接。
      [0019]如本文所提到的,指令集體系結(jié)構(gòu)(下文稱(chēng)為“ISA”)可以是指在相應(yīng)的平臺(tái)上執(zhí)行的應(yīng)用或程序的進(jìn)程的編程語(yǔ)言與執(zhí)行相應(yīng)的進(jìn)程的物理硬件之間的接口。平臺(tái)A 102和平臺(tái)B 104中的相應(yīng)一個(gè)的ISA可以包括本地?cái)?shù)據(jù)類(lèi)型、指令、寄存器、尋址模式、存儲(chǔ)器體系結(jié)構(gòu)、中斷與異常處理和外部I/O。
      [0020]如本文進(jìn)一步提到的,在通用層級(jí)上,編譯可以是指將高級(jí)編程語(yǔ)言的應(yīng)用或程序變換成機(jī)器語(yǔ)言或者將應(yīng)用或程序從高級(jí)編程語(yǔ)言變換成機(jī)器語(yǔ)言的函數(shù)或操作。更特別地,如本文所提到的,即時(shí)(JIT)編譯器可以是指配置、編程或以其他方式設(shè)計(jì)成恰在應(yīng)用或程序被執(zhí)行之前,即“即時(shí)”,將應(yīng)用或程序源代碼轉(zhuǎn)換成本地機(jī)器碼的軟件組件或模塊。
      [0021]本文所描述的各示例性實(shí)施例開(kāi)發(fā)了低層級(jí)數(shù)據(jù)庫(kù),其是例如JIT編譯器的后臺(tái)元件,將名稱(chēng)映射到對(duì)象。因?yàn)樽兞亢秃瘮?shù)的名稱(chēng)在源ISA和目的地或目標(biāo)ISA上執(zhí)行的細(xì)化二元中相同,所以這種低層級(jí)數(shù)據(jù)庫(kù)可被用來(lái)將來(lái)自源ISA的變量和地址堆棧映射成標(biāo)記形式,然后隨后映射到目的地或目標(biāo)ISA上。
      [0022]圖2示出了依照本文所描述的至少一些實(shí)施例布置的圖示出用于迀移執(zhí)行進(jìn)程的示例的數(shù)據(jù)流程的框圖200。如圖所示,框圖200描繪了當(dāng)前在平臺(tái)A 102上執(zhí)行的應(yīng)用或程序的至少一個(gè)進(jìn)程迀移到平臺(tái)B 104。根據(jù)本文所描述的示例性實(shí)施例,平臺(tái)A 102和平臺(tái)B104使用不同的ISA,實(shí)時(shí)迀移器106可以利于應(yīng)用或程序的執(zhí)行進(jìn)程從平臺(tái)A 102和平臺(tái)B104中的一個(gè)實(shí)時(shí)迀移到另一個(gè)。為了說(shuō)明的目的,僅通過(guò)示例的方式,下面的說(shuō)明涉及執(zhí)行進(jìn)程從平臺(tái)A 102到平臺(tái)B 104的實(shí)時(shí)迀移,但是基于相同的描述迀移可以反向。
      [0023]如圖2所描繪的,平臺(tái)A 102可以包括至少編譯器206、變量表228、函數(shù)堆棧230、低層級(jí)字典232、重命名字典234以及函數(shù)鏈接字典236。
      [0024]可配置為JIT編譯器的編譯器206可以包括多個(gè)組件,這些組件包括但不限于流分析器218、注解器220、打字器222、變換器224以及編碼生成器226。
      [0025]實(shí)時(shí)迀移器106可以是指可被配置、編程或以其他方式設(shè)計(jì)成將來(lái)自源ISA和目的地或目標(biāo)ISA的來(lái)自應(yīng)用或程序的至少一個(gè)進(jìn)程的中間表示的變量和地址堆棧映射成其標(biāo)記形式的應(yīng)用或程序。因此,實(shí)時(shí)迀移器106可以進(jìn)一步被配置、編程或以其他方式設(shè)計(jì)成將變量和地址堆棧的標(biāo)記形式映射到目的地指令集體系結(jié)構(gòu)上。實(shí)時(shí)迀移器106可以被配置、編程或以其他方式設(shè)計(jì)成接收、存儲(chǔ)和輸出函數(shù)映射210和變量映射212,這可利于將來(lái)自源ISA的變量和地址堆棧映射成標(biāo)記形式,以及然后映射到目的地或目標(biāo)ISA上。
      [0026]多平臺(tái)細(xì)化二元214可以是指可輸送到如x86系統(tǒng)的平臺(tái)A102以及如ARM系統(tǒng)的平臺(tái)B 104兩者的相應(yīng)ISA以及在其上執(zhí)行的應(yīng)用或程序的至少一個(gè)進(jìn)程。
      [0027]變量和函數(shù)216可以是指在多平臺(tái)細(xì)化二元214執(zhí)行期間調(diào)用的變量和函數(shù)的一個(gè)或多個(gè)表格。變量可以是指保持?jǐn)?shù)據(jù)直至新的值被賦予或者應(yīng)用或程序完成執(zhí)行的編程結(jié)構(gòu)。變量可以是局部的,僅在一個(gè)進(jìn)程內(nèi)引用,或者變量可以是全局的,在整個(gè)應(yīng)用或程序中引用。函數(shù)可以是指在應(yīng)用或程序內(nèi)執(zhí)行特定
      當(dāng)前第1頁(yè)1 2 3 4 
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1