




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章存儲系統(tǒng)7.1存儲系統(tǒng)的層次結(jié)構(gòu)7.2高級緩沖存儲器7.3虛擬存儲器7.4相聯(lián)存儲器7.1存儲系統(tǒng)的層次結(jié)構(gòu)1.主存和輔存的概念2.主存和輔存在操作系統(tǒng)的控制下,通過軟硬件把主存和輔存統(tǒng)一成為一個整體,形成一個存儲層次。這個層次擁有接近于主存的速度和輔存的容量,價(jià)格也接近于輔存的價(jià)格。3.在CPU和主存之間有高速緩沖存儲器cache,這完全是由硬件來完成的。Cache-主存的速度接近于cache,而容量與價(jià)格接近于主存。
Cache的速度接近于CPU。1.三級結(jié)構(gòu)的存儲器系統(tǒng):將高速緩緩沖存儲器、主存儲器和輔助(虛擬)存儲器組成的統(tǒng)一管理、調(diào)度的一體化三級結(jié)構(gòu)的存儲器系統(tǒng)。3.三種存儲器的比較
(1)高速緩存(Cache):速度快,容量小,用于臨時存放運(yùn)行中的指令和少量數(shù)據(jù);
(2)主存:速度、容量一般,用于臨時存放運(yùn)行中的大量程序和數(shù);
(3)輔存:速度慢,容量大,用于永久存放大型程序軟件和數(shù)據(jù)庫。4.采用三級結(jié)構(gòu)的目的和方法
(1)Cache-主存層次:解決CPU與主存間速度不匹配問題,使系統(tǒng)具有主存容量和接近于Cache速度。采用地址映像方式,以字塊為基本信息單位。
(2)虛擬存儲器-主存層次:解決主存容量小、運(yùn)行成本高的問題,使系統(tǒng)具有輔存容量和接近主存速度,且造價(jià)和運(yùn)行成本低。采用地址變換方式,以段、頁為基本信息單位。局部性原理、一致性原則和包含性原則1.局部性原理——三級結(jié)構(gòu)存儲器系統(tǒng)運(yùn)行原理基礎(chǔ)(1)時間局部性:在較小的時間間隔內(nèi),最近被訪問的指令和數(shù)據(jù)很可能再次被訪問;(2)空間局部性:這些最近被訪問的指令和數(shù)據(jù)往往集中在一小片存儲區(qū)域中;(3)指令執(zhí)行方式局部性:順序執(zhí)行較轉(zhuǎn)移執(zhí)行可能性大。3.一致性原則:同時存放在三類存儲器中的信息,在三類存儲器中必須保持同值。
2.包含性原則:處在內(nèi)層的存儲器的信息一定包含在各外層存儲器中。即內(nèi)層存儲器中信息是外層存儲器所存信息的一小部分的副本。
Cache:一種容量小、速度快,用靜態(tài)存儲器器件實(shí)現(xiàn)的存儲器。作用:解決CPU與主存速度不匹配的問題,使系統(tǒng)速度接近于CPU,容量接近于主存。高速緩沖存儲器(cache)目前,組成主存的DRAM存取速度一般落后于CPU的處理速度,CPU訪問主存時不得不插入等待周期來適應(yīng)主存的速度,致使系統(tǒng)整體下降。高速緩沖存儲器Cache:是為解決CPU和DRAM之間的速度匹配而采用的一項(xiàng)重要技術(shù);是發(fā)揮CPU高速高效的性能而設(shè)置的一種介于CPU和DRAM之間的高速小容量緩沖存儲器;存取速度要比主存快,由高速的SRAM組成;全部功能由硬件實(shí)現(xiàn),保證了其高速度。高速緩沖存儲器(cache)cache的工作機(jī)制cache基本原理地址映象(映射)與地址變換cache與主存數(shù)據(jù)的一致性替換策略高速緩沖器cache的構(gòu)成cache的工作機(jī)制高速緩沖存儲器cache的工作機(jī)制基于程序訪問的局部性原則。一個運(yùn)行程序的代碼大都順序存放在地址連續(xù)的存儲器中,與程序相關(guān)的數(shù)據(jù)在存儲器中也相對集中。程序運(yùn)行時,尤其有循環(huán)程序段和子程序段時,在較短的時間區(qū)間內(nèi),常會對局部范圍的存儲器頻繁訪問,某存儲單元被訪問了,該單位可能會被再次訪問,大多數(shù)存取又是在緊接著上次存取地址附近,而此范圍之外的地址訪問甚少。這種現(xiàn)象稱程序訪問的局部性。cache的工作機(jī)制根據(jù)局部性原理,可以在主存和CPU之間設(shè)置一個高速的容量相對較小的存儲器,如果當(dāng)前正在執(zhí)行的程序和數(shù)據(jù)存放在這個存儲器中,在程序運(yùn)行時,不必從主存儲器取指令和取數(shù)據(jù),只需訪問這個高速存儲器,以提高程序運(yùn)行速度。這個存儲器稱作高速緩沖存儲器Cache。Cache由高速的SRAM組成,它的工作速度數(shù)倍于主存,全部功能由硬件實(shí)現(xiàn),并且對程序員是透明的。cache的工作機(jī)制cache基本原理Cache結(jié)構(gòu)設(shè)計(jì)必須解決的問題:如何存放,如何訪問,如何替換,如何改寫?數(shù)據(jù)塊在Cache中存放在哪個位置?即定位問題(地址映象)。如果一個塊存放在某一Cache中,怎樣確定并找到該塊,即尋址問題(地址變換)。不命中時將從主存儲器中訪問,并將該塊調(diào)入Cache中,但是如果Cache中已無空閑空間,則勢必將Cache中的某一塊調(diào)出,但應(yīng)調(diào)出那一塊,即替換問題。在寫訪問時,寫入Cache必須在適當(dāng)?shù)臅r候?qū)懟刂鞔鎯ζ?,何時寫?寫操作時采用什么策略保證兩級存儲器間的數(shù)據(jù)一致性。寫操作失配時是否將訪問塊取入高層存儲器。cache基本原理高速緩沖存儲器包括:cache控制部件cache存儲器cache基本原理cache控制部件包括:主存地址寄存器主存-cache地址變換機(jī)構(gòu)替換控制部件cache地址寄存器控制部件均由硬件組成cache基本原理cache存儲器多采用與CPU相同類型的半導(dǎo)體集成電路制成的高速存儲元件SRAM;存取速度比主存快且與CPU接近;整個cache存儲器介于CPU和主存之間,直接接受CPU訪問;CPU不僅與cache相接,而且與主存仍然保持通路。cache基本原理在主存-cache存儲體系中,所有的程序和數(shù)據(jù)都在主存中,cache存儲器只存放主存一部分程序塊和數(shù)據(jù)塊的副本,這種以塊為單位的存儲方式是基于計(jì)算機(jī)程序的局部性。從程序局部性可知,cache中的程序塊和數(shù)據(jù)塊使CPU要訪問的內(nèi)容在大多數(shù)情況下已經(jīng)在cache存儲器里,CPU讀寫操作主要在CPU和cache之間進(jìn)行。cache基本原理cache的命中任何時候都有一些主存塊處在Cache中。CPU訪問存儲體系時首先訪問cache,送出訪問單元的地址由地址總線打入cache存儲器的主存地址寄存器MA;主存-cache地址變換機(jī)構(gòu)從主存地址寄存器MA獲取地址判斷該單元內(nèi)容是否已在cache中存放副本,如果副本已經(jīng)在cache中了,稱為命中;反之稱不命中或命中失效。cache基本原理cache基本原理cache的命中率命中率指CPU所要訪問的信息在Cache中的比率;所要訪問的信息不在Cache中的比率稱為失效率。增加cache的目的,就是在性能上使主存的平均讀出時間盡可能接近c(diǎn)ache的讀出時間。因此,cache的命中率應(yīng)接近于1。由于程序訪問的局部性,這是可能的。cache基本原理當(dāng)命中時立即把訪問地址變換成它在cache的地址,然后驅(qū)動cache存儲體。當(dāng)是讀操作時,CPU從cache中直接讀取信息;若是寫操作,不但要把新內(nèi)容寫入cache存儲器中,而且必須同時寫入主存,使主存和cache內(nèi)容同時修改,保證主存和副本內(nèi)容一致,這種方法也叫直達(dá)法。cache基本原理有的機(jī)器考慮到當(dāng)寫入操作很頻繁或者寫入的是中間結(jié)果,每次寫入主存很浪費(fèi)時間,于是設(shè)計(jì)成每次只改寫cache的內(nèi)容并不立即修改主存中相應(yīng)的單元,只有當(dāng)cache中被寫過的塊要被新進(jìn)入cache的信息塊取代時才一次寫回主存里,這種方法稱回寫法。cache基本原理如果CPU要訪問的內(nèi)容根本不在cache中,即“不命中”,那么CPU轉(zhuǎn)去直接訪問主存。若是讀操作,CPU則從主存讀取信息的同時,cache控制部件把該地址所在那塊存儲內(nèi)容從主存一次調(diào)進(jìn)cache存儲器,以存儲塊為單位調(diào)入cache存儲器可以提高下次訪問的命中率。若是寫操作,則處理就簡單多了,很多計(jì)算機(jī)系統(tǒng)只向主存寫入信息,不必同時把這個地址所在的存儲內(nèi)容再調(diào)入cache存儲器中。cache基本原理直達(dá)法:優(yōu)點(diǎn):數(shù)據(jù)不會出現(xiàn)不一致缺點(diǎn):對寫操作沒有高速緩存的作用回寫法:優(yōu)點(diǎn):速度快缺點(diǎn):存在數(shù)據(jù)不一致隱患cache基本原理對于共享一個主存的多處理機(jī)系統(tǒng),因?yàn)樘幚頇C(jī)各自擁有cache存儲器,所以必須采用寫直達(dá)法將任何一個cache中修改的內(nèi)容同時寫入主存,保證其他cache向主存調(diào)用信息塊時是修改過的而不是失效的信息。這點(diǎn)對于擁有多個處理機(jī)而共享一個主存的計(jì)算機(jī)系統(tǒng)特別重要。7.2高速緩沖存儲器(cache)cache的工作機(jī)制cache基本原理地址映象(映射)與地址變換cache與主存數(shù)據(jù)的一致性替換策略高速緩沖器cache的構(gòu)成地址映象(映射)與地址變換地址映象把主存塊按照某種規(guī)則(函數(shù)或方法)裝入或定位到Cache中的過程稱地址映象。地址變換信息按這種映象關(guān)系裝入Cache后,執(zhí)行程序時,將主存地址變換成Cache地址的變換過程叫做地址變換。地址映象和變換密切相關(guān)。地址映象(映射)與地址變換使用Cache的動力在于它的高速,因此也要求這個地址變換過程盡可能地快,故此過程是以硬件完成的。這帶來的另一好處是Cache的透明性,除了程序運(yùn)行速度提高之外,用戶包括系統(tǒng)軟件編制人員,絲毫未感覺到Cache的存在。地址映象(映射)與地址變換在高速緩沖存儲器中把Cache和主存機(jī)械等分為相同大小的塊,每一塊是由若干個字(或字節(jié))組成。例:某機(jī)主存容量為1MB,劃分為2048塊,每塊512B;Cache容量為8KB,劃分為16塊,每塊512B。塊0塊1塊15Cache標(biāo)記標(biāo)記標(biāo)記塊0塊1塊2047主存m位
塊…字0字1字511地址映象(映射)與地址變換由于Cache的塊數(shù)遠(yuǎn)小于主存的塊數(shù),因此一個Cache不能唯一地、永久地只對應(yīng)一個貯存塊,在Cache中,每一塊外加有一個標(biāo)記,指明它是主存的哪一塊的副本(拷貝)。塊0塊1塊15Cache標(biāo)記標(biāo)記標(biāo)記塊0塊1塊2047主存m位
塊…字0字1字511地址映象(映射)與地址變換標(biāo)記的有效位每個標(biāo)記設(shè)置有一個有效位。機(jī)器加電啟動時,Reset信號將所有標(biāo)記的有效位置“0”,即無效。程序執(zhí)行過程中,Cache不命中時,逐步將指令塊或數(shù)據(jù)塊從主存調(diào)入Cache中的某一塊,并將這一塊標(biāo)記的有效位置“1”,當(dāng)再次用到這一塊中的指令或數(shù)據(jù)時,可直接從Cache中取指令或數(shù)據(jù)。字塊0字塊1字塊Lm-1~~~~.........標(biāo)記Cache012r-1
標(biāo)記有效位地址映象(映射)與地址變換因剛加電時所有標(biāo)記位都為“0”,開始執(zhí)行程序時,命中率較低。另外Cache的命中率還與程序本身有關(guān),即不同的程序,其命中率可能不同。地址映象(映射)與地址變換基本的地址映象方式:直接映象全相連映象組相連映象地址映象(映射)與地址變換直接映射方式這是一種多對一的映射關(guān)系,一個主存塊只能映象到Cache的一個特定塊位置上去。在這種映象方式中:主存的第0塊,第16塊,第32塊,…,只能映象到Cache的第0塊;而主存的第1塊,第17塊,第33塊,…,只能映象到Cache的第1塊;……地址映象(映射)與地址變換直接映象7位Cache地址4位9位主存地址7位4位9位11位9位主存地址地址映象(映射)與地址變換直接映象的地址變換方法地址映象(映射)與地址變換優(yōu)點(diǎn):實(shí)現(xiàn)簡單,只需利用主存地址按某些字段直接判斷,即可確定所需字塊是否已在Cache中。缺點(diǎn):不夠靈活,主存的多個字塊只能對應(yīng)唯一的Cache字塊,因此,即使Cache別的地址空著也不能占用。Cache存儲空間得不到充分利用,降低了命中率。地址映象(映射)與地址變換全相聯(lián)映象方式塊0塊1塊15Cache標(biāo)記標(biāo)記標(biāo)記標(biāo)記標(biāo)記標(biāo)記.........塊0塊1塊15塊16塊17塊31塊2047主存TagCache地址4位9位11位9位主存地址允許主存中的每一個字塊映象到Cache的任何一個字塊位置上,最靈活但成本最高的一種方式。地址映象(映射)與地址變換全相聯(lián)映象的地址變換方法地址映象(映射)與地址變換全相聯(lián)映象的地址變換方法的優(yōu)缺點(diǎn):優(yōu)點(diǎn):靈活,塊沖突概率小。只有當(dāng)Cache中全部裝滿后,才有可能出現(xiàn)塊沖突;缺點(diǎn):要作相聯(lián)搜索,速度慢,代價(jià)高。地址映象(映射)與地址變換這只是一個理想的方案。兩個原因使其實(shí)際上很少采用:標(biāo)記位數(shù)從7位增加到11位,使Cache標(biāo)記容量加大;訪問Cache時,需要和Cache的全部標(biāo)記進(jìn)行“比較”才能判斷出所訪主存地址的內(nèi)容是否已在Cache中。由于Cache速度要求高,通常由“按內(nèi)容尋址”的相聯(lián)存儲器完成,所需硬件邏輯電路很多,以至于無法用于cache中。實(shí)際的Cache組織則是采取各種措施來減少所需比較的地址數(shù)目。地址映象(映射)與地址變換組相聯(lián)映射方式組間全相聯(lián),組內(nèi)直接映像直接映象和全相聯(lián)映象方式的一種折衷方案。地址映象(映射)與地址變換注意:當(dāng)Cache只有一個組并且每組16塊時,此時為直接映像;當(dāng)Cache有16組并且每組一個塊時,則為全相聯(lián)映像。8位3位9位1位3位9位7.2高速緩沖存儲器(cache)cache的工作機(jī)制cache基本原理地址映象(映射)與地址變換cache與主存數(shù)據(jù)的一致性替換策略高速緩沖器cache的構(gòu)成cache與主存數(shù)據(jù)的一致性cache中存放的是主存中部分信息的副本。為了保證CPU存取的數(shù)據(jù)準(zhǔn)確無誤,要求cache中每一個地址上的數(shù)據(jù)與主存中相應(yīng)存儲單元的數(shù)據(jù)保持完全相同,這種性質(zhì)稱cache與主存數(shù)據(jù)的一致性。寫直達(dá)法和回寫法是常見的保持?jǐn)?shù)據(jù)一致性的算法。cache與主存數(shù)據(jù)的一致性cache與主存數(shù)據(jù)的不一致的情況:CPU從cache讀入數(shù)據(jù)重新寫入修改后的新數(shù)據(jù)時;主存數(shù)據(jù)修改。例如多處理機(jī)系統(tǒng),其中一個cache內(nèi)容修改后立即用寫直達(dá)法寫入主存又導(dǎo)致主存數(shù)據(jù)可能與其他cache的副本不一致。又例如,計(jì)算機(jī)的DMA訪問直接修改了主存數(shù)據(jù),也可能造成與cache數(shù)據(jù)的不一致性。cache與主存數(shù)據(jù)的一致性通常采用的處理辦法有:主存監(jiān)視法:利用硬件機(jī)構(gòu)使cache控制器能監(jiān)視所有設(shè)備對主存的操作或訪問,凡對主存的寫入也立即對cache中相應(yīng)單元進(jìn)行拷貝,從而保證數(shù)據(jù)的一致性設(shè)置“不可cache區(qū)”:即在主存中開辟一塊存儲區(qū)域,該區(qū)域數(shù)據(jù)不能調(diào)入cache,不受cache控制器管理,但其他設(shè)備進(jìn)入的數(shù)據(jù)只能直接寫入該區(qū)域。所以不會產(chǎn)生與cache中數(shù)據(jù)的不一致性?!安豢蒫ache區(qū)”可以通過BIOS設(shè)置程序來設(shè)置。7.2高速緩沖存儲器(cache)cache的工作機(jī)制cache基本原理地址映象(映射)與地址變換cache與主存數(shù)據(jù)的一致性替換策略高速緩沖器cache的構(gòu)成替換策略在主存-cache存儲體系工作過程中,主存和cache存儲器之間信息以塊為單位調(diào)度,信息塊的長度取決于主存的結(jié)構(gòu)設(shè)計(jì),主存常設(shè)計(jì)成多體交叉存儲結(jié)構(gòu)。當(dāng)信息塊需要調(diào)入cache存儲器而cache存儲器中已經(jīng)占滿信息時,cache存儲器的替換控制部件將按一定的替換策略淘汰cache中舊有的一塊信息,被更新的舊信息塊應(yīng)該是下一段時間內(nèi)估計(jì)是最少使用的,然后用新的信息塊覆蓋掉。替換策略常用的替換策略有兩種:
先進(jìn)先出策略-FIFO策略總是更換掉當(dāng)前cache中最先進(jìn)入的信息塊這種方法控制簡單,實(shí)現(xiàn)容易近期最少使用策略-LRU策略替換策略近期最少使用策略-LRU策略:遵循的規(guī)則是新信息塊替代的是當(dāng)前cache存儲器中被使用次數(shù)最少的,即最不活躍的那塊信息;使用LRU方法的cache存儲器每一個字塊都要附設(shè)一個計(jì)數(shù)器記錄被使用的情況,每當(dāng)cache中的一塊信息被命中時,比命中塊計(jì)數(shù)值低的信息塊均加1,而命中塊計(jì)數(shù)器清0;顯然,這種技術(shù)方法各信息塊的計(jì)數(shù)值總是不相同的。替換策略一旦不命中情況發(fā)生時,新信息塊從主存調(diào)入cache存儲器替換計(jì)數(shù)值最大的那片存儲區(qū),新信息塊計(jì)數(shù)值為0,其余信息塊計(jì)數(shù)均加1,保證了那些活躍的信息塊--經(jīng)常被命中或最近被命中的信息塊計(jì)數(shù)值要小,而近來越來越不活躍的信息塊計(jì)數(shù)值越大;LRU策略是目前使用較多的一種策略,能夠有效的提高命中率。替換策略無論FIFO策略還是LRU策略,其實(shí)最先被調(diào)入cache的信息塊或最近最少使用的信息塊都不能肯定是最近將絕不會使用,所以替換策略不能作為最合理最優(yōu)秀的。但是研究表明,F(xiàn)IFO和LRU策略明顯地提高了cache存儲器的命中率,可以達(dá)到百分之九十左右,其中LRU策略的命中率比FIFO更高一些。替換策略Cache的命中率反映了CPU需要訪問的數(shù)據(jù)在cache中能直接找到的概率。影響命中率的因素有:替換策略cache的結(jié)構(gòu)因素包括cache高速緩沖存儲器大小、傳送塊的大小若cache的存儲容量越大,保存副本越多,命中率就越高訪問程序和數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年金融科技在普惠金融領(lǐng)域的應(yīng)用效果與金融科技人才培養(yǎng)模式報(bào)告
- 宮頸癌患者疼痛的護(hù)理
- 高中音樂常識知識考試試題及答案
- 昆明市社會福利院招聘考試真題2024
- 福建醫(yī)科大學(xué)招聘編制外考試真題2024
- 閥門試題及答案
- wake唱歌教學(xué)課件
- 2024年新疆阿勒泰地招聘中學(xué)教師考試真題
- 大概念的內(nèi)涵和提取方法
- 2025至2030中國養(yǎng)生保健品市場消費(fèi)動向及未來營銷模式研究報(bào)告
- 生物-云南省昆明市2023-2024學(xué)年高二下學(xué)期期末質(zhì)量檢測試題和答案
- 跨境電商海外倉租賃協(xié)議
- 《污水處理企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化建設(shè)規(guī)范》(T-GDPAWS 11-2022)
- 繪畫基礎(chǔ)(師范教育專業(yè)繪畫的基礎(chǔ)知識和創(chuàng)作方法)全套教學(xué)課件
- 湖南省長沙市2024年七年級下學(xué)期數(shù)學(xué)期末考試試卷附答案
- 2023年中國美術(shù)學(xué)院輔導(dǎo)員真題
- 2024年江西石城縣城投集團(tuán)與贛江源農(nóng)業(yè)發(fā)展有限公司招聘筆試參考題庫含答案解析
- 《經(jīng)濟(jì)學(xué)基礎(chǔ)》課后題答案
- 沖壓作業(yè)安全管理措施
- 牛津上海版初中英語單詞表(六年級至九年級)-
- 兼職家教個人求職工作簡歷模板
評論
0/150
提交評論