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

正文內(nèi)容

操作系統(tǒng)內(nèi)存管理模擬系統(tǒng)的實(shí)現(xiàn)(編輯修改稿)

2025-05-04 21:38 本頁面
 

【文章內(nèi)容簡介】 List amp。head,Process pro)。//最壞適應(yīng)算法Node assign(LinkList amp。head,int orderIndex,int index,Node flagNode)。//一次分區(qū)分配int assignMemory(LinkList amp。head)。//內(nèi)存分配void insertNode(LinkList amp。head,Node q,int index)。//插入節(jié)點(diǎn)Node deleteNode(LinkList amp。head,int index)。//刪除節(jié)點(diǎn)int display(LinkList amp。head)。//打印分區(qū)分配情況int lowAttemper(int *excursionPointer)。//低級(jí)調(diào)度int findSubarea(LinkList amp。head,int index)。//回收內(nèi)存int menu()。//菜單int creatProcess()。//創(chuàng)建進(jìn)程Process* randomCreatPro(int n)。//隨機(jī)產(chǎn)生進(jìn)程LinkList createLinkList(int n){//建立空閑分區(qū)鏈cout 創(chuàng)建分區(qū)endl。LinkList head。 Node p。 head=(LinkList)malloc(sizeof(node))。 if(head==NULL){ cout頭結(jié)點(diǎn)分配錯(cuò)誤endl。 return NULL。 } headnext=NULL。//鏈表尾巴設(shè)置為NULL LinkList q=head。 int start=0。 for(int i=1。i=n。i++){ p=(Node)malloc(sizeof(node))。 if(p==NULL){ cout節(jié)點(diǎn)分配錯(cuò)誤endl。 return NULL。 } pnext=qnext。 qnext=p。 q=p。 p=i。 p=subareaSize[i1]。//分區(qū)表賦值大小 p=start。 pstatus=0。 start+=subareaSize[i1]。 } cout分區(qū)創(chuàng)建成功!!!endl。 return head。}Node firstFit(LinkList amp。head,Process pro){//首次適應(yīng)算法 Node p=headnext。//遍歷結(jié)點(diǎn),返回結(jié)點(diǎn),從第一個(gè)結(jié)點(diǎn)開始遍歷 if(p==NULL){ cout空閑鏈表不存在endl。 return NULL。 } else{ do{ if(pstatus==0amp。amp。p=){ break。 } p=pnext。 } while(p!=NULL)。 if(p==NULL){//沒找到合適的結(jié)點(diǎn) return head。 } return p。 }}Node nestFit(LinkList amp。head,Process pro,Node flag){//循環(huán)適應(yīng)算法Node p=flagnext。//遍歷結(jié)點(diǎn)while(p!=NULL){ if(pstatus==0amp。amp。p=){ break。 } p=pnext。}if(p==NULL){//遍歷到鏈表結(jié)尾 p=head。//從頭開始遍歷 while(p!=flag){//標(biāo)記結(jié)點(diǎn) p=pnext。 if(pstatus==0amp。amp。p=){ break。 } } if(p==flag){//正常跳出循環(huán),沒有合適的結(jié)點(diǎn)可分配 return head。 }else{ return p。// 在flag結(jié)點(diǎn)前找到一合適的結(jié)點(diǎn)分配 }}else{ return p。// 在flag結(jié)點(diǎn)后找到一合適的結(jié)點(diǎn)分配}}Node bestFit(LinkList amp。head,Process pro){//最佳適應(yīng)算法 Node p=headnext。//遍歷結(jié)點(diǎn),返回結(jié)點(diǎn),從第一個(gè)結(jié)點(diǎn)開始遍歷 Node q。//返回最佳空閑結(jié)點(diǎn) int leave。//剩余空間 int count=0。//計(jì)數(shù)器 if(p==NULL){ cout空閑鏈表不存在endl。 return NULL。 }else{ do { if(pstatus==0amp。amp。p=){ count++。 if(count==1){//第一個(gè)可以分配的空閑分區(qū) leave=p。 q=p。 }else if(count1){ if(pleave){//更適合的結(jié)點(diǎn) leave=p。 q=p。 } } } p=pnext。 }while(p!=NULL)。 return q。 }}Node worstFit(LinkList amp。head,Process pro){//最壞適應(yīng)算法 Node p=headnext。//遍歷結(jié)點(diǎn),返回結(jié)點(diǎn),從第一個(gè)結(jié)點(diǎn)開始遍歷 Node q。//返回最大空閑結(jié)點(diǎn) int count=0。//計(jì)數(shù)器 if(p==NULL){ cout空閑鏈表不存在endl。 return NULL。 }else {// 開始遍歷 do { if(pstatus==0){ count++。 if(count==1){//第一個(gè)空閑區(qū) q=p。 } else{//非第一個(gè)空閑區(qū) if(pq){//當(dāng)前結(jié)點(diǎn)大于前面最大結(jié)點(diǎn) q=p。 } } } p=pnext。 }while(p!=NULL)。 if(q=){ return q。 }else{ cout進(jìn)程大小大于最大分區(qū),無法分配endl。 return head。 } }}void insertNode(LinkList amp。head,Node q,int index){ Node p。//遍歷結(jié)點(diǎn) int j=1。if(head==NULL){ cout鏈表為空。 return。 } p=headnext。 for(。p。p=pnext){ j++。 if(j=index) break。 } qnext=pnext。 pnext=q。//插入完成 j=q。//j保持q的分區(qū)號(hào) q=qnext。//開始修改分區(qū)號(hào) j=q。 while(q!=NULL){ q=j+1。 q=qnext。 j++。 }}Node deleteNode(LinkList amp。head,int index){Node q。//保存要?jiǎng)h掉的節(jié)點(diǎn)Node p=head。//遍歷的節(jié)點(diǎn) int count=0。 while(pamp。amp。countindex1){ p=pnext。 count++。 } q=pnext。 pnext=qnext。return q。}int findSubarea(LinkList amp。head,int index){ Node p=headnext。//遍歷結(jié)點(diǎn) if(p==NULL){ cout空閑鏈表不存在endl。 return ERROR。 }else{ int j=1。 for(。p。j++) { p=pnext。 if(j=index1)break。 } for(int i=0。i3。i++){ subareaNode[i]=p。 p=pnext。 } return SUCCESS。 }}int display(LinkList amp。head){//打印分區(qū)分配情況 cout 分區(qū)信息endl。 Node p。 if(head==NULL){ cout分區(qū)未創(chuàng)建,請(qǐng)先創(chuàng)建分區(qū)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1