下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
實(shí)驗(yàn)項(xiàng)目名稱可變分區(qū)存儲(chǔ)管理方式的內(nèi)存分配回收實(shí)驗(yàn)?zāi)康募耙笊钊肓私獠捎每勺兎謪^(qū)存儲(chǔ)管理方式的內(nèi)存分配回收的實(shí)現(xiàn)實(shí)驗(yàn)內(nèi)容編寫程序完成可變分區(qū)存儲(chǔ)管理方式的內(nèi)存分配回收實(shí)驗(yàn)步驟確定內(nèi)存空間分配表采用最優(yōu)適應(yīng)算法完成內(nèi)存空間的分配和回收編寫主函數(shù)對(duì)所做工作進(jìn)行測(cè)試實(shí)驗(yàn)環(huán)境WindowsXP、visualstudio2005實(shí)驗(yàn)結(jié)果與分析#definen10#definem10#defineminisize100struct{ floataddress; floatlength; intflag;}usedtable[n];struct{ floataddress; floatlength; intflag;}free_table[m];allocate(j,xk)charj;floatxk;{ inti,k; floatad; k=-1; for(i=0;i<m;i++) if(free_table[i].length>=xk&&free_table[i].flag==1) if(k==-1||free_table[i].length<free_table[k].length) k=i; if(k==-1) {printf("無T可¨|用??空?閑D區(qū)?\n"); return; } if(free_table[k].length-xk<=minisize) { free_table[k].flag=0; ad=free_table[k].address; xk=free_table[k].length; } else {free_table[k].length=free_table[k].length-xk; ad-free_table[k].address+free_table[k].length; } i=0; while{used_table[i].flag!=0&&i<n) i++; if(i>=n) {printf("無T表à¨a目?填??寫??已°?分¤?分¤?區(qū)?,ê?錯(cuò)?¨a誤¨?\n"); if(free_table[k].flag==0) free_table[k].flag=1; else {used_table[i].address=ad; used_table[i].length=xk; used_table[i].flag=j; } return; }reclaim(j)charJ;{inti,k,j,s,t;floatS,L;s=0;while((used_table[s].flag!=J||used_table[s].flag==0)&&s<n) s++;if(s>=n){printf("找¨°不?到ì?該?作á??業(yè)°|ì\n");return;}used_table[s].flag=0;s=used_table[s].address;L=used_table[s].length;j==1;k=-1;i=0;while(i<m&&(j==-1||k==-1)){ if(free_table[i].glag==0) {if(free_table[i].address+free_table[i].length==s)k=i; if(free_table[i].address==S+L)j=i; } i++;}if(k!=-1) if(j!=1) {free_table[k].length=free_table[j].length+free_table[k].length+L;free_table[j].flag=0;} else free_table[k].length=free_table[k].length+L;else if(j!=-1) {free_table[j].address=S;free_table[j].length=free_table[j].length+L;} else { t=0; while(free_table[t].flag==1&&t<m) t++; if(t>=m) { printf("內(nèi)¨2存??空?閑D表à¨a沒?有?D空?間?,ê?回?收o?空?間?失o?ì敗?¨1\n"); used_table[s].flag=J; return; } free_table[t].address=S; free_table[t].length=L; free_table[t].flag=1; } return(ture); main() { inti,a; floatxk; charJ; free_table[0].address=10240; free_table[0].length=102400; free_table[0].flag=1; for(i=1;i<m;i++) free_table[i].flag=0; for(i=0;i<n;i++) used_table[i].flag=0; while(l) {printf("選?擇?功|能¨1項(xiàng)?(ê?§0退a?出?,ê?1分¤?配?內(nèi)¨2存??,ê?2回?收o?內(nèi)¨2存??,ê?3顯?示o?內(nèi)¨2存??)ê?\n"); printf("選?擇?功|能¨1項(xiàng)?(ê?§0~3)ê?:êo"); scanf("%d",&a); switch(a) {case0;exit(0); case1; printf("輸o?入¨?作á??業(yè)°|ì名?J和¨a作á??業(yè)°|ì所¨′需¨¨長?è度¨¨xk:êo"); scanf("%*c%c%f",&J,&xk); allocate(J,xk); break; case2; printf("輸o?入¨?要°a回?收o?分¤?區(qū)?的ì?作á??業(yè)°|ì名?"); scanf("%*c%c",&J); reclaim(J); break; case3; printf("輸o?入¨?空?閑D區(qū)?表à¨a:êo\n起e始o(jì)?地ì?址?¤分¤?區(qū)?長?è度¨¨標(biāo)à¨o志?\n"); for(i=0;i<m;i++) printf("%5.0f%10.0f%6d\n",free_table[i].address,free_table[i].length,free_table[i].flag); printr("按???任¨?意°a鍵¨1,ê?輸o?出?已°?分¤?分¤?區(qū)?表à¨a\n"); getch(); printf("輸o?出?已°?分¤?分¤?區(qū)?表à¨a:êo\n起e始o(jì)?地ì?址?¤分¤?區(qū)?長?è度¨¨標(biāo)à¨o志?\n"); for(i=0;i<n;i++) if(used_table[i].flag!=0) printf{"%6.0f%9.0f%6c\n",used_table[i].address,used_table[i].length,used_table[i]flag); else
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第13課《一、創(chuàng)建站點(diǎn)》說課稿 2023-2024學(xué)年初中信息技術(shù)人教版七年級(jí)上冊(cè)
- 2024年武鳴縣中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 商業(yè)地產(chǎn)賣房流程
- 塔機(jī)安裝培訓(xùn)
- 2024民政局離婚協(xié)議范文修訂及個(gè)性化定制合同3篇
- 口腔挫傷治療方案
- 第十三章《內(nèi)能》第二節(jié) 內(nèi)能 說課稿 -2024-2025學(xué)年人教版物理九年級(jí)上學(xué)期
- 2024版二手房交易合同樣本9篇
- 第三單元 9 正確認(rèn)識(shí)廣告2023-2024學(xué)年四年級(jí)上冊(cè)道德與法治同步說課稿(部編版)001
- 2025年魯人新版七年級(jí)物理上冊(cè)階段測(cè)試試卷
- 2024-2030年撰寫:中國汽車半軸行業(yè)發(fā)展趨勢(shì)及競(jìng)爭調(diào)研分析報(bào)告
- 北疆文化全媒體傳播體系的構(gòu)建與實(shí)踐
- 2025屆福建省廈門市重點(diǎn)中學(xué)高三第二次聯(lián)考語文試卷含解析
- OpenCV計(jì)算機(jī)視覺基礎(chǔ)教程(Python版)教學(xué)教案
- 2024年度二人合伙光伏發(fā)電項(xiàng)目投資合同3篇
- 《涉江采芙蓉》 課件高中語文統(tǒng)編版必修上冊(cè)
- 管道護(hù)理小組工作總結(jié)
- 北京市西城區(qū)2023-2024學(xué)年六年級(jí)上學(xué)期數(shù)學(xué)期末試卷(含答案)
- 幼兒園繪本故事《三只小豬蓋房子》教學(xué)課件全文
- 人臉識(shí)別項(xiàng)目施工方案方案
- 北京市房山區(qū)2023-2024學(xué)年九年級(jí)上學(xué)期期末語文試題(解析版)
評(píng)論
0/150
提交評(píng)論