




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第十四講 存儲器管理之基本分段存儲管理方式分段存儲管理方式也是一種離散分配方式,只是其分配的基本單位事段。1 分段存儲管理方式的引入為什么要引入分段?分段有哪些優(yōu)點?我們現(xiàn)在了解一下。1 方便編程: 因為實際編程中,用戶作業(yè)通常按照邏輯關(guān)系分為幾個段,每個段都是從0開始編址,并有名字和長度,訪問的邏輯地址由段名和段內(nèi)偏移量決定。此存儲管理方式就按邏輯上有聯(lián)系的段來進(jìn)行管理,方便編程。2 信息共享: 從上面可以得知,段是信息的邏輯單位,也就是段具有實際的邏輯意義。這和前一講的“頁”完全不同。因此要實現(xiàn)段的共享,就要求存儲管理能與用戶程序的分段組織方式相適應(yīng)。3 信息保護(hù): 信息保護(hù)同樣是對信息的
2、邏輯單位進(jìn)行保護(hù),因此分段管理方式能有效的實現(xiàn)信息保護(hù)。4 動態(tài)增長: 實際應(yīng)用中,某些段(數(shù)據(jù)段)會不斷增長,前面的存儲管理方法均難以實現(xiàn)。而分段卻可以解決這個問題。5 動態(tài)鏈接: 要求以段為單位。 由此我們理解為什么要引入分段存儲管理。2 分段系統(tǒng)的基本原理2.1 空間劃分(分段)將用戶作業(yè)的地址空間依照相應(yīng)的邏輯信息組的長度來劃分若干個段,各段的長度不等。各段有段名(常用段號代替),段內(nèi)首地址為0。段地址結(jié)構(gòu)如下圖:一般我們常見的有代碼段、數(shù)據(jù)段、共享段等等。2.2 內(nèi)存分配在為作業(yè)分配內(nèi)存時,也以段為單位,分配一段連續(xù)的物理地址空間;段間不必連續(xù)。如下圖注意:1、 整個作業(yè)的邏輯地址空
3、間是二維的,其邏輯地址由段號和段內(nèi)地址組成。頁式管理是把內(nèi)存視為一維線性空間;而段式管理是把內(nèi)存視為二維空間。怎么理解?有的同學(xué)說分頁也是二維的,頁號一維,頁內(nèi)地址一維??偣彩嵌S。其實不然站在進(jìn)程的角度而言,就會發(fā)現(xiàn)分頁是一維的,而分段是二維的。對一個進(jìn)程來說,在分頁式系統(tǒng)中,它的內(nèi)容會保存在多頁里,即進(jìn)程的內(nèi)容由一維頁序列保存,通過頁表映射來進(jìn)行尋址。請注意,頁內(nèi)地址對進(jìn)程而言是沒有意義的,在從邏輯地址到頁表訪問到物理地址的映射都是由OS管理的。所以在分頁系統(tǒng)中將頁內(nèi)地址作為一個維度是沒有實際意義的。但是在分段式系統(tǒng)中,進(jìn)程的內(nèi)容會保存在多個相互獨立的段里,段內(nèi)的地址是單獨編址的,如代碼段
4、內(nèi)偏移154,數(shù)據(jù)段內(nèi)偏移209。舉例說明:對分頁系統(tǒng)而言,給出一個地址2345,OS會根據(jù)進(jìn)程對應(yīng)的頁表算出它在第幾頁內(nèi),偏移是多少。而在OS外部,邏輯地址是一維的。對于分段系統(tǒng)而言,訪問一個地址,必須給出“段號段內(nèi)偏移”,因此,邏輯地址就是二維的了。所以說,分頁是一維地址管理、分段是二維地址管理。2、 需要CPU的硬件支持(地址變換機構(gòu))2.3 段表u 概念:系統(tǒng)中為每個進(jìn)程建立一張段映射表,就是段表。u 段表內(nèi)容:每個段在表中占有一個表項,其中記錄了該段在內(nèi)存中的起始地址(又叫“基址”)和段的長度。段表如下圖u 存儲位置:可以存儲于寄存器。但一般存放在內(nèi)存。u 作用:記錄了段與內(nèi)存位置的
5、對應(yīng)關(guān)系u 注意:訪問一個字節(jié)的數(shù)據(jù)/指令需訪問內(nèi)存2次(段表一次,內(nèi)存一次),所以也出現(xiàn)內(nèi)存訪問速度降低的問題。利用段表實現(xiàn)地址映射如下圖2.4 地址變換機構(gòu)地址變換過程:系統(tǒng)中設(shè)置段表寄存器,用于存放段表起始地址和段表長度TL。在進(jìn)行地址變換時,系統(tǒng)將邏輯地址中的段號與段表長度TL進(jìn)行比較。若S>TL,則訪問越界。否則,根據(jù)段表的起始地址和該段的段號,計算出該段對應(yīng)段表項的位置,從中讀出該段在內(nèi)存中的起始地址。再檢查段內(nèi)地址D是否超過該段的段長SL。若超過則越界,否則將該段的基址和段內(nèi)地址相加,即可得到要訪問的內(nèi)存物理地址。如下圖例1:某段表的內(nèi)容如下:段號 段首址 段長度0 120
6、K 40K1 760K 30K2 480K 20K3 370K 20K一邏輯地址為(2154),它對應(yīng)的物理地址為多少?解:邏輯地址為:段號段內(nèi)地址由段表可知段號為2位,段內(nèi)地址為16位,段允許的最大長度為 216=210*26=1024*64=65536。 所以邏輯地址2154的段號為0,查段表知其對應(yīng)的物理地址為: 120K+2154例2:在一個段式存儲管理系統(tǒng)中,其段表為: 段號 內(nèi)存起始地址 段長 0 210 500 1 2350 20 2 100 90 3 1350 590 4 1938 9504302120試求表中邏輯地址對應(yīng)的物理地址是什么?解:邏輯地址為:段號段內(nèi)地址由段表可知
7、段號為3位,段內(nèi)地址為10位。邏輯地址 0430對應(yīng)的物理地址為:210+430=640邏輯地址 2120因為段內(nèi)地址120>段長90,所為該段為非法段。2.5 分頁和分段的主要區(qū)別3 信息共享與保存3.1共享:分頁系統(tǒng)中雖然也能實現(xiàn)程序和數(shù)據(jù)的共享,但遠(yuǎn)不如分段系統(tǒng)方便。分段系統(tǒng)的一個突出優(yōu)點是易于實現(xiàn)段的共享,允許若干個進(jìn)程共享一個或多個分段,且對段的保護(hù)十分簡單易行。分段系統(tǒng)中,實現(xiàn)共享只需要在每個進(jìn)程的段表中為共享段設(shè)置一個段表項。如圖其中,p1,p2是進(jìn)程3.2 保護(hù)保護(hù)方式:地址越界保護(hù);存取控制保護(hù)段表的改進(jìn),實際就是增加了存取控制字段如圖4 段頁式存儲管理方式引言:段式優(yōu)
8、于頁式,便于共享和保護(hù),沒有內(nèi)碎片,外碎片可以通過內(nèi)存“緊湊”來消除。一看緊湊,就必然要進(jìn)行重定位,需要硬件實現(xiàn),因此麻煩。頁式優(yōu)于段式,消除“外碎片”問題,沒有外碎片,每個內(nèi)碎片不超過頁大小。段頁式:結(jié)合二者優(yōu)點。每個進(jìn)程包含若干段,每個段包含若干頁內(nèi)碎片:是指頁面內(nèi)部沒有被使用的存儲區(qū)域,在頁式存儲方式中,會出現(xiàn)內(nèi)碎片。 外碎片:是指沒有得到分配權(quán)的存儲區(qū)域,在段式存儲方式中,會產(chǎn)生外碎片總結(jié):固定分區(qū):優(yōu)點:易于實現(xiàn),開銷小。缺點:內(nèi)碎片造成浪費 分區(qū)總數(shù)固定,限制了并發(fā)執(zhí)行的程序數(shù)目。信息共享困難動態(tài)分區(qū):優(yōu)點:無內(nèi)碎片;內(nèi)存利用率高于固定分區(qū),可裝入更多進(jìn)程。缺點:有外碎片;分配、回
9、收較固定分區(qū)復(fù)雜;信息共享困難。靜態(tài)頁式:優(yōu)點:沒有外碎片,每個內(nèi)碎片不超過頁大小。一個程序不必連續(xù)存放。由于頁的大小相等,內(nèi)存的分配、回收簡單。缺點:程序要求全部裝入內(nèi)存,才能執(zhí)行靜態(tài)段式:優(yōu)點:沒有內(nèi)碎片,外碎片可以通過內(nèi)存緊縮來消除。缺點:進(jìn)程要求全部裝入內(nèi)存。“內(nèi)碎片”和“外碎片”是碎片的兩種主要表現(xiàn)形式。消除“內(nèi)碎片”需要將內(nèi)存按程序需要的大小來分配;而消除“外碎片”則需要按固定大小來分配內(nèi)存的方法。而將這兩種方法結(jié)合,是能夠更有效地解決碎片問題的“段頁式存儲管理”就是這樣的一種技術(shù)。它將內(nèi)存分為大小相等的若干頁面,避免了“外碎片”。同時,又將程序按內(nèi)在的邏輯關(guān)系分成若干大小不一定相
10、等的段,并將這些段再細(xì)分為若干頁進(jìn)行內(nèi)存分配,這樣不但使內(nèi)碎片變得更小,提高了內(nèi)存的利用率,還保留了段式存儲管理便于動態(tài)鏈接的優(yōu)點??梢哉f“段頁式存儲管理”非常好地解決了內(nèi)存碎片問題。1 基本原理基本原理:是先將用戶程序分成若干個段,再把每個段分成若干個頁,并為每一個段賦予一個段名。再把每個段分成若干個頁(頁式)。其地址結(jié)構(gòu)由段號、段內(nèi)頁號、及頁內(nèi)位移三部分所組成。下圖是作業(yè)地址空間和地址結(jié)構(gòu)。該圖顯示一個作業(yè)有三個段。頁面大小是4kB.分別是主程序段、子程序段、數(shù)據(jù)段。04K8K12K15K16K主程序段04K8K子程序段04K8K12K10K數(shù)據(jù)段作業(yè)地址空間:地址結(jié)構(gòu):頁內(nèi)地址(W)段內(nèi)頁號(P)段號(S)2 地址變換過程2.1 地址變換過程在段頁式系統(tǒng)中,為了實現(xiàn)地址變換,增加一個段表寄存器,用來存放段表始址和段長。進(jìn)行地址變換時,首先利用段號S和段長TL比較。若S<TL,表示沒越界。于是利用段表起始地址和段號求出該段所對應(yīng)的段表項在段表的位置,從中得到該段的頁表地址,并利用邏輯地址中的段內(nèi)頁號P來獲得對應(yīng)頁的頁表項位置,從中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)防兒童疾病課件
- 汽車美容洗車培訓(xùn)
- 音視頻工程師課件
- 油田開發(fā)項目建設(shè)管理方案(參考模板)
- 電網(wǎng)側(cè)獨立儲能示范項目質(zhì)量管理方案(模板)
- xx片區(qū)城鄉(xiāng)供水一體化項目人力資源管理方案(參考)
- 2025年礦業(yè)開采模塊項目合作計劃書
- 2025年耐侯鋼合作協(xié)議書
- 2025年年物流倉儲項目建議書
- 2025年地震數(shù)字遙測接收機項目發(fā)展計劃
- 復(fù)方口服避孕藥臨床應(yīng)用中國專家共識
- 代收工程款授權(quán)委托書
- 國家開放大學(xué)專科《辦公室管理》期末紙質(zhì)考試第五大題案例分析總題庫2025版
- 人教版五年級數(shù)學(xué)上冊解決問題分類練習(xí)及答案
- 2024年天津農(nóng)墾宏達(dá)有限公司招聘筆試沖刺題(帶答案解析)
- 關(guān)于開展基層治理小馬拉大車整治工作方案
- 四年級四年級下冊閱讀理解20篇(附帶答案解析)經(jīng)典
- 西藏自治區(qū)昌都市2021-2022學(xué)年七下期末數(shù)學(xué)試題(原卷版)
- 《胎膜早破教案》課件
- 2024年陜西西安財金投資管理有限公司招聘筆試參考題庫含答案解析
- FBS-GC-001-分布式光伏施工日志
評論
0/150
提交評論