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

用于管理頁替換的方法和系統(tǒng)的制作方法

文檔序號:6554551閱讀:289來源:國知局
專利名稱:用于管理頁替換的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明總體涉及計算機存儲器資源的管理,具體地,涉及虛擬存儲器頁的分配和替換。更具體地,本發(fā)明涉及用于管理使用多個頁面大小的虛擬存儲器系統(tǒng)中的頁替換操作的系統(tǒng)和方法。
背景技術(shù)
虛擬存儲器是大多數(shù)與存儲器管理硬件結(jié)合的現(xiàn)代操作系統(tǒng)所支持的一個重要特征。虛擬存儲器實質(zhì)上提供另一組存儲器地址。程序使用這些虛地址而不是實地址來存儲指令和數(shù)據(jù)。當被程序線程調(diào)用時,這些虛地址被轉(zhuǎn)換成物理或“實”存儲器地址。
為了便于將虛擬存儲器復制到實存中,幾乎所有現(xiàn)代操作系統(tǒng)都將虛擬存儲器劃分為頁,每一頁包含固定數(shù)量的地址。每一頁都被存儲在盤上,直到需要它。當需要某一頁時,操作系統(tǒng)將它從盤復制到主存儲器,將其虛地址轉(zhuǎn)換成實地址。實現(xiàn)虛擬存儲器的基礎(chǔ)是請求調(diào)頁的概念,指系統(tǒng)(通常是操作系統(tǒng))而不是程序員控制現(xiàn)時進程所需的頁進出主存儲器的替換。當一個進程需要一個非常駐的頁時,操作系統(tǒng)使用指定的替換策略來判定哪個常駐的存儲器頁將被所請求的頁替換。大部分常規(guī)替換策略,諸如最近最少使用(LRU)、先入先出(FIFO)等,通常對選擇來替換的目標,即將在最長時間內(nèi)不會被引用的頁進行共享。
為了改進系統(tǒng)性能,許多計算機體系結(jié)構(gòu)和操作系統(tǒng)已經(jīng)開始增加對多個頁面大小的支持。例如,在使用4K字節(jié)和64K字節(jié)兩個頁面大小的系統(tǒng)中,通過為各個頁面大小保留存儲器的指定部分來設(shè)置頁面大小之間的存儲器的相對分配。為了改進系統(tǒng)可靠性和可用性,操作系統(tǒng)理論上將自主地確定為每個頁面大小使用多少系統(tǒng)存儲器并在任意給定時間點根據(jù)特定工作負荷需求動態(tài)地調(diào)整這些量。
當已對所請求的頁面大小分配了所有頁框時,該操作系統(tǒng)必須確定如何處理對該頁面大小的頁框的進一步請求。操作系統(tǒng)傳統(tǒng)上有兩個基本選項。首先,可以對所請求的頁面大小的頁框啟用頁替換?;蛘?,可以將當前未分配的,或為未請求的大小保留的“空閑”存儲器轉(zhuǎn)變成所請求的頁面大小的塊,并用于滿足這些頁框分配請求。使用這些選項,當空閑頁框可用時,操作系統(tǒng)能夠選擇頁面大小轉(zhuǎn)換選項而不是代價更高的頁替換選項。
但是,當存儲器利用足夠高從而任意頁面大小中不存在足夠的空閑頁框來滿足分配請求時,必須使用頁替換(有時稱作頁面交換)釋放存儲器以復制進所請求的頁。本領(lǐng)域中存在這樣一種需求,即以改進系統(tǒng)效率和可靠性的方式確定對于所請求的頁面大小或其他頁面大小是否應該執(zhí)行頁替換。本發(fā)明便針對于現(xiàn)有技術(shù)所未解決的這一和其他需求。

發(fā)明內(nèi)容
這里公開了一種在使用多個頁面大小進行虛擬存儲器頁面調(diào)度的數(shù)據(jù)處理系統(tǒng)中用于管理頁替換的系統(tǒng)、方法和制造物品。在一個實施例中,該頁替換方法開始于諸如隨缺頁而產(chǎn)生的頁框分配請求。調(diào)用頁替換過程以選擇要由所請求的頁替換的一頁或多頁。在優(yōu)選實施例中,上述頁替換包括根據(jù)多個頁面大小中的至少一個頁面大小的頁面類型分配,選擇要用于針對上述頁框分配請求的頁替換的頁面大小。當操作系統(tǒng)接收到對于具有較低水平的可用頁框的頁面大小池的頁框的請求時,該操作系統(tǒng)檢查其他頁面大小是否具有比所請求的頁面大小高得多的百分比的文件頁。如果它們具有,則操作系統(tǒng)可以另一頁面大小而不是所請求的頁面大小為目標進行頁替換,以最小化工作存儲器數(shù)并改進系統(tǒng)性能。
在下面的詳細描述中,本發(fā)明的以上以及其他目的、特征和優(yōu)點將變得顯而易見。


在所附權(quán)利要求中列出了被認為是本發(fā)明的特征的新穎特征。然而,結(jié)合附圖,參照下面對示例性實施例的詳細描述,本發(fā)明本身、優(yōu)選的使用模式及其進一步的目的和優(yōu)點將會得到最好的理解,其中圖1是示出適于實現(xiàn)本發(fā)明的實施例的數(shù)據(jù)處理系統(tǒng)的框圖;圖2是根據(jù)本發(fā)明示出被執(zhí)行用于處理存儲器訪問請求的步驟的高級流程圖;圖3A是根據(jù)本發(fā)明的一個實施例示出被執(zhí)行用于處理頁替換的步驟的高級流程圖;以及圖3B是根據(jù)本發(fā)明的可選實施例示出被執(zhí)行用于處理頁替換的步驟的高級流程圖。
具體實施例方式
本發(fā)明提供一種機制,通過該機制,操作系統(tǒng)、存儲器管理單元、虛擬存儲器管理器和/或其他類似設(shè)備或模塊可選擇對于其將執(zhí)行頁替換的頁面大小。優(yōu)選地,如下面參照附圖所進一步詳細解釋的,該選擇是基于對于每個頁面大小的一種或多種“類型”的存儲器頁的使用或分配的水平之上的。如此處所使用的,并且在一個實施例中,頁“類型”可指包含在給定頁中的數(shù)據(jù)的類型特征。在一個優(yōu)選實施例中,頁類型將給定頁特征化為包含常駐數(shù)據(jù)的常駐存儲頁(或稱為文件存儲頁或簡稱為文件頁),或包含處理支持數(shù)據(jù)的工作存儲頁。
現(xiàn)在參照附圖,其中相同的參考標號指相同及相應的部分,具體地,參照圖1,其示出了適于實現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)100。為了討論的目的,該數(shù)據(jù)處理系統(tǒng)被描述為諸如可用于大型服務(wù)器/存儲應用的多處理器計算機系統(tǒng)。但是,如此處所使用的,術(shù)語“數(shù)據(jù)處理系統(tǒng)”、“計算機”等實質(zhì)上都旨在指能夠運行軟件產(chǎn)品的任何類型的計算設(shè)備或機器。
數(shù)據(jù)處理系統(tǒng)100包括通信連接到網(wǎng)絡(luò)104的電子設(shè)備102。電子設(shè)備102包括通過互連120連接到輔助存儲器110和主存儲器115的處理器105,互連120可包括一條或多條共享總線或交換連接的任意組合?;ミB120可代表例如PCI(外圍部件互連)、ISA(工業(yè)標準體系結(jié)構(gòu))、X總線、EISA(擴展工業(yè)標準體系結(jié)構(gòu))的一條或多條總線,或任何其他適合的總線和/或橋(也稱總線控制器)。盡管電子設(shè)備102被示為僅包含單個處理器105和單個系統(tǒng)互連120,但是本發(fā)明同樣應用于可具有部分或全部以不同方式執(zhí)行不同功能的多個處理器和多個總線的電子設(shè)備。
可以使用諸如個人計算機的任何適當?shù)挠布?或軟件來實現(xiàn)電子設(shè)備102。便攜式計算機、膝上型或筆記本計算機、PDA(個人數(shù)字助理)、袖珍計算機、電話、尋呼機、汽車,遠程會議系統(tǒng)、設(shè)備和主計算機都是電子設(shè)備102的其他可能配置的例子。圖1所示的硬件和軟件可針對特定的應用而變化,并可包括比所示出的組件要多或要少的組件。例如,可以使用諸如音頻適配器的其他外圍設(shè)備或諸如EPROM(可擦可編程只讀存儲器)編程設(shè)備的芯片編程設(shè)備附加于或者替代所示出的硬件。
網(wǎng)絡(luò)104可以是任何適當?shù)木W(wǎng)絡(luò)或網(wǎng)絡(luò)的組合,并可支持任何適于數(shù)據(jù)和/或代碼入/出電子設(shè)備102的通信的適當協(xié)議。在各種實施例中,網(wǎng)絡(luò)104可包括直接或間接地連接到電子設(shè)備102的存儲設(shè)備或存儲設(shè)備的組合。
處理器105代表任何類型的體系結(jié)構(gòu)的一個或多個中央處理單元,這些體系結(jié)構(gòu)諸如CISC(復雜指令集計算)、RISC(精簡指令集計算)、VLIW(超長指令字)或混合體系結(jié)構(gòu),不過任何適當?shù)奶幚砥鞫际强梢允褂玫?。處理?05執(zhí)行指令并包括電子設(shè)備102的控制整個系統(tǒng)操作的部分。支持其控制功能,處理器105讀取和/或存儲代碼和數(shù)據(jù)入/出輔助存儲器110和/或主存儲器115。盡管圖1中未示出,但是處理器105可包括各種對于理解本發(fā)明來說非必要的其他組件。例如,處理器105通??砂ㄓ糜谠谔幚砥髦芷趦?nèi)執(zhí)行指令的多種執(zhí)行部件、用于與互連120接口的總線接口部件、用于取指令的訪問程序和用于保存指令和數(shù)據(jù)的隊列和/或高速緩存。在其他的實施例中,處理器105包括其他對于本領(lǐng)域技術(shù)人員來說公知的適當組件。
輔助存儲器110代表用于存儲數(shù)據(jù)的一個或多個機構(gòu)。例如,輔助存儲器110可包括隨機存儲器(RAM)、磁盤存儲介質(zhì)、光存儲介質(zhì)、閃存設(shè)備和/或其他機器可讀介質(zhì)。在其他的實施例中,任何適當類型的存儲設(shè)備都可包括在輔助存儲器110內(nèi)。盡管只示出了一個輔助存儲器110,但可存在多個存儲設(shè)備和多種類型及級別的存儲設(shè)備。此外,盡管被示于電子設(shè)備102內(nèi),但諸如當電子設(shè)備通過網(wǎng)絡(luò)104互聯(lián)時,輔助存儲器110可跨其他的電子設(shè)備而分布。
輔助存儲器110包括虛擬存儲器管理器140。虛擬存儲器管理器140包括能被處理器105執(zhí)行的電子或軟件編碼的指令和/或能被在執(zhí)行下面參照圖2和圖3所描述的頁分配和替換中在處理器105上執(zhí)行的指令所解釋的語句。在一個實施例中,虛擬存儲器管理器140的部分或全部功能可通過邏輯門和/或其它硬件機構(gòu)所實現(xiàn)。虛擬存儲器管理器140可執(zhí)行頁面調(diào)度功能以在輔助存儲器110和主存儲器115之間移動頁(包括本身)。該虛擬存儲器管理器140的功能在下面參照圖2和圖3進一步描述。
主存儲器115代表用于存儲數(shù)據(jù)的一個或多個機構(gòu)。例如,主存儲器115可包括任何適當類型的高速緩存或隨機存儲器。盡管只示出了一個主存儲器115,但可存在多個存儲器和多種類型及級別的存儲器。在一個實施例中,主存儲器115比輔助存儲器110小,但具有更快的存取時間。
處理器105包括訪問頁表106的存儲器管理單元(MMU)125和轉(zhuǎn)換旁視緩沖區(qū)(TLB)128。頁表106本身可包括一個或多個存儲器頁并與相關(guān)的虛擬存儲器盤映射(未示出)一起描述數(shù)據(jù)處理系統(tǒng)100的整個尋址空間。頁表106一般包括標識主存儲器115中的頁及包含那些頁的頁框的頁表條目。為此,頁表106的頁表條目包含各種數(shù)據(jù)字段和標志。根據(jù)一個實施例,優(yōu)選地,這些字段包括指示該頁當前是否處于主存儲器115中的存在標志、指示該頁數(shù)據(jù)在處于主存儲器115中時是否已被修改的修改標志、標識頁框因而標識該頁在存儲器中的位置的頁框號(或其它標識符)。
包括在頁表106的頁表條目內(nèi)的頁框標識符用作進入頁框表108的索引,頁框表108也由支持虛擬存儲器尋址的操作系統(tǒng)145所維護。當頁表106指定當前存儲在主存儲器115中的每個頁的身份和狀態(tài)時,頁框表108包括對應于每個存儲器頁框的條目,這些條目累積起來描述主存儲器115的當前利用(例如當前分配給頁的頁框?qū)臻e頁框)。
存儲器管理單元125通常是硬件組件,且其包括用于管理電子設(shè)備102內(nèi)的虛擬存儲器的可執(zhí)行指令。存儲器管理單元125使用頁表106將虛擬存儲器地址映射為物理或“實”存儲器地址。轉(zhuǎn)換功能由轉(zhuǎn)換旁視緩沖區(qū)128幫助,該轉(zhuǎn)換旁視緩沖區(qū)128維護最近使用的實-虛轉(zhuǎn)換的表。該存儲器管理單元125的功能在下面參照圖2和3進一步描述。盡管存儲器管理單元125被示于代表處理器105的框內(nèi),但在可選實施例中,存儲器管理單元125可以完全或部分地在處理器105之外實現(xiàn)。
如在下面將詳細描述的,本發(fā)明的實施例的各方面有關(guān)于特定的裝置和在計算機、處理器或其他電子設(shè)備上實現(xiàn)的方法組分。在另一個實施例中,本發(fā)明可以作為與計算機、處理器或其他電子設(shè)備一起使用的程序產(chǎn)品來實現(xiàn)。定義該實施例的功能的可執(zhí)行指令可由電子硬件執(zhí)行和/或可通過多種信號承載介質(zhì)呈遞給計算機、處理器或其他電子設(shè)備,這些信號承載介質(zhì)包括但不限于(1)永久存儲在非可重寫存儲介質(zhì)上的信息,該非可重寫存儲介質(zhì)例如附加于計算機、處理器或其他電子設(shè)備或處于其內(nèi)的諸如可由CD-ROM驅(qū)動器讀取的CD-ROM的只讀存儲設(shè)備;(2)存儲在例如硬盤驅(qū)動器或軟磁盤的可重寫存儲介質(zhì)上的可變信息;或(3)諸如通過計算機或電話網(wǎng)絡(luò)由通信介質(zhì)傳送到計算機、處理器或其他電子設(shè)備的信息,包括無線通信在內(nèi)的該通信介質(zhì)例如網(wǎng)絡(luò)104。
這樣的信號承載介質(zhì),當承載針對本發(fā)明的功能的機器可讀指令時,代表本發(fā)明的實施例。
根據(jù)本發(fā)明,電子設(shè)備102包括操作系統(tǒng)145,其在輔助存儲器110內(nèi)被永久維護且在系統(tǒng)啟動或操作期間被部分或全部加載到主存儲器115內(nèi)。本發(fā)明的操作系統(tǒng)145可包括與存儲器管理單元125和虛擬存儲器管理器140所提供的功能結(jié)合來支持虛擬存儲器的標準的高性能操作系統(tǒng)的許多特征,該標準的高性能操作系統(tǒng)諸如IBM的AIX。
為了能夠?qū)⑻摂M存儲器復制到實存內(nèi),操作系統(tǒng)145將虛擬存儲器劃分成頁,每頁包含固定數(shù)量的地址,且每頁在頁表106內(nèi)具有相應的頁表條目。在AIX內(nèi),例如,虛擬存儲器段被劃分成4k(4096)字節(jié)頁單元,而實存被劃分成4k字節(jié)頁框。每頁都存儲在輔助存儲器110內(nèi)的盤或其他海量存儲介質(zhì)上,直到需要該頁。當需要某一頁時,操作系統(tǒng)145結(jié)合虛擬存儲器管理器140將該頁從輔助存儲器110復制到主存儲器115,將其虛地址轉(zhuǎn)換成實地址。將虛地址轉(zhuǎn)換到實地址的過程稱作映射。從盤到主存儲器的虛頁的復制稱為頁面調(diào)度。
每次某一頁諸如被應用進程所請求并且當前未處于主存儲器115中時便發(fā)生缺頁。缺頁通常是提示操作系統(tǒng)145從輔助存儲器110中獲取所請求的數(shù)據(jù)并將其加載到主存儲器115中的中斷。因此,主存儲器115內(nèi)的一個或多個頁框必須被分配用于接收所請求的頁。對于采用多個頁面大小(例如4k、64k等)的諸如圖1中所示的系統(tǒng)而言,主存儲器地址空間被在各個頁面大小之中劃分。本發(fā)明提供用于當當前存儲器使用是這樣的情況,即目前或即將需要頁替換以處理諸如響應缺頁而生成的頁框分配請求時,分配其他頁的系統(tǒng)和方法。
如下面參照圖2進一步詳細描述的,本發(fā)明針對于管理諸如由數(shù)據(jù)處理系統(tǒng)100所使用的虛擬存儲器系統(tǒng)中的頁分配和替換策略。更具體地,本發(fā)明的頁框分配管理使用頁替換選擇機制,其根據(jù)多個頁面大小中的一個或多個的各個或相對頁面類型利用來選擇要用于頁替換的目標頁面大小。此處所使用的頁面“類型”可指存儲在特定文件中的數(shù)據(jù)的類型。在優(yōu)選實施例中,頁面類型指永久存儲頁和工作存儲頁之間的區(qū)別。更具體地,根據(jù)優(yōu)選實施例,包含在輔助存儲設(shè)備110和主存儲器115內(nèi)的虛擬存儲器頁一般可分類為用于緩存主存儲器115中的文件數(shù)據(jù)的永久存儲頁,或者用于進程的數(shù)據(jù)堆、bss、棧、共享存儲器和其他進程相關(guān)的功能的工作存儲頁。當工作存儲頁被替換或“被調(diào)出”時,它們被寫到頁面調(diào)度盤空間。當永久存儲頁被調(diào)出時,它們被寫到文件系統(tǒng)盤空間。
經(jīng)常是這樣的情況,頁替換的效率受到被搜尋以進行替換的頁的頁面類型的極大影響?;趲c原因,例如,在幾乎任何處理環(huán)境中,調(diào)出永久存儲頁要比調(diào)出工作存儲頁有效得多。第一,可能應用的工作頁面組包括比永久存儲頁更多的工作存儲頁。因此,進程通常對訪問它們的工作存儲器的次數(shù)的擴展比永久存儲器要敏感的多。因此,由于其中進程必須等待它們的工作集的頁調(diào)入的進程失敗,調(diào)出工作存儲頁會大大削弱性能。此外,大多數(shù)高端系統(tǒng)配置有少量的頁面調(diào)度空間,該頁面調(diào)度空間通常只分布在很少數(shù)量的盤之中。相反,大多數(shù)的高端系統(tǒng)具有分布于許多盤上的較大文件系統(tǒng)。因而,入/出頁面調(diào)度空間的頁面調(diào)度工作存儲數(shù)據(jù)的輸入/輸出(I/O)吞吐量通常比頁面調(diào)度永久存儲數(shù)據(jù)的I/O吞吐量少得多。
如下面參照圖2和圖3所解釋的,本發(fā)明的頁分配/替換機制使用按照多個可用頁面大小的一個或多個的頁面類型分配來選擇替換頁,這些替換頁要對于當前或所預期的頁替換操作而被調(diào)出或復制出。參照圖2,其示出了根據(jù)本發(fā)明說明被執(zhí)行以處理存儲器訪問請求的步驟的高級流程圖。如在步驟202和204所示,該過程開始于由主存儲器115所接收的存儲器訪問請求,諸如從應用進程發(fā)出的存儲器讀請求。如果主存儲器115包含所請求的數(shù)據(jù),則該數(shù)據(jù)被返回給處理器105且該存儲器訪問過程結(jié)束,如在步驟206、224和226所示。
響應于所請求的數(shù)據(jù)當前未存儲于主存儲器115中,存儲器管理單元125發(fā)出缺頁中斷(步驟206),提示操作系統(tǒng)145調(diào)用缺頁處理器。包括在缺頁處理器例程中的是頁框分配請求(步驟208),其被發(fā)出到虛擬存儲器管理器140并由虛擬存儲器管理器140結(jié)合操作系統(tǒng)145來處理。如前面參照圖1所解釋的,本發(fā)明的虛擬存儲器系統(tǒng)采用多個頁面大小,以便例如主存儲器115可以被劃分成4K與64K之間的頁。作為頁框分配請求處理的一部分,所請求的頁面大小被確定并在請求中指出。所請求的頁面大小可由對請求進程的地址空間的引用來確定。
如在查詢步驟210所示,頁框分配請求處理進一步包括諸如通過查詢與表106和/或108相關(guān)聯(lián)而被維護的空閑列表,來確定是否有任何或足夠數(shù)量的空閑頁(即目前未分配給存儲器頁的頁框)可用于滿足該分配請求。如果有足夠的空閑存儲器可用從而頁替換不是必須的,但空閑頁框不是所請求的頁面大小的,則將這些頁框轉(zhuǎn)換成所請求的頁面大小,并因此有效地將其轉(zhuǎn)移到所請求的頁面大小的存儲器池(步驟216和218)。隨著到所請求的頁面大小池的頁轉(zhuǎn)移,或者如果所請求的頁面大小池的空閑頁框可用,則將所請求的頁從輔助存儲器110復制到主存儲器115中指定的空閑頁框(步驟216、222)。接著,更新表106和108以反映主存儲器115的修改的內(nèi)容(步驟223),所請求的數(shù)據(jù)被返回給請求處理器(步驟224),且該過程結(jié)束,此時出錯的進程可以重試存儲器訪問請求(步驟226)。
返回到查詢步驟210,如果不足的空閑存儲器使頁替換成為必要,則根據(jù)本發(fā)明的替換過程就會被調(diào)用。根據(jù)所示出的實施例,如步驟212所示,替換過程開始于從多個可用的頁面大小之中選擇頁面大小池,在該頁面大小池中一頁或多頁將被替換。根據(jù)本發(fā)明,用于確定要被用于頁替換的頁面大小池的選擇標準包括各個頁面大小池內(nèi)的一個或多個頁面類型的當前分配。在其中頁面類型包括永久存儲頁和工作存儲頁的優(yōu)選實施例中,例如步驟212所示的選擇將包括確定以及可能地比較相應的多個頁面大小池中的每一個的工作存儲頁的分配與/或永久存儲頁的分配,并據(jù)此選擇一個替換頁面大小池。
參照圖3A和圖3B說明用于執(zhí)行步驟212的頁面大小池選擇的更加詳細的實施例。具體地,圖3A和3B是高級流程圖,其根據(jù)本發(fā)明的可選實施例示出了可用于選擇頁面大小的選擇過程,在該頁面大小中目標替換頁將被覆寫并可能地被復制出。圖3A和3B中所示的實施例假定虛擬存儲器系統(tǒng)所使用的頁面類型包括工作存儲頁和永久存儲頁。但是,應當指出,使用與參照圖3A和3B所說明和描述的類似過程的可選實施例可以使用其他頁面類型分類而不會超出本發(fā)明的預期范圍。
圖3A所示的第一實施例開始于確定永久或工作存儲類型頁的每一相應大小的頁框的分配,如在步驟302和304所示。更具體地,根據(jù)第一實施例,對于每一頁面大小池,確定當前分配給永久存儲頁與分配給工作存儲頁的頁框的比率。其次,比較每一頁面大小池的比率(步驟306),并且選擇具有相對較高的永久頁面類型分配的頁面大小池(或相反,具有相對較低的工作頁面類型分配的頁面大小池)作為替換池,且該頁面大小池選擇過程結(jié)束(步驟308和310)。
圖3B所示的第二實施例開始于對于多個頁面大小的每一個,確定分配給永久存儲頁的頁框和/或分配給工作存儲頁的頁框,如步驟315和317所示。如步驟319所示,對于每個頁面大小,將所確定的對于永久存儲頁和/或工作存儲頁的頁面類型分配中的一個或兩個均與預定的分配限定進行比較。例如,虛擬存儲器管理器140可包括永久頁面類型限定,其對于各個頁面大小,將要被分配給永久頁的主存儲器115的量或百分比限定為指定的值。在此情況下,步驟319所示的比較可包括,對于每一頁面大小,將在步驟317確定的永久頁的當前分配與相應的特定于頁面大小的永久頁限定進行比較??筛鶕?jù)任何給定頁面大小池對于其相應的限定的遵從或不遵從,來選擇頁面大小池。可選地,如步驟321和323所示,可通過比較每個頁面大小池對于相應限定的相對遵從性來選擇頁面大小池,且該頁面大小池選擇過程在步驟325結(jié)束。
返回到圖2,諸如由圖3A和3B所示的過程進行的替換葉面大小池的選擇之后,如步驟213所示,該頁替換過程繼續(xù)進行從所選出的頁面大小池中選擇要被替換的一頁或多頁。已知有諸如LRU的許多公知的目標頁選擇技術(shù),并且可以使用它們,而符合本發(fā)明的精神和范圍。作為替換頁選擇的一部分,獲得將用于進入的頁的頁框的頁框號。如步驟214所示,如果可能地如在頁表106內(nèi)的相應頁表條目中所指示的,按照步驟213而選出的頁已被修改,則必須將該頁的存儲器版本復制出到輔助存儲器110(步驟215)。在替換頁的選擇和可能的頁面調(diào)出之后,缺頁處理繼續(xù)將所請求的頁從輔助存儲器110復制到主存儲器115中的所選擇的替換頁框,如步驟222所示。如步驟216和218所示,如果所選擇的頁框與所請求的頁面大小不同,則這些頁框首先被轉(zhuǎn)換成所請求的頁面大小,并因此被轉(zhuǎn)移到所請求的頁面大小的存儲器池。其次,更新表106和108以反映主存儲器115的修改的內(nèi)容(步驟223),并將所請求的數(shù)據(jù)返回給請求處理器(步驟224),且該過程結(jié)束(步驟226),此時缺頁處理可以重試存儲器訪問請求。
根據(jù)上述的方法和系統(tǒng),當操作系統(tǒng)接收到對于具有較低水平的可用頁框的頁面大小池的頁框的請求時,該操作系統(tǒng)檢查是否其他頁面大小具有比所請求的頁面大小高得多的百分比的文件頁。如果它們具有,則操作系統(tǒng)可以另一頁面大小而不是所請求的頁面大小為目標進行頁替換,以使被頁面調(diào)度的工作存儲器數(shù)量最小并改進系統(tǒng)性能。
盡管已參照優(yōu)選實施例對本發(fā)明進行了具體地示出和描述,但本領(lǐng)域的技術(shù)人員將會理解,其中,可以在形式和細節(jié)上實現(xiàn)各種變化,而不脫離本發(fā)明的精神和范圍。這些可選實現(xiàn)均落入本發(fā)明的范圍內(nèi)。
權(quán)利要求
1.一種在使用多個頁面大小進行虛擬存儲器頁面調(diào)度的數(shù)據(jù)處理系統(tǒng)中用于管理頁替換的方法,所述方法包括接收頁框分配請求;以及根據(jù)上述多個頁面大小中的至少一個的頁面類型分配,選擇頁面大小,該頁面大小要用于針對所述頁框分配請求的頁替換。
2.根據(jù)權(quán)利要求1的方法,其中響應于所選出的頁面大小與上述頁框分配請求所指定的頁面大小不匹配,所述方法進一步包括將具有所選出的頁面大小的頁框轉(zhuǎn)換為具有所請求的頁面大小的頁框。
3.根據(jù)權(quán)利要求1的方法,進一步包括確定上述多個頁面大小中的至少一個的頁面類型分配。
4.根據(jù)權(quán)利要求3的方法,所述確定上述多個頁面大小中的至少一個的頁面類型分配進一步包括將第一頁面大小的頁面類型分配與第二頁面大小的頁面類型分配進行比較。
5.根據(jù)權(quán)利要求3的方法,所述確定上述多個頁面大小中的至少一個的頁面類型分配進一步包括將該多個頁面大小中的至少一個的頁面類型分配與頁面類型分配限定進行比較。
6.根據(jù)權(quán)利要求3的方法,其中上述多個頁面大小的頁面類型包括永久存儲頁和工作存儲頁,所述確定上述多個頁面大小中的至少一個的頁面類型分配包括對于該多個頁面大小中的至少一個確定永久存儲頁或工作存儲頁的存儲器分配。
7.根據(jù)權(quán)利要求6的方法,所述選擇步驟包括根據(jù)上述多個頁面大小中的至少一個的永久存儲頁或工作存儲頁的分配選擇頁面大小。
8.一種在使用多個頁面大小進行虛擬存儲器頁面調(diào)度的數(shù)據(jù)處理系統(tǒng)中用于管理頁替換的系統(tǒng),包括用于接收頁框分配請求的裝置;以及用于根據(jù)上述多個頁面大小中的至少一個的頁面類型分配,選擇頁面大小的裝置,該頁面大小要用于針對所述頁框分配請求的頁替換。
9.根據(jù)權(quán)利要求8的系統(tǒng),進一步包括響應于所選出的頁面大小與上述頁框分配請求所指定的頁面大小不匹配,用于將具有所選出的頁面大小的頁框轉(zhuǎn)換為具有所請求的頁面大小的頁框的裝置。
10.根據(jù)權(quán)利要求8的系統(tǒng),進一步包括用于確定上述多個頁面大小中的至少一個的頁面類型分配的裝置。
11.根據(jù)權(quán)利要求10的系統(tǒng),所述用于確定上述多個頁面大小中的至少一個的頁面類型分配的裝置進一步包括用于將第一頁面大小的頁面類型分配與第二頁面大小的頁面類型分配進行比較的裝置。
12.根據(jù)權(quán)利要求10的系統(tǒng),所述用于確定上述多個頁面大小中的至少一個的頁面類型分配的裝置進一步包括用于將該多個頁面大小中的至少一個的頁面類型分配與頁面類型分配限定進行比較的裝置。
13.根據(jù)權(quán)利要求10的系統(tǒng),其中上述多個頁面大小的頁面類型包括永久存儲頁和工作存儲頁,所述用于確定上述多個頁面大小中的至少一個的頁面類型分配的裝置包括用于對于該多個頁面大小中的至少一個確定永久存儲頁或工作存儲頁的存儲器分配的裝置。
14.根據(jù)權(quán)利要求13的系統(tǒng),所述用于選擇步驟的裝置包括用于根據(jù)上述多個頁面大小中的至少一個的永久存儲頁或工作存儲頁的分配選擇頁面大小的裝置。
15.一種用于使用多個頁面大小進行虛擬存儲器頁面調(diào)度的數(shù)據(jù)處理系統(tǒng)中的計算機可讀介質(zhì),具有在其上編碼的用于管理頁替換的計算機可執(zhí)行指令,所述計算機可執(zhí)行指令執(zhí)行方法1-7中任意一項的步驟。
全文摘要
本發(fā)明提供了一種在使用多個頁面大小進行虛擬存儲器頁面調(diào)度的數(shù)據(jù)處理系統(tǒng)中用于管理頁替換的系統(tǒng)、方法和制造物品。在一個實施例中,該頁替換方法開始于諸如可能隨缺頁而產(chǎn)生的頁框分配請求。頁替換過程被調(diào)用以選擇要由所請求的頁替換的一頁或多頁。在優(yōu)選實施例中,頁替換包括根據(jù)該多個頁面大小中的至少一個的頁面類型分配選擇頁面大小的步驟,該頁面大小要用于針對該頁框分配請求的頁替換。
文檔編號G06F12/12GK1877548SQ20061000748
公開日2006年12月13日 申請日期2006年2月14日 優(yōu)先權(quán)日2005年6月6日
發(fā)明者D·A·海泊金, T·S·馬修斯 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
新田县| 隆子县| 巴彦淖尔市| 广饶县| 颍上县| 那坡县| 南安市| 菏泽市| 营山县| 江孜县| 新巴尔虎右旗| 开封市| 普定县| 彭阳县| 梧州市| 东安县| 龙口市| 青海省| 蓬安县| 江津市| 正镶白旗| 秦皇岛市| 咸阳市| 时尚| 崇明县| 鄂州市| 连城县| 长治市| 普定县| 稷山县| 平乐县| 建始县| 宁德市| 阿坝县| 双鸭山市| 林芝县| 普安县| 丹棱县| 泰来县| 固安县| 大姚县|