操作系统之内存管理:5、虚拟存储技术(请求分页管理、页面置换算法、虚拟内存、地址变换)
生活随笔
收集整理的這篇文章主要介紹了
操作系统之内存管理:5、虚拟存储技术(请求分页管理、页面置换算法、虚拟内存、地址变换)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
4、虛擬存儲技術
- 虛擬內存
- 思維導圖
- 傳統存儲管理方式的缺點
- 局部性原理
- 什么是虛擬內存?(功能)
- 虛擬內存主要特征
- 如何實現虛擬存儲技術
- 虛擬內存實現1------請求分頁管理方式
- 思維導圖
- 請求分頁存儲管理與基本分頁存儲管理的主要區別:
- 頁表機制
- 缺頁中斷機構
- 地址變換的硬件實現
- 補充
- 頁面置換算法
- 1、最佳置換算法(OPT)
- 先進先出置換算法(FIFO)
- 最近最近未使用算法(LRU)
- 時鐘置換算法(CLOCK)
- 改進型時鐘置換算法
- 算法比較
- 虛擬內存實現2------請求分段管理方式
- 虛擬內存實現3------請求段頁式管理方式
虛擬內存
思維導圖
傳統存儲管理方式的缺點
局部性原理
什么是虛擬內存?(功能)
虛擬內存主要特征
如何實現虛擬存儲技術
功能1:操作系統要提供請求調頁(或請求調段)功能
功能2:操作系統要提供頁面置換(或段置換)的功能
虛擬內存實現1------請求分頁管理方式
思維導圖
請求分頁存儲管理與基本分頁存儲管理的主要區別:
頁表機制
缺頁中斷機構
頁面置換由頁面置換算法實現
地址變換的硬件實現
若現在要第一次訪問(0,1024)
1、查詢快表,判斷越界
2、未越界,判斷是否命中
3、命中直接查找物理地址;未命中則查找請求頁表,然后通過請求頁表找到物理地址;并將請求頁表項寫入快表;
4、然后訪問快表找到該物理地址。
補充
頁面置換算法
1、最佳置換算法(OPT)
1、當訪問3頁面時,發現缺頁;此時判斷內存中現存頁面2,0,1;哪個是在未來最后被訪問的(如圖,紅框中先訪問0,在訪問2,最后訪問3),所以將1換出放入3。
2、最佳置換算法可以保證最低的缺頁率,但實際上,只有在進程執行的過程中才能知道接下來會訪問到的是哪個頁面。操作系統無法提前預判頁面訪問序列。因此,最佳置換算法是無法實現的。
先進先出置換算法(FIFO)
最近最近未使用算法(LRU)
時鐘置換算法(CLOCK)
上圖所示示例:
1,3,4,2,5由于內存足夠直接放入,且訪問位置1
當訪問6時內存不足;從1開始掃描直到遇到第一個標志位為0的頁面,并將其換出。若此時掃描隊列中有標志位為1的,掃描后置為0。所以換出1;
訪問3,4;在內存;標志位置1;
訪問7;從3開始掃描;換出2;3,4標志位置0;
改進型時鐘置換算法
與時鐘置換算法相比,多加一個修改位,若該頁被修改,則寫會外存;未修改則不用寫會內存
算法比較
虛擬內存實現2------請求分段管理方式
原理相同
虛擬內存實現3------請求段頁式管理方式
原理相同
總結
以上是生活随笔為你收集整理的操作系统之内存管理:5、虚拟存储技术(请求分页管理、页面置换算法、虚拟内存、地址变换)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【转】获取命名空间、类名、方法名
- 下一篇: 《ES6基础教程》之 Call 方法和