下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第頁(yè)Linux系統(tǒng)編程實(shí)踐一、課程說(shuō)明課程編號(hào):090268Z11課程名稱(chēng):Linux系統(tǒng)編程實(shí)踐/PracticeofLinuxSystemProgramming課程類(lèi)別:專(zhuān)業(yè)教育課程(集中實(shí)踐環(huán)節(jié))學(xué)時(shí)/學(xué)分:32/1.5先修課程:操作系統(tǒng)原理(或操作系統(tǒng)及安全)、計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語(yǔ)言)適用專(zhuān)業(yè):信息安全、計(jì)算機(jī)科學(xué)與技術(shù)、物聯(lián)網(wǎng)工程教材、教學(xué)參考書(shū):1.DanielP.Bovet.深入理解LINUX內(nèi)核(UnderstandingtheLinuxKernel).北京:中國(guó)電力出版社,2008年2.ScottMaxwell.Linux內(nèi)核源代碼分析.北京:機(jī)械工業(yè)出版社,2000年二、課程設(shè)置的目的意義Linux作為一個(gè)開(kāi)源計(jì)算機(jī)操作系統(tǒng),廣泛應(yīng)用于服務(wù)器、桌面及嵌入式應(yīng)用領(lǐng)域。本課程主要培養(yǎng)學(xué)生在Linux操作系統(tǒng)下的內(nèi)核級(jí)、系統(tǒng)級(jí)編程能力,是一門(mén)理論與實(shí)驗(yàn)的大型綜合實(shí)踐課程。主要包括在Linux操作系統(tǒng)下高級(jí)程序設(shè)計(jì)以及Linux內(nèi)核程序設(shè)計(jì)。三、課程的基本要求知識(shí):學(xué)習(xí)x86體系結(jié)構(gòu)及系統(tǒng)初始化過(guò)程,將操作系統(tǒng)基本原理與Linux系統(tǒng)內(nèi)核的進(jìn)程管理、存儲(chǔ)器管理、設(shè)備管理及文件系統(tǒng)的具體實(shí)現(xiàn)相結(jié)合;了解Linux高級(jí)程序設(shè)計(jì)方法、設(shè)計(jì)流程、開(kāi)發(fā)環(huán)境等;了解Linux字符設(shè)備和塊設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)方法;了解Linux高級(jí)程序設(shè)計(jì)尤其與系統(tǒng)安全相關(guān)API,學(xué)習(xí)Linux安全相關(guān)特性。能力:通過(guò)對(duì)Linux內(nèi)核的深入剖析,加深對(duì)操作系統(tǒng)原理的理解,并培養(yǎng)對(duì)Linux操作系統(tǒng)的系統(tǒng)級(jí)分析能力;初步掌握Linux內(nèi)核模塊編程、Linux簡(jiǎn)單字符設(shè)備和塊設(shè)備編程能力;培養(yǎng)Linux系統(tǒng)安全相關(guān)系統(tǒng)設(shè)計(jì)及程序開(kāi)發(fā)能力;培養(yǎng)能夠進(jìn)行Linux系統(tǒng)級(jí)大型應(yīng)用設(shè)計(jì)開(kāi)發(fā)能力。素質(zhì):通過(guò)對(duì)Linux操作系統(tǒng)具體實(shí)現(xiàn)方法的整體分析,建立系統(tǒng)級(jí)應(yīng)用開(kāi)發(fā)概念,體會(huì)系統(tǒng)級(jí)程序設(shè)計(jì)及系統(tǒng)安全相關(guān)設(shè)計(jì)的復(fù)雜性、關(guān)聯(lián)性、整體性;提高基本理論與具體實(shí)現(xiàn)相結(jié)合的綜合素質(zhì)。四、教學(xué)內(nèi)容、重點(diǎn)難點(diǎn)及教學(xué)設(shè)計(jì)章節(jié)教學(xué)內(nèi)容總學(xué)時(shí)學(xué)時(shí)分配教學(xué)重點(diǎn)教學(xué)難點(diǎn)教學(xué)方案設(shè)計(jì)(含教學(xué)方法、教學(xué)手段)講課(含研討)實(shí)踐1Linux啟動(dòng)初始化過(guò)程220CPU、內(nèi)存等體系結(jié)構(gòu)相關(guān)知識(shí)、硬件設(shè)置體系結(jié)構(gòu)如:PCI、Cache等配制教學(xué)思路:對(duì)x86體系、ppc體系、ARM體系進(jìn)行對(duì)比分析,描述各種體系下Linux初始化過(guò)程。教學(xué)模式:現(xiàn)場(chǎng)試驗(yàn)。2Linux內(nèi)核結(jié)構(gòu)220內(nèi)核模塊教學(xué)思路:大內(nèi)核與微內(nèi)核特點(diǎn)。3Linux內(nèi)核機(jī)制220內(nèi)核任務(wù)、Bottomhalf隊(duì)列內(nèi)核任務(wù)的理解教學(xué)思路:結(jié)合操作系統(tǒng)原理,講解Linux內(nèi)核各組件的具體實(shí)現(xiàn)。教學(xué)模式:通過(guò)投影Linux操作系統(tǒng)源代碼,對(duì)關(guān)鍵源代碼進(jìn)行逐句分析。4LinuxAPI220IPC教學(xué)思路:結(jié)合相關(guān)應(yīng)用實(shí)例,講解Linux與內(nèi)核相關(guān)高級(jí)程序設(shè)計(jì),加深對(duì)內(nèi)核的理解。教學(xué)模式:對(duì)關(guān)鍵代碼逐句分析。5實(shí)踐課題編程設(shè)計(jì)16016注:實(shí)踐包括實(shí)驗(yàn)、上機(jī)等,授課8課時(shí),實(shí)踐教學(xué)選作24課時(shí)。實(shí)踐內(nèi)容見(jiàn)第五節(jié)。實(shí)踐教學(xué)內(nèi)容和基本要求5.1基本要求在理論部分講授完成后,進(jìn)入實(shí)踐環(huán)節(jié),實(shí)踐環(huán)節(jié)的題目根據(jù)學(xué)生基礎(chǔ)、興趣進(jìn)行選擇。實(shí)踐采用1-2人一個(gè)開(kāi)發(fā)題目的方式進(jìn)行,但要求滿足實(shí)踐學(xué)時(shí)24學(xué)時(shí)的要求。事先由指導(dǎo)老師分配開(kāi)發(fā)任務(wù)。實(shí)踐結(jié)束后,每個(gè)同學(xué)應(yīng)遞交符合格式要求的報(bào)告一份。5.2可選實(shí)踐內(nèi)容序號(hào)題目實(shí)驗(yàn)內(nèi)容課時(shí)基本要求1內(nèi)核模塊設(shè)計(jì)理解Linux內(nèi)核模塊,熟悉Linux內(nèi)核模塊編程環(huán)境、編譯環(huán)境、內(nèi)核模塊加載過(guò)程,掌握Linux內(nèi)核模塊調(diào)試過(guò)程與調(diào)試方法。12(1)編寫(xiě)一個(gè)簡(jiǎn)單的內(nèi)核模塊程序;(2)編譯內(nèi)核模塊;(3)加載并調(diào)試內(nèi)核模塊。2Linux字符設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)理解Linux字符設(shè)備驅(qū)動(dòng)程序模塊,熟悉Linux驅(qū)動(dòng)編程環(huán)境、編譯環(huán)境、內(nèi)核模塊加載過(guò)程,掌握Linux驅(qū)動(dòng)程序調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)簡(jiǎn)單字符設(shè)備驅(qū)動(dòng)程序,理解Linux字符設(shè)備驅(qū)動(dòng)程序注冊(cè)及工作過(guò)程;(2)理解內(nèi)核空間與用戶(hù)空間數(shù)據(jù)傳輸?shù)倪^(guò)程及方法;(3)編寫(xiě)該驅(qū)動(dòng)程序的測(cè)試應(yīng)用程序,通過(guò)該測(cè)試程序測(cè)試驅(qū)動(dòng)程序的有效性。3Linux塊設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)理解Linux塊設(shè)備驅(qū)動(dòng)框架,熟悉Linux驅(qū)動(dòng)程序編程環(huán)境、編譯環(huán)境、內(nèi)核模塊加載過(guò)程,掌握Linux設(shè)備驅(qū)動(dòng)調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)塊設(shè)備驅(qū)動(dòng)程序,理解Linux塊設(shè)備驅(qū)動(dòng)程序注冊(cè)及工作過(guò)程;(2)理解內(nèi)核空間與用戶(hù)空間數(shù)據(jù)傳輸?shù)倪^(guò)程及方法;(3)編寫(xiě)該驅(qū)動(dòng)程序的測(cè)試應(yīng)用程序,通過(guò)該測(cè)試程序測(cè)試驅(qū)動(dòng)程序的有效性。4Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)理解Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)框架,熟悉Linux網(wǎng)絡(luò)驅(qū)動(dòng)程序編程環(huán)境、編譯環(huán)境、內(nèi)核模塊加載過(guò)程,掌握Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序,理解Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序注冊(cè)及工作過(guò)程;(2)理解Linux中斷過(guò)程及網(wǎng)絡(luò)協(xié)議機(jī)制;(3)編寫(xiě)該驅(qū)動(dòng)程序的測(cè)試應(yīng)用程序,通過(guò)該測(cè)試程序測(cè)試驅(qū)動(dòng)程序的有效性。5Linux文件系統(tǒng)設(shè)計(jì)通過(guò)指導(dǎo)學(xué)生上機(jī)實(shí)踐,掌握Linux文件系統(tǒng)程序設(shè)計(jì)過(guò)程。26(1)自定義一個(gè)簡(jiǎn)單文件系統(tǒng)(如類(lèi)似DOS);(2)編寫(xiě)該文件系統(tǒng)程序,并加載至Linux操作系統(tǒng);(3)編寫(xiě)測(cè)試程序,并測(cè)試該文件系統(tǒng)的有效性。6Linux系統(tǒng)下iSCSI應(yīng)用設(shè)計(jì)理解iSCSI工作過(guò)程。26(1)理解Linux系統(tǒng)下iSCSI,編寫(xiě)iSCSI協(xié)議代碼(2)配置iSCSItarget;(3)測(cè)試iSCSI相關(guān)性能。7Linux系統(tǒng)下多進(jìn)程程序設(shè)計(jì)-大矩陣運(yùn)算理解Linux進(jìn)程創(chuàng)建及進(jìn)程管理過(guò)程,理解Linux系統(tǒng)下IPC機(jī)制;掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)多進(jìn)程計(jì)算大矩陣運(yùn)算程序,動(dòng)態(tài)配置創(chuàng)建進(jìn)程的數(shù)目;(2)在單核單線程CPU系統(tǒng)下,記錄在不同進(jìn)程數(shù)目下完成運(yùn)算所需要的時(shí)間;(3)在多核多CPU環(huán)境下,記錄在不同進(jìn)程數(shù)目下完成運(yùn)算所需要的時(shí)間;(4)分析該結(jié)果。8Linux系統(tǒng)下多進(jìn)程程序設(shè)計(jì)-網(wǎng)絡(luò)下載理解Linux進(jìn)程創(chuàng)建及進(jìn)程管理過(guò)程,掌握Linux下SocketAPI編程方法,理解Linux系統(tǒng)下IPC機(jī)制;掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)多進(jìn)程FTP網(wǎng)絡(luò)下載程序;(2)在單核單線程CPU系統(tǒng)下,記錄在不同進(jìn)程數(shù)目下完成下載大文件所需要的時(shí)間;(3)在多核多CPU環(huán)境下,記錄在不同進(jìn)程數(shù)目下完成下載大文件所需要的時(shí)間;(4)分析該結(jié)果。9Linux系統(tǒng)下多進(jìn)程程序設(shè)計(jì)-網(wǎng)絡(luò)服務(wù)器理解Linux進(jìn)程創(chuàng)建及進(jìn)程管理過(guò)程,掌握Linux下SocketAPI編程方法,理解Linux系統(tǒng)下IPC機(jī)制;掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)簡(jiǎn)單的多進(jìn)程FTP網(wǎng)絡(luò)網(wǎng)絡(luò)服務(wù)器;(2)同時(shí)支持5000個(gè)以上的不阻塞網(wǎng)絡(luò)鏈接;10Linux系統(tǒng)下多進(jìn)程程序設(shè)計(jì)-IPC理解Linux進(jìn)程創(chuàng)建及進(jìn)程管理過(guò)程,理解Linux系統(tǒng)下IPC機(jī)制;掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。161)編寫(xiě)一個(gè)多進(jìn)程程序;(2)進(jìn)程間分別采用匿名管道、命名管道、消息隊(duì)列、共享存儲(chǔ)器、filemap等機(jī)制實(shí)現(xiàn)數(shù)據(jù)傳送;(3)比較采用各種IPC機(jī)制的數(shù)據(jù)傳輸效率,并說(shuō)明原因。11Linux系統(tǒng)下多線程程序設(shè)計(jì)-大矩陣運(yùn)算理解Linux線程創(chuàng)建(采用pthread線程庫(kù))及線程管理過(guò)程,掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。16(1)編寫(xiě)一個(gè)多線程計(jì)算大矩陣運(yùn)算程序,動(dòng)態(tài)配置創(chuàng)建線程的數(shù)目;(2)在單核單線程CPU系統(tǒng)下,記錄在不同線程數(shù)目下完成運(yùn)算所需要的時(shí)間;(3)在多核多線程CPU環(huán)境下,記錄在不同線程數(shù)目下完成運(yùn)算所需要的時(shí)間;(4)分析該結(jié)果。12Linux系統(tǒng)下多線程程序設(shè)計(jì)-網(wǎng)絡(luò)下載理解Linux線程創(chuàng)建(采用pthread線程庫(kù))及線程管理過(guò)程,掌握Linux下SocketAPI編程方法,掌握Linux下系統(tǒng)編程環(huán)境;掌握Linux程序調(diào)試過(guò)程與調(diào)試方法。26(1)編寫(xiě)一個(gè)多線程FTP網(wǎng)絡(luò)下載程序;(2)在單核單線程CPU系統(tǒng)下,記錄在不同線程數(shù)目下完成下載大文件所需要的時(shí)間;(3)在多核多CPU環(huán)境下,記錄在不同線程數(shù)目下完成下載大文件所需要的時(shí)間;(4)分析該結(jié)果。13Linux系統(tǒng)監(jiān)測(cè)程序-資源監(jiān)控及定額管理熟悉Linux系統(tǒng)管理,掌握Linux系統(tǒng)監(jiān)測(cè)相關(guān)方法,理解Linux定額機(jī)制。16(1)編寫(xiě)一個(gè)Linux系統(tǒng)監(jiān)控程序;(2)監(jiān)控系統(tǒng)中進(jìn)程所占用的CPU時(shí)間、內(nèi)存使用、磁盤(pán)使用、網(wǎng)絡(luò)使用情況等;14Linux系統(tǒng)監(jiān)測(cè)程序-API監(jiān)控理解LinuxAPI調(diào)用過(guò)程,掌握定制LinuxAPI相關(guān)方法,并從安全角度監(jiān)控LinuxAPI被進(jìn)程調(diào)用情況。26(1)編寫(xiě)一個(gè)Linux系統(tǒng)調(diào)用,或在通用Linux系統(tǒng)調(diào)用中增加相關(guān)監(jiān)測(cè)機(jī)制;(2)當(dāng)進(jìn)程調(diào)用該被監(jiān)測(cè)API時(shí),系統(tǒng)對(duì)調(diào)用情況進(jìn)行記錄(調(diào)用進(jìn)程、調(diào)用時(shí)間等),并可進(jìn)行報(bào)警處理。15Linux內(nèi)核deamon遠(yuǎn)程監(jiān)控理解Linuxdaemon內(nèi)核線程,掌握LinuxDaemon程序設(shè)計(jì)相關(guān)方法,監(jiān)控Linux運(yùn)行情況,遠(yuǎn)端可通過(guò)該Daemon獲取系統(tǒng)運(yùn)行情況。26(1)編寫(xiě)一個(gè)LinuxDaemon,監(jiān)控Linux運(yùn)行情況,遠(yuǎn)端可通過(guò)該Daemon獲取系統(tǒng)運(yùn)行情況;(2)系統(tǒng)運(yùn)行異常,進(jìn)行報(bào)警處理。16Linux下網(wǎng)絡(luò)包抓取及分析理解Linux網(wǎng)絡(luò)協(xié)議棧,掌握網(wǎng)絡(luò)數(shù)據(jù)包抓取及包分析方法,識(shí)別網(wǎng)絡(luò)入侵、網(wǎng)絡(luò)攻擊等不正常數(shù)據(jù)包,并分析攻擊類(lèi)型,并提出相關(guān)處理、報(bào)警機(jī)制。26(1)編寫(xiě)一個(gè)網(wǎng)絡(luò)數(shù)據(jù)包抓取及數(shù)據(jù)分析程序,識(shí)別網(wǎng)絡(luò)入侵、網(wǎng)絡(luò)攻擊等不正常數(shù)據(jù)包,并分析攻擊類(lèi)型;(2)網(wǎng)絡(luò)數(shù)據(jù)異常,進(jìn)行報(bào)警處理。17Linux系統(tǒng)在ARM體系下的移植了解新一代ARM相關(guān)體系結(jié)構(gòu)如CortexA8/A9,理解Linux在ARM體系下的初始化及啟動(dòng)過(guò)程(如uboot的移植)。并最終在開(kāi)發(fā)板上運(yùn)行uboot和linux操作系統(tǒng)。26(1)深入理解ARMCortexA8/A9體系結(jié)構(gòu);(2)移植uboot;移植Linux,并在開(kāi)發(fā)板運(yùn)行完整Linux操作系統(tǒng)。六、考核方式及成績(jī)?cè)u(píng)定考核通過(guò)實(shí)踐表現(xiàn)(10%)、設(shè)計(jì)機(jī)試檢查(60%)、實(shí)踐報(bào)告(30%)三個(gè)方面綜合評(píng)定學(xué)生成績(jī)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 超聲波和次聲波課件
- 《PDA發(fā)展與介紹》課件
- 單位管理制度展示大全【人事管理】十篇
- 單位管理制度展示大合集【人力資源管理篇】十篇
- 策略深度研究:當(dāng)前還有哪些高股息值得關(guān)注
- 全程編制棉絲絨項(xiàng)目可行性研究報(bào)告方案可用于立項(xiàng)及銀行貸款+201
- 2024-2026年中國(guó)微信公眾號(hào)市場(chǎng)調(diào)查研究及行業(yè)投資潛力預(yù)測(cè)報(bào)告
- 可行性項(xiàng)目研究報(bào)告電子類(lèi)
- 2024河南金屬及金屬礦批發(fā)市場(chǎng)前景及投資研究報(bào)告
- 2025年鹽酸酯項(xiàng)目可行性研究報(bào)告
- 2024年人教版八年級(jí)語(yǔ)文上冊(cè)期末考試卷(附答案)
- 遼寧省大連市2023-2024學(xué)年高三上學(xué)期雙基測(cè)試(期末考試) 物理 含解析
- 勞務(wù)分包的工程施工組織設(shè)計(jì)方案
- 18項(xiàng)醫(yī)療質(zhì)量安全核心制度
- 智能終端安全檢測(cè)
- 新能源發(fā)電技術(shù) 電子課件 1.4 新能源發(fā)電技術(shù)
- DB34-T 4859-2024 農(nóng)村河道清淤規(guī)范
- 中學(xué)物業(yè)管理服務(wù)采購(gòu)?fù)稑?biāo)方案(技術(shù)方案)
- 康復(fù)科年度工作亮點(diǎn)與展望計(jì)劃
- 冀教版二年級(jí)(上)數(shù)學(xué)加減乘除口算題卡
- 【期中考后反思】《反躬自省,砥礪奮進(jìn)》-2022-2023學(xué)年初中主題班會(huì)課件
評(píng)論
0/150
提交評(píng)論