范振鈞,齊 悅
(通化師范學院 計算機學院,吉林 通化 134002)
操作系統課程實驗教學改革探析*
范振鈞,齊 悅
(通化師范學院 計算機學院,吉林 通化 134002)
論述了操作系統課程實驗教學存在的主要問題,按照面向應用,突出實踐能力培養的原則給出了課程實驗教學改革思路.并探討了對實驗教學的教學環境、實驗教學內容、教學方式方面的改進方法,以期提高實驗教學效果.
操作系統;實驗教學;vmare;分層次教學
操作系統是計算機科學與技術專業的核心專業課程,這門課程的理論性和實踐性都較強,內容豐富,概念抽象,涉及面廣,幾乎計算機專業的所有主干課程都和操作系統有著密不可分的關系.操作系統課程的特點決定了實驗教學成為該課程學習的重要環節.目前的操作系統課程實驗教學內容簡單,形式呆板,主要以驗證、仿真為主,實驗教學沒有發揮應有的作用.為了更好地體現實驗教學在操作系統教學中的作用,培養學生的動手實踐能力,我院在操作系統課程實驗教學中進行了一系列的改革,取得了較好的效果.
由于種種原因,我院以往的操作系統課程教學離教學目標的要求較遠,存在以下兩個方面的問題.
(1)缺乏真實的實驗教學環境.在以往的操作系統實驗教學中,由于受到機房管理的限制,大部分實驗都在windows操作系統環境下進行,由于windows系統內核不對外公開,在實驗課中只能利用windows提供的外部接口對其進行操作,實驗所涉及的資源是實際不存在的,學生實驗時無法深入到操作系統內部進行學習和探究,這種類型的實驗只能有助于對操作系統原理的理解,學生較難體會到操作系統和硬件的交互,以及操作系統的框架和部分運行機制(如中斷)的特點.實驗教學沒有發揮其應有的作用,直接影響到學生的學習興趣和積極性.因此,創建一個相對真實的實驗教學環境成為課程實驗教學改革的關鍵因素.
(2)實驗內容設計不合理,沒有形成一個完整的實驗體系.鑒于操作系統的龐大和復雜,在國內現有的教學條件下,設計出一個完善的操作系統基本不可能.缺少了一個實驗的主要產品,實驗課的效果必然打折扣.為了有一個好的教學效果必須在一個相對真實的實驗環境中,形成一個由淺入深的完整的實驗體系.在我院以往的實驗教學中,由于缺乏真實的實驗環境,實驗內容主要是圍繞教材中的幾個主要算法在windows操作系統下進行模擬驗證,注重的是理論知識的檢驗和證明,實驗內容沒有形成一個完整的整體,每一個實驗只是支離破碎地介紹了一些操作系統局部知識,學生很難將這些知識融會貫通,很難直觀地理解操作系統課程中眾多抽象的概念,更談不上把實驗中學習的方法和技能應用到實際軟件項目開發工作中去.因此,形成一個多層次的、完整的實驗教學體系成為我院操作系統課程教學改革的當務之急.
教育教學改革的重要目標就是培養高素質的創新型人才,這也是我院操作系統課程實驗教學改革的努力方向.根據這個思想,我們在實驗課程的教學環境、教學內容、教學方式上進行了改革.
2.1 創建基于vmare的操作系統實驗教學環境
Linux操作系統由于源代碼的開放性,使其成為操作系統教學和實驗首選研究對象.但是限于機房的條件,以及機房管理和其他課程實驗的需求,windows操作系統是實驗室的首選操作系統,如何把操作系統課程實驗環境由windows系統變成linux系統,成為困擾我院操作系統實驗課教學的最大障礙.本學期,經過努力,我們通過在windows操作系統下,使用vmare虛擬機模擬linux下的實驗,讓學生置身于真實的操作系統中,了解linux系統的具體實現情況,理論與實際結合,提高了教學效率.
采用虛擬機進行操作系統教學,可以完成操作系統課程教學中的注冊表更改等對系統有較大影響的實驗,還可以完成Linux下內核編寫、線程控制,存儲分配等實驗.采用vamre虛擬機進行實驗教學的環境,可以讓學生置身于真實的操作系統中,親身感受操作系統技術的具體實現情況.即提高了操作系統課程實驗教學的效率,又不影響其它課程的實驗,也便于機房的管理,一舉兩得.比如“進程”的概念是貫穿整個課程的核心概念,進程的概念是程序在數據集上的一次“執行過程”,是個動態的、抽象的、十分難以理解的概念.而在以往windows環境下,由于windows內核不對外開放,學生無法對進程直接進行操作,造成部分學生對進程的概念缺乏感性認識,導致“進程”概念理解困難,而后續的以“進程”概念為基礎的,進程之間并發執行以及進程間的通信等內容就更是無法理解了.現在通過在vmare環境下模擬進程的創建實驗,學生可以自己創建并刪除一個進程,在創建進程過程中可以親身體驗到進程的id,進程可以創建子進程,進程和子進程共享同一段代碼和變量,進程和進程之間可以互相通信,做了這個實驗后,學生就能夠真正了解進程的概念和進程之間的通信.
2.2 按照課程實驗特點,由淺入深,設計實驗系列
為增強實驗課的教學效果,結合操作系統課程的特點,參考國內其他院校的經驗,本著面向應用,突出實踐能力培養的原則,精選實驗項目,對選中的實驗項目進行難易搭配,提高了學生的學習興趣和實驗效果.具體做法是:從應用級、系統管理級、系統行為觀察級、實現級和源碼閱讀級的不同層次,在Linux操作系統平臺上,由淺入深地安排了五個級別的實驗題目,具體內容見表1.

表1 操作系統實驗分類表
應用級和系統管理級的實驗主要培養學生能夠熟練的使用、管理和維護linux系統,并可以在linux系統下進行簡單的編程實現,為學生將來從事linux一般性的管理工作打基礎.
在系統行為觀察級實驗里,學生可以用C語言或其他編程語言設計并編程,設身處地地觀察linux系統下進程異步并發及進程通信等操作的執行結果,進一步加深了感性認識,加深了對教材中抽象概念的理解,提高了學習興趣.
在實現級實驗里,對操作系統課程里的經典算法進行編程,在linux系統環境下,模擬實現一個小型操作系統的部分功能,培養學生解決實際問題的能力.
在源碼閱讀級實驗里,指導學生閱讀現有操作系統內核的源代碼,真正認識現代操作系統,理解操作系統的設計精髓,拓寬學生的視野.比如閱讀進程調度程序s ch e d .h源碼文件,了解linux進程調度原理,閱讀msg.c,sem.c和shm.c源碼文件,熟悉linux的通信機制.這個實驗可以結合課程設計和畢業設計,根據學生的實際理解能力,在教師的指導下進行.
通過上述設置形成了完整的實驗系列,改變了以往單一、零散的驗證性實驗模式.實驗內容由淺入深,很好的反映了操作系統課程的基本思想,有助于對課程的眾多抽象概念的理解.經過簡單應用實驗到綜合性設計性實驗,學生初步具備了管理linux系統的能力,形成了利用操作系統思想解決復雜的實際問題的能力.
2.3 因材施教,采用分層次教學
實驗分為選做和必做,針對不同的學生制定不同的要求,對理解能力一般的同學,要求必須完成應用級、系統管理級、系統觀察級的實驗,重點培養學生對linux操作系統的使用維護管理能力,為將來從事一般性的管理工作打基礎.對學有余力的同學,在掌握上述實驗的基礎上,結合課程設計或畢業設計,在教師指導下完成實現級和源碼閱讀級題目的實驗,主要的目的在于培養學生進行大型軟件的開發設計能力.
操作系統實驗教學改革,首先從改變實驗環境做起,通過采用虛擬機技術構建多操作系統實驗平臺,即可滿足操作系統實驗要求,又可以利用有限的硬件資源,減輕機房負擔,改變了以往缺少實際運行環境的模擬驗證實驗的難題,讓學生置身于真實的操作系統中,可了解這些技術的具體實現情況,理論與實際結合,提高教學效率.其次精選了實驗項目,形成了完整的實驗體系.最后采用分層次教學,強調基礎實驗的同時,重視綜合性設計性實驗,滿足了不同層次學生的需要.
[1]張其亮,韓斌.操作系統課程實驗教學改革探析[J].計算機教育,2010(4).
[2]李建榮.VMWARE虛擬機技術在計算機操作系統教學中的應用[J].價值工程,2011(12).
[3]張儀華,王園.虛擬機技術在操作系統教學中的應用研究[J].甘肅聯合大學學報,2009(7).
[4]趙艷紅,沈峰,段漢根.操作系統實驗教學的研究與實踐[J].河北北方學院學報,2010(4).
[5]徐晶,梁子剛.操作系統實驗課程教學改革與實踐[J].才智,2009(12).
[6]杜萍,范輝.應用型本科操作系統實驗教學初探[J].計算機教育,2008(8).
(責任編輯:王前)
Experiment Teaching Reform of Operating System Course
FAN Zhen-jun, QI Yue
(CollegeofComputerScience,TonghuaNormalUniversity,Tonghua,Jilin134002,China)
The optimization of experiment project and enhancement of teaching efficiency by using Vmare as experiment teaching platform of operating system is discussed in this paper.
operating system; experiment teaching; Vmare; hierarchical teaching
2013-04-06
范振鈞(1968-),男,吉林通化人,碩士,副教授.
通化師范學院院級教研項目.
G642
A
1008-7974(2014)01-0060-03