多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > 【計算機操作系統】操作系統--分段存儲管理方式

【計算機操作系統】操作系統--分段存儲管理方式

來源:程序員人生   發布時間:2017-02-05 13:27:23 閱讀次數:3159次

分段存儲管理方式的引入

分段存儲管理方式的引入是為了滿足用戶的要求。

  1. 方便編程:通常1個作業是由多個程序段和數據段組成的,1般情況下,用戶希望按邏輯關系對作業分段,并能根據名字來訪問程序段和數據段。
  2. 信息同享:

    • 同享是以信息的邏輯單位為基礎的。頁是存儲信息的物理單位,段卻是信息的邏輯單位。
    • 頁式管理中地址空間是1維的,主程序,子程序都順序排列,同享公用子程序比較困難,1個同享進程可能需要幾10個頁面。
      圖示
  3. 信息保護:

    • 頁式管理中,1個頁面中可能裝有 2 個不同的子程序段的指令代碼,不能通過頁面同享實現同享1個邏輯上完全的子程序或數據塊。
    • 段式管理中,可以以信息的邏輯單位進行保護。
  4. 動態增長:實際利用中,某些段(數據段)會不斷增長,前面的存儲管理方法均難以實現。
  5. 動態鏈接:動態鏈接在程序運行時才把主程序和要用到的目標程序(程序段)鏈接起來。

分段系統的空間劃分

將用戶作業的邏輯地址空間劃分成若干個大小不等的段(由用戶根據邏輯信息的相對完全來劃分) 。各段有段名(經常使用段號代替) ,首地址為 0。

圖示

利用段表實現地址映照

圖示

段表

段表記錄了段與內存位置的對應關系。
段表保存在內存中。
段表的基址及長度由段表寄存器給出。
圖示
訪問1個字節的數據/指令需訪問內存兩次 (段表1次,內存1次)。
邏輯地址由段和段內地址組成。
這里寫圖片描述
圖示

在為作業分配內存時以段為單位,分配1段連續的物理地址空間,段間沒必要連續。
分頁管理中,作業地址空間是1維的,邏輯地址是的線性地址。
分段管理中,全部作業的地址空間由因而分成多個段,因此是2維的,其邏輯地址由段號和段內地址所組成。

地址變換機構

系統將邏輯地址中的段號 S 與段表長度 TL 進行比較。

  • 若 S>TL,表示段號太大,是訪問越界,因而產生越界中斷信號。
  • 若未越界,則根據段表的始址和該段的段號,計算出該段對應段表項的位置,從中讀出該段在內存的始址。

再檢查段內地址 d,是不是超過該段的段長 SL。

  • 若超過,即 d >SL,一樣發出越界中斷信號。
  • 若未越界,則將該段的基址與段內地址 d 相加,便可得到要訪問的內存物理地址。

圖示

圖示

圖示

圖示

信息同享

分段系統的1個突出優點,是易于實現段的同享,對段的保護也10分簡單。

例:1個多用戶系統,可同時接納 40 個用戶,都履行1個文本編輯程序 (Text Editor)。如果文本編輯程序有 160KB 的代碼和另外 40 KB 的數據區,如果不同享,則總共需有 8 MB 的內存空間來支持 40 個用戶。

可重入代碼(Reentrant Code) 又稱為“純代碼”(PureCode),是1種允許多個進程同時訪問的代碼。為使各個進程所履行的代碼完全相同,絕對不允許可重入代碼在履行中有任何改變。因此,可重入代碼是1種不允許任何進程對它進行修改的代碼。

如果 160 KB 的代碼是可重入的,則不管是在分頁系統還是在分段系統中,該代碼都能被同享。
在內存中只需保存1份文本編輯程序的副本,此時所需的內存空間僅為 1760 KB(40×40+160),而不是(160+40)×40= 8000 KB 。

分頁系統的同享

圖示

分段系統的同享

在分段系統中,實現同享容易很多,只需在每一個進程的段表中為文本編輯程序設置1個段表項。

圖示

分頁與分段的主要區分

  • 頁是信息的物理單位,分頁僅僅是由于系統管理的需要,對用戶透明的。段是信息的邏輯單位,分段的目的是為了能更好的滿足用戶的需要。
  • 頁的大小固定且由系統肯定,把邏輯地址劃分為頁號和頁內地址兩部份。段的長度卻不固定,決定于用戶所編寫的程序。
  • 分頁的作業地址空間是1維的,分段的作業地址空間是2維的。
  • 頁和段都有存儲保護機制。但存取權限不同:段有讀、寫和履行3種權限;而頁只有讀和寫兩種權限。

圖示

2者優點的結合:段頁式存儲管理

段頁式存儲管理的基本原理

  • 段頁式存儲管理是分段和分頁原理的結合,即先將用戶程序分成若干個段(段式) ,并為每個段賦1個段名,再把每一個段分成若干個頁(頁式) 。
  • 其地址結構由段號、段內頁號、及頁內位移3部份所組成。

圖示

  • 系統中設段表和頁表,均寄存于內存中。讀1字節的指令或數據須訪問內存3次。為提高履行速度可增設高速緩沖寄存器。
  • 每一個進程1張段表,每一個段1張頁表。
  • 段表含段號、頁表始址和頁表長度。頁表含頁號和塊號。

利用段表和頁表實現地址映照

圖示

段頁式存儲管理的地址變換

  • 從 PCB 中取出段表始址和段表長度,裝入段表寄存器。
  • 將段號與段表長度進行比較,若段號大于或等于段表長度,產生越界中斷。
  • 利用段表始址與段號得到該段表項在段表中的位置。取出該段的頁表始址和頁表長度。
  • 將頁號與頁表長度進行比較,若頁號大于或等于頁表長度,產生越界中斷。
  • 利用頁表始址與頁號得到該頁表項在頁表中的位置。
  • 取出該頁的物理塊號,與頁內地址拼接得到實際的物理地址。

圖示

轉載自:楊森源

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 精品国产福利久久久 | 69免费视频大片 | 一级黄色淫片 | 久久丝袜精品综合网站 | 欧美高清揄拍自拍视频网站 | 91久久大香伊蕉在人线 | 久久精品亚洲欧美日韩久久 | 亚洲天天看 | 国内精品不卡一区二区三区 | 国产免费一级精品视频 | 国内精品久久久久影院不卡 | 日本免费三区 | 成人在线观看不卡 | 国产精品视频国产永久视频 | 亚洲美女一区 | 国产在线一91区免费国产91 | 午夜精品国产爱在线观看不卡 | 欧美激情在线精品一区二区 | 国产美女一级做受在线观看 | jizz国产精品| 亚洲欧美日产综合一区二区三区 | 国产成人毛片毛片久久网 | 一区二区三区视频在线观看 | 91精品91| 亚洲高清中文字幕一区二区三区 | 久久天天躁狠狠躁夜夜躁 | 欧美性在线播放 | 日本一区二区在线不卡 | 欧美巨大xxxx做受孕妇视频 | 在线日本中文字幕 | 亚洲精品国自产拍在线观看 | 欧美天堂久久 | 一级aa免费视频毛片 | 99久久国产综合精品女不卡 | 欧美一级别 | asianjapanese日本护士 | 三级黄在线播放 | 最近新中文字幕大全高清视频 | 日本三级s级在线播放 | 国产精品一区二区久久精品 | 亚洲精品视频免费看 |