摘 要:操作系統課程是計算機專業的核心課程,針對目前操作系統教學中存在的主要問題,教材內容陳舊,教學模式落后,實驗環節薄弱,教學內容沒有考慮與其他課程之間的銜接等提出了課程改革的主要措施。分別在合理選取教材,教學中采用實例化教學,把各個知識點與實際操作系統應用結合起來,類比知識點,多種教學方法相結合等多種授課方式并用,加強實驗教學環節,合理設置實驗教學內容及建立網絡輔助教學平臺等方面提出了改革的基本方法。
關鍵詞:操作系統 教學改革 教學方法 創新能力 學習興趣
中圖分類號:G420 文獻標識碼:A 文章編號:1674-098X(2015)08(b)-0183-02
Abstract:Operating system is the core of computer professional course, aiming at the main problems existing in the teaching of operating system, teaching content, teaching mode, the link is weak, the teaching content without considering the cohesion between with other courses such as the curriculum reform of the main measures are put forward. Respectively in textbook selection, teaching the instantiation of teaching, combine the knowledge and the actual operating system application, the analogy of knowledge, a variety of teaching methods such as the combination of a variety of teaching methods and, strengthen experiment teaching, setting up reasonable experiment teaching content and build a network auxiliary teaching platform puts forward the basic methods of reform.
KeyWords:Operating system;Teaching reform;Teaching methods;Innovation ability;Interest in learning
操作系統課程是計算機專業的必修課程和專業主干課,也是許多高等院校的考研課程之一,在計算機知識結構中有著極其重要的地位和作用,在計算機專業教學中起著承上啟下的作用。該課程主要介紹了操作系統的工作原理、設計思想、實現過程及有關理論,其主要特點是理論性強,算法多,概念較抽象并且難以理解等。學生不愿意學,老師也不容易教,因此,如何改進這門課程的教學方法是值得我們研究的問題。
1 目前操作系統教學中存在的主要問題
1.1 教材內容陳舊,更新較慢
長期以來,對操作系統教材的編寫內容比較固定,知識更新速度較慢。操作系統課程涉及到許多概念與算法,理論性較強。這些理論知識都是介紹操作系統本身的原理,與現代操作系統的發展缺乏實際的聯系,造成學生對該門課程理解的抽象化。而現代操作系統的發展日新月異,教材中的內容遠遠落后于當前社會上流行的主流操作系統技術,因此,學生接收的知識就顯得過于陳舊。
1.2 教學模式落后,教法單一
目前,操作系統的教學基本上都采取課堂教學,雖然很多教師都用多媒體課件授課,但是課堂上基本都是教師講學生聽“填鴨式”的教學模式,還有些教學經驗不夠豐富的教師甚至照著課件念,這些都不能引起學生的學習興趣,更談不上創新能力的培養。
1.3 實驗環節薄弱,不利于創新能力的培養
操作系統是一門理論性和實踐性較強的課程,理論內容相對比較抽象難懂,不易理解,這就需要通過實踐環節來補充,通過實驗,讓學生了解操作系統原理的實現。但是,目前很多高校由于設備缺乏,有些院校根本就沒有實驗課程,有些院校即使開設了實驗課程,也都是一些驗證性的實驗,對操作系統原理的理解幫助不是很大,不能使學生有效的了解操作系統的開發過程。
1.4 教學內容沒有考慮與其他課程之間的銜接
操作系統課程作為計算機專業的主干課程,在專業課中具有非常重要的地位。它的前導課程有C語言、數據結構和計算機組成原理,還和計算機網絡、Java程序設計、編譯原理、數據庫等課程有著緊密的聯系[1]。很多教師在教學過程中教學內容沒有考慮到與其他課程的銜接,僅僅是把操作系統作為一門獨立的課程來講授,只注重介紹其原理與算法,不能夠使課程之間有機的貫通起來。
2 課程改革主要措施
上述提到的操作系統教學中存在的種種問題,在計算機技術日益更新的今天,為了提高人才培養的質量,必須要有的放矢的進行課程教學改革,因此,在操作系統的教學方法和教學手段上我們進行了一些探索,提出了一些改革措施。
2.1 合理選取教材
在選擇操作系統教材時,要選取知識點新穎,容易理解的,且與實際應用結合緊密的教材。一本教材的內容畢竟有限,還可以選取一些優秀的教材作為參考資料介紹給學生。國內的教材在原理和技術上都相對滯后,還可以選擇原版的英文教材,把其中介紹操作系統發展的新趨勢和先進技術通過課件介紹給學生,這樣既可以讓學生了解到操作系統的先進技術,又提高了學生的英文水平,是一舉兩得的事情。
2.2 多種授課方式并用
在操作系統傳統的教學中,由于該門課程理論性較強、內容抽象龐雜,造成很多學生陷入被動和消極的學習狀態;另一方面教師“灌輸式”的授課方式也難以吸引和提高學生的學習興趣。因此要不斷拓寬教學思路,采取多種授課方式并用的模式。
(1)實例化教學,把各個知識點與實際操作系統應用結合起來。操作系統原理課程包含很多抽象的概念。學生們剛開始接觸這些概念的時候,覺著非常晦澀難懂。例如在進程管理中,進程是操作系統中極其重要的基本概念。教學過程中我們發現,如果只從概念上介紹進程的定義、狀態和進程控制塊等,學生們印象里沒有實物對應仍然會感覺非常抽象而且難以理解。我們引入實例教學法。首先打開操作系統的任務管理器,讓學生看到當前系統正在運行的所有進程,學生立刻就深刻感受到進程概念的真實存在。然后在講解進程的概念時,結合具體的linux的原理和源代碼分析來講述。通過介紹linux的執行狀態、可中斷的睡眠狀態、不可中斷的睡眠狀態、暫停狀態或跟蹤狀態、僵死態和死亡態六種狀態以及進程狀態變遷圖,學生可以更為深刻理解我們介紹的進程基本狀態和狀態轉換在我們操作系統中是真實存在的。對于進程控制塊,我們對應到linux中進程控制塊的數據結構 task_struct。所謂進程控制塊描述進程的當前情況以及控制進程運行的全部信息其實本質上就是一個結構體的屬性。通過這種具體化,形象化的教學方式,學生們再也不會感覺進程概念抽象難懂,大大提高了學習興趣。
(2)類比知識點。在操作系統中講解有些知識點時,可以用日常生活中學生比較熟悉的事物進行類比講授,例如對處理機調度算法的講解可以讓學生想象在超市買東西結賬時人多的情況下采取的方法,學生很容易就能想到排隊的方式,由此產生了先來先服務算法。這種方法可以很容易地吸引學生的注意力,對知識點的掌握也會較輕松。
(3)多種教學方法相結合。為了引起學生的學習興趣,可以采用提問的方式來展開課程的學習[2]。例如第一節課上可以提出“你們所了解和使用過的操作系統有哪些?都有什么功能?”“進程的各種狀態之間是如何轉換的?”“分頁存儲管理方式的缺點是什么?為什么進程之間會產生死鎖?” 學生帶著這些問題去聽講、去思考,就一定能全身心投入到課堂教學中認真學習,抓住重點找出問題的答案。在課程教學中還可以用啟發式教學或問題驅動式教學法, 例如在介紹作業調度算法時,可以先讓學生自己考慮怎么設計這個算法,如果學生無所適從,可以再啟發學生平時去超市買東西結賬時人多的時候怎么做的,學生自然會想到排隊的方式。然后再引導學生思考這種方式有沒有缺點,什么缺點,怎么改進,改進后又是什么算法。帶著這些問題層次深入,使學生一步步的找到問題的答案,不僅師生之間產生了互動,教師還能引導學生自由、自主地思考[3]。此外,課程中的有些重點內容還可以采用討論式教學法,例如對于生產者消費者問題可以采用分組討論的形式,先把學生分成幾個小組,讓各組討論提出自己的解決方案,然后各組之間再一起討論每個方案的優缺點。這種方法容易調動學生學習的積極性和主動性,培養他們的思考能力和團隊合作意識。
2.3 加強實驗環節,提高創新能力的培養
目前,很多高校在操作系統教學中都是重理論輕實踐,在實驗環節比較薄弱,這不利于學生對理論知識的理解,也不利于提高學生的動手能力,因此,要加強實踐教學環節,促進對理論內容的學習。我院學生在實踐課程中,通過在Ubuntu平臺下搭建虛擬實驗室環境Bochs,使用開源虛擬機Bochs作為操作系統開發平臺,采納的是美國德克薩斯AM大學(TAMU)的操作系統原型系統[4]。在這個課程設計中,指導學生編程實現操作系統具體功能,基本涵蓋操作系統重要概念,即系統的啟動、存儲器管理、虛擬內存管理、多線程調度及文件系統等,旨在通過該課程設計增強學生對操作系統重要概念和原理的理解。
通過實驗,指導學生編寫一個“Hello World”版的操作系統,對激發學生繼續深入設計更高難度的操作系統有很大的興趣。為了避免初學者迷失于具體的代碼中(比如匯編語言代碼),我們提供了這個操作系統的絕大部分代碼,僅僅保留輸出語句的修改,學生很容易完成。我們在宿主操作系統安裝Bochs,Bochs模擬硬件運行所設計的操作系統,即使所設計的操作系統有問題(主要是邏輯問題),Bochs會明確的告知設計者。這樣我們可以像調試普通程序一樣調試操作系統。通過一番配置“折騰”(在Linux平臺下,對于初學者來說,通常不是一次就能配置成功的),學生對完成這個“Hello World”版的操作系統很有新鮮感和成就感,對完成后續難度較高的功能產生了濃厚的興趣。
2.4 提高學生學習興趣,讓學生認識到課程的有效性
想要學生完全投入到學習中,老師就要完全投入,從學生內心喚醒他們的求知欲,激發他們的學習熱情,使他們成為學習的主人。學生在成功完成一項任務后,會產生一種愉悅的感覺,因此,要想提高學生的學習興趣,教師在教學中就要給學生創設成功的機會,讓學生獲得成功的體驗。要想讓學生保持對操作系統課程學習的興趣,就要讓學生認識到課程的有效性。比如在各章節涉及到相應部件的硬件知識時,應結合計算機組成原理課程的有關知識;在講到存儲管理中程序的編譯鏈接時應結合編譯原理課程的知識;在講到進程控制塊的組織方式時采用隊列的形式,會用到數據結構中的相關知識,在講到進程通信時,會用到計算機網絡方面的知識,通過這種聯系將多門專業基礎課程有機地貫穿起來,不僅使該課程的教學不再枯燥,也使學生體會到了該課程的“有效性”,有效地促進了整個專業理論體系的完善。
2.5 建立網絡輔助教學平臺,加強師生之間的交流
為了更好地加強師生之間的交流, 把教學從課堂上擴展到課外,可以建設一個“操作系統”教學網站。網站上把教學課件、教案、教學大綱、習題指導、實驗指導書等內容都放上,以方便學生課下自學使用。網站還會經常介紹當前操作系統發展的最新動向與知識或技術更新,還有比較潮流的操作系統(如:android、iOS)的開發技術案例等供學生進行學習與交流。另外網站還提供了師生互動功能,比如:在線輔導、問題交流、網上考核等。這為學生的學習提供了極大的便利。
3 結語
操作系統課程是計算機專業的核心課程之一,為了讓學生更好的掌握這門課程,本課程的教學改革是一項需要長期堅持的工作。需要根據課程的發展和學生的實際情況不斷改進教學方法,不斷強化教學手段,激發學生學習的興趣,在課程中逐漸提高學生分析問題、解決問題的能力,從而達到創新能力的提高,為國家培養更高質量的人才。
參考文獻
[1]柳文濤,李聲,包云.整體法在操作系統教學中的應用[J].福建電腦,2013(11):59-60.
[2]李琳娜.操作系統課程教學改革研究[J]. 信息系統工程,2010(9):125-126.
[3]吳繼娟,劉曉曉.計算機原理課程教學改革與實踐[J].計算機教育,2013(24):95-98.
[4]Teresa Leyk. Operating Systems. http://courses.cs.tamu.edu/teresa/csce410/csce410-index.html[EB/OL].(2014-12-10)[2014-12-30].