




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
圖4輸人任務(wù)不可度巧)若輸入任務(wù)可以調(diào)度,.系統(tǒng)不會給出任何提示,可直接在就緒隊列的列表中顯示就緒隊列的各任務(wù)信息圖5輸入正確的任務(wù)信息,檢查就緒隊列(6〕點擊廾始運行按鍵即廾始任務(wù)調(diào)度的模擬,三個動態(tài)顯示控件分別用來顯示運行任務(wù),就緒隊列和完成隊列里面各任務(wù)的屬性信息,上下文切換時,提示用戶按下任意鍵繼續(xù)。執(zhí)行隊列:8上下切換,按下任意褳繼綞!十E人列;一亓棄52圖6動態(tài)顯示任務(wù)的調(diào)度過程o〕若選擇從當(dāng)前的界面輸入時,系統(tǒng)會在用戶輸人運行任務(wù)總數(shù)和運行時間后,隱藏和鎖定這兩個按鍵,從而不再接受關(guān)于這兩個變量的任何輸入“之后用戶只可依次輸入任務(wù)的信息,非氵去的輸入數(shù)據(jù)在輸入時將會被自動忽略,以及對任務(wù)編號是否重名的檢查。當(dāng)任務(wù)輸入完成時,隱藏“點擊提交本次任務(wù)"。圖7用戶從界面輸入任務(wù)信息(8)在運行過程中點擊暫停運行\(zhòng)繼續(xù)運行\(zhòng)終止運行按鍵依次實現(xiàn)程序運行的暫停運行、繼續(xù)運行、和退出當(dāng)前任務(wù)運行的功能。當(dāng)用戶點擊暫停時,就算沒有上下文切換,系統(tǒng)的運行也會停下來,直到用戶點擊繼續(xù)。態(tài)晝示:行列;開始運行繼續(xù)運行終止運行 亙i 。甘日、?E 肛行 40卜丨日、、日、.2 、、日、日、E圖8運行過程中笤停六、程序清單一一文件讀取voidCMyDIg.:OnRadwI()TODOAddyocon0《notificationhandlercodehexecstrmgsl,s2,name,penod,mnt1me,stuTimeJ/é,時間Lilt」0b;7/限定文件格式CFiIeDia10gdlg(tme,NULL,NULL,OFN_HIDEREADONLYOFNOVERWRITEPROMPT,"textfile輯*.瞓0:if(IDOK一dDoModal()的正常打開蚓一dG“ath№me()獲取文件路徑CStdioFIIefile/℃運行時流式文件@腋Open@,Chie:.m。deRead)過只讀的方式打廾失敗,參數(shù):獲取路徑,打開方式MessageBox("文件打丿f失敗");returnfile.ReadStmg()2〕/啩始文骨第一行,總?cè)蝿?wù)數(shù)」0b:atol@2是轉(zhuǎn)換為整數(shù)file.ReadStnng(stuTune);//Oj真時河SumT1me—atoi(stuTnme);legal—O,for()ti一0.往m」0b0十十〕file.ReadString(name);file.ReadString(period);file.ReadString(mntime)—+f?%MJ1?UCMyDlg:DuQu(name,penod,mntime),DestroyQueue(Qon);DestroyQueue(Qready),DestroyQueue(Qdone);m_listI.DeleteAllItems();m_list3.De1eteAllItems();InitQueue(Qon);InitQueue(Qdone);InitQueue(Qready);intCMyDl&sl,CStrings2,CStrings3)intl,j;i=atoi(s2);legal-HIreturnO;else{POINTworkjob,ob->jjob->jobdoneTimes—0,ob->jjob->jobid=SIjob->jobidentify—O,job->job_llf—i-j;job->jobMissTimes=Ojob->jobpenod—a,ob->jCMyDlg.returnl,elsereturn0,floatjudge—O.0;if(!QueuePOINTQN0dep;DestroyQueue(Qready),InitQueue(Qready);m_list2.DeleteAllItems();return0,elsereturnl,elsereturn0;11intintDeleteHead(Qon,job);ob->job->j ;job->job_doneTimes4+-,ob->job_llf—(j0bob_doneTimes+I)*j0b->jobzperiod-count-jobjob->jobjob->jobendTime—count;DeleteHead(Qdone,job);job->jobMissTimes+job->jobdoneTimes+l)*job->job_pe1iod-count-job->jobLunTune;OrderJobI(Qready,j0b); if(!V', ,DeleteHead(Qready,job),RneedTune-,return17intCMyDl&PONT_workjob;ISDeleteHead(Qon,job);*(job->job_period) countjob—job_flag—I;job-?j;OrderJob(Qready,job);if(!QueueEmpty(Qready))job—job_state—"??tjleft_Tob->job_RneedTime;let-uml,mtCMyDlgCStnngCMyDlg_Qdonefti±id-kMJif(!QueueEmpty(Qready))Liltflag—O,m_list2FJifj-éI{JPOINTQN0deploopI:gotoloopl,19llf=1000)*(p->data->jobMissTimes+p->data->jobdoneTimes)=lilt(count))period.Format("%d",p->data->job_period);mnTime);",p->data->job_RneedTime);POINT_workjob,flag—I;0b);fi{JGetHeadElem(Qon,job);ob_RneedTime!—O)//héI(JCMyDlg::gotoloopl,else,if(flagl)20o團eueu瓠Qady〕孬放入就緒隊列mlist2DeleteAllItems(),goto[。mlist2.InsatItem(i,NULL),mlist2.SetItemText(i,O,p->data->jobid),mlist2.SetItemText(i,l,p>data->job_state〕;mlist2.SetItemText(i,2,penod),mlist2.SetItemText(i,3,mntlmemlist2.SetItemText(i4,11f);mlist2.SetItemText(i,5,meedüme)1p—p>next;elsemlist2.DeIeteAIIItems(),return].七、體會與自我評價這次操作系統(tǒng)課設(shè)題目是采用最低松弛度優(yōu)先調(diào)度的實時系統(tǒng)調(diào)度程序的模擬,剛開始對他的了解僅垠十課本上的算法例子,未曾想過用可視化的畀面呈現(xiàn)出一個完整的運行過程。由于是大二下做c艸的課程設(shè)計才用到過c,之后就沒有用過,所以當(dāng)決定用MHC做以呈現(xiàn)可視化時1決定重新溫習(xí)一遍c的知識。包扌叾去網(wǎng)上找猻鑫視頻(講c部分〕以及去圖書館借相關(guān)書籍。由十此次課程設(shè)計要求以動態(tài)結(jié)果顯示各任務(wù)的完成情況,所以免不了要運用到隊列相關(guān)知識。之前學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)不是很強,尤其是對十指針部分。所以這次特別再看了一遍數(shù)據(jù)結(jié)構(gòu)書本和以前的PPT,還有參考了一本《數(shù)據(jù)結(jié)構(gòu)與算法》語言版)。發(fā)覺隊列運用氬表和指針,確實很方便。通過這次的學(xué)習(xí),更加鞏固了數(shù)據(jù)結(jié)構(gòu)的相關(guān)知識,同時對指針的理解更加深刻,不再向以前望而生畏。課程設(shè)計中雖然知道當(dāng)最低松弛度降為0的時候,會搶占,但是對于如何搶占,被槍占的作業(yè)如何保存當(dāng)前的狀態(tài),算氵去可調(diào)度性,以及要通過什么樣的數(shù)據(jù)結(jié)構(gòu)來實現(xiàn)等等一系列的實現(xiàn)中可能遇到的問題。因此算氵去的實現(xiàn)上,數(shù)據(jù)結(jié)構(gòu)中包含了結(jié)構(gòu)體,指向結(jié)構(gòu)體的指針,隊列,隊列的首尾指針,調(diào)度算法包含了就緒隊列,執(zhí)行隊列,完成隊列的相互切換和根據(jù)松弛度的搶占等等,最終解決了這些問題之后,發(fā)覺在測試階段還得解決運行一段時間后,同時有兩個任務(wù)的最低松弛度降為0的時候,系統(tǒng)該如何調(diào)度。一時之間,確實不知道如何辦,后來在自己和同學(xué)的幫助下定了如何實現(xiàn),真止認(rèn)識到團隊合作的重要性。通過這次的課程設(shè)計,我對操作系統(tǒng)這門學(xué)科有了新的認(rèn)識,同時也對真正的計算機操作系統(tǒng)有了更加深人的了解。甴于以前了解的僅僅是最基礎(chǔ),最理論的東西,所以當(dāng)涉及到具體的實現(xiàn)方法時就有些找不著北了,通過這次的最低松弛度算氵去,我才真止了解了調(diào)度的原理和細節(jié),雖然只是一個壬務(wù)調(diào)度的模擬,但是己經(jīng)把調(diào)度的全過程顯示出來0通過這樣的一個模擬和動態(tài)顯示的過程,可以韓常形象的掃述操作系統(tǒng)的工作過程?,F(xiàn)在發(fā)覺對于這個知識點己經(jīng)有了很好的理解。中此可以知道專業(yè)課的學(xué)習(xí)1是需要多親自動手做的。很多的知識,如果單單從理論的角度是比較簡單的,可是真親自動手.去做一個的時候就會發(fā)現(xiàn)在制作的過程中出現(xiàn)各種各樣的問題。比如這次的課設(shè),我在最開始就出現(xiàn)了調(diào)度算法調(diào)2《度次序不當(dāng),算法健壯性不夠強大,和訪問越界,參數(shù)傳遞類型不匹配等錯誤,這些錯誤如果僅僅從理論上大家都可以很清楚的知道,也能避免??墒钦鎖E在做程序的時候,這些錯誤發(fā)生在數(shù)千行的代螞之中的時候,盡管有編譯軟件提示出錯可也難以準(zhǔn)確的定位,所以一時間難以找到錯誤的根源,有的時候不得不單步調(diào)試。這些都說明自己平時專業(yè)課的學(xué)習(xí)不夠洙入,動手上機練習(xí)的還是太少。所以在以后的學(xué)習(xí)中,應(yīng)該保持清晰的頭腦,多師練習(xí),勤于動手,這樣才能學(xué)的更加深入透徹。還有就是答辯的時候,千萬不能緊張,感覺這次答辯挺緊張,所以不但要學(xué)好,還應(yīng)保持良好的態(tài)。八、參考文獻湯子瀛編著,計算機操作系統(tǒng)(修訂版),西安電子科技大學(xué)出版社,2001年[2]顏盟盟編著,v讓“1C++從入門到精通,化學(xué)工業(yè)出叛社,20的年[3]林俊杰編著,新一代s艸+程序設(shè)計,清華大學(xué)出版
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國小程序游戲行業(yè)發(fā)展現(xiàn)狀、市場運行態(tài)勢及發(fā)展前景預(yù)測報告
- 七年級下冊《平行線的性質(zhì)》課件與練習(xí)
- 企業(yè)知識共享結(jié)構(gòu)優(yōu)化與創(chuàng)新能力提升
- 2025年武器、彈藥及其零件合作協(xié)議書
- 智慧城市數(shù)據(jù)平臺建設(shè)合作協(xié)議
- 電梯安裝安全協(xié)議書
- 消防安全技術(shù)服務(wù)項目合同
- 林地合作經(jīng)營合同書
- 用美術(shù)相關(guān)知識做
- 古代詩詞鑒賞征文
- 健康檔案模板
- 購買演唱會門票的合同模板
- DB32-T 4790-2024建筑施工特種作業(yè)人員安全操作技能考核標(biāo)準(zhǔn)
- 2022年安徽阜陽太和縣人民醫(yī)院本科及以上學(xué)歷招聘筆試歷年典型考題及考點剖析附帶答案詳解
- 頂管工程施工及驗收技術(shù)標(biāo)準(zhǔn)
- 護理團體標(biāo)準(zhǔn)解讀-成人氧氣吸入療法護理
- 【基于現(xiàn)金流的企業(yè)財務(wù)風(fēng)險探究文獻綜述4100字】
- TD/T 1036-2013 土地復(fù)墾質(zhì)量控制標(biāo)準(zhǔn)(正式版)
- 安全警示教育的會議記錄內(nèi)容
- 夫妻異地辭職信
- 2024年度-銀行不良清收技巧培訓(xùn)課件(學(xué)員版)
評論
0/150
提交評論