莊旭菲 孫海東 張 燕 王海鳳 劉志強
1.內蒙古工業大學信息工程學院 內蒙古呼和浩特 010080;2.內蒙古教育招生考試中心 內蒙古呼和浩特 010011
嵌入式系統研究與開發已成為工業4.0的核心技術,而嵌入式操作系統是嵌入式系統的重要軟件支撐平臺,國內的大部分工科院校計算機科學與技術專業都開設了“嵌入式操作系統”課程。由于傳統的“嵌入式操作系統”課程在教學內容、教學模式和考核方式上,已不能適應當前新工科建設對嵌入式系統開發人才的需求,課程教學現狀與工程教育認證之間也存在一定的差距,所以“嵌入式操作系統”課程改革勢在必行。
“嵌入式操作系統”課程是計算機類課程中一門非常重要的專業課程,要想學好該課程,除了需要了解嵌入式體系結構方面的基礎知識,還需要了解程序設計基礎、數據結構和計算機網絡等多方面的知識,如果學生不重視前導課程的學習將會嚴重影響課程的學習效果。
嵌入式操作系統種類很多,用于教學的有μC/OS-Ⅱ、嵌入式Linux、VxWorks、FreeRTOS等,由于Linux免費、開源,內核可以定制裁剪,具有廣泛的硬件支持[1],適合應用在嵌入式系統中,國內的很多高校在教學上都選取嵌入式Linux操作系統。傳統的“嵌入式操作系統”課程在教學內容上還存在以下問題。
(1)課程理論基礎知識較多,更多偏向嵌入式操作系統內核原理知識和內核源代碼講解,工程實際應用價值較低。
(2)課程以知識點組織教學,雖然條理清晰,但是各個知識點相對比較孤立,而且缺乏實際的工程應用背景,學生學習后,不能理論聯系實際應用。
課程傳統的教學方式是以課堂的理論課講授為主,以教師為中心,是純粹的“填鴨式”教學方式,學生被動接收知識,缺少師生互動,降低了學生的學習主動性,無法體現“以學生為中心”的教學理念;而課程實驗只有少量學時,與理論課時間間隔較長,理論與實驗脫節,不能夠鍛煉學生的動手能力,無法提高學生的工程實踐能力。
由于嵌入式系統嚴重依賴于硬件設備,學生只能在少量的實驗課上接觸到硬件設備,學生無法在課下進行實際的硬件操作,導致大部分學生對相關的硬件知識點存在畏懼和陌生心理,降低學習熱情和學習興趣。
現有的課程考核方式以筆試為主,只有少量的實驗成績和平時成績,不能全面考核學生的工程實踐能力和創新能力,只能考核學生對片段化知識點的掌握程度,容易產生碎片化的思維。這種考核方式由于沒有較好的評價過程,就不能完善的建立質量監控和反饋機制,沒有持續性,很難促進教育質量的改善和提高。
“嵌入式操作系統”的前導課程一般有“程序設計基礎”“數據結構與算法”“嵌入式系統”和“計算機網絡”。其中“嵌入式系統”課程主要講授ARM體系結構和ARM匯編語言;“程序設計基礎”為本課程提供所需的編程基礎知識,如“C語言”;“數據結構與算法”為本課程進行操作系統內核分析與驅動開發提供了數據結構的分析和構造等理論基礎;“計算機網絡”為本課程提供一些必要的網絡基礎知識。在以上前導課程學習中,教師要讓學生了解嵌入式系統方向、各門課程之間的知識內在聯系和相互支撐關系,說明前導課程的重要性。
以產出為導向,針對畢業要求的支撐關系,按照教育部高等學校計算機科學與技術專業教學指導委員會編寫的《高等學校嵌入式系統專業方向核心課程教學實施方案》明確教學目標,合理設置課程教學內容,課程選取ARM Linux作為操作系統平臺。為了強調學生在牢固掌握理論知識的同時充分融入工程教育,要對具體教學內容進行合理設置。
(1)刪除嵌入式系統基礎內容介紹和操作系統課程中已經講授過的基礎知識。大部分高校的操作系統課程都以Linux為主,講解操作系統原理,所以需要刪除課程中的Linux內核原理部分,改為Linux操作系統的安裝和應用基礎知識,重點介紹嵌入式Linux開發環境的搭建及開發工具的使用。
(2)在講解“嵌入式Linux系統移植”時,主要講授嵌入式Linux系統移植的通用方法,并針對不同工程應用場景中的需求,進行定制化的移植方案設計,融入工程教育理念。
(3)對于“嵌入式Linux驅動開發”部分,以應用項目為引領,工程實際需求為牽引,講解在工程中常用的嵌入式字符設備驅動,如LED、按鍵和溫濕度傳感器等,力求適用于計算機科學與技術專業學生的工程實踐能力培養。
課程主要教學內容對應的項目任務和能力要求如下表所示。

課程主要教學內容對應的項目任務和能力要求表
采用“理論與實踐并重、注重工程創新教育、強化過程管理”的教學模式和方法,以學生為中心進行教學過程探究。
(1)采用混合式教學模式,充分發揮線上和線下雙線教學的優勢,把傳統教學的時間和空間都進行擴展。利用網絡信息技術,構建在線教學平臺,建設豐富的線上課程資源,如微課視頻、電子課件等課程學習資源,學生可以通過在線資源對課程進行預習和復習。教師在課堂將教學內容制定成項目模塊,分解成項目任務,講解主要知識點;然后在線上發布項目分解任務,即學生需要獨立完成的任務模塊,讓學生在課下完成并在線提交。由于課程實驗課時較少,可以安排學生做一些綜合實驗,并對學生進行面對面的實驗輔導。以課程第一部分內容為例,如下圖所示,說明了“嵌入式Linux開發環境”的線上和線下教學內容。

“嵌入式Linux開發環境”的線上和線下教學內容圖
(2)根據“以學生為中心”的教育理念,將討論式、支架式等教學方式和信息科技技術引入課堂,針對不同的教學內容采用不同的教學方法,激發學生的學習熱情、學習主動性和參與性。
比如,在“網頁溫濕度計綜合實驗”中,可以采用支架式教學方式。①搭建腳手架,建立“網頁溫濕度計”的概念框架。教師可以向學生講解溫濕度傳感器的背景知識和ARM開發板原理圖,如何查閱溫濕度傳感器數據手冊,通過GPIO端口和溫濕度傳感器通信,如何通過網頁調用CGI程序展示數據。②進入情境。教師向學生說明完成實驗需要的硬件:ARM開發板、溫濕度傳感器和交叉編譯宿主機;軟件:交叉編譯器、嵌入式Web服務器源碼;文檔:溫濕度傳感器數據手冊。教師可以給學生演示基于Web的網頁溫濕度計,讓學生能夠形象地了解本實驗的最終效果,并提示學生在此基礎上進行創新,如修改“網頁溫濕度計”的外觀、數據刷新時間等,提高學生的學習興趣和主動性。學生接觸到實驗硬件和軟件,進入實驗情境中。③獨立思考。2~3人組成小組,教師提示學生完成的步驟是:移植嵌入式Web服務器;編寫溫濕度傳感器驅動;編寫CGI程序和網頁;提供支架,然后讓學生一步一步進行問題分析、探索。教師在這個環節可以適當提示學生,并給予一些指導。④協作學習。學生小組組員之間相互配合,各自分工,每個人實現的任務,比如程序調用接口,都需要溝通才能互相調用。⑤效果評價。采取本人自我評價、小組其他成員評價和教師評價,根據學生的分析和解決問題的過程及最后展示結果,完成最終評價。
嵌入式系統離不開硬件,由于實驗學時有限,學生接觸硬件較少,導致學生無法在課下進行涉及硬件知識的學習,而課程的虛擬仿真實驗平臺為學生的課下學習和實驗教學開展提供了有力支持。QEMU是一款基于GPL許可證的通用的處理器模擬軟件,可以模擬很多架構處理器,如X86、ARM等[2]。在嵌入式Linux系統移植和驅動開發中,可以借助QEMU虛擬仿真實驗平臺完成大部分原來只能用硬件才能完成的操作,彌補了硬件實驗設備不足問題,可以使學生課下進行學習和實踐。
改革傳統的課程考核方式,增加課程中過程性評價比重,不以期末筆試考試成績為主。在過程性評價中引入對學生工程實踐能力和創新能力的考核,即在課程的線下和線上(實驗課)實踐環節將課程知識點凝練為具體的小項目,對學生分析問題和解決問題的能力進行考核,讓考核方式滿足“新工科”背景下社會對學生的需求度為服務目標,使評價過程具有持續性。
本文在“新工科”建設背景下,融入工程教育理念,對“嵌入式操作系統”課程的教學內容進行了重構;通過以項目引領、任務驅動的線上和線下混合教學模式和“以學生為中心”的教學方式,提高學生的學習積極性,保證教學質量;對課程的虛擬仿真實驗平臺的建設解決硬件實驗設備不足問題,可以使學生課下進行自主學習和實踐;改革傳統的課程考核方式,增加過程管理和能力考核。通過以上的課程教學改革措施,適應國家對“新工科”人才培養模式的需求,使計算機科學與技術專業學生具備解決復雜工程問題的能力和實踐創新能力,力圖達到“新工科”建設所要求的目標。