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

面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法

文檔序號(hào):6573499閱讀:639來源:國知局
專利名稱:面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)領(lǐng)域,尤其涉及一種面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法。
背景技術(shù)
存儲(chǔ)空間管理是操作系統(tǒng)的重要組成部分,它負(fù)責(zé)管理計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器。存儲(chǔ)器可分成主存儲(chǔ)器(簡稱主存)和輔助存儲(chǔ)器(簡稱輔存)兩類。
主存儲(chǔ)器的存儲(chǔ)空間一般分中兩部分一部分是系統(tǒng)區(qū),存放操作系統(tǒng)以及一些標(biāo)準(zhǔn)子程序,例行程序等;另一部分是用戶區(qū),存放用戶的程序和數(shù)據(jù)等。存儲(chǔ)管理主要是對(duì)主存儲(chǔ)器中的用戶區(qū)域進(jìn)行管理。
計(jì)算機(jī)系統(tǒng)采用多道程序設(shè)計(jì)技術(shù)后,往往要在主存儲(chǔ)器中同時(shí)存放多個(gè)作業(yè)的程序,而這些程序在主存儲(chǔ)器中的位置是不能預(yù)先知道的,所以用戶在編寫程序時(shí)不能使用絕對(duì)地址?,F(xiàn)代計(jì)算機(jī)的指令中地址部分所指示的地址通常是地址,邏輯地址可從0開始編號(hào)。用戶按邏輯地址編寫程序。當(dāng)要把程序裝入計(jì)算機(jī)時(shí),首先,操作系統(tǒng)要為其分配一個(gè)合適的主存空間。由于邏輯地址經(jīng)常與分配到的主存空間的絕對(duì)地址不一致,而處理器執(zhí)行指令是按絕對(duì)地址進(jìn)行的,所以必須把邏輯地址轉(zhuǎn)換成絕對(duì)地址才能得到信息的真實(shí)存放處。把邏輯地址轉(zhuǎn)換成絕對(duì)地址的工作稱地址轉(zhuǎn)換。
多個(gè)作業(yè)共享主存儲(chǔ)器時(shí),必須對(duì)主存儲(chǔ)器中的程序和數(shù)據(jù)進(jìn)行保護(hù),并進(jìn)行合理有效地調(diào)動(dòng),以達(dá)到充分發(fā)揮主存儲(chǔ)器的效率。
為方便用戶編制程序,使用戶編寫程序時(shí)不受主存儲(chǔ)器實(shí)際容量的限制,可以采用一定的技術(shù)“擴(kuò)充”主存儲(chǔ)器容量,可使用得到比實(shí)際容量大的主存空間。
總之,存儲(chǔ)管理的目的是要盡可能地方便用戶和提高主存儲(chǔ)器的效率。具體地說,存儲(chǔ)管理有下面四個(gè)功能。
1)主存儲(chǔ)器空間的分配和去配要把作業(yè)裝入主存時(shí),必須按照規(guī)定的方式向操作系統(tǒng)提出申請(qǐng),由存儲(chǔ)管理進(jìn)行具體分配。存儲(chǔ)管理設(shè)置一張表格記錄存儲(chǔ)空間的分配情況,根據(jù)申請(qǐng)乾的要求按一定的策略分析存儲(chǔ)空間的使用情況找出足夠的空閑區(qū)域分配情況不能滿足申請(qǐng)要求時(shí),則讓申請(qǐng)者處于等待主存資源的狀態(tài),直到有足夠的主存空間時(shí)再分配給他。
當(dāng)主存儲(chǔ)器中某個(gè)作業(yè)撤離或主動(dòng)歸還主存資源時(shí),存儲(chǔ)管理要收回它所占用的全部或部分存儲(chǔ)空間,使它們成為空閑區(qū)域(也叫自由區(qū)),這時(shí)也要修改表格的有關(guān)項(xiàng)。收回存儲(chǔ)區(qū)域的工作也稱“去配”。
2)主存儲(chǔ)器空間的共享主存儲(chǔ)器空間的共享為了提高主存空間的利率效率,所謂主存儲(chǔ)器空間共享有兩方面的含義●共享主存儲(chǔ)器資源。采用多道程序設(shè)計(jì)技術(shù)使若干個(gè)程序同時(shí)進(jìn)入主存儲(chǔ)器,各自占用一定數(shù)量的存儲(chǔ)空間,共同使用一個(gè)主存儲(chǔ)器。
●共享主存儲(chǔ)器的某些區(qū)域。若干個(gè)作業(yè)有共同的程序段或數(shù)據(jù)時(shí),可將這些共同的程序段或數(shù)據(jù)存放在某個(gè)存儲(chǔ)區(qū)域內(nèi),各作業(yè)執(zhí)行時(shí)都可訪問它們。
3)存儲(chǔ)保護(hù)主存儲(chǔ)器中不僅有系統(tǒng)程序,而且還有若干道用戶作業(yè)的程序。為了避免主存中的若干道程序相互干擾,必須對(duì)主存中的程序和數(shù)據(jù)進(jìn)行保護(hù)。通常由硬件提供保護(hù)功能,軟件配合實(shí)現(xiàn)。當(dāng)要訪問主存某一單元時(shí),由硬件檢查是否允許訪問,若允許則執(zhí)行,否則產(chǎn)生中斷,由操作系統(tǒng)進(jìn)行相應(yīng)的處理。
最基本的保護(hù)措施是規(guī)定各道程序只能訪問屬于它的那些區(qū)域或存取公共區(qū)域中的信息,不過對(duì)公共的訪問應(yīng)該加以限制,一般說,一個(gè)程序執(zhí)行時(shí)可能有下列三種情況●對(duì)屬于自己主存區(qū)域中的今年既可讀又可寫;●對(duì)公共區(qū)域中允許共享的信息或獲得可使用的別的用戶的信息,可讀而不準(zhǔn)修改;●對(duì)未獲得授權(quán)使用的信息,既不可讀又不可寫。
4)主存儲(chǔ)器空間的擴(kuò)充在計(jì)算機(jī)硬件的支撐下,軟硬件協(xié)作,可把磁盤等輔助存儲(chǔ)器作為主存儲(chǔ)器的擴(kuò)充部分來使用。當(dāng)一個(gè)大型的程序要裝入主存時(shí),可先把其中的一部分裝入主存儲(chǔ)器,其余部分存放在磁盤上,如果程序執(zhí)行中需用不在主存中的信息時(shí),由操作系統(tǒng)采用覆蓋技術(shù)將其調(diào)入主存,這樣,用戶編制程序時(shí)還需考慮實(shí)際主存空間的容量,就他能使用一個(gè)足夠的主存儲(chǔ)器一樣。這種主存空間的擴(kuò)充大大地方便了用戶,使他們?cè)诰幹瞥绦蛄靠擅馊タ紤]繁雜的覆蓋問題。
隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展,在嵌入式領(lǐng)域涌現(xiàn)出越來越多的自定義的計(jì)算機(jī)體系結(jié)構(gòu),這也就是促使了對(duì)此類計(jì)算機(jī)體系結(jié)構(gòu)的操作系統(tǒng)的存儲(chǔ)器空間管理的特定需求。
傳統(tǒng)的存儲(chǔ)空間管理方法采用連續(xù)空間的分配管理方法,這種實(shí)現(xiàn)方式具有實(shí)現(xiàn)方式簡單,管理方式明確等優(yōu)點(diǎn)。但是這種管理方法在使用過程中容易出現(xiàn)內(nèi)存空間碎片等問題,尤其對(duì)于嵌入式系統(tǒng),內(nèi)存等存儲(chǔ)設(shè)備空間有限,所以如何有效的使用這些有限的空間就顯得很重要。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法。
本發(fā)明解決技術(shù)問題所采用的技術(shù)方案是1)對(duì)虛擬存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁I.分頁存儲(chǔ)器將主存分成大小相等的許多區(qū),每個(gè)區(qū)稱為一塊;II.編制程序的邏輯地址也分成頁,頁的大小與塊的大小相等;III.分頁存儲(chǔ)器的邏輯地址由兩部分組成虛頁號(hào)和單元號(hào);2)頁表的實(shí)現(xiàn)I.頁表的目的是把虛頁映射到物理框頁,從數(shù)學(xué)角度而言,頁表是一個(gè)函數(shù),它的參數(shù)是虛頁號(hào),結(jié)果是物理頁框號(hào);II.通過使用頁表把虛地址中的虛頁號(hào)替換成頁框號(hào),從而為邏輯地址轉(zhuǎn)換成絕對(duì)地址提供支持;3)邏輯地址到絕對(duì)地址的轉(zhuǎn)換I.地址轉(zhuǎn)換公式塊號(hào)×塊長+單元號(hào);II.把邏輯地址中的單元號(hào)作為絕對(duì)地址中的低地址部分;III.根據(jù)虛頁號(hào)從表中查得的頁框作為絕對(duì)地址中的高地址部分;4)存儲(chǔ)空間數(shù)據(jù)訪問過程I.根據(jù)邏輯地址的頁號(hào)查找快表,若查到,則形成絕對(duì)地址;II.如在快表中無登記,查找主存中的也頁表,把相應(yīng)頁表項(xiàng)登入快表并形成絕對(duì)地址;III.如在主存中沒有要訪問的頁表,采用缺頁中斷方式從輔存中調(diào)入相應(yīng)頁表。
當(dāng)訪問頁面數(shù)據(jù)訪問發(fā)生缺頁時(shí)的處理方法如下I.當(dāng)主存中頁面訪問缺失時(shí)發(fā)生缺頁中斷,需要將頁面換出,并通過頁面調(diào)度調(diào)入新的頁面;II.頁面調(diào)度采用時(shí)鐘頁面調(diào)度方法,通過循環(huán)檢測訪問位來查找最近最少訪問的頁面進(jìn)行換出。
本發(fā)明具有的有益的效果是通過在異構(gòu)多核體系結(jié)構(gòu)下實(shí)現(xiàn)分頁式的虛擬存儲(chǔ)方法??梢宰層?jì)算機(jī)系統(tǒng)運(yùn)行多個(gè)作業(yè)進(jìn)程而共享同一片的存儲(chǔ)器單元。同時(shí)對(duì)存儲(chǔ)器中的程序和數(shù)據(jù)進(jìn)行保護(hù),各個(gè)作業(yè)能在多個(gè)處理核上各自運(yùn)行,合理調(diào)度。有利于充分利用存儲(chǔ)器的資源。同時(shí)通過軟件設(shè)計(jì)和硬件的支持實(shí)現(xiàn)對(duì)數(shù)據(jù)的保護(hù)。


圖1分頁式存儲(chǔ)空間管理方法處理流程;圖2是分頁式存儲(chǔ)管理的地址轉(zhuǎn)換方式;圖3是虛擬存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁;圖4是邏輯地址的格式;圖5是頁表和作業(yè)表的格式。
具體實(shí)施方法在現(xiàn)在操作系統(tǒng)中,用戶都是按照邏輯地址編寫程序,而程序員不用考慮計(jì)算機(jī)物理存儲(chǔ)器的大小以及地址分配等過程。同時(shí)為了讓操作系統(tǒng)支持多個(gè)應(yīng)用程序作業(yè)能同時(shí)運(yùn)行,進(jìn)行合理有效的調(diào)度,并且保護(hù)各個(gè)作業(yè)程序的數(shù)據(jù)。我們采用了分頁式存儲(chǔ)管理的方法來實(shí)現(xiàn)這個(gè)需求。其實(shí)現(xiàn)方式整體流程如圖1所示。下面對(duì)其幾個(gè)實(shí)現(xiàn)細(xì)節(jié)進(jìn)行闡述1)對(duì)虛擬存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁邏輯地址是連續(xù)的。如圖4邏輯地址由頁號(hào)和單元號(hào)組成,由地址結(jié)構(gòu)中的單元號(hào)決定了頁面的大小,也就確定了主存分塊的大小。
在進(jìn)行存儲(chǔ)分配時(shí),總是以塊為單位進(jìn)行分配,一個(gè)作業(yè)的信息有多少頁,那么在把它裝入主存時(shí)就給它分配多少塊。但是,分配給作業(yè)的主存塊是可以不連續(xù)的,即作業(yè)的信息可按頁分散存放在主存的空閑中,這就避免了為得到連續(xù)存儲(chǔ)空間而進(jìn)行的移動(dòng)。如圖3實(shí)現(xiàn)對(duì)虛擬存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁。
2)設(shè)計(jì)頁表和作業(yè)表的格式進(jìn)行存儲(chǔ)分配時(shí),應(yīng)為進(jìn)入主存的每個(gè)用戶作業(yè)建立一張頁表,指出邏輯地址中頁號(hào)與主存中塊號(hào)的對(duì)應(yīng)關(guān)系,頁表的長度隨作業(yè)的大小而定。同時(shí)頁式存儲(chǔ)管理系統(tǒng)包括一張作業(yè)表,將這些作業(yè)的頁表進(jìn)行登記,每個(gè)作業(yè)在作業(yè)表中有一個(gè)登記項(xiàng)。作業(yè)表和頁表的格式如圖5。
3)實(shí)現(xiàn)邏輯地址到絕對(duì)地址的轉(zhuǎn)換借助于硬件的地址轉(zhuǎn)換結(jié)構(gòu),在作業(yè)執(zhí)行過程中按頁動(dòng)態(tài)定位。調(diào)度程序在選擇作業(yè)后,從作業(yè)表中的登記項(xiàng)中得到被選中作業(yè)的頁表始址和長度,將其送入硬件設(shè)置的頁表控制寄存器。地址轉(zhuǎn)換時(shí),只要從頁表控制寄存器就就可以找到相應(yīng)的頁表,再按照邏輯地址中的頁號(hào)查頁表,得到對(duì)應(yīng)的塊號(hào),根據(jù)關(guān)系式絕對(duì)地址=塊號(hào)×塊長+單元號(hào)計(jì)算出欲訪問的主存單元的地址。因此,雖然作業(yè)存放在若干個(gè)不連續(xù)的塊中,但在作業(yè)執(zhí)行中總是能按確切的地址進(jìn)行存取。
圖1給出了頁式存儲(chǔ)管理的地址轉(zhuǎn)換和存儲(chǔ)保護(hù),根據(jù)地址轉(zhuǎn)換公式塊號(hào)×塊長+單元號(hào),在實(shí)際進(jìn)行地址轉(zhuǎn)換時(shí),只要把邏輯地址中的單元號(hào)作為絕對(duì)地址中的低地址部分,而根據(jù)頁號(hào)從表中查得的塊號(hào)作為絕對(duì)地址中的高地址部分,就組成了訪問主存儲(chǔ)器的絕對(duì)地址。
4)相聯(lián)存儲(chǔ)器中快表的實(shí)現(xiàn)為了提高存取速度,設(shè)置一個(gè)專用的高速存儲(chǔ)器,用來存放頁表的一部分,這種高速存儲(chǔ)器稱為相聯(lián)存儲(chǔ)器,存放在相聯(lián)存儲(chǔ)器中的頁表稱快表。相聯(lián)存儲(chǔ)器的存取時(shí)間是小于主存的,但造價(jià)高,故一般都是小容量的。
根據(jù)程序執(zhí)行局部性的特點(diǎn),即它在一定時(shí)間內(nèi)總是經(jīng)常訪問某些頁,若把這些頁登記在快表中,無疑地將大大加快指令的執(zhí)行速度。
按邏輯地址中的頁號(hào)查快表,若該頁已登記在快表中,則由塊號(hào)和單元號(hào)形成絕對(duì)地址;若快表中查不到對(duì)應(yīng)頁號(hào),則再查主存中的頁表而形成絕對(duì)地址,同時(shí)將該頁登記到快表中。當(dāng)快表填滿后,又要在快表中登記新頁時(shí),則需在快表中按一定策略淘汰一個(gè)舊的登記項(xiàng),最簡單的策略是“先進(jìn)先出”,即總是淘汰最先登記的那一頁。
5)對(duì)各個(gè)進(jìn)程作業(yè)的數(shù)據(jù)進(jìn)行保護(hù)的方法的實(shí)現(xiàn)相聯(lián)存儲(chǔ)器在提高存取速度以外,它還提供對(duì)各個(gè)作業(yè)進(jìn)程之間的空間保護(hù)。如果進(jìn)程訪問了不屬于它的空間,硬件相聯(lián)存儲(chǔ)器將報(bào)送一個(gè)中斷給操作系統(tǒng)。
同時(shí)系統(tǒng)為每道作業(yè)設(shè)置一個(gè)保證鍵,為某作業(yè)分配主存時(shí)根據(jù)它的保護(hù)鍵在頁表中建立鍵標(biāo)志。程序執(zhí)行時(shí)將程序狀態(tài)字中的鍵和訪問頁的鍵進(jìn)行核對(duì),相符時(shí)才可訪問該塊。
權(quán)利要求
1.一種面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法,其特征在于1)對(duì)虛擬存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁I.分頁存儲(chǔ)器將主存分成大小相等的許多區(qū),每個(gè)區(qū)稱為一塊;II.編制程序的邏輯地址也分成頁,頁的大小與塊的大小相等;III.分頁存儲(chǔ)器的邏輯地址由兩部分組成虛頁號(hào)和單元號(hào);2)頁表的實(shí)現(xiàn)I.頁表的目的是把虛頁映射到物理框頁,從數(shù)學(xué)角度而言,頁表是一個(gè)函數(shù),它的參數(shù)是虛頁號(hào),結(jié)果是物理頁框號(hào);II.通過使用頁表把虛地址中的虛頁號(hào)替換成頁框號(hào),從而為邏輯地址轉(zhuǎn)換成絕對(duì)地址提供支持;3)邏輯地址到絕對(duì)地址的轉(zhuǎn)換I.地址轉(zhuǎn)換公式塊號(hào)×塊長+單元號(hào);II.把邏輯地址中的單元號(hào)作為絕對(duì)地址中的低地址部分;III.根據(jù)虛頁號(hào)從表中查得的頁框作為絕對(duì)地址中的高地址部分;4)存儲(chǔ)空間數(shù)據(jù)訪問過程I.根據(jù)邏輯地址的頁號(hào)查找快表,若查到,則形成絕對(duì)地址;II.如在快表中無登記,查找主存中的也頁表,把相應(yīng)頁表項(xiàng)登入快表并形成絕對(duì)地址;III.如在主存中沒有要訪問的頁表,采用缺頁中斷方式從輔存中調(diào)入相應(yīng)頁表。
2.根據(jù)權(quán)利要求1所述的一種面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法,其特征在于當(dāng)訪問頁面數(shù)據(jù)訪問發(fā)生缺頁時(shí)的處理方法如下I.當(dāng)主存中頁面訪問缺失時(shí)發(fā)生缺頁中斷,需要將頁面換出,并通過頁面調(diào)度調(diào)入新的頁面;II.頁面調(diào)度采用時(shí)鐘頁面調(diào)度方法,通過循環(huán)檢測訪問位來查找最近最少訪問的頁面進(jìn)行換出。
全文摘要
本發(fā)明公開了一種面向異構(gòu)多核體系的分頁式存儲(chǔ)空間管理方法。這種方法采用對(duì)邏輯存儲(chǔ)器和物理存儲(chǔ)器進(jìn)行分頁的實(shí)現(xiàn)方式。通過構(gòu)建一個(gè)虛擬頁映射到物理頁的頁表。利用頁表和每個(gè)核相關(guān)硬件設(shè)備相聯(lián)存儲(chǔ)器等的支持,實(shí)現(xiàn)邏輯地址到絕對(duì)地址的轉(zhuǎn)換。它有利于操作系統(tǒng)在異構(gòu)多核體系下對(duì)多道程序運(yùn)行的實(shí)現(xiàn),有利于充分利用計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器資源,有利于程序員更加簡便的開發(fā)應(yīng)用程序。
文檔編號(hào)G06F12/10GK101013404SQ20071006693
公開日2007年8月8日 申請(qǐng)日期2007年1月26日 優(yōu)先權(quán)日2007年1月26日
發(fā)明者陳天洲, 黃振寶 申請(qǐng)人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
深圳市| 弥渡县| 抚松县| 峨眉山市| 南乐县| 汤阴县| 金秀| 深泽县| 吉首市| 大竹县| 开封市| 刚察县| 海兴县| 汤原县| 台州市| 凌云县| 禹州市| 保亭| 东兰县| 海盐县| 宜章县| 罗甸县| 张家界市| 神池县| 大荔县| 宝应县| 获嘉县| 英山县| 平武县| 凌海市| 兴仁县| 曲沃县| 页游| 东海县| 宁阳县| 十堰市| 宁强县| 嘉定区| 汾阳市| 淮安市| 荔浦县|