存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)

存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)

ID:27104914

大小:492.00 KB

頁數(shù):61頁

時間:2018-12-01

存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)_第1頁
存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)_第2頁
存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)_第3頁
存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)_第4頁
存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)_第5頁
資源描述:

《存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第六章存儲管理存儲管理功能內(nèi)存資源管理存儲管理方式外存空間管理虛擬存儲系統(tǒng)6.1存儲管理功能存儲分配和去配分配去配對象內(nèi)存、外存(相同方法)分配去配時刻進(jìn)程創(chuàng)建、撤銷、交換、長度變化(棧溢出,execl)存儲共享目的:節(jié)省內(nèi)存、相互通訊內(nèi)容:代碼、數(shù)據(jù)存儲保護(hù)防止地址越界防止操作越權(quán)6.1存儲管理功能(Cont.)存儲擴(kuò)充內(nèi)存、外存結(jié)合,虛擬存儲體系速度接近內(nèi)存,容量相當(dāng)外存地址映射邏輯地址=>物理地址硬件支持基址寄存器(base)、限長寄存器(limit)、快表;使用上述寄存器完成地址映射過程;不能正常完成地址映射時產(chǎn)生中斷。6.2內(nèi)存資源管理6.2.1內(nèi)存分區(qū)分區(qū)時刻靜態(tài)分區(qū):系統(tǒng)初

2、始化時分;動態(tài)分區(qū):申請時分。分區(qū)大小等長分區(qū):2i異長分區(qū):依程序、程序單位、對象大小。通常作法靜態(tài)+等長(頁式、段頁式)動態(tài)+異長(段式、界地址)6.2.2內(nèi)存分配靜態(tài)等長分區(qū)的分配字位映象圖空閑頁面表空閑頁面鏈動態(tài)異長分區(qū)的分配最先適應(yīng)(FirstFit)最佳適應(yīng)(BestFit)最壞適應(yīng)(WorstFit)位示圖(bitmap)100…1...10第0頁第2頁第1頁第k頁第n頁......分配:自頭尋找第一個為0的位,改為1,返回頁號;去配:頁號對應(yīng)的位(bit)置為0。用一個bit代表一頁狀態(tài),0表空閑,1表占用。(多單元)空閑頁面表首頁號空頁數(shù)............1204

3、特點(diǎn):可以分配連續(xù)頁面。DMA要求占用占用120頁121頁122頁123頁......空閑頁面鏈占用占用占用Head:優(yōu)點(diǎn):節(jié)省空間。(不適合管理外存)動態(tài)異長分區(qū)的分配空閑區(qū)首址空閑區(qū)長度............25001500數(shù)據(jù)結(jié)構(gòu):Criteria:盡量使空閑區(qū)域連續(xù)。初始時一個連續(xù)空閑區(qū)。長度=0為表尾。最先適應(yīng)算法(FirstFit)空閑區(qū)首址空閑區(qū)長度128641024256322560......空閑區(qū):首址遞增排列;申請:取第一個可滿足區(qū)域;優(yōu)點(diǎn):盡量使用低地址空間,高區(qū)保持大空閑區(qū)域。缺點(diǎn):可能分割大空閑區(qū)。Eg.申請32將分割第一個區(qū)域。最佳適應(yīng)算法(BestFit

4、)空閑區(qū):首址遞增排列;申請:取最小可滿足區(qū)域;優(yōu)點(diǎn):盡量使用小空閑區(qū),保持大空閑區(qū)。缺點(diǎn):可能形成碎片(fragment)。Eg.申請30將留下長度為2的空閑區(qū)??臻e區(qū)首址空閑區(qū)長度128641024256322560......最壞適應(yīng)算法(WorstFit)空閑區(qū):首址遞增排列;申請:取最大可滿足區(qū)域;優(yōu)點(diǎn):防止形成碎片。缺點(diǎn):分割大空閑區(qū)域??臻e區(qū)首址空閑區(qū)長度128641024256322560......UNIX存儲分配--FFstructmap{char*m_size;char*m_addr;};structmapcoremap[CMAPSIZ];structmapswap

5、map[SMAPSIZ];defineCMAPSIZ100defineSMAPSIZ100malloc(mp,size)structmap,*mp;{registerinta;registerstructmap*bp;for(bp=mp;bp->m_size;bp++){if(bp->m_size>=size){a=bp->m_addr;bp->m_addr=+size;if((bp->m_size=-size)==0)do{bp++;(bp-1)->m_addr=bp->m_addr;}while((bp-1)->m_size=bp->m_size);return(a);}}retur

6、n(0);}mfree(mp,size,aa)structmap*map;{registerstructmapbp;registerintt,a;a=aa;for(bp=mp;bp->m_addr<=a&&bp->m_size!=0;bp++);if(bp>mp&&(bp-1)->m_addr+(bp-1)->m_size==a){//與前合并(bp-1)->m_size=+size;if(a+size==bp->m_addr){//前后合并(bp-1)->m_size=+bp->m_size;while(bp->m_size){bp++;(bp-1)->m_addr=bp->m_add

7、r;(bp-1)->m_size=bp->m_size;}}}else{if(a+size==bp->m_addr&&bp->m_size){//與后合并bp->m_addr=-size;bp->m_size=+size;}elseif(size)do{//無合并t=bp->m_addr;bp->m_addr=a;a=t;//a與bp->m_addr交換t=bp->m_size;bp->m_size=size;bp++;//size

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。