亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Linux內(nèi)核在嵌入式操作系統(tǒng)課程建設中的應用

        2011-12-31 00:00:00原倉周呂衛(wèi)鋒康一梅宋友申雪萍王華鋒趙衡
        計算機教育 2011年18期


          摘要:隨著智能手機、網(wǎng)絡通信以及多媒體娛樂設備的高速發(fā)展,各種版本的Linux系統(tǒng)在這些嵌入式系統(tǒng)中得到了廣泛的應用。文章提出一種基于Linux內(nèi)核的嵌入式操作系統(tǒng)課程教學方案。針對在教學實施過程中遇到的一些關鍵問題,從培養(yǎng)目標、知識體系、實驗設計以及教學手段等多方面進行了分析和探討。實施效果表明,這些方法和手段的采用能夠有效提高學生對理論知識的掌握,強化對問題分析能力和動手編程能力的培養(yǎng)。
          關鍵詞:Linux內(nèi)核 嵌入式操作系統(tǒng) 教學方法
          文章編號:1672-5913(2011)18-0029-04 中圖分類號:G642 文獻標識碼:B
          基金項目:北航研究生院精品課程項目(201010);軟件開發(fā)環(huán)境國家重點實驗室開放課題(SKLSDE-2009KF-2-0X)。
          隨著嵌入式系統(tǒng)中處理器性能和內(nèi)存容量的快速提高,Linux在智能手機、網(wǎng)絡通信以及多媒體娛樂設備等領域得到了廣泛應用。國內(nèi)外高校也對嵌入式相關課程進行了探索[1-2]。
          針對軟件學院高層次工程化創(chuàng)新型人才的培養(yǎng)目標,結合國家Linux技術培訓與推廣中心的建設,我們在嵌入式操作系統(tǒng)的教學內(nèi)容中融入Linux的新概念、新技術,以就業(yè)需求為導向,系統(tǒng)而全面地進行了課程的教改研究和建設。
          當然,作為實用操作系統(tǒng),將Linux系統(tǒng)應用到實際教學中,也有很多問題需要討論和探索,如龐大的代碼量,繁雜的基礎概念和應用工具等。針對這些困難,文獻[3-4]進行分析并給出了一些嘗試方案。
          基于我們在相關課程中的知識和經(jīng)驗積累,結合國內(nèi)外針對Linux教學已經(jīng)取得的成果,我們設計了一套具有自己特色的課程體系和實施方案。學生通過該課程的學習,不僅可采用實例方式對嵌入式操作系統(tǒng)和計算機組成原理等核心專業(yè)基礎課程進行深入系統(tǒng)地拔高,而且可強化C語言編程能力和UNIX平臺的系統(tǒng)開發(fā)能力,學會以“系統(tǒng)”的觀點來看待嵌入式系統(tǒng)的組成,理清軟件和硬件之間的相互依賴關系,為將來從事嵌入式軟件的研發(fā)奠定堅實的理論和實踐基礎。
          1 課程群的發(fā)展歷程
          北航軟件學院自2004年起為一年級研究生和高年級本科生開設“Linux內(nèi)核分析與實踐”課程(該課程2009年得到教育部-英特爾精品課程項目支持),最初強調(diào)對操作系統(tǒng)本身原理(即內(nèi)核機制、進程管理、內(nèi)存管理、文件系統(tǒng)和設備管理等部分)的理解。在經(jīng)過一輪授課實踐后,相當部分學生反映對課程內(nèi)容學習有相當困難。認真分析后,我們結合軟件學院承擔的北航“國家Linux技術培訓與推廣中心”的建設任務,引入了Novell公司的SUSE Linux的使用和系統(tǒng)管理課程,并另外增加了Linux環(huán)境下應用程序設計內(nèi)容,用于解決學生Linux基礎知識不足的問題。我們發(fā)現(xiàn)根本原因是由于這些學生不具備Linux的相關基本概念和使用經(jīng)驗,在直接學習操作系統(tǒng)相關知識時,出現(xiàn)了知識斷檔。課改的實施旨在改善課程的教學效果。
          嵌入式操作系統(tǒng)是該專業(yè)一年級研究生第二學期的專業(yè)限選課程,該課程和上述兩門Linux相關的課程相互結合,強調(diào)嵌入式系統(tǒng)中的操作系統(tǒng)的實時性、可定制等特點,緊密結合實際就業(yè)需求,在課程中設置內(nèi)核移植、硬件驅(qū)動和中斷并發(fā)內(nèi)核機制等跟硬件平臺相關且實踐性較強的內(nèi)容,并通過μCOSII原理的對比,來加強學生對嵌入式操作系統(tǒng)中相關概念的掌握和理解。
          綜合以上課程群的內(nèi)容,驅(qū)動程序與內(nèi)核的學習是相互促進的,即先學習一些簡單的驅(qū)動程序的知識,有利于對內(nèi)核相關原理的學習。反過來,對內(nèi)核知識的深入學習,也是進行高級驅(qū)動程序開發(fā)的前提。這樣做的好處是,不僅強調(diào)驅(qū)動程序?qū)W習的重要性,而且重視相關的內(nèi)核原理對驅(qū)動程序設計的相關性,將課程定位于培養(yǎng)高端的嵌入式系統(tǒng)實用人才,
          結合以上教改內(nèi)容,可以總結出自頂向下和自底向上相結合的課程學習路線圖,在自頂向下部分,通過對Linux基本使用和應用編程的學習,學生可由Linux外部使用特性對內(nèi)核相關機制形成一些感性認識。在自底向上部分,通過首先學習一種硬件平臺,包括一些基本接口及其驅(qū)動,學生可對硬件提供的對內(nèi)核的支撐機制有個初步了解。
          
          在具備上下兩方面的基礎后,再逐步從應用需求和資源管理兩種角度引入操作系統(tǒng)內(nèi)核的功能需求,通過內(nèi)核相關實現(xiàn)將上層的應用接口和下層的硬件原理銜接起來。這種知識的組織結構既符合內(nèi)核設計的原則,也有利于學生將平臺開發(fā)和計算機組成知識融合起來。
          2 課程內(nèi)容與實施
          鑒于嵌入式操作系統(tǒng)相關知識點繁雜、涉及面廣、相互之間關聯(lián)性強從而造成學習時難于入門的特點,基于對實際開源操作系統(tǒng)具體實現(xiàn)方式的分析和對比,我們確定了“理論和實踐相結合,強調(diào)課程‘邊界’知識點,關注并及時融入新技術”的課程內(nèi)容設置原則。
          2.1 課堂講授內(nèi)容
          課程首先介紹嵌入式操作系統(tǒng)的基本功能和發(fā)展歷程,總結嵌入式操作系統(tǒng)特點。然后,講述實時系統(tǒng)的相關概念,包括臨界區(qū)、可重入、同步和任務切換等內(nèi)容。
          課程內(nèi)容基于i386處理器,但在涉及硬件細節(jié)時一般會適當對比ARM平臺,并考慮64位結構對內(nèi)核的影響。課堂講授的關鍵知識點還包括Linux的模塊編程、進程管理、內(nèi)核機制(如中斷和下半部、時鐘和定時器、多處理器和內(nèi)核同步等基礎機制)、內(nèi)存管理、文件系統(tǒng)、設備管理和驅(qū)動開發(fā)等部分。各知識點相應的部分,通常都會與μCOSII的實現(xiàn)方式進行適當對比。由于內(nèi)容和細節(jié)繁多,且相互之間關聯(lián)性強,所以在課堂上只選擇講授各大部分中關鍵和基礎性的知識點,而對于具體細節(jié)等需要深入學習的部分則通過實驗進行涵蓋。在具體內(nèi)容組織時采用“理論與實踐”的組織方式,即首先針對各相關內(nèi)容設計實驗(分為源代碼分析和動手編碼兩類),然后再根據(jù)實驗內(nèi)容確定課堂上的講授內(nèi)容。
          嵌入式操作系統(tǒng)處于硬件與應用程序之間,這決定了學習操作系統(tǒng)時存在一些“邊界”知識。比如,編譯鏈接時的地址重定位、硬件的支撐機制、內(nèi)核的啟動過程等。盡管這些知識不屬于核心知識點,但它們是完整理解核心知識點的基礎,因此需要在課程講授時明確指出。
          對于軟硬件領域出現(xiàn)的新技術,如虛擬化、多核等與操作系統(tǒng)內(nèi)核密切相關的一些新技術,在課程中也會適當解釋。
          2.2 實驗內(nèi)容
          為適應不同基礎和能力的學生,我們設計了分層次的實驗內(nèi)容,形式上分為源代碼閱讀分析和上機實驗兩大類。
          2.2.1 源代碼閱讀分析
          源代碼閱讀分析實驗的主要目標是使學生深入理解Linux或μCOSII操作系統(tǒng)的核心工作機制,并熟悉內(nèi)核代碼的組織方式和編程風格。這類實驗的主要內(nèi)容涉及內(nèi)核的啟動、內(nèi)存映射、進程的創(chuàng)建、打開文件、信號量的實現(xiàn)等。
          要求學生選擇2項以上的題目進行分析,并完成分析報告。報告的內(nèi)容包括所選內(nèi)容的技術背景和應用價值、所使用的算法和數(shù)據(jù)結構、具體實現(xiàn)時函數(shù)的調(diào)用關系,并對各函數(shù)的基本功能進行說明。報告最后還要求從操作系統(tǒng)原理的角度對所選擇技術的優(yōu)缺點及可能存在的改進方法進行分析。
          2.2.2 上機實驗
          上機實驗的主要目的是培養(yǎng)學生C語言和系統(tǒng)平臺的編程能力,并對課堂和源代碼閱讀所學習的原理進行驗證式或創(chuàng)造式的動手技能訓練。這類實驗的主要內(nèi)容包括內(nèi)核的編譯與安裝、模塊編程與管理、為內(nèi)核增加一種新的同步對象[5]、共享內(nèi)存和內(nèi)存映射文件、字符設備驅(qū)動程序以及復雜設備驅(qū)動程序等,內(nèi)容的設置在涵蓋主要原理的同時,兼顧實際就業(yè)時的技能需求。
          
          2.3 教學實施
          作為以動手能力培養(yǎng)為目標的課程,強調(diào)以學生為主體,但同時也重視教師的引導作用。本課程綜合運用以下多種教學方法和手段,以達到高層次工程化創(chuàng)新型人才的培養(yǎng)目標。
          1) 課堂專題討論。針對操作系統(tǒng)各部分知識相關性強,不易理清的特點,在課堂上給出一些引導性的問題,讓學生分組進行討論。老師根據(jù)各組的討論情況進行相應的引導,從而使學生在討論的過程中將各相關的知識點進行整理、組合,達到靈活應用的目的
          2) 實驗指導教師引導小組討論。實驗指導老師定期組織其指導的學生小組進行討論,依據(jù)實驗報告和項目文檔對其中存在的難題進行解答并展開討論,對一些有爭議的話題進行引導,鼓勵學生進行發(fā)散型思考,以提高其創(chuàng)新能力。
          3) 綜合考評方式。采用源代碼分析論文(25%)、實驗報告(25%)和期末筆試(50%)相結合的考核方式。源代碼分析論文強調(diào)學生從分析獲得的個人體會,實驗強調(diào)學生的動手能力和代碼規(guī)范性,而筆試則全部采用簡答題形式,注重對概念與具體實現(xiàn)方式的理解與對接。
          4) 現(xiàn)代教學手段的運用。針對課程中的一些重要內(nèi)容,制作相關的圖形、動畫或視頻,以增強教學效果。利用網(wǎng)絡環(huán)境展開教師與學生、學生與學生之間的及時溝通和交流,促進學生的學習主動性和自主性。
          3 課程特色
          1) 針對課程特點,合理組織教學內(nèi)容。針對該課程相關知識點繁雜,涉及面廣,相互之間關聯(lián)性強從而造成學習時難于入門的特點,本課程采用兩種實際的軟件硬件平臺的具體實現(xiàn)技術相對比的方式進行教學,以場景的形式對進程創(chuàng)建和切換、虛存映射等操作系統(tǒng)核心知識進行組織,有利于學生對相關知識的理解。另外,為了使學生理解操作系統(tǒng)和應用程序運行的來龍去脈,增加了(動態(tài))連接、系統(tǒng)的引導和啟動、可執(zhí)行文件的格式和組成等“邊界”內(nèi)容。
          2) 明確課程目標,注意理清同時涉及軟硬件的概念之間的關系。作為軟硬件密切結合的嵌入式系統(tǒng),嵌入式操作系統(tǒng)的深入學習離不開對硬件平臺的深入理解。但很多技術,比如中斷處理、地址綁定等概念,操作系統(tǒng)中的設計都需要依賴于處理器提供的支持才能實現(xiàn)。因此,在講述這類知識點時,強調(diào)哪些是硬件的技術,哪些是軟件的技術。這種做法非常有利于學生理解硬件中有哪些技術是為了操作系統(tǒng)的存在而設計的,操作系統(tǒng)中有哪些技術的實現(xiàn)是為了在多種硬件平臺上“通用”而設計的,從而達到培養(yǎng)創(chuàng)新型高級“系統(tǒng)”設計人才的目的。
          3) 強調(diào)實用技能,采用源代碼分析和編程實驗相結合的實踐形式。為了達到高效運行的設計目的,操作系統(tǒng)的源代碼通常設計得非?!熬馈?,因此可作為編程能力培養(yǎng)的經(jīng)典范例來使用。而上機編程實驗,則需學生綜合運用所學的相關原理和編程技術,設計并實現(xiàn)一種系統(tǒng)功能,因此強調(diào)實際動手技能的培養(yǎng)。這種代碼分析與上機實驗相結合,真正做到了理論與實踐相結合的培養(yǎng)模式。
          4 結語
          以上教改的實施顯著提高了學生的學習興趣和學習主動性,通過學生反饋的課程評估結果及其就業(yè)表現(xiàn)驗證了課程建設的有效性。
          我們深知,課程的建設和改進沒有止境,教學內(nèi)容和教學方法需要根據(jù)教學效果的反饋不斷地進行循環(huán)優(yōu)化。希望能通過進一步借鑒國內(nèi)外同行的寶貴經(jīng)驗,把我們的教學水平提高到一個新的層面。
          參考文獻:
          [1] Ian McLough

        亚洲国产AV无码男人的天堂| 日韩精品人成在线播放| 丰满少妇a级毛片| 116美女极品a级毛片| 亚洲一区二区三区av在线免费| 日韩精品一区二区三区免费观影| 久久久久中文字幕无码少妇| 亚洲伊人免费综合网站| 亚洲国产人成综合网站| 亚洲香蕉成人av网站在线观看| 蜜桃臀无码内射一区二区三区| 久草视频国产| 日韩精品视频在线一二三| 亚洲中文字幕日韩综合| 777国产偷窥盗摄精品品在线| 日本丶国产丶欧美色综合| 日韩美女av二区三区四区| 亚洲第一黄色免费网站| 国产福利视频一区二区| 国产精品日韩高清在线蜜芽| 亚洲精品熟女乱色一区| 久久一二区女厕偷拍图| 日韩亚洲欧美中文在线| 亚洲男人的天堂精品一区二区 | 少妇性l交大片免费1一少| 亚洲国产日韩a在线乱码| 丰满熟妇乱又伦| 手机看片1024精品国产| 日本不卡的一区二区三区| 国产91会所女技师在线观看| 欧美变态另类刺激| 日韩视频第二页| 久久精品国产精品亚洲婷婷| 久久综合九色欧美综合狠狠| 国精无码欧精品亚洲一区| 亚洲国产成人Av毛片大全| av中文字幕一区人妻| 亚洲精品无码不卡在线播he | 日本在线视频二区一区| 久久久久久夜精品精品免费啦| 四虎影视在线影院在线观看|