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

使用多個頁表的執(zhí)行的制作方法

文檔序號:11774412閱讀:253來源:國知局
使用多個頁表的執(zhí)行的制作方法與工藝

本申請為分案申請,其母案的發(fā)明名稱為“使用多個頁表的執(zhí)行”,申請日為2012年5月9日,申請?zhí)枮?012800724981。



背景技術:

在許多計算場景中使用異構計算系統(tǒng)和設備(例如,使用基于不同指令集架構的多個不同計算處理器的系統(tǒng))。例如,在一些設備中,單獨的cpu和gpu可以位于相同的管芯上。在各種系統(tǒng)中,計算處理器可以被配置為執(zhí)行基于不相同指令集架構(isa)的指令。異構處理器的使用可以提供處理、空間和資源效率。例如,位于相同管芯上的兩個處理器每一個都可以具有對公共儲存器的訪問;這個共享存儲器允許相同的數據被這兩個處理器容易地訪問。

然而,在一些異構計算系統(tǒng)中,資源共享也可能引起問題。一個此類問題在使用支持使用函數指針的程序語言時出現,該程序語言允許指向函數的指針作為數據在線程之間傳送。這些函數指針在具有使用不同isa的異構處理器的傳統(tǒng)系統(tǒng)中并非頻繁地得到很好的支持(或者根本未得到支持)。例如,如果創(chuàng)建了指向在用于第一處理器的第一isa中編寫的函數的指針,則該相同指針以被傳送到在第二處理器上運行的線程而告終。如果第二處理器嘗試執(zhí)行由該函數指針指向的函數,則通常會出現錯誤,因為第二處理器會嘗試執(zhí)行在不支持的isa中編寫的函數。一些系統(tǒng)嘗試通過針對每一個函數存儲兩個指針來解決這一點,但是這并非在所有語言中都適用,諸如例如c和c++。

附圖說明

借助以下結合附圖的詳細描述,將易于理解實施例。為了促進該描述,相似的附圖標記標明相似的結構要素。在附圖的各圖中通過示例而非限制的方式示出了實施例。

圖1示出了根據各種實施例的具有多個頁表的示例性異構執(zhí)行系統(tǒng)。

圖2示出了根據各種實施例的具有多個頁表的異構執(zhí)行系統(tǒng)的示例性虛擬機監(jiān)視器。

圖3示出了根據各種實施例的具有多個頁表執(zhí)行過程的示例性異構執(zhí)行系統(tǒng)。

圖4示出了根據各種實施例的具有多個頁表加載過程的示例性異構執(zhí)行系統(tǒng)。

圖5示出了根據各種實施例的具有多個頁表取碼過程的示例性異構執(zhí)行系統(tǒng)。

圖6示出了根據各種實施例的適合于實現本公開內容的示例性計算環(huán)境。

具體實施方式

在以下的詳細描述中,參考了附圖,附圖形成該詳細描述的一部分,在附圖中,自始至終,相似的標記標明相似的部分,并且在附圖中,借助圖示的方式示出了可實現的實施例。應當理解,在不脫離本公開內容的范圍的情況下,可以利用其他實施例并且可以做出結構或邏輯變化。因此,以下的詳細描述不應是在限制性意義上采取的,并且實施例的范圍由所附權利要求書及其等同物來限定。

各種操作可以以最有助于理解所要求保護的主題的方式被依次描述為多個分立的動作或操作。然而,描述的順序不應解釋為暗示這些操作必須是依賴于順序的。具體而言,這些操作可以不按照呈現的順序執(zhí)行。所描述的操作可以按照與所描述的實施例不同的順序執(zhí)行??梢詧?zhí)行各種附加操作和/或在附加實施例中可以省略所描述的操作。

出于本公開內容的目的,短語“a和/或b”表示(a)、(b)或(a和b)。出于本公開內容的目的,短語“a、b和/或c”表示(a)、(b)、(c)、(a和b)、(a和c)、(b和c)或(a、b和c)。

描述可以使用短語“在一實施例中”或“在實施例中”,其每一個都可以指代一個或多個相同或不同實施例。此外,關于本公開內容的實施例使用的術語“包含”、“包括”、“具有”等是同義的。

如本文所使用的,術語“模塊”可以指代下述各項、是下述各項的一部分或者包括下述各項:專用集成電路(“asic”)、電子電路、執(zhí)行一個或多個軟件或固件程序的處理器(共享的、專用的或者組)和/或存儲器(共享的、專用的或者組)、組合邏輯電路、和/或提供所描述的功能的其他適合的組件。

參考圖1,示出了示出具有多個頁表100(“hes100”)的異構執(zhí)行系統(tǒng)的框圖。在各種實施例中,hes100可以被配置為在異構處理器環(huán)境中選擇性地執(zhí)行可執(zhí)行代碼的不同版本中適當的一個。在各種實施例中,hes100可以被配置為通過使用多個頁表來支持指向用于可執(zhí)行代碼的虛擬存儲器地址的函數指針的使用。因而,在hes100的實施例中,函數指針可以包括虛擬存儲器地址,其諸如由多個頁表之一映射到物理存儲器地址,該物理存儲器地址包含利用函數指針的處理器可執(zhí)行的可執(zhí)行代碼。在虛擬存儲器地址轉換期間(諸如在取碼期間)可以使用映射。在實施例中,當hes100的另一個處理器力圖使用函數指針執(zhí)行其自身的取碼時,與該另一個處理器相關的第二頁表可以被用于將虛擬存儲器地址轉換到不同的物理存儲器地址,在該物理存儲器地址處可以找到該另一個處理器可執(zhí)行的代碼。多個頁表的這種使用允許hes100在對于所指向的每一個函數僅利用一個虛擬存儲器地址的同時支持函數指針。

如所示,在實施例中,一部分源代碼105(例如函數)可以由編譯器110編譯為可執(zhí)行代碼的多個版本(諸如,可執(zhí)行代碼的所示版本113和115)。在各種實施例中,可以借助對hes100的尤其是對在hes100中使用的一個或多個處理器的了解來配置編譯器110。在實施例中,當如此配置編譯器110時,編譯器110可以生成可執(zhí)行代碼的版本113和115,以使用來自在hes100中所使用的處理器的各種isa的指令。例如,如圖1所示,在各種實施例中,編譯器110可以將一部分源代碼105編譯為用于cpu(113)的可執(zhí)行代碼以及用于gpu(115)的可執(zhí)行代碼。在各種實施例中,源代碼105可以包括主線代碼和一個或多個函數;這些函數中的一個或多個可以被編譯為可執(zhí)行代碼的版本113和115。在可替換的實施例中,可以使用不同編譯器來編譯可執(zhí)行代碼的不同版本,諸如由軟件開發(fā)商借助以不同isa的處理器為目標的編譯器。

可執(zhí)行代碼的不同版本113和115隨后可以由加載器120加載,在各種實施例中,加載器120可以可選地被包括在hes100中或者可以是單獨的組件或模塊。在各種實施例中,加載器120可以被配置為將可執(zhí)行代碼的不同版本113和115加載到物理存儲器160中。例如,如所示,可執(zhí)行代碼的不同版本113和115可以被存儲在物理存儲器地址的分離集合(諸如所示的集合ec1物理地址170和ec2物理地址180)處的物理存儲器中。在各種實施例中,加載器120還可以被配置為配置或促進配置頁表(諸如所示的頁表140和150),以支持本文所描述的各種虛擬存儲器地址轉換活動。以下描述由加載器120執(zhí)行的活動的具體示例。

在實施例中,可以借助被配置為執(zhí)行hes100上的可執(zhí)行代碼的一個或多個處理器來配置hes100,諸如第一處理器130和第二處理器135。如上所討論,在各種實施例中,第一處理器130和第二處理器135可以被配置為執(zhí)行基于不同isa的指令。因而,在一些實施例中,第一和第二處理器130和135可以不被配置為執(zhí)行針對其他處理器而編寫的代碼。在一些實施例中,處理器可以包括cpu和gpu;在其他實施例中,可以利用不同的處理器。在各種實施例中,也可以利用多于兩個處理器。

在各種實施例中,第一和第二處理器130和135可以被配置為利用虛擬存儲器。具體而言,在各種實施例中,第一和第二處理器130和135可以與多個頁表相關聯(lián),諸如頁表140和150,以便使虛擬存儲器管理器將要由處理器訪問的虛擬存儲器地址轉換為物理存儲器地址。在各種實施例中,多個頁表140和150可以被配置為將一個或多個虛擬存儲器地址轉換為與包含代碼的存儲器區(qū)相關聯(lián)的不同物理存儲器地址。因而,如圖1所示,頁表140和150每一個都可以包含要在虛擬存儲器地址的特定集合處名義上找到可執(zhí)行代碼的信息(例如,被示為ecvm地址155的虛擬存儲器地址的集合)。然而,在各種實施例中,頁表140和150每一個都可以被配置為將這些虛擬存儲器地址轉換為實際上找到可執(zhí)行代碼的物理存儲器位置的分離的物理存儲器地址。因而,如圖1所示,頁表140和150可以被配置為根據用于轉換的頁表將ecvm地址155的地址集合中的地址輸出轉換為物理存儲器地址ec1物理地址170的集合或者物理存儲器地址ec2物理地址180的集合。如上所討論,由hes100對這些多個頁表的使用允許由hes100選擇性地使用可執(zhí)行代碼的多個版本,同時仍允許使用單一虛擬存儲器地址來指向代碼,如同僅存在一個版本。

圖2示出了根據各種實施例的hes100的示例性虛擬機監(jiān)視器200(“vmm200”)。在各種實施例中,vmm200可以被配置為實施本文所述的hes100的一個或多個操作。在各種實施例中,vmm200可以被配置為轉換由第一和/或第二處理器130和135進行的存儲器訪問。例如,第一處理器130和/或第二處理器135可以執(zhí)行利用虛擬存儲器的虛擬機(未示出)中的客戶軟件。作為客戶軟件的操作的一部分,第一處理器130和/或第二處理器135可以力圖在一個或多個虛擬存儲器地址處執(zhí)行存儲器訪問。在一些實施例中,這些存儲器訪問可以包括取碼和/或數據訪問。

如圖2所示,vmm200可以包括頁表140和150。在各種實施例中,頁表140和/或150可以被配置為與第一和第二處理器130和135相關聯(lián)。在一些實施例中,頁表140和150中的任一個都可以僅與單個處理器相關聯(lián);在其他實施例中,頁表140和150中的任一個或這二者都可以與多個處理器相關聯(lián)。在實施例中,如果頁表與多個處理器相關聯(lián),則這些處理器可以被配置為按照相同isa進行操作。

在實施例中,頁表140和150可以被配置為將虛擬存儲器地址的公共集合示出為尋址相同的可執(zhí)行代碼。在附圖中由被包含在頁表140和150中的每一個中的相同位置中的ecvm地址155的集合展示虛擬存儲器地址的該公共集合的實施例。在各種實施例中,ecvm地址155中的地址可以由頁表140和150中的每一個映射到物理存儲器地址的分離集合中,諸如,ec1物理地址170和ec2物理地址180。如上所討論,在各種實施例中,物理存儲器地址的這些集合可以由加載器120確定,加載器120被配置為將可執(zhí)行代碼的各種版本存儲到由ec1物理地址170和ec2物理地址180包含的不同位置處的物理存儲器中。

如上所討論,在各種實施例中,盡管頁表140和150可以被配置為將可執(zhí)行代碼的公共虛擬存儲器地址的集合映射到分離的物理存儲器地址。另外,在各種實施例中,頁表140和150可以被配置為將與數據儲存相關的虛擬存儲器地址映射到物理存儲器地址的公共集合。因而,如所示,頁表140和150可以被配置為將來自數據虛擬存儲器地址210的集合的虛擬存儲器地址映射到數據物理存儲器地址220的集合。在各種實施例中,可以由hes100所利用的多個頁表中的每一個將這些與數據相關的虛擬存儲器地址與物理存儲器地址的相同集合相關聯(lián)。在實施例中,通過利用將與數據相關的虛擬存儲器地址映射到相同物理存儲器地址的頁表140和150,hes100的vmm200可以允許在仍促進使用函數指針的同時,異構的第一處理器130和第二處理器135具有對相同數據的訪問,諸如如上所述。

圖3示出了根據各種實施例的示例性hes100過程300。在各種實施例中,可以在hes100上執(zhí)行過程300以編譯、加載和執(zhí)行可執(zhí)行代碼。該過程可以在操作310處開始,其中編譯器110可以將一部分源代碼105編譯為可執(zhí)行代碼的多個版本,例如可執(zhí)行代碼的版本113和115。如上所討論,在各種實施例中,可執(zhí)行代碼的每一個版本都可以包含基于不同isa的指令,且因而每一個都可以是hes100中的不同處理器可執(zhí)行的。接下來,在操作320處,加載器120可以將可執(zhí)行代碼的不同版本加載到hes100中。以下參考圖4的過程400來討論這個操作的具體實施例。接下來,在操作330處,hes100可以使用多個頁表選擇性地執(zhí)行可執(zhí)行代碼的適當版本。在實施例中,操作330可以包括使用函數指針的一個或多個取碼。以下參考圖5的過程500來討論這些取碼的具體實施例。隨后,該過程可以結束。

圖4示出了根據各種實施例的示例性hes100過程400。該過程可以在操作420處開始,其中加載器120可以確定由編譯器110生成的可執(zhí)行代碼的不同版本的大小。隨后,在操作430處,加載器120可以基于在操作420處確定的大小來選擇要被映射到可執(zhí)行代碼的不同版本的虛擬存儲器地址。在各種實施例中,加載器可以被配置為選擇可執(zhí)行代碼的不同版本的最大的大小作為將被映射到可執(zhí)行代碼的版本的虛擬存儲器地址集合的大小。在實施例中,通過選擇最大的大小,可以配置加載器120以使得虛擬存儲器地址集合至少與在物理存儲器中存儲的可執(zhí)行代碼的任一個版本一樣大。另外,通過選擇最大的大小,加載器120可以更好地提供任何處理器要一直在相同虛擬存儲器地址處找到的函數,不管該處理器所使用的可執(zhí)行代碼的版本的大小如何。在實施例中,因而,諸如當與可執(zhí)行代碼的大小較小的版本相比時,可以填充虛擬存儲器地址集合以達到該所選擇的大小。

接下來,在操作440處,加載器120可以被配置為將可執(zhí)行代碼的多個版本加載到物理存儲器中。在各種實施例中,加載器可以將可執(zhí)行代碼的每一個版本加載到物理存儲器地址的鄰接集合處的存儲器中;在其他實施例中,可以將可執(zhí)行代碼的每一個版本存儲在分離的不鄰接物理存儲器段中。在各種實施例中,加載器120可以被配置為將可執(zhí)行代碼的各種版本加載到物理存儲器的大小相等的段中。在各種實施例中,加載器120可以被配置為將可執(zhí)行代碼的各種版本加載到在大小上等于在操作430處選擇的大小的物理存儲器段中。因而,在一些實施例中,加載器120可以被配置為填充由可執(zhí)行代碼的較小版本占用的物理存儲器,以使得可執(zhí)行代碼的該版本占用與其他版本相同量的物理存儲器空間。在其他實施例中,可以將可執(zhí)行代碼的多個版本存儲在不同大小的存儲器段中,不管它們是否是由相同虛擬存儲器地址集合映射到的。

接下來,在操作450處,加載器120可以被配置為將頁表(諸如頁表140和150)配置成包括針對可執(zhí)行代碼的各種版本的虛擬存儲器地址。在各種實施例中,加載器可以在操作450處生成頁表。在其他實施例中,加載器120可以被配置為將針對可執(zhí)行代碼的各種版本的虛擬存儲器地址和物理存儲器地址之間的映射寫入到已經創(chuàng)建的頁表中。在另外其他實施例中,加載器120可以被配置為向vmm100(或其他實體)提供關于映射的信息,用于頁表140和150的創(chuàng)建或配置。隨后,該過程可以結束。

圖5示出了根據各種實施例的示例性hes100取碼過程500。在各種實施例中,可以通過過程在處理器上的執(zhí)行來執(zhí)行過程500,其中,將函數指針傳送到該過程,并且處理器嘗試將執(zhí)行切換到由函數指針指向的函數。盡管參考單個處理器描述了過程500,但可以認識到,在各種實施例中,可以使用相同的函數指針針對hes100中的不同的處理器重復該過程。

該過程可以在操作510處開始,其中在hes100的處理器之一上執(zhí)行的過程可以接收函數指針。在各種實施例中,所指向的函數可以與源代碼105和上述可執(zhí)行代碼的版本之一113或115相關聯(lián)。

接下來,在操作520處,hes100可以依據函數的指向可執(zhí)行代碼的函數指針來確定虛擬存儲器地址。如上所討論,在各種實施例中,虛擬存儲器地址可以相同,不管當前過程正在哪個處理器上執(zhí)行。接下來,在操作530處,處理器可以嘗試針對由函數指針指向的可執(zhí)行代碼(例如,處理器預期在操作520處確定的虛擬存儲器地址處找到的可執(zhí)行代碼)的取碼。

接下來,在操作540處,vmm200可以使用與處理器相關聯(lián)的頁表(例如,頁表140或150)轉換虛擬存儲器地址。隨后,在操作550處,處理器可以從在經轉換的物理存儲器地址處找到的物理存儲器訪問可執(zhí)行代碼。隨后,在操作560處,可以由處理器執(zhí)行所訪問的代碼。隨后,該過程可以結束。

圖6示出了針對一個實施例的適于實現本公開內容的實施例的示例性計算機系統(tǒng)600。如所示,示例性計算機系統(tǒng)600可以包括耦合到至少一個處理器604的控制邏輯608、耦合到系統(tǒng)控制邏輯608的系統(tǒng)存儲器612、耦合到系統(tǒng)控制邏輯608的非易失性存儲器(nvm)/儲存設備616、和耦合到系統(tǒng)控制邏輯608的一個或多個通信接口620。在各種實施例中,一個或多個處理器604可以是處理器核。

一個實施例的系統(tǒng)控制邏輯608可以包括任何適合的接口控制器,其用以提供面向至少一個處理器604和/或與系統(tǒng)控制邏輯608通信的任何適合的設備或組件的任何適合的接口。

一個實施例的系統(tǒng)控制邏輯608可以包括一個或多個存儲器控制器,其用以提供面向系統(tǒng)存儲器612的接口。系統(tǒng)存儲器612可以用于加載和存儲例如用于系統(tǒng)600的數據和/或指令。在一個實施例中,例如,系統(tǒng)存儲器612可以包括任何適合的易失性存儲器,諸如適合的動態(tài)隨機存取存儲器(“dram”)。

在一個實施例中,系統(tǒng)控制邏輯608可以包括一個或多個輸入/輸出(“i/o”)控制器,其用以提供面向nvm/儲存設備616和通信接口620的接口。

nvm/儲存設備616可以例如用于存儲數據和/或指令。nvm/儲存設備616可以包括例如任何適合的非易失性存儲器,諸如閃存,和/或可以包括例如任何適合的非易失性儲存設備,諸如一個或多個硬盤驅動器(“hdd”)、一個或多個固態(tài)驅動器、一個或多個壓縮盤(“cd”)驅動器、和/或一個或多個數字多功能盤(“dvd”)驅動器。

nvm/儲存設備616可以包括系統(tǒng)600被安裝于其上的設備的儲存資源物理部分,或者它可以是設備可訪問的但不必是設備的一部分。例如,可以經由通信接口620通過網絡訪問nvm/儲存設備616。

具體而言,系統(tǒng)存儲器612和nvm/儲存設備616可以包括異構執(zhí)行邏輯624的暫時和永久拷貝。異構執(zhí)行邏輯624可以包括指令,該指令在由至少一個處理器604執(zhí)行時導致系統(tǒng)600借助上述多個頁表相關操作實施一個或多個異構執(zhí)行。在一些實施例中,異構執(zhí)行邏輯624還可以附加地/可替換地位于系統(tǒng)控制邏輯608中。

通信接口620可以提供接口以供系統(tǒng)600通過一個或多個網絡和/或與任何其他適合的設備進行通信。通信接口620可以包括任何適合的硬件和/或固件,諸如網絡適配器、一個或多個天線、無線接口等等。在各種實施例中,通信接口620可以包括接口以供系統(tǒng)600使用nfc、光通信(例如條形碼)、藍牙或其他類似的技術來與另一個設備直接(例如無中間物)通信。

對于一個實施例,至少一個處理器604可以被與系統(tǒng)控制邏輯608和/或異構執(zhí)行邏輯624封裝在一起。對于一個實施例,至少一個處理器604可以被與系統(tǒng)控制邏輯608和/或異構邏輯624封裝在一起,以構成系統(tǒng)級封裝(“sip”)。對于一個實施例,至少一個處理器604可以被與系統(tǒng)控制邏輯608和/或異構執(zhí)行邏輯624集成在相同管芯上。對于一個實施例,至少一個處理器604可以被與系統(tǒng)控制邏輯608和/或異構執(zhí)行邏輯624集成在相同管芯上,以構成片上系統(tǒng)(“soc”)。

以下段落描述了各種實施例的示例。在各種實施例中,一種用于執(zhí)行異構計算裝置上的函數的異構計算裝置可以包括物理存儲器。所述裝置還可以包括第一計算機處理器,所述第一計算機處理器耦合到物理存儲器,并被配置為支持第一指令集架構。所述裝置還可以包括第二計算機處理器,所述第二計算機處理器耦合到物理存儲器,并被配置為支持第二指令集架構。所述裝置還可以包括虛擬機管理器,所述虛擬機管理器被配置為在所述裝置的一個或多個計算機處理器上操作以將虛擬存儲器地址轉換為物理存儲器地址。虛擬存儲器管理器可以被配置為操作以使用第一頁表或第二頁表中的所選擇的一個頁表,將與第一或第二計算機處理器的取碼相關的虛擬存儲器地址轉換為物理存儲器的對應物理存儲器地址,其中,使用第一或第二頁表中的哪一個頁表取決于虛擬存儲器地址與第一還是第二計算機處理器的取碼相關。

在各種實施例中,第一頁表可以被配置為將虛擬存儲器地址映射到第一物理存儲器地址,并且第二頁表可以被配置為將虛擬存儲器地址映射到與第一物理存儲器地址不同的第二物理存儲器地址。在各種實施例中,物理存儲器可以被配置為包含處于包括第一物理存儲器地址的第一物理存儲器區(qū)中的函數的第一可執(zhí)行代碼和處于包括第二物理存儲器地址的第二物理存儲器區(qū)中的函數的第二可執(zhí)行代碼,并且第一和第二物理存儲器區(qū)可以是不同的物理存儲器區(qū)。在各種實施例中,第一和第二指令集架構可以不同。在各種實施例中,第一可執(zhí)行代碼可以包括第一指令集架構的指令,并且第二可執(zhí)行代碼可以包括第二指令集架構的指令。

在各種實施例中,所述裝置可以進一步包括加載器,所述加載器被配置為在所述裝置的一個或多個計算機處理器上操作。加載器可以被配置為將第一可執(zhí)行代碼加載到第一物理存儲器區(qū)中并將第二可執(zhí)行代碼加載到第二物理存儲器區(qū)中。在各種實施例中,加載器可以進一步被配置為操作以將第一和第二頁表的配置促進成將與取碼相關的虛擬存儲器地址映射到對應的第一和第二物理存儲器地址。

在各種實施例中,虛擬存儲器地址可以與基于包括虛擬存儲器地址的函數指針的取碼相關,函數指針對第一計算機處理器和第二計算機處理器二者來說都可用。在各種實施例中,虛擬存儲器地址可以作為自變量而被傳送到在第一計算機處理器上執(zhí)行的可執(zhí)行代碼和在第二計算機處理器上執(zhí)行的可執(zhí)行代碼二者。

在各種實施例中,一種計算機實施的方法可以促進代碼在異構計算設備上的執(zhí)行,異構計算設備包括利用第一指令集的第一計算機處理器和利用第二指令集的第二計算機處理器。所述方法可以包括:由在計算設備上操作的加載器分別在第一和第二物理存儲器區(qū)處將基于第一指令集的函數的第一可執(zhí)行代碼和基于第二指令集的函數的第二可執(zhí)行代碼加載到計算設備的物理存儲器中,所述加載是響應于將函數的可執(zhí)行代碼加載到計算設備上的存儲器中的請求來執(zhí)行的,所述可執(zhí)行代碼包括第一可執(zhí)行代碼和基于第二指令集的函數的第二可執(zhí)行代碼。所述方法還可以包括由加載器促進第一和第二頁表的配置以用于轉換由對應的第一和第二計算機處理器進行的虛擬存儲器訪問,第一和第二頁表將用于對函數的取碼的虛擬存儲器地址映射到對應的第一和第二物理存儲器區(qū)中的物理地址。

在各種實施例中,所述方法可以進一步包括由加載器將第一和第二頁表的配置促進成將與包括用于取碼的虛擬存儲器地址的公共虛擬存儲器區(qū)相關的虛擬存儲器地址映射到第一和第二物理存儲器區(qū)的物理存儲器地址。

在各種實施例中,所述方法可以進一步包括:由加載器基于第一可執(zhí)行代碼和第二可執(zhí)行代碼各自的大小來選擇公共虛擬存儲器區(qū)的大小。在各種實施例中,選擇大小可以包括:至少部分基于第一可執(zhí)行代碼的大小和第二可執(zhí)行代碼的大小中較大的一個來選擇公共大小。

用于執(zhí)行上述技術的計算機可讀介質(包括非暫時性計算機可讀介質)、方法、系統(tǒng)和設備是本文公開的實施例的說明性示例。另外,上述交互中的其他設備可以被配置為執(zhí)行各種公開的技術。

盡管本文出于描述的目的示出并描述了特定實施例,但在不脫離本公開內容的范圍的情況下,可以用被計劃以實現相同目的的各種可替換的和/或等效的實施例或實現方式替代所示出和描述的實施例。本申請旨在覆蓋本文討論的實施例的任何改編或變形。因此,明確的意圖是,本文所述的實施例僅由權利要求書來限定。

在本公開內容記載了“一”元素或“第一”元素或者其等同物的情況下,這種公開內容包括一個或多個這種元素,既不要求也不排除兩個或更多個這種元素。此外,所標識的元素的序數指示符(例如第一、第二或第三)用于在元素之間進行區(qū)分,并非指示或暗示這種元素的要求或受限數量,它們也不指示這種元素的特定位置或順序,除非以其他方式具體聲明。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
政和县| 迁西县| 拉萨市| 临猗县| 德州市| 阳新县| 榆树市| 嘉兴市| 玉门市| 孟津县| 偃师市| 准格尔旗| 苍梧县| 遂昌县| 罗甸县| 蒲城县| 肇州县| 龙南县| 饶河县| 桃江县| 慈利县| 灵寿县| 庄浪县| 抚远县| 南康市| 尉氏县| 翁源县| 大关县| 留坝县| 大新县| 涞源县| 娄烦县| 临泉县| 陆川县| 衡阳市| 鲜城| 苏尼特左旗| 北宁市| 桦甸市| 临潭县| 张北县|