操作系統之分頁儲存管理(複習的同學進)

這裏的概念非常多,那麼我們來理一下這裏的概念吧

知識點

首先分爲兩部分用戶進程內存
區域

內存

將內存空間分爲大小相等的塊,每一塊稱之爲頁框(內存塊),把每一塊的編號稱之爲頁框號(內存塊號)

用戶進程

將用戶進程的地址空間分爲與頁框大小相等的塊,稱之爲頁面(頁),每個頁面的編號稱之爲頁號

頁表

在這裏插入圖片描述

  1. 操作系統爲每個進程創建一個頁表
  2. 每一頁(頁面)對應一個頁表項,每個頁表項長度相等(頁表長度=頁面個數s,每項的位數=內存號範圍所站的字節 頁面大小4KB 物理內存大小2MB,內存號範圍=221/212=2^9B 爲2個字節)
  3. 每個頁表項由頁號和內存號組成
  4. 頁表記錄頁面和內存塊之間對應的關係
    圖片來源於互聯網

計算

事前準備

在這裏插入圖片描述
頁號:邏輯地址/頁面長度

頁內偏移量:邏輯地址%頁面長度

物理地址=起始地址+頁內偏移量

頁面長度 爲 2^20B 可以得出:

  1. 頁內偏移量的位數是20位
  2. 內存塊的大小爲2^20B(內存塊=頁面)

邏輯地址長度爲2^30B , 頁面長度爲2^20B,可以得出:

  1. 頁號的位數是10位

對上面的在變個型 有M位頁號代表什麼,有N位頁內偏移量代表什麼

  1. M 代表 有2^M個頁面 . N 代表有N頁面大小爲2^N B

基本地址變換機構

基本地址變換機構可以藉助頁表將進程的邏輯地址轉化爲物理地址

  1. 計算 頁號 和 頁內偏移量
  2. 判斷頁號P 是否大於等於 頁表長度M P>=M 則產生越界中段
  3. 頁表中頁號P所對應的頁表地址=頁表起始地址+P*頁表項長度,從該地址中取出內存塊號 b
  4. 物理地址=b*頁面大小+頁內偏移量

例題
在這裏插入圖片描述

引入快表

  • 頁表又稱爲慢表。
  • 快表又稱聯想寄存器 TLB 是一種訪問速度很快的高速緩衝儲存器
  • 引入塊表後,快表可儲存訪問過的頁面,及內存塊號,之後就可以直接通過快表訪問物理地址對應的內存單元,因爲只訪問了一次內存,所以可以節省訪問時間(不用快表則需兩次訪問內存,訪問頁表一次,訪問內存單元一次

在這裏插入圖片描述
注意使用快表後的時間計算

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章