【例】在虛擬頁式存儲系統中引入了缺頁中斷〔西部名校經典試題)
()試說明為什麼引入缺頁中斷?
()缺頁中斷的實現由哪幾部分組成?並分別給出其實現方法
【分析】由於在內存中不可能把所有的頁面都調入這意味著肯定會有缺頁現象的存在為了能在缺頁時重新在外存調頁也就引入了缺頁中斷
缺頁中斷機制是必須具備的硬件條件同時應配備相應的缺頁中斷處理程序
【解答】()虛擬頁式存儲系統是將作業信息的副本存放在磁盤等輔助存儲器中當要投入實際運行時至少要將作業的第一頁信息裝入主存在執行過程中訪問到不在主存的頁面時則產生中斷並由系統響應中斷將所缺的頁面從輔存中裝入主存然後恢復中斷並繼續執行所以缺頁中斷是必不可少的
()缺頁中斷有相應的硬件和軟件共同完成
● 硬件作業訪問某頁面時硬件的地址轉換機構查頁表若該頁對應駐留標志為則進行地址轉換為絕對地址若為則由硬件發出一個缺頁中斷表示該頁不在主存
● 軟件中斷處理程序先看主存是否還有空閒塊若有根據輔助存儲器的地址找到該頁並裝入主存並在頁表中填上它占用的塊號修改標志若無必須根據一定的頁面淘汰算法選擇已在主儲存中的某頁淘汰再將所需頁面裝入對頁表和主存分配表做相應的修改
【例】在分頁存儲管理中若在地址變換機構中加入快表有什麼好處?為什麼會有這種好處?(南方名校經典試題)
【分析】加入快表也就是增加一個高速的緩沖存儲器存放訪問的頁表在調頁時先查快表這樣將大大提高地址變換的速度
【解答】為了提高地址變換速度可在地址變換機構中增設一個具有並行查尋能力的特殊高速緩沖存儲器又稱為聯想存儲器(Associative Memory)或快表在IBM系統中又取名為TLB(Translation Lookaside Buffer)用以存放當前訪問的那些頁表項此時的地址變換過程是在CPU給出有效地址後由地址變換機構自動地將頁號p送入高速緩沖存儲器並將此頁號與高速緩存中的所有頁號進行比較若其中有與此相匹配的頁號則表示所要訪問的頁表項在快表中於是可直接讀出該頁所對應的物理塊號並送物理地址寄存器中如在快表中未找到對應的頁表項還需再訪問內存中的頁表找到後把從頁表項中讀出的物理塊號送地址寄存器同時還將此頁表項存入快表中的一個寄存器單元中亦即重新修改快表但如果聯想存儲器己滿則OS必須找到一個以前的且己被認為不再需要的頁表項將它換出
【例】頁式虛擬存儲器的最大容量由什麼決定?如何計算?(北方名校經典試題)
【分析】人們一般都有一個誤區在虛擬存儲認為頁式存儲器的最大容量是由外存和內存來決定實際上是由計算機的硬件決定當然也受到輔存大小的影響
【解答】虛擬存儲器的容量是由計算機的地址結構和輔存存儲器的容量決定與實際的主存儲器的容量無關在一個物理地址結構為的計算機系統中其虛擬存儲器的最大容量為字節
由於用戶程序執行前要裝入到輔存因此一個實際的虛擬存儲器的大小還要受到輔存容量的限制
返回《操作系統考研輔導教程》
[] [] [] [] [] [] [] []
From:http://tw.wingwit.com/Article/program/czxt/201311/24231.html