摘要:針對傳統操作系統課程教學中出現的問題,提出基于案例驅動的教學方式,并將研究性教學模式應用在該課程的教學中。此種教學模式彌補了傳統教學的不足,培養學生的創新精神和綜合實踐活動能力,開闊學生的思路,提高學生的自主學習能力,從而達到提高教育教學效果,增強學生綜合素質的目的。
關鍵詞:案例驅動;研究性教學;操作系統
操作系統是計算機系統硬件平臺上的第一層系統軟件,同時也是計算機專業和其他信息類專業的主干課程。因此,該課程無論在教學、科學研究和項目開發中都處于非常重要的地位[1]。同時,操作系統又是一門“抽象有余、形象不足”的理論課[2],基于傳統的教學方法,學生的學習存在一定的難度和挑戰性,具體表現如下。
1) 內容抽象。學生無法通過上機直觀地了解操作系統,只能憑借一定的模型做一些模擬實驗,增加了理解本課程的難度。
2) 發展迅速。計算機相關課程的內容更新換代超過用戶的想象,操作系統的更新處于其他軟件更新的前沿[3]。
3) 缺少對應的課程設計。該課程在許多高校的實驗學時少,缺少針對性,理論和實驗之間的銜接不夠,不利于培養學生的創新能力,學生沒有機會親自動手剖析一個具體的操作系統實例[4]。
4) 教學方法簡單。傳統的教學方法主要是教師集中式地灌輸講授內容。教師在啟發式、討論式教學方面做得不夠,沒有很好地與學生進行教與學的互動。
為了能夠讓學生扎實地掌握操作系統的原理、技術和實現方法,真正理解計算機操作系統,提高開發系統軟件和大型應用軟件的和能力,提高綜合能力,教師不僅要注意調動學生的學習積極性,而且要注意采取相應的教學和實踐方法。如何在有限的教學時間內將基本知識傳授給學生,使學生理解這門課程的重要性且產生興趣,是任課教師需要認真考慮的問題。基于案例驅動的研究性教學模式為解決這一問題提供了有效的方法和手段。
1基于案例驅動的研究性教學
案例驅動是教師根據課堂教學目標和教學內容的需要,通過設置具體案例,引導學生參與分析、討論、表達等活動,進而提高學生分析問題和解決問題能力的一種教學方式,其本質是理論與實踐相結合的互動式教學[5]。與傳統教學相比,案例驅動的教學方式顯示出理論聯系實際,促進學生重視社會實踐的優越性。
所謂研究性教學,指的是學生在教師指導下,根據各自的興趣、愛好和條件,選擇不同的研究課題,獨立自主地開展研究,從而培養創新精神和創造能力的一種學習方式[6-7]。這種學習方式的突出特征是堅持學生在學習過程中的自由選題、自主探究和自由創造,與以往學習方式相比,研究性教學更有利于培養學生的創新能力。
基于案例驅動的研究性教學模式將兩者的優勢有機地結合到一起,在操作系統的課程導入、教學過程及課程考核方式中都得到較好的體現,培養了學生的創新精神和綜合實踐活動能力,開闊了學生的思路,提高了學生的自主學習能力,從而達到提高教育教學效果,增加學生綜合素質的目的。
2案例驅動的研究性教學模式在操作系統教學中的實踐
作為任務驅動方式的案例教學,我們在具體實施的過程中,把教學知識點巧妙有機地隱含在案例中。通過教師施教,學生學習實驗,自主學習,提高自身的學習和實際操作能力。這一教學模式的主要實施環節如下。
2.1 案例的講解
教師通過對案例的講解,說明其中涉及到的各個環節以及每個環節中涉及到的主要知識點,并對知識點進行系統講解,使學生通過學習,對操作系統有初步的認識和了解。因此在講解案例時,教師都分為“提出任務、方案解決、具體實現”三步走。
2.2 實踐環節
教學初期,由教師為學生布置相應的實驗任務,在時機成熟的情況下,教師也可以引導學生自己確立任務。教師可以根據課程的知識點,將布置的大任務分解為若干個小任務,每一項小任務涵蓋一個或者若干個知識點。學生通過完成任務消化和理解知識點。
案例確定及任務分解的原則是讓它與不同的知識點相對應。在講授死鎖這一章時,教師以Java語言為例,給出了一個死鎖的案例,主體代碼如下。

該程序的運行效果如圖1所示。

通過展示這個貌似安全的小案例,教師可以引導學生發現其中存在的不安全因素,進而啟發學生采用已經學習的銀行家算法解決系統中可能出現的死鎖問題。將學生分成若干研究小組,每個小組研究的死鎖問題側重點不盡相同,學生通過查找資料、互相討論、請教教師等多種方法,最終制定解決方案,編程實現,最后形成總結報告提交。在解決問題的過程中,學生不僅學習到死鎖這個知識點,還要綜合回顧以前的學習進程、CPU調度等知識點。在整個學習過程中,學生的學習主動性大大提升,積極性也前所未有地高漲,教學效果明顯提高。
3案例驅動的研究性教學模式的特點
3.1重視實踐,培養動手能力,強化創新意識
由于操作系統課程具有抽象、枯燥的特點,因此,教師在教學中要強調實踐訓練。學生只有通過大量的操作系統實戰訓練,才能真正掌握操作系統的原理知識,逐步理解和掌握操作系統設計的思想和方法,解決實際問題。為此,針對傳統的操作系統課程教學存在的弊端,特別是重理論輕實踐的傳統教學理念,教師應在改革中革新思想,將教學重點放在培養學生的動手能力上,教學模式也應從傳授知識轉為創新能力培養與教研結合,提高學生的學習興趣。
3.2教學方法“以人為本”,激勵個性化學習
圍繞操作系統課程的教學目的,在教學內容和實施上,教師應堅持“以人為本”,考慮教學的多樣性和靈活性,為學生提供選擇的余地。采用的教學方法和手段也不拘形式,只要有利于教學目的,全部充分利用,以培養和提高學生的學習能力。
在教學過程中,教師應注重討論式教學、啟發式教學,強調個性化、開放化和理論聯系實際,師生的交流從傳統的課堂拓展到課堂+網絡討論+電子郵件+實驗室+機房。
教師應鼓勵學生根據自身水平和興趣選擇適合的學習方式、數量和難度,自主安排學習進程,在達到課程基本要求的前提下,使自己得到充分的發展和提高。
3.3結合實際案例分析Linux內核,培養學生的系統分析能力
在進行操作系統教學時,教師并不拘泥于操作系統原理的書本內容,而應緊緊結合Linux內核,將Linux作為實際案例進行分析,詮釋操作系統原理中抽象的概念、算法、理論。教學應以Linux系統為基點,將操作系統的進程、調度、同步、虛擬存儲、換頁、文件系統、系統調用、設備驅動等分散、枯燥的知識點還原為一個整體。這不但加深了本科生對于操作系統原理的理解,而且使他們逐步熟悉Linux技術[8]。
在設計操作系統的實驗上,教師充分利用Linux作為實驗對象。實驗從Linux的安裝、Linux環境、系統調用、定時器、內核模塊、進程調度、虛擬存儲、文件系統,循序漸進到Linux驅動的編寫和內核的改動[9],使歷屆本科生受益匪淺。
3.4運用研究性教學模式,激發學生的創新意識
我們的操作系統實驗并不局限于對Linux內核源代碼的分析和理解,而是鼓勵學生充分發揮想象能力和創新能力,在任何與操作系統相關的方面做出一些與眾不同的東西。學生可以自由組合,或者對Linux內核的某個feature進行分析,或者開發嵌入式系統,或者開發操作系統模塊,在學期末完成一個研究報告。此舉使學生積極開拓自己的視野,深入了解操作系統技術,激發他們的創新欲望。
除了課程教學,課程主講教師們鼓勵、指導本科生積極參與和操作系統及其模塊相關的研發項目。
3.5改革考核方式,建立多樣性、體現能力的課程考核體系
本課程采用的考核方式多種多樣,包括筆試(英文試卷)和Linux實驗考核,并強調實驗考核的重要性。最終的考核成績綜合了理論考試、大型主題實驗和平時練習成績。其中大型主題實驗可以分組進行,以此檢驗學生的綜合創新、實踐能力以及團隊合作能力。學生組隊完成實驗之后,按自愿原則,自己可以預約向其他同學作報告,介紹自己團隊的成果。
3.6實施雙語教學,培養具有國際競爭力的專業人才
我校操作系統課程采用“雙語”教學,包括選用經典原版教材,上課使用英文版電子教案,作業及其解答由英文完成,筆試采用英文試卷和英文答題[10-11]。
我校目前采用的操作系統教材是Abraham Silberschatz、Peter Baer Galvin、Peter Galvin、Avi Silberschatz合編的《Applied Operating System Concepts》第7版。這本書在國際上是一本口碑極好的操作系統教材,對操作系統原理的剖析十分清晰[12-13]。我校自2004年開始使用此教材,歷經3個版本。
3.7加強教學資源建設,創造良好的網絡教學環境
網絡化教學手段的應用為操作系統課程的教學改革提供了良好的支撐環境。我校的操作系統課程網站已經提供豐富的學習資源和學習功能,如在線Linux內核閱讀、網上作業系統、BBS論壇、操作系統資源下載、操作系統典型算法演示等[14-15]。
4實踐效果
為測試基于案例驅動的研究性教學模式的效果,我們將來自4個不同專業(計算機科學與技術、電子信息科學與技術、信息管理與信息系統、教育技術學)10班級的60名學生分成兩組,一組(實踐組)通過上述方法進行教學,一組(比較組)仍采用傳統教學方法教學,課程內容相同。課程教學效果對比統計情況如表1所示,其中實踐組優良率達到45%,不合格率為5%,比較組優良率為20%,不合格率為21%。同時,實踐組的學生自動性強,善于思考,在實驗過程中實現的方法比較多,雷同情況少;比較組則主要是被動接受,在實驗中局限于以往成型的實例,雷同情況嚴重。很顯然,實踐組的學生思路更加開闊,主動性更強。

5結語
操作系統課程教學質量的好壞,對學生后續的專業課程學習有著重要影響。提高該課程的教學質量,需要教師不斷深入探索。通過教學改革與實踐,該課程的教學質量有了一定提高,取得了初步成效。為了適應操作系統的飛速發展趨勢,筆者將繼續探索新的教學方法,充實案例庫,不斷改進實驗模式,建設新的評估指標體系,以利于創新性人才培養。
參考文獻:
[1]陳曉紅. 淺談操作系統課程改革[J]. 安徽教育學