簡答題
【例
】什麼叫
可再入
程序?它有什麼特性?(南方名校經典試題)
【分析】存儲共享的內容可以是程序的代碼
也可是數據
如果是代碼共享
則必須是純代碼
或叫做
可再入程序
即它在運行過程中不修改自身
代碼共享的目的是節省內存
【解答】可被多個進程同時調用的程序稱為可再入程序
可再入程序的性質如下
純代碼的
即在執行過程不會改變
調用它的進程應該提供數據區
【例
】什麼是
內存碎片
?應怎樣解決
內存碎片問題
?
【分析】
內存碎片
在存儲管理時使用連續分配方式而形成的
用
緊湊
技術將付出很大的系統開銷
於是產生了進程的離散分配方式
【解答】采用分區式存儲管理的系統
有存儲分配過程中產生的
不能供用戶作業使用的主存裡的小分區成
內存碎片
連續分配方式會形成許多
碎片
可通過
緊湊
方法將碎片拼接成可用的大塊空間
但須為此付出很大開銷
如果允許將一個進程直接分散地分配到許多不相鄰接的分區中
就不必再進行
緊湊
基於這一思想而產生了離散分配方式
根據離散分配時所用基本單位的不同
又可把離散分配方式分為以下
種
● 分頁存儲管理
● 分段存儲管理
● 段頁式存儲管理
即使這樣
內存碎片還會出現
雖然是減少了
但分區方式不同
碎片的名稱和特征都不同
在固定分區中
就稱為
內碎片
每個固定分區都可能出現
頁式存儲管理就有
頁內碎片
這與頁面大小有關
可變分區中有
外碎片
【例
】已知某系統頁面長
KB
頁表項
字節
采用多層分頁策略映射
位虛擬地址空間
若限定最高層頁表占
頁
問它可以采用幾層分頁策略
【分析】
位虛擬地址的虛擬空間大小為
頁面長為
KB
即
字節
頁表項
字節
所以一個頁面可以存放
個表項
由於最高層頁表占一頁
也就是說其頁表項個數最多為
個
每一項對應一頁
每頁又可以存放
個頁表項
所以采用的分層數最多為[
/
]=
層
【解答】
層
返回《操作系統考研輔導教程》
[] [] [] [] [] [] [] []
From:http://tw.wingwit.com/Article/program/czxt/201311/24225.html