操作系統(tǒng)課題_第1頁
操作系統(tǒng)課題_第2頁
操作系統(tǒng)課題_第3頁
操作系統(tǒng)課題_第4頁
操作系統(tǒng)課題_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、操作系統(tǒng)課程設(shè)計教學(xué)大綱一、 課程設(shè)計基本信息課程設(shè)計環(huán)節(jié)代碼:230027課程設(shè)計環(huán)節(jié)名稱:操作系統(tǒng)課程設(shè)計英文名稱:Course Design of Operating System課程設(shè)計周數(shù):2周學(xué)分:2.0適用對象:計算機(jī)科學(xué)與技術(shù)專業(yè)、網(wǎng)絡(luò)工程專業(yè)先修課程與環(huán)節(jié):高級語言程序設(shè)計、數(shù)據(jù)結(jié)構(gòu)和操作系統(tǒng)二、 課程設(shè)計目的和任務(wù)本課程是計算機(jī)專業(yè)的學(xué)生在學(xué)習(xí)了操作系統(tǒng)課程之后,為了加深和鞏固學(xué)生對所學(xué)操作系統(tǒng)各個理論和算法知識的理解,同時提高學(xué)生利用操作系統(tǒng)知識綜合運(yùn)用的能力和分析問題、解決的問題的能力而開設(shè)的一門實踐課程。通過本環(huán)節(jié)學(xué)生能夠充分把學(xué)到的知識應(yīng)用到實際的編程實踐中,有可以

2、進(jìn)一步鞏固操作系統(tǒng)中學(xué)習(xí)的理論。通過算法實現(xiàn)各種控制應(yīng)用進(jìn)一步體會操作系統(tǒng)中基本功能模塊的結(jié)構(gòu)和實現(xiàn)方法的實質(zhì),建立深入了解現(xiàn)有操作系統(tǒng)的評價和比較的方法,加深體會利用操作系統(tǒng)的原理能夠解決實際問題的在計算機(jī)系統(tǒng)編程和普通編程中解決實際問題的思路;通過對程序編寫規(guī)范,可以培養(yǎng)學(xué)生良好的編程風(fēng)格,包括程序結(jié)構(gòu)形式,行文格式和程序正文格式等;并培養(yǎng)學(xué)生的上機(jī)調(diào)試能力。三、 課程設(shè)計方式1、課程設(shè)計題目的選定采用指導(dǎo)教師提供參考題目與學(xué)生自主命題相結(jié)合的辦法選定課程設(shè)計題目。一人一題,不得重復(fù)。其中學(xué)生自主命題需要指導(dǎo)教師嚴(yán)格的審核,看是否滿足課程要求,檢查是否為重復(fù)課題。2、課程設(shè)計任務(wù)的完成在指

3、導(dǎo)教師的指導(dǎo)下,各個學(xué)生獨立完成課題分析、設(shè)計、代碼編寫和調(diào)試,獨立撰寫課程設(shè)計報告。所有工作任務(wù)主要在微機(jī)實驗室完成。四、 課程設(shè)計教學(xué)方法與要求課程設(shè)計教學(xué)方法:主要以學(xué)生上機(jī)操作為主,教師指導(dǎo)為輔課程設(shè)計要求:1、對系統(tǒng)進(jìn)行功能分解、模塊分析、控制模塊分析正確2、選擇合適的操作系統(tǒng)原理所需要數(shù)據(jù)結(jié)構(gòu)以及相應(yīng)的算法3、程序規(guī)模適中,著重于內(nèi)核修訂功能,也可以編寫外圍的程序驅(qū)動、文件系統(tǒng)的輔助工具和網(wǎng)絡(luò)工具等。盡可能的使系統(tǒng)的功能更加完善和全面4、掌握程序調(diào)試的方法5、說明書、流程圖要清楚,闡明設(shè)計思路。6、撰寫課程設(shè)計報告。按格式要求寫出完整、規(guī)范的報告并打印。其中模塊圖、流程圖要清楚、規(guī)

4、范。特別要求學(xué)生自己獨立完成。五、 課程設(shè)計內(nèi)容和時間安排(一)動員、準(zhǔn)備及規(guī)劃(0.5天)實習(xí)具體內(nèi)容:動員、選題、系統(tǒng)功能和需求的分析時間分配:上午動員、選題及規(guī)劃實習(xí)地點:機(jī)房(二)課程設(shè)計實施、檢查(0.5天)實習(xí)具體內(nèi)容:需求分析說明書和任務(wù)規(guī)劃,設(shè)計出每個功能時間分配:下午上機(jī)、初期檢查實習(xí)地點: 機(jī)房(三)課程設(shè)計實施(8天)實習(xí)具體內(nèi)容: 具體功能的實現(xiàn)及系統(tǒng)的完善工作、中期檢查時間分配: 4天上機(jī),1小時中期檢查實習(xí)地點: 機(jī)房(四)整理報告(1天)實習(xí)具體內(nèi)容: 文檔整理、設(shè)計報告的完成時間分配: 全部時間寫報告實習(xí)地點:機(jī)房或圖書館六、 課程設(shè)計基本要求(一)動員、準(zhǔn)備及

5、規(guī)劃1、要求:通過學(xué)習(xí),使學(xué)生了解所選擇開發(fā)環(huán)境的程序運(yùn)行環(huán)境中的調(diào)試功能,掌握跟蹤、修改錯誤的技巧。2、重點:題目的選定和結(jié)合操作系統(tǒng)原理的各個部分確定實現(xiàn)的功能以及和原理的結(jié)合,難點:對于程序運(yùn)行環(huán)境學(xué)會斷點設(shè)置以及中間結(jié)果的檢查。3、說明:題目自選也可以參考教師提供的題目,選題要緊密結(jié)合課堂教學(xué)內(nèi)容;并建立一個可行的工作計劃;熟悉程序運(yùn)行環(huán)境。(二)課程設(shè)計實施、檢查1、要求:領(lǐng)會按照實際的結(jié)構(gòu),使學(xué)生能根據(jù)實際問題選擇數(shù)據(jù)結(jié)構(gòu),清晰的描述算法2、重點和難點:算法分析和設(shè)計3、說明:學(xué)生自檢和指導(dǎo)教師檢查相結(jié)合,嚴(yán)格按照擬訂計劃完成任務(wù)(三)課程設(shè)計實施1、要求:培養(yǎng)良好的編程風(fēng)格,掌握

6、所選編程語言2、重點和難點:算法分析和設(shè)計3、說明:學(xué)生自檢和指導(dǎo)教師檢查相結(jié)合,嚴(yán)格按照擬訂計劃完成任務(wù)(四)整理報告1、要求:通過學(xué)習(xí),使學(xué)生掌握報告書寫規(guī)范2、重點:格式的規(guī)范3、說明:指導(dǎo)教師檢查七、 課程設(shè)計的考核方式和成績評定標(biāo)準(zhǔn)(一)課程設(shè)計考核方式點名、各個環(huán)節(jié)的考核及程序檢查、設(shè)計報告的綜合評定。(二)課程設(shè)計成績評定標(biāo)準(zhǔn)課程設(shè)計成績=點名*10%+程序檢查*30%+設(shè)計報告*60%由指導(dǎo)教師根據(jù)學(xué)生完成任務(wù)的情況、課程設(shè)計報告的質(zhì)量和課程設(shè)計過程中的工作態(tài)度等綜合打分。成績評定實行優(yōu)、良、中、及格和不及格五個等級。不及格者不能得到相應(yīng)的學(xué)分,需重新做課程設(shè)計,經(jīng)指導(dǎo)教師考核

7、及格后,方可取得相應(yīng)學(xué)分。優(yōu):有完整的符合標(biāo)準(zhǔn)的文檔,文檔有條理、文筆通順,格式正確,其中有總體設(shè)計思想的論述;程序完全實現(xiàn)設(shè)計方案,設(shè)計方案先進(jìn),軟件可靠性好;良:有完整的符合標(biāo)準(zhǔn)的文檔,文檔有條理、文筆通順,格式正確;有完全實現(xiàn)設(shè)計方案的軟件,設(shè)計方案較先進(jìn);中:有完整的符合標(biāo)準(zhǔn)的文檔,有基本實現(xiàn)設(shè)計方案的軟件,設(shè)計方案正確;及格:有完整的符合標(biāo)準(zhǔn)的文檔,有基本實現(xiàn)設(shè)計方案的軟件,設(shè)計方案基本正確;不及格:沒有完整符合標(biāo)準(zhǔn)的文檔,軟件沒有基本實現(xiàn)設(shè)計方案,設(shè)計方案不正確。提交的電子文檔和軟件必須是由學(xué)生自己獨立完成,雷同者教師有權(quán)視其情況扣分或記零分。八、 課程設(shè)計指導(dǎo)書孫鐘秀編操作系統(tǒng)教

8、程(高等教育出版社)九、 重要事項(一)課程設(shè)計報告要求:總結(jié)報告按如下內(nèi)容順序用A4紙進(jìn)行撰寫并打印裝訂成冊(要求最少20頁):1、統(tǒng)一的封面;2、目錄:正文從第一頁開始編碼,從而目錄的第一項為第一頁。3、課程設(shè)計正文包含以下內(nèi)容:(1)需求分析(2)系統(tǒng)設(shè)計:每個部分的算法設(shè)計說明可以是描述算法的流程圖,說明每個程序中使用的存儲結(jié)構(gòu)設(shè)計(如果指定存儲結(jié)構(gòu)請寫出該存儲結(jié)構(gòu)的定義)。(3)詳細(xì)設(shè)計:各個算法實現(xiàn)的源程序,源程序要按照寫程序的規(guī)則來編寫。要結(jié)構(gòu)清晰,重點函數(shù)的重點變量,重點功能部分要加上清晰的程序注釋。(4)系統(tǒng)實現(xiàn):采用哪些類,每個類的功能,類的定義及其說明,如何現(xiàn)實對應(yīng)的模塊

9、。如果采用過程編程,則需要每個過程的流程圖和詳細(xì)的功能說明,對于重點的函數(shù)的重點變量,重點功能部分要加上清晰的程序注釋。(杜絕把全部代碼復(fù)制到報告)(4)調(diào)試分析:測試數(shù)據(jù),測試輸出的結(jié)果,算法時間復(fù)雜度分析E結(jié)論和展望:每個模塊設(shè)計和調(diào)試時存在問題的思考(問題是哪些?問題如何解決?),和算法的改進(jìn)設(shè)想。課程設(shè)計過程的收獲、遇到問題解決問題過程的思考、程序調(diào)試能力的思考、對操作系統(tǒng)這門課程的思考、在課程設(shè)計過程中對操作系統(tǒng)課程的認(rèn)識等內(nèi)容。(5)總結(jié):對本課程設(shè)計的有哪些收獲、哪些不足,今后如何做得更好(6)按統(tǒng)一格式列出主要參考文獻(xiàn)。課程設(shè)計報告格式要統(tǒng)一,字都采用宋體小四,行距為1.5倍,

10、頁面邊距都為2厘米。(二)學(xué)生上交材料:1、程序源代碼(打包上傳,發(fā)送到各個指導(dǎo)老師的郵箱中,文件名格式為“姓名-班級-學(xué)號” );2、如果需要說明文件,則上交:(保存在.txt中)在說明文檔中應(yīng)該寫明上交程序所在的目錄,上交程序的主程序文件名,如果需要安裝,要有程序的安裝使用說明;3、課程設(shè)計報告(紙打印的和電子版)附件1:指導(dǎo)教師推薦題目(供參考)選題:題目大小適中課題一、編制銀行家算法通用程序,并檢測所給狀態(tài)的系統(tǒng)安全性。設(shè)計目的:主要是解決多種資源的被多個獨立執(zhí)行的程序使用的安全算法。銀行家算法就是采用矩陣存儲資源的數(shù)據(jù)進(jìn)行處理的方法。設(shè)計的要求:1)資源的種類和數(shù)目可以變化的2)進(jìn)程

11、可以的任意的順序創(chuàng)建和變化3)采用保守的方法來分配資源。課題二、處理機(jī)調(diào)度程序:選擇一個調(diào)度算法,實現(xiàn)處理機(jī)調(diào)度。設(shè)計目的:在多道程序和多任務(wù)系統(tǒng)中,系統(tǒng)內(nèi)同時處于就緒狀態(tài)的進(jìn)程可能有若干個。也就是說能運(yùn)行的進(jìn)程數(shù)大于處理機(jī)個數(shù)。為了使系統(tǒng)中的進(jìn)程能有條不紊地工作,必須選用某種調(diào)度策略,選擇一進(jìn)程占用處理機(jī)。要求學(xué)生設(shè)計一個模擬處理機(jī)調(diào)度算法,以鞏固和加深處理機(jī)調(diào)度的概念。設(shè)計要求:1)進(jìn)程調(diào)度算法包括:時間片輪轉(zhuǎn)法,短作業(yè)優(yōu)先算法,動態(tài)優(yōu)先級算法。2)可選擇進(jìn)程數(shù)量3)本程序包括三種算法,用C語言實現(xiàn),執(zhí)行時在主界面選擇算法(可用函數(shù)實現(xiàn)),進(jìn)入子頁面后輸入進(jìn)程數(shù),(運(yùn)行時間,優(yōu)先數(shù)由隨機(jī)函

12、數(shù)產(chǎn)生),執(zhí)行,顯示結(jié)果。課題三、用多進(jìn)程同步方法解決生產(chǎn)者-消費者問題設(shè)計目的:通過研究Linux 的進(jìn)程機(jī)制和信號量實現(xiàn)生產(chǎn)者消費者問題的并發(fā)控制.說明:有界緩沖區(qū)內(nèi)設(shè)有20個存儲單元,放入/取出的數(shù)據(jù)項設(shè)定為1-20這20個整型數(shù).設(shè)計要求:1) 每個生產(chǎn)者和消費者對有界緩沖區(qū)進(jìn)行操作后,即時顯示有界緩沖區(qū)的全部內(nèi)容,當(dāng)前指針位置和生產(chǎn)者/消費者縣城的標(biāo)識符.2) 生產(chǎn)者和消費者各有兩個以上.3) 多個生產(chǎn)者或多個消費者之間須有共享對緩沖區(qū)進(jìn)行操作的函數(shù)代碼.課題四、設(shè)計虛擬存儲區(qū)和內(nèi)存工作區(qū),編程序演示下述算法的具體實現(xiàn)過程,并計算訪問命中率:要求設(shè)計主界面以靈活選擇某算法,且以下算法

13、都要實現(xiàn)1) 先進(jìn)先出算法(FIFO)2) 最近最久未使用算法(LRU)3) 最佳置換算法(OPT)課題五、編程序?qū)崿F(xiàn)下述磁盤調(diào)度算法,并求出每種算法的平均尋道長度:要求設(shè)計主界面以靈活選擇某算法,且以下算法都要實現(xiàn)1) 先來先服務(wù)算法(FCFS)2) 最短尋道時間優(yōu)先算法(SSTF)3) 掃描算法(SCAN)4) 循環(huán)掃描算法(CSCAN)課題六、編程模擬多進(jìn)程共享臨界資源:要求產(chǎn)生3個進(jìn)程:1) 兩個進(jìn)程模擬需要進(jìn)入臨界區(qū)的用戶進(jìn)程,當(dāng)需要進(jìn)入臨界區(qū)時,顯示:“進(jìn)程x請求進(jìn)入臨界區(qū)”,同時向管理進(jìn)程提出申請;申請返回,表示進(jìn)入了臨界區(qū)。在臨界區(qū)中等待一段隨機(jī)時間,并顯示:“進(jìn)程x正在臨界區(qū)

14、”;當(dāng)時間結(jié)束,顯示:“進(jìn)程x退出臨界區(qū)”,同時向管理進(jìn)程提出退出申請;當(dāng)申請返回,顯示:“進(jìn)程x已退出臨界區(qū)?!?) 一個進(jìn)程作為原語的管理進(jìn)程,接受其他進(jìn)程的臨界區(qū)進(jìn)入請求:如果允許進(jìn)入,則設(shè)置相應(yīng)變量,然后返回;如果不允許進(jìn)入,則進(jìn)入循環(huán)等待,直到允許為止;3) 對臨界區(qū)的訪問應(yīng)遵循空閑讓進(jìn)、忙則等待、有限等待、讓權(quán)等待的準(zhǔn)則。4) 進(jìn)程間通信可以采用信號、消息傳遞、管道或網(wǎng)絡(luò)通信方式。課題七:為LINUX 設(shè)計一個簡單的二級文件系統(tǒng)。要求做到以下幾點:1) 可以實現(xiàn)下列幾條命令(至少4條)。Login 用戶登錄Dir 列文件目錄Create 創(chuàng)建文件Delete 刪除文件Open 打開

15、文件Close 關(guān)閉文件Read 讀文件Write 寫文件2) 列目錄時要列出文件名、物理地址、保護(hù)碼和文件長度。3) 源文件可以進(jìn)行讀寫保護(hù)。課題八:存儲管理-動態(tài)分區(qū)分配算法的模擬:要求設(shè)計主界面以靈活選擇某算法,且以下算法都要實現(xiàn):首次適應(yīng)算法、循環(huán)首次適應(yīng)算法、最佳適應(yīng)算法;課題九:編程演示三種存儲管理方式的地址換算過程:1) 分頁方式的地址換算分段方式的地址換算3) 段頁式的地址換算要求演示正確、清晰,編程所用工具不限。課題十、編寫一個簡單的端口掃描程序目的:熟悉linux下socket、網(wǎng)絡(luò)編程的基本方法;任務(wù):編寫一個簡單的程序,該程序可掃描局域網(wǎng)的某計算機(jī)開放了哪些端口;課題十

16、一、編寫一個基于TCP協(xié)議的客戶/服務(wù)器程序目的:熟悉linux下socket、網(wǎng)絡(luò)編程的基本方法,掌握實現(xiàn)客戶/服務(wù)器程序的編寫方法;任務(wù):編寫一個簡單的程序,該程序可實現(xiàn)基于TCP協(xié)議的簡單的客戶/服務(wù)器方式。課題十二、編寫一個使用數(shù)據(jù)報套接字的客戶/服務(wù)器程序目的:熟悉linux下socket、網(wǎng)絡(luò)編程的基本方法,掌握客戶/服務(wù)器程序的編寫方法;任務(wù):編寫一個簡單的程序,該程序使用數(shù)據(jù)報套接字實現(xiàn)簡單的客戶/服務(wù)器方式。課題十三、在linux平臺編寫一個簡單的網(wǎng)絡(luò)監(jiān)聽程序目的:熟悉網(wǎng)絡(luò)數(shù)據(jù)包格式,熟悉捕獲網(wǎng)絡(luò)數(shù)據(jù)包的基本方法任務(wù):在linux平臺編寫一個簡單的網(wǎng)絡(luò)監(jiān)聽程序,該程序能捕獲網(wǎng)

17、絡(luò)數(shù)據(jù)包,并根據(jù)需要分析相應(yīng)的數(shù)據(jù)包。課題十四、編寫一個簡單的內(nèi)核模塊。目的:動態(tài)可加載內(nèi)核模塊是我們動態(tài)擴(kuò)展內(nèi)核功能的一種方便靈活的方式,可用來實現(xiàn)一種文件系統(tǒng)、一個驅(qū)動程序、或其它內(nèi)核上層的功能?;疽螅?) 該模塊至少需要有兩個函數(shù):一個是init_module()函數(shù),在把模塊裝載到內(nèi)核時被調(diào)用,向內(nèi)核注冊模塊所提供的新功能;另一個是cleanup module()函數(shù),在卸載模塊時被調(diào)用,其任務(wù)是清除init_module()函數(shù)所注冊的功能。編寫完成后進(jìn)行該模塊的編譯、裝載和卸載操作。編寫一個用戶空間的程序來測試是否成功。2) 進(jìn)一步的要求:向上面模塊中再添加一些自己設(shè)計實現(xiàn)的新

18、函數(shù)新功能;編寫一個用戶空間的程序來測試你的模塊能否實現(xiàn)自己添加的功能。課題十五、編寫一個簡單的命令解釋器模擬shell功能基本要求1) 可打開提示符,并獲取用戶輸入的指令可解析指令3) 可尋找命令文件4) 可執(zhí)行基本的命令課題十六、實現(xiàn)系統(tǒng)狀態(tài)監(jiān)測工具目的:實現(xiàn)程序,通過獲取/proc文件系統(tǒng)所提供的系統(tǒng)信息,檢查系統(tǒng)當(dāng)前的各種狀態(tài)信息。要求:通過在命令行運(yùn)行該程序,可獲取以下信息:1) CPU類型、型號、內(nèi)核版本等信息從系統(tǒng)啟動至今的時間等3) 內(nèi)存總?cè)萘考爱?dāng)前可用內(nèi)存量4) 系統(tǒng)平均負(fù)載5) 支持的文件系統(tǒng)類型6) 系統(tǒng)正在使用的module信息附件2:課程設(shè)計題目1. 中文輸入法程序2. 文件管理系統(tǒng)3. 線程管理4. Windows進(jìn)程多種同步案例演示5. 各種Window或Linux驅(qū)動程序編程6. 基于共享內(nèi)存的進(jìn)程之間的通信7. 文件加密8. PE文件結(jié)構(gòu)解析9. 異常處理系統(tǒng)10. 作業(yè)管理11. 中斷驅(qū)動程序12. 可執(zhí)行程序的加殼和脫殼13. LRU動態(tài)內(nèi)存管理模擬14. 注冊表管理程序15. 內(nèi)存管理程序16. 多系統(tǒng)啟動程序17. CPU的保護(hù)運(yùn)行模式切換操作18. 掃描病毒算法模擬19. 木馬掃描算法20. 硬盤碎片清理程序21. 程序卸載工具22. 文件系統(tǒng)FAT、NTFS、光盤、U盤分析程序2

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論