㈠ 構造虛擬儲存器必須具備哪些條件
cache存儲器、主存和輔存是構成虛擬存儲器的重要部分,cache和主存構成了系統的內存,而主存和輔存依靠輔助軟硬體的支持構成了虛擬存儲器。
一、異構體系
從虛存的概念可以看出,主存-輔存的訪問機制與cache-主存的訪問機制是類似的。這是由cache存儲器、主存和輔存構成的三級存儲體系中的兩個層次。cache和主存之間以及主存和輔存之間分別有輔助硬體和輔助軟硬體負責地址變換與管理,以便各級存儲器能夠組成有機的三級存儲體系。cache和主存構成了系統的內存,而主存和輔存依靠輔助軟硬體的支持構成了虛擬存儲器。
在三級存儲體系中,cache-主存和主存-輔存這兩個存儲層次有許多相同點:
(1)出發點相同:二者都是為了提高存儲系統的性能價格比而構造的分層存儲體系,都力圖使存儲系統的性能接近高速存儲器,而價格和容量接近低速存儲器。
(2)原理相同:都是利用了程序運行時的局部性原理把最近常用的信息塊從相對慢速而大容量的存儲器調入相對高速而小容量的存儲器。
但cache-主存和主存-輔存這兩個存儲層次也有許多不同之處:
(1)側重點不同:cache主要解決主存與CPU的速度差異問題;而就性能價格比的提高而言,虛存主要是解決存儲容量問題,另外還包括存儲管理、主存分配和存儲保護等方面。
(2)數據通路不同:CPU與cache和主存之間均有直接訪問通路,cache不命中時可直接訪問主存;而虛存所依賴的輔存與CPU之間不存在直接的數據通路,當主存不命中時只能通過調頁解決,CPU最終還是要訪問主存。
(3)透明性不同:cache的管理完全由硬體完成,對系統程序員和應用程序員均透明;而虛存管理由軟體(操作系統)和硬體共同完成,由於軟體的介入,虛存對實現存儲管理的系統程序員不透明,而只對應用程序員透明(段式和段頁式管理對應用程序員"半透明")。
(4)未命中時的損失不同:由於主存的存取時間是cache的存取時間的5~10倍,而主存的存取速度通常比輔存的存取速度快上千倍,故主存未命中時系統的性能損失要遠大於cache未命中時的損失。
二、關鍵問題
(1)調度問題:決定哪些程序和數據應被調入主存。
(2)地址映射問題:在訪問主存時把虛地址變為主存物理地址(這一過程稱為內地址變換);在訪問輔存時把虛地址變成輔存的物理地址(這一過程稱為外地址變換),以便換頁。此外還要解決主存分配、存儲保護與程序再定位等問題。
(3)替換問題:決定哪些程序和數據應被調出主存。
(4)更新問題:確保主存與輔存的一致性。
在操作系統的控制下,硬體和系統軟體為用戶解決了上述問題,從而使應用程序的編程大大簡化。
三、工作原理
虛擬存儲器是由硬體和操作系統自動實現存儲信息調度和管理的。它的工作過程包括6個步驟:
①中央處理器訪問主存的邏輯地址分解成組號a和組內地址b,並對組號a進行地址變換,即將邏輯組號a作為索引,查地址變換表,以確定該組信息是否存放在主存內。
②如該組號已在主存內,則轉而執行④;如果該組號不在主存內,則檢查主存中是否有空閑區,如果沒有,便將某個暫時不用的組調出送往輔存,以便將這組信息調入主存。
③從輔存讀出所要的組,並送到主存空閑區,然後將那個空閑的物理組號a和邏輯組號a登錄在地址變換表中。
④從地址變換表讀出與邏輯組號a對應的物理組號a。
⑤從物理組號a和組內位元組地址b得到物理地址。
⑥根據物理地址從主存中存取必要的信息。
㈡ cache和虛擬存儲器在原理和功能上有何相同點和不同點
首先,他們都是存儲器,這是他們主要的相同點。
通常人們所說的Cache就是指緩存SRAM。 SRAM叫靜態內存,「靜態」指的是當我們將一筆數據寫入SRAM後,除非重新寫入新數據或關閉電源,否則寫入的數據保持不變。由於CPU的速度比內存和硬碟的速度要快得多,所以在存取數據時會使CPU等待,影響計算機的速度。SRAM的存取速度比其它內存和硬碟都要快,所以它被用作電腦的高速緩存(Cache)。
有了高速緩存,可以先把數據預寫到其中,需要時直接從它讀出,這就縮短了CPU的等待時間。高速緩存之所以能提高系統的速度是基於一種統計規律,主板上的控制系統會自動統計內存中哪些數據會被頻繁的使用,就把這些數據存在高速緩存中,CPU要訪問這些數據時,就會先到Cache中去找,從而提高整體的運行速度。一般說來,256K的高速緩存能使整機速度平均提高10%左右
所謂虛擬存儲器就是 把內外存統一起來使用,起基本思想是把正在是用的部分保留在內存中。把暫時不用的部分防在外村中,使用時調入內存,虛擬存儲器的容量與cpu的地址結構有關,如奔騰的地址位是32位,那麼他的定址空間就是2的32次方,4GB,就是說他的最大定址空間是4GB。
㈢ 關於虛擬存儲器的與cache的問題
常見的三級存儲體系(從CPU往外)是:Cache、主存、外存。 主存儲器用來存放需CPU運行的程序和數據。用半導體RAM構成,常包含少部分ROM。可由CPU直接編程訪問,採取隨機存取方式,即:可按某個隨機地址直接訪問任一單元(不需順序尋找),存取時間與地址無關。存儲容量較大,常用位元組數表示,有時也用單元數×位數表示。速度較快,以存取周期表示。 Cache位於CPU與主存之間(有些Cache集在CPU晶元之中),用來存放當前運行的程序和數據,它的內容是主存某些局部區域(頁)的復製品。它用快速的半導體RAM構成,採取隨機存取方式。存儲容量較小而速度最快。 外存儲器用來存放暫不運行但需聯機存放的程序和數據。用磁碟、光碟、磁帶等構成,磁碟用於需頻繁訪問場合,光碟目前多用於提供系統軟體,而磁帶多用於較大系統的備份。CPU不能直接編址訪問外存,而是將它當作外圍設備調用。磁帶採取順序存取方式。磁碟與光碟採取直接存取(半順序)方式,先直接定位到某個局部區域,再在其中順序存取。外存容量可以很大,以位元組數表示。由於外存的存取時間與數據所在位置有關,所以不能用統一的存取周期指標來表示。例如磁碟的速度指標可按其工作過程分成三個階段描述:①平均尋道時間②平均旋轉延遲...
㈣ 急!!!cache和虛擬存儲器在原理和功能上有什麼相同和不同。
正確答案:
相同處是都利用了程序局部性原理,把程序劃分為許多信息塊,運行時能自動地把信息塊從慢速存儲器向快速存儲器調度,信息塊調度都採用一定的替換策略以提高繼續運行時的命中率。它們採用的地址變換、地址映象方式和替換演算法是相同的。
不同處是CACHE用於彌補主存與CPU之間的速度差異,而虛存用於彌補主存容量的不足;CACHE每次傳送的信息塊是定長的,只有幾十個位元組。虛存的信息塊可定長(頁)的,也可是不定長的(段),長度也比較大;CPU可直接訪問CACHE,但不能直接訪問輔存;CACHE的信息交換過程全由硬體實現,主輔存間的信息交換則通過輔助硬體與存儲管理軟體來完成。
2、答:一次重疊把一條指令解釋的過程分解成兩個過程,而流水則把指令的解釋分解為更多的過程;一次重疊可同時解釋兩條指令,而流水則可解釋多條命令;一次重疊是流水的特徵。
3、答:由三部分組成:(1)外部設備:是圍繞主機而設置的各種信息媒體轉換的傳遞的設備。(2)設備控制器與介面:控制主機與外部設備之間的信息格式轉換、交換過程及外部設備運行狀態的硬、軟體,也叫設備適配器,它與外部設備的特性有關。(3)I/O匯流排:是主機與外部設備之間的信息傳送通路。
從使用角度,可分成人-機交互設備,如鍵盤、列印機、顯示器等;機-機通信設備,如MODEM等;計算機信息的駐在設備,如磁碟、光碟、磁帶等。