吳強 劉其奇 楊全勝 徐造林 王曉蔚
摘要:針對計算機專業(yè)學生嵌入式系統(tǒng)實驗主要為應用型實驗,缺乏系統(tǒng)能力鍛煉的情況,提出系統(tǒng)能力培養(yǎng)方法,提出增加嵌入式系統(tǒng)軟件的分析、移植和設計等實驗環(huán)節(jié),使學生能夠全面地學習嵌入式系統(tǒng)的軟、硬件知識,為今后進行更高層次的設計打下基礎。
關鍵詞:嵌入式系統(tǒng)實驗:系統(tǒng)軟件;軟件分析與設計;軟件移植
引 言
目前,絕大多數(shù)院校和專業(yè)在開設嵌入式系統(tǒng)課程和實驗的時候都是以嵌入式應用系統(tǒng)實驗為主。誠然,大量缺乏嵌入式系統(tǒng)應用型開發(fā)人員是現(xiàn)狀,但是實際上還有一類人才更為缺乏,那就是有系統(tǒng)觀的嵌入式系統(tǒng)開發(fā)人員。高校的計算機專業(yè)擔負著為國家培養(yǎng)更高端人才的責任,培養(yǎng)系統(tǒng)級開發(fā)人員也迫在眉睫 。
1 傳統(tǒng)嵌入式系統(tǒng)課程實驗存在的問題
1.1 理論與實踐脫節(jié)
傳統(tǒng)嵌入式教學都是以教學為主、實驗為輔。學生們能很好地掌握嵌入式系統(tǒng)的系統(tǒng)結(jié)構(gòu)、硬件接口、編程語言,但若進行嵌入式系統(tǒng)產(chǎn)品開發(fā),真正能動手的學生就不多了。
1.2 教學、實驗內(nèi)容與社會需求脫節(jié)
嵌入式課程作為一門交叉學科,更新的速度日新月異,而在教學過程中,教學大綱往往得不到及時更新,教材得不到及時更換,因此出現(xiàn)了教學內(nèi)容跟不上社會對嵌入式人才需求的情況。
1.3 以應用為主,缺乏系統(tǒng)能力培養(yǎng)
許多高校都增加了實驗課的比重,盡管學生們可以在實驗設備上進行一些實驗,但由于實驗設備大多是由生產(chǎn)廠家做好的,程序大多數(shù)也是由廠家提供的,許多學生做實驗只是將現(xiàn)成的程序下載到實驗設備上,觀察一下結(jié)果,其動手能力得不到真正的提高,而且設置的實驗基本上都是以實際應用為主,學生無法培養(yǎng)和鍛煉系統(tǒng)能力,以至于學生缺乏設計系統(tǒng)的能力 。
2 進行教學改革的意義
從上述嵌入式系統(tǒng)課程教學與實驗的現(xiàn)狀看,目前教學普遍存在著重應用、輕系統(tǒng)的問題,特別是相關實驗基本上都是嵌入式系統(tǒng)應用實驗。我們認為高校計算機專業(yè)的學生除了掌握嵌入式系統(tǒng)應用,更應該具備嵌入式系統(tǒng)軟件的分析和設計能力。因此非常有必要在計算機專業(yè)開設嵌入式系統(tǒng)軟件分析與設計的實驗。如果計算機專業(yè)學生能夠通過嵌入式實驗對嵌入式系統(tǒng)軟件進行分析及設計,就能夠更好地提升學生系統(tǒng)軟件設計能力,在參加嵌入式系統(tǒng)競賽、教師科研、畢業(yè)設計及工作后進行嵌入式系統(tǒng)開發(fā)設汁中也能夠快速上手,高質(zhì)量地完成開發(fā)任務。
我們知道,計算機專業(yè)有著深厚的工程背景,是卓越工程師計劃實施的主要專業(yè)之一,如何在我們的人才培養(yǎng)和教學理念上體現(xiàn)出研究型人才與卓越工程師培養(yǎng)這兩個方面是我們一直研究的重要內(nèi)容。
在長期的實驗教學過程中,我們逐漸形成了“強化基礎、軟硬結(jié)合、立足系統(tǒng)、面向應用、加強實踐”的教學與人才培養(yǎng)理念以及培養(yǎng)“具有系統(tǒng)能力和實踐創(chuàng)新能力的卓越人才”的培養(yǎng)日標 。
我們提出的“基于系統(tǒng)軟件分析與設計的嵌入式系統(tǒng)實驗的探索與實踐”教改思路就是基于上述理念。一方面進行基于系統(tǒng)軟件分析與設計的嵌入式系統(tǒng)實驗的探索與實踐,可以提高計算機專業(yè)學生系統(tǒng)軟件設計能力,培養(yǎng)出高端的嵌入式系統(tǒng)軟件級設計人才;另一方面,鼓勵學生設計出具有自主知識產(chǎn)權的嵌入式系統(tǒng)軟件,改變絕大多數(shù)嵌入式系統(tǒng)軟件來自國外的現(xiàn)狀,為國家發(fā)展基礎系統(tǒng)軟件做出自己的貢獻。
3 具體教學改革方案
3.1 嵌入式操作系統(tǒng)微核心的分析、研究與設計
通過對比性能,我們選擇規(guī)模適合、源碼公開的嵌入式操作系統(tǒng)微核心,從其結(jié)構(gòu)人手,對源碼進行分析并移植到實驗室具備的嵌入式實驗平臺;在源碼基礎上,設計部分擴展的系統(tǒng)軟件功能 。
3.2 文件系統(tǒng)的分析、研究與設計
分析嵌入式文件系統(tǒng),以嵌入式實驗平臺的MicroSD卡為存儲媒介,實現(xiàn)文件管理,完成文件的基本操作,包含有文件的創(chuàng)建、刪除、打開、關閉、文件讀、文件寫等;實現(xiàn)存儲介質(zhì)的選擇、邏輯到物理的轉(zhuǎn)換;完成對幾個主要數(shù)據(jù)結(jié)構(gòu)的初始化,設置文件系統(tǒng)的總體分區(qū)信息以及每個分區(qū)的幾部分——引導區(qū)、FAT區(qū)、文件存儲區(qū)等,完成存儲介質(zhì)的驅(qū)動程序 。
3.3 設備管理分析、研究與設計
分析現(xiàn)有的嵌入式外圍設備管理方法,實現(xiàn)嵌入式外圍設備管理,具體包括:ROM存儲器、RAM存儲器、FLASH存儲器、EPROM存儲器、嵌入式計算機與機電系統(tǒng)接口(如串口、以太網(wǎng)接口、12C接口以及USB接口等)、觸摸屏幕、LCD顯示屏幕等。
3.4 圖形用戶接口(GUI)分析、研究與設計
GUI是當今計算機發(fā)展的重大成就之一,它方便了用戶,避免記-憶大量命令,取而代之的是通過窗口、菜單、按鍵等方式進行操作。GUI是一個較為復雜的嵌入式系統(tǒng)軟件,對現(xiàn)有的GUI系統(tǒng)軟件進行分析研究,設計出自己的GUI系統(tǒng)是一件極具挑戰(zhàn)的工作 。
3.5 基于嵌入式系統(tǒng)的通訊協(xié)議分析、研究與設計
在嵌入式系統(tǒng)實際應用中,通訊功能是非常重要的,各種通訊協(xié)議的特點決定了它們需要操作系統(tǒng)的支持,學生通過學習已有的協(xié)議棧,將其移植到選擇好的嵌入式操作系統(tǒng)中。
3.6 外設驅(qū)動程序分析、研究與設計
外設驅(qū)動程序可以對系統(tǒng)提供訪問的外圍設備的接口,我們把嵌入式操作系統(tǒng)(系統(tǒng)軟件)和外圍設備(硬件)分離開,這樣當外圍沒備改變時,只需要更換相應的驅(qū)動程序,不必修改操作系統(tǒng)的微內(nèi)核及運行在嵌入式操作系統(tǒng)巾的軟件。所以學習如何設計外圍設備的驅(qū)動程序是一個非常重要的環(huán)節(jié)。
總之,我們的改革目標就是:從各個模塊的分析人手進行移植和設計,在全部模塊設計完成之后再進行優(yōu)化、整合,最終完成既定的目標系統(tǒng)(嵌入式微型操作系統(tǒng)),在實驗平臺上完成若干由嵌入式系統(tǒng)軟件支持的實際應用實驗。學生通過系統(tǒng)的訓練,能輕松地掌握基于嵌入式操作系統(tǒng)的完整開發(fā)過程,同時也積累了工程開發(fā)的經(jīng)驗,鼓勵學有余力的同學編制嵌入式系統(tǒng)軟件。
考慮到實驗難度較高,實驗時數(shù)有限制,實驗采用分組方式,即將實驗學生分成若干小組,每個小組由4-6人組成,采用組長負責制,小組長產(chǎn)生的方式主要通過學生毛遂自薦產(chǎn)生,該方式在“計算機系統(tǒng)綜合課程設計”(此課程2009年被評為“教育部一英特爾精品課程”)中已經(jīng)采用,學生踴躍報名,效果很好。由小組長負責指派小組成員完成各個模塊的分析和設計,在全部模塊設計完成之后,再進行優(yōu)化、整合,最終完成既定的目標系統(tǒng)(嵌入式微型操作系統(tǒng))。教師通過答辯方式完成驗收,某組答辯時,歡迎其他小組參加,達到取長補短,共同提高的目的 。
4 結(jié)語
設計采用top-down方式,首先確定實驗目標是實現(xiàn)一個基于嵌入式的微型操作系統(tǒng),然后將這一個目標系統(tǒng)逐層細分,形成各個子模塊(如文件子系統(tǒng)、設備管理子系統(tǒng)及GUI等)。這樣做的好處是整個實驗目標明確,系統(tǒng)關聯(lián)性強,便于學生在宏觀上把握各個模塊和整體系統(tǒng)的關系。
學生的實驗過程采用bottom-up方式,即先從各個模塊的分析人手,進行移植和設計,在全部模塊設計完成之后,再進行優(yōu)化、整合,最終完成既定的目標系統(tǒng)(嵌入式微型操作系統(tǒng))。學生通過這樣的訓練,能輕松地掌握嵌入式操作系統(tǒng)的完整開發(fā)過程,同時也積累了工程開發(fā)的經(jīng)驗。
我們已經(jīng)將基于嵌入式系統(tǒng)軟件分析、研究與設計的改革實驗方案應用于計算機學院嵌入式系統(tǒng)課程及配套實驗中。學生在實驗中感覺有不少的難度,但做完后普遍感覺收獲很大。經(jīng)過了解,一些從事嵌入式系統(tǒng)應用科研開發(fā)或進行課外研學及畢業(yè)設計的學生普遍覺得上手快、有自信。