虛擬存儲器
出自 MBA智库百科(https://wiki.mbalib.com/)
虛擬存儲器(Virtual Memory,VN)
目錄 |
什麼是虛擬存儲器[1]
虛擬存儲器是指具有請求調入功能和置換功能,能從邏輯上對記憶體容量加以擴充的一種存儲器系統。其邏輯容量由記憶體容量和外存容量之和來決定,其運行速度接近於記憶體速度,而每位的成本卻又接近於外存。可見,虛擬存儲技術是一種性能非常優越的存儲器管理技術,故被廣泛地應用於大、中、小型和微型機器中。
虛擬存儲器具有虛擬性、離散性、多次性及強對換性等特征,其中最重要的特征是虛擬性。
(1)虛擬性。虛擬性是指能夠從邏輯上擴充記憶體容量,使用戶所看到的記憶體容量遠大於實際的記憶體容量,這是虛擬存儲器所表現出的最重要的特征,也是虛擬存儲器最重要的目標。
(2)離散性。離散性是指記憶體分配時採用離散分配的方式,沒有離散性就不可能實現虛擬存儲器。採用連續分配方式,需要將作業裝入到連續的記憶體區域,這樣需要連續地一次性申請一部分記憶體空間,以便將整個作業先後多次裝入記憶體。如果仍然採用連續裝入的方式,則無法實現虛擬存儲功能,只有採用離散分配方式,才能為它申請記憶體空間,以避免浪費記憶體空間。
(3)多次性。多次性是指一個作業被分成多次調入記憶體運行。作業在運行時,只將當前運行的那部分程式和數據裝入記憶體,以後再陸續從外存將需要的部分調入記憶體。
(4)對換性。對換性是指允許在作業運行過程中換進換出。允許將暫時不用的程式和數據從記憶體調至外存的對換區,以後需要時再從外存調入到記憶體。
虛擬存儲器的實現方法[2]
虛擬存儲器的實現都是建立在離散分配存儲管理方式的基礎上,目前的實現方法主要有以下兩種。
- (1)請求分頁系統
請求分頁系統是在分頁存儲管理方式的基礎上增加了請求調頁功能、頁面置換功能所形成的頁式虛擬存儲系統。程式啟動運行時裝入部分用戶程式頁和數據頁,在以後的運行過程中,訪問到其他邏輯頁時,再陸續將所需的頁調入記憶體。請求調頁和置換時,需要頁表機構、缺頁中斷機構、地址變換機構等軟硬體支持。
- (2)請求分段系統
請求分段系統是在分段存儲管理方式的基礎上增加了請求調段及分段置換功能而形成的段式虛擬存儲系統,只需裝入部分程式和數據進程即可啟動運行,以後出現缺段時再動態調入。實現請求分段同樣需要請求分段的段表機制、缺段中斷機構、地址變換機構等軟硬體支持。