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

正文內(nèi)容

操作系統(tǒng)實驗內(nèi)存分配(參考版)

2025-07-26 12:03本頁面
  

【正文】 } } }。 exit(0)。039。 break。: //顯示內(nèi)存使用 display_mem_usage()。 case 39。 flag = 1。439。 break。: //創(chuàng)建新進(jìn)程 new_process()。 case 39。 flag = 1。239。 break。139。 //獲取用戶輸入 getchar()。 //顯示菜單 fflush(stdin)。 free_block = init_free_block(mem_size)。}/*主函數(shù)*/int main(void){ char choice。 //空閑塊起始地址 fbnext = NULL。 fbsize = mem_size。 return NULL。 fb = (struct free_block_type *)malloc(sizeof(struct free_block_type))。 printf(0 Exit\n)。 printf(4 Terminate a process \n)。 printf(2 Select memory allocation algorithm\n)。 //system(clear)。 //內(nèi)存大小已經(jīng)設(shè)置 return 1。 } else { printf(The size must greater than zero! Please input again:)。 //設(shè)置內(nèi)存大小為size free_blocksize = mem_size。 if(size 0) { current_free_mem_size = size。size)。 。 } printf(Total memory size = )。 if(flag != 0) //防止重復(fù)設(shè)置 { printf(Cannot set memory size again\n)。 } } //按指定算法重新排列空閑區(qū)鏈表 rearrange(ma_algorithm)。 break。amp。 getchar()。 ) { scanf(%d, amp。 for(。 //最佳適應(yīng)算法 printf(\t3 Worst Fit \n)。 printf(\t1 First Fit\n)。 }}//設(shè)置當(dāng)前的分配算法void set_algorithm(){ int algorithm。 case MA_WF: rearrange_WF()。 case MA_BF: rearrange_BF()。void rearrange(int algorithm){ switch(algorithm) { case MA_FF: rearrange_FF()。 } } } return 0。 pre = rear。 rear = prenext。 rearnext = pre。 } else if(presize = rearsize) //比較鏈表中其他相鄰兩節(jié)點的空間的大小 { prenext = rearnext。 pre = forehandnext。 head = pre。 forehandsize = presize) //比較空閑鏈表中第一個空閑塊與第二個空閑塊空間的大小 { headnext = prenext。 while(prenext != NULL) { if(forehand == head amp。 pre = forehandnext。 i free_block_count1。 if(head == NULL) return 1。 struct free_block_type *forehand, *pre, *rear。}//按WF算法重新整理內(nèi)存空閑塊鏈表,按空閑塊大小從大到小排序。 rear = rearnext。 } else { forehand = pre。 forehand = rear。 forehandnext = rear。 rear = prenext。 forehand = headnext。 prenext = head。amp。 rear = prenext。 i++) { forehand = head。 //冒泡排序 for(i = 0。 int i。int rearrange_BF(){ struct free_block_type *head = free_block。 } } } return 0。 pre = rear。 rear = prenext。 rearnext = pre。 } else if(prestart_addr = rearstart_addr) //比較鏈表中其他相鄰兩節(jié)點的開始地址的大小 { prenext = rearnext。 pre = forehandnext。 head = pre。 forehandstart_addr = prestart_addr) //比較空閑鏈表中第一個空閑塊與第二個空閑塊的開始地址的大小 { headnext = prenext。 while(prenext != NULL) { if(forehand == head amp。 pre = forehandnext。 i free_block_count1。 if(head == NULL) return 1。 struct free_block_type *forehand, *pre, *rear。 /*釋放ab數(shù)據(jù)結(jié)構(gòu)節(jié)點*/ }}//按FF算法重新整理內(nèi)存空閑塊鏈表,按空閑塊首地址排序。 if(ab != NULL) { free_mem(ab)。 getchar()。 scanf(%d, amp。 int pid。}// 刪除進(jìn)程,歸還分配的存儲空間,并刪除描述該進(jìn)程內(nèi)存分配的節(jié)點。 } } current_free_mem_size += absize。 } else { pre = work。 free(work)。 work = prenext。 } rearrange_FF()。 prenext = fbt。 fbtnext = NULL。 fbtstart_addr = abstart_addr。 if(!fbt) return 1。 struct f
點擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1