虛存

簡介 把記憶體與外存有機的結合起來使用,從而得到一個容量很大的“記憶體”,這是虛擬記憶體。進程不完全載入,就叫虛存。可以分成按需取頁和按需取段兩種方式。

基本介紹

虛擬存儲器,概念,基本原理,引入好處,特徵,

虛擬存儲器

如果用戶編製程序時,可以不考慮記憶體的實際容量,即允許程式中的邏輯地址空間大於記憶體的絕對地址空間,那么,會使用戶感到極大的方便。存儲管理利用磁碟作為記憶體的後援,當一個大型的程式要裝入記憶體時,僅把當前需要的部分裝入,其餘部分暫留在磁碟上。程式執行中要用到不在記憶體中的信息時,再由作業系統將其裝入記憶體。如果記憶體空間不夠,則可由作業系統採用覆蓋技術。這樣,用戶就感到計算機系統提供了容量極大的記憶體空間。實際上,這個容量極大的記憶體空間不是物理意義上的記憶體,而是作業系統中的一種存儲管理方式,這種方式為用戶提供的是一個虛擬的存儲器。虛擬存儲器比實際記憶體的容量大,起到了擴充記憶體空間的作用。

概念

虛擬存儲器:把輔助存儲器作為對主存儲器的擴充, 向用戶提供一個比實際主存大得多的的地址空間
虛擬地址和物理地址
虛擬地址: 程式在虛擬存儲器中的地址
物理地址: 程式在主存儲器中的地址
地址暫存器可以表示:
連結:編譯連結程式把用戶源程式編譯後連結到一個以0地址為始地址的線性或多維虛地址空間
靜態連結:在程式執行以前由連結程式完成。
動態連結:在程式執行過程中由於需要而進行。

基本原理

在程式裝入時,不必將其全部讀入到記憶體,而只需將當前需要執行的部分頁或段讀入到記憶體,就可讓程式開始執行。
在程式執行過程中,如果需執行的指令或訪問的數據尚未在記憶體(稱為缺頁或缺段),則由處理器通知作業系統將相應的頁或段調入到記憶體,然後繼續執行程式。
另一方面,作業系統將記憶體中暫時不使用的頁或段調出保存在外存上,從而騰出空間存放將要裝入的程式以及將要調入的頁或段――具有請求調入和置換功能,只需程式的一部分在記憶體就可執行,對於動態程式庫也可以請求調入.

引入好處

可在較小的可用記憶體中執行較大的用戶程式;
可在記憶體中容納更多程式並發執行
不必影響編程時的程式結構(與覆蓋技術比較)
提供給用戶可用的虛擬記憶體空間通常大於物理記憶體

特徵

物理記憶體分配的不連續,虛擬地址空間使用的不連續(數據段和棧段之間的空閒空間,共享段和動態程式庫占用的空間)
與交換的比較:調入和調出是對部分虛擬地址空間進行
通過物理記憶體和快速外存相結合,提供大範圍的虛擬地址空間
範圍大,但占用容量不超過物理記憶體和外存交換區容量之和
占用容量包括:進程地址空間中的各個段,作業系統代碼

相關詞條

熱門詞條

聯絡我們