熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 操作系統 >> 正文

3.2.4 簡答題[3]

2013-11-15 15:55:32  來源: 操作系統 

    【例】在段式存儲管理中代碼共享是如何實現的?可共享代碼的程序應具備怎樣的特征?(南方名校經典試題)
  【分析】由於在段式存儲管理中段是具有邏輯意義的完成程序段那麼就可以通過直接調用邏輯程序段來實現代碼共享而可共享代碼的程序應該是純代碼在執行過程中是不會被修改的
  【解答】分區式管理和頁式管理時的進程地址空間結構都是線性的也就是說編譯程序將代碼和數據按照連續的地址進行排列回憶前面頁式管理介紹的內容類似的虛地址是在執行時進行地址變換中才被轉換成頁號(頁號頁內偏移)的二維形式所以頁式管理的虛擬空間是連續的一維的
  由於現代操作系統都是多道程序系統多個進程可能需要共享代碼或數據在程序設計中這種共享往往是通過給出代碼段(子程序)的名字的方式進行調用的在頁式管理中虛擬地址是連續的映射到實際物理的頁面是不連續的編譯程序要能夠預知代碼段執行時實際存放的頁面是不可能的同時考慮到同一頁面中可能存放有多個子程序的代碼因此通過頁面號或頁號來共享代碼頁式不可能的
  因為上述代碼共享困難的原因提出了段式存儲管理段式管理的基本思想是把程序按內容或過程(函數)關系分成段每個段有自己的名字(編號)一個作業或進程的虛擬存儲空間都對應於一個由段號(段號段內偏移)構成的二維地址編譯程序在編譯鏈接過程中就直接形成這樣的二維地址形式段式管理以段為單位分配內存然後通過地址變換將段式虛擬地址轉換成實際的內存物理地址和頁式管理一樣段式管理也采用只把那些經常訪問的段駐留內存而把那些將來一段時間不被訪問的段放入外存待需要時自動調入的方法實現虛擬存儲器
  段式管理把一個進程的虛擬地址空間設計成二維結構即段號(段號段內偏移)的形式前面己經談到與頁式管理編譯程序產生一維連續地址不同段式管理系統中的編譯程序編譯形成多個段及段的名字或編號各個段號之間無順序關系與頁式管理頁長度相同不一樣段的長度是不同的每個段定義一組邏輯上完整的程序或數據例如在DOS操作系統中一個程序內部被分為了正文段數據段堆棧段等每個段是一個首地址為O並連續的一維線性空間
  
  【例】解釋請求頁式內存管理與純頁式內存管理的主要區別(北方名校經典試題)
  【分析】請求頁式內存管理和純頁式內存管理主要區別在於前者允許作業分批調入那就實際上提供了虛擬存儲功能而純頁式內存管理沒有請求調頁機制就必須將作業全部調入也不支持虛擬存儲的功能
  【解答】在簡單分頁系統中要求運行的作業必須全部裝入內存也就是說簡單分頁不提供虛擬存儲功能
  請求分頁與簡單分頁的根本區別是請求分頁提供虛擬存儲功能即運行的作業不必全部裝入內存只裝入需要的頁面通過多次對換的方式進行頁面的換入和換出需要指出的是這些功能都是系統自動完成的無須用戶干預
  
  【例】解釋請求頁式內存管理先進先出算法及最近最少使用算法的主要區別〔北方名校經典試題)
  【分析】請求頁式內存管理中先進先出算法和最近最少使用算法最大的區別在於前者並不能反映進程實際運行的規律
  【解答】FIFO是最早出現的置換算法該算法總是淘汰最先進入內存的頁面即選擇在內存中駐留時間最久的頁面予以淘汰該算法實現簡單只需把一個進程已調入內存的頁面按先後次序鏈接成一個隊列並設置一個指針稱為替換指針使它總是指向最老頁面但該算法與進程實際運行的規律不相適應因為在進程中有些頁面經常被訪問比如含有全局變量常用函數例程等的頁面FIFO置換算法並不能保證這些頁面不被淘汰
  FIFO置換算法之所以性能較差是它所依據的條件是各個頁面調入內存的時間而頁面調入的先後並不能反映頁面的使用情況而最近最久未使用(LRU)的頁面置換算法則是根據頁面調入內存後的使用情況由於無法預測各頁面將來的使用情況只能利用最近的過去作為最近的將來的近似因此LRU置換算法是選擇最近最久未使用的頁面予以淘汰該算法賦予每個頁面一個訪問字段用來記錄一個頁面自上次被訪問以來所經歷的時間當需淘汰一個頁面時選擇現有頁面中其中值最大的即最近最久未使用的頁面予以淘汰

  返回《操作系統考研輔導教程》

[]  []  []  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/czxt/201311/24227.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.