freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

連續(xù)動態(tài)分區(qū)內(nèi)存管理模擬實現(xiàn)—操作系統(tǒng)課程論文(編輯修改稿)

2024-09-06 03:08 本頁面
 

【文章內(nèi)容簡介】 鏈中相應的表目項或鏈指針。⑷兩相鄰區(qū)都不是空閑區(qū):釋放區(qū)作為一個新空閑可用區(qū)插入可用表或自由鏈。程序流程圖內(nèi)存分配流程圖,如圖內(nèi)存回收流程圖,如圖數(shù)據(jù)結構體分析⑴進程屬性結構體typedef struct readyque{ char name[10]。 int size。}readyque,*readyqueue。⑵空閑鏈表結構體typedef struct idlyspace{ int from。 int size。 idlyspace * next。}idlyspace,*idly。⑶已分配鏈表結構體typedef struct busyspace{ int from。 readyque r。 busyspace * next。}busyspace,*busy主要程序代碼分析⑴主函數(shù)//代碼請?zhí)砑舆m當?shù)淖⑨?。int main(){ Is=(idly)malloc(sizeof(idlyspace))。 Isfrom=0。 Issize=256。 Isnext=NULL。 Is2=Is。 Bs=(busy)malloc(sizeof(busyspace))。 Bsnext=NULL。 int t,t1。 printf(\n.......................歡迎來到動態(tài)分區(qū)存儲管理系統(tǒng)..................\n\n)。 printf(...........................請選擇要執(zhí)行的算法:...........................\n)。 printf(......................... ...............................\n)。 printf(......................... ............................\n)。 printf(.......................... ...............................\n)。 printf(......................... ................................\n)。 printf(........................................................................\n)。 printf(請輸入您的選擇:)。 scanf(%d,amp。t)。 int i。 while(i!=5) { printf(........................................................................\n)。 printf(.........................操作菜單如下:(請選擇).......................n)。 printf(.......................... ...........................n)。 printf(......................... ...........................\n)。 printf(......................... ..........................\n)。 printf(....................................................\n)。 printf(.......................... 出 ..........................\n)。 printf(........................................................................\n)。 scanf(%d,amp。i)。 switch(i) { case 1: switch(t) { case 1: t1=FF()。 break。 case 2: t1=NF()。 break。 case 3: t1=BF()。 break。 case 4: t1=WF()。 break。 default: printf(選擇算法錯誤\n)。 return 1。 } if(t1) printf(分配空間成功\n)。 else printf(分配空間失敗\n)。 break。 case 2: t1=recover()。 if(t1) printf(回收成功\n)。 else printf(回收失敗\n)。 break。 case 3: Isprint()。 break。 case 4: Bsprint()。 break。 } } return 0。}第三章 :分析并實現(xiàn)四種內(nèi)存分配算法最先適應算法 空閑區(qū)按地址從小到大的次序排列。 分配:當進程申請大小為 SIZE 的內(nèi)存時,系統(tǒng)順序查找空閑區(qū)表(鏈),直到找到容量滿足要求(≥SIZE)的空閑區(qū)為止。從該空閑區(qū)中劃出大小為 SIZE的分區(qū)分配給進程,余下的部分仍作為一個空閑區(qū),但要修改其首址和大小。 優(yōu)點:這種算法是盡可能地利用低地址部分的空閑區(qū),而盡量地保證高地址 6部分的大空閑區(qū),有利于大作業(yè)的裝入。 缺點:主存低地址和高地址分區(qū)利用不均衡。在低地址部分集中了許多非常小的空閑區(qū)碎片降低了主存的利用率。最先適應算法int FF(){ int t=0。 readyque D。 printf“請輸入進程名:\”)。 scanf“%”,)。 printf“輸入進程申請空間大小:\”)。 scanf“%”,amp。)。 idly l=Is。 int mt=256。 busy b=Bs。 idly min=NULL。 while(l) //尋找空閑表中大小滿足申請進程所需大小并且起址最小的空閑結點 { if(=lsize) { if(lfrommt) { mt=lfrom。 min=l。 t=1。 } } l=lnext。 } if(mt!=256) //如果找到則為進程分配空間 { busy j。 j=(busy)malloc(sizeof(busyspace))。 jfrom=minfrom。
點擊復制文檔內(nèi)容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1