設 f 為頁錯誤的概率(0≤f≤1,頁錯誤的情況較多,這裡主要指缺頁,因此f為缺頁率),希望f接近於0,即頁錯誤很少,那麼有效訪問時間為:
e at
=(1−
f)×m
a+f×
頁錯誤處
理時
間eat=( 1 - f ) × ma + f × 頁錯誤處理時間
eat=(1
−f)×
ma+f
×頁錯誤
處理時間
(1)不考慮命中率和缺頁率的有效訪問時間計算
訪問記憶體的操作共有3種情況:
訪問的頁在主存中,且訪問頁的頁表項在快表中(若訪問頁的頁表項在快表中,則一定不會缺頁):
即:eat = 查詢快表時間+形成實體地址並訪問記憶體資料時間
e at
=e+t
eat=e+t
eat=e+
t訪問的頁在主存中(不缺頁),且訪問頁的頁表項不在快表中:
即:eat=查詢快表時間+查詢頁表時間+修改快表時間+形成實體地址並訪問記憶體資料時間
e at
=e+t
+e+t
=2(e
+t
)eat=e+t+e+t=2(e+t)
eat=e+
t+e+
t=2(
e+t)
訪問的頁不在主存中(缺頁),設處理缺頁中斷的時間為t1(產生缺頁中斷並將該頁調入記憶體、更新快表和頁表的時間):
即:eat=查詢快表時間+查詢頁表時間+處理缺頁中斷的時間t1+查詢快表時間+形成實體地址並訪問記憶體資料時間
e at
=e+t
+t1+
e+t=
t1+2
(e+t
)eat=e+t+t1+e+t=t1+2(e+t)
eat=e+
t+t1
+e+t
=t1+
2(e+
t)(2)考慮命中率和缺頁率的有效訪問時間計算
eat= 查詢快表時間 + α × 形成實體地址並訪問記憶體資料時間 + (1-α) × [查詢頁表時間+f×(處理缺頁中斷的時間(t1) + 查詢快表時間 + 形成實體地址並訪問記憶體資料時間) + (1-f) × (修改快表時間+形成實體地址並訪問記憶體資料時間)]
e at
=e+α
t+(1
−α)[
t+f(
t1+e
+t)+
(1−f
)(e+
t)
]eat=e+αt+(1-α)[t+f(t1+e+t)+(1-f)(e+t)]
eat=e+
αt+(
1−α)
[t+f
(t1+
e+t)
+(1−
f)(e
+t)]
其中,α為命中率, f為缺頁率
(3)不考慮查詢快表的時間
即 e = 0
e at
=αt+
(1−α
)[t+
f(t1
+t)+
(1−f
)t
]eat=αt+(1-α)[t+f(t1+t)+(1-f)t]
eat=αt
+(1−
α)[t
+f(t
1+t)
+(1−
f)t]
(4)處理缺頁中斷的時間t1的計算
如果題目中沒有給出被置換的頁面修改和不修改兩種不同情況,則將缺頁中斷處理時間看成t1。如果題目中給出被置換的頁面修改和不修改兩種不同情況,前者的概率為β,處理時間為ta,後者的處理時間為tb,則:
t 1=
β×ta
+(1−
β)×t
bt1=β×ta+(1-β)×tb
t1=β×t
a+(1
−β)×
tb(5)推論(待商榷)
如果題目中沒有給出快表等,也就是說e=0,a=0,則有效訪問時間為:
e at
=t+f
(t1+
t)+(
1−f)
teat=t+f(t1+t)+(1-f)t
eat=t+
f(t1
+t)+
(1−f
)t
作業系統 記憶體管理中的分頁儲存管理方式
湯小丹等,作業系統 將使用者程式的位址空間分為若干個固定大小的區域,即頁面。將整個記憶體空間也劃分為若干個固定大小的區域,這裡的大小與頁面的大小一致,稱為物理塊。通過上述的空間劃分結構,使用者程式的任一頁面都可通過離散分配的方式裝入記憶體空間中的某一物理塊。為了記錄這一對映關係,設定了乙個專門的資料...
作業系統儲存管理 連續記憶體管理
1.記憶體層次 2.作業系統採取的記憶體管理方式 3.位址空間 4.邏輯位址生成時機 編譯時 假設起始位址已知 如果起始位址未知,必須重新編譯 類似於功能機 載入時 如果編譯時起始位置位置,編譯器需生成可重定位的位址 載入時,生成絕對位址 通過修改可執行檔案的可重定位表來生成絕對位址 執行時 虛擬儲...
作業系統13 儲存器管理之分頁儲存
四.位址變換機構 五.訪問記憶體的有效時間 六.兩級和多級頁表 七.反置頁表 八.參考資料 連續儲存會產生許多的 碎片 雖然 緊湊 方法可以將許多碎片拼接可以的大塊空間,但需為之很大的開銷。如果允許將乙個程序直接分散的裝入到許多不相鄰的分割槽中,便可以充分利用記憶體空間。基於這一思想,產生了離散分配...