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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論