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

正文內(nèi)容

操作系統(tǒng)課程設計實驗報告-可變分區(qū)存儲管理和多級隊列調(diào)度算法模擬實現(xiàn)-免費閱讀

2024-12-14 16:43 上一頁面

下一頁面
  

【正文】 算法的實現(xiàn)都只考慮到效果的實現(xiàn),而算法的效率則次之。 } } 操作系統(tǒng) 課程設計報告 2 : 多級反饋隊列調(diào)度算法又稱反饋循環(huán)隊列或多隊列策略,主要思想是將就緒進程分為兩級或多級,系統(tǒng)相應建立兩個或多個就緒進程隊列,較高優(yōu)先級的隊列一般分配給較短的時間片。 break。 flag = 0。 while(run != NULL) { Output()。 flag = 0。 if(runneedtime == 0) 操作系統(tǒng) 課程設計報告 10 { run state = 39。 tmp round = Head round。 } scanf(%s,tmpname)。 printf(輸入進程的個數(shù): \n)。 fst = queueLinkPCB。 tmp next = NULL。 for(i = 0。 } else { nxt = in。 if(Head == NULL) { innext = Head。 fst = finish。 } } print = printnext。 Output()。 ? 最核心的數(shù)據(jù)結構就是進程的邏輯結構。又因為進程的組成只有 PCB,沒有程序和數(shù)據(jù),因而進程只有運行和就緒兩種狀態(tài),沒有等待狀態(tài)。通過試驗 ,對于 C 的語句有了比較多的了解,我們原來學的是 C++,但是發(fā)現(xiàn) C 的 I/O 比于 C++的似乎更為簡便一些。 int main(void) { mainpage()。 printf( 5顯示當前已分配分區(qū)鏈的信息 \n)。 printf(\n)。 printf(|%10d, inum)。 printf(\n)。 i != NULL。 printf(|%10d, isize)。 printf(\n %d 號作業(yè)成功得到內(nèi)存分配?。?! \n, iid)。 //將剩余的空閑分區(qū)合并 為一個分區(qū) flstartAddress = sum。 } lssize = lssize + tsize + nssize。 (ns != NULL)) { //有后一個分區(qū)可以與之合并 nsstartAddress = tstartAddress。 } else { tnext = fl。 tnext = NULL。 } delete a。 i = inext) //找到該作業(yè)所占的已分配分區(qū) { if (ijid == jid) { a = i。 } delete job。 i = inext) //找出 該 ID 的作業(yè) { if (iid == id) { job = i。 } } return flag。 isize = isize tmpsize。 tstartAddress = istartAddress。 } else { printf(\n 該作業(yè) 成功得到內(nèi)存分配?。。?\n)。 joblast = NULL。 printf(請輸入要 加入的作業(yè)的大?。ㄕ停?)。 isize = tsize。 } break。 for (fNode * i = fl。 printf( 4最后適應算法 \n)。 //初始化時,將整個用戶內(nèi)存劃分到一個分區(qū)里 tmplast = NULL。 fitAlgorithm = 0。 3 為程序分配存儲空間: 可以采用首次適應、最佳適應、最后適應算法來實現(xiàn)。 ? 當碎片產(chǎn)生時,能夠進行碎片的拼接。 二、設計目的 在掌握了計算機可變分區(qū)存儲管理方式的原理的基礎上,利用 C 語言在windows 操作系統(tǒng)下 模擬實現(xiàn)操作系統(tǒng)的可變分區(qū)存儲管理的功能,以便加深對可變分區(qū)存儲管理原理的理解,提高根據(jù)已有原理通過編程解決操作系統(tǒng)實際問題的能力 ,另一方面提高根據(jù)已有原理通過編程解決實際問題的能力,為進行系統(tǒng)軟件開發(fā)和針對實際問題提出高效的軟件解決方案打下基礎。主要是按照這三種算法的思想對空閑塊進行排序,以便找出符合要求的那個空閑塊。 count = 0。 tmpnext = NULL。 printf(\n)。 i != NULL。 } case 3: { if (jstartAddress tstartAddress) //首次適應算法,找到鏈表中分區(qū)起始地址最小的分區(qū) { t = j。 tstartAddress = tmpStartAddress。 cin size。 jobnext = NULL。 } } int allocateMemory(jNode * tmp) //內(nèi)存分配 { int flag = 0。 tlast = NULL。 } else { //若該分區(qū)大小恰 好等于作業(yè)大小,則從空閑分區(qū)鏈表中刪除該分區(qū) if (ilast == NULL) { fl = inext。 } void finishJob() //完成作業(yè) { jNode * job = (jNode *)malloc(sizeof(jNode))。 flag = 1。 deallocateMemory(id)。 break。 mergeMemory(startAddress, endAddress)。 for (fNode * i = fl。 fllast = t。 nssize = nssize + tsize。 delete ns。 flsize = userMemory sum。 } } } } void showFList() //顯示當前空閑分區(qū)鏈的信息 { printf(\n)。 printf(\n)。 i = inext) { printf( %10d, istartAddress)。 } void showJList() //顯示當前作業(yè)鏈的信息 { printf(\n)。 printf( )。 } void mainpage() //主界面 { int i = 0。 printf( 6顯示當前作業(yè)鏈的信息 \n)。 return system(pause)。任何輸入而正常結束。 ? 為避免顯 示結果超過 1 屏,調(diào)度結果要求寫入文件中以方便檢驗。 ? 進程中必須包括的內(nèi)容很多(參見教材 PCB部分的定義),為了簡化起見,可以略去一些與本模擬調(diào)度算法關系不大的一些信息。 return 0。 } p = finish。 if(finish == NULL) { innext = finish。 Head = in。 in next = fst。i ReadyNum。 InsertPrio(tmp)。 if( queueLinkPCB == NULL) { innext = queueLinkPCB。 scanf(%d,amp。 getchar()。 tmp count = 0。F39。 } } flag = 1。 if(Head LinkPCB!=N
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1