張紅光
摘要:本科“操作系統(tǒng)”教學,包含著比較強的專業(yè)內涵和比較廣泛的專業(yè)基礎知識,內容更新快,抽象概念多。這些特點致使該課程的教學需要不斷地更新內容,改革教學方法,需要特殊的措施保證教學質量。文中對“操作系統(tǒng)”教學問題進行了比較深入的闡述,提出了解決問題的方案和措施,并對這些方案的實際應用效果進行了分析。
關鍵詞:教學方法;認知體系;工程化思想
中圖分類號:G642 文獻標識碼:B
1引言
操作系統(tǒng)的概念和設計技術在計算機專業(yè)知識體系中占有著舉足輕重的地位,操作系統(tǒng)的知識結構中包含著多層面的內容,國內、外大學計算機專業(yè)都會將“操作系統(tǒng)”課程作為專業(yè)基礎課程設立,南開大學將本課程安排在本科三年級的第一學期開設,計算機專業(yè)的必修主干課,其他相關專業(yè)的必修或選修課。
“操作系統(tǒng)”課程難教、難學是著名的,這主要是由于其所涵蓋知識的寬度和廣度。在院、校兩級領導的支持和培育下,我們對“操作系統(tǒng)”課程進行了多年的教學方法改革和實踐探索。涉及到了教學方法、授課形式、課程內容、考核方式等方面的內容,提出并實施了一系列的有效的措施,取得了初步的成效,2007年該課程已被設立為“高教部——微軟精品課程”。
2課程特點分析
“操作系統(tǒng)”課程是對系統(tǒng)核心技術的學習,因此學習操作系統(tǒng)知識需要有多項計算機專業(yè)基礎知識,比如需要掌握計算機硬件和計算機體系結構方面的知識,還需要了解軟件工程的思想,同時還應掌握一些軟件設計的基本方法。
另外,操作系統(tǒng)在專業(yè)知識體系中有承上啟下的作用,她可以將之前學生所學知識貫通起來,形成一個比較完整的認知體系。對于本科生來說,能否學好操作系統(tǒng)知識對學生未來發(fā)展有諸多影響。為了提高教學質量,能夠抓住教學中的實質問題,我們對“操作系統(tǒng)”課程進行了比較全面的分析,根據(jù)受教群體的情況分析出我校操作系統(tǒng)教學特點,主要包括:
(1) 學生對專業(yè)知識了解不多
對于剛進入大三的本科生來說,他們正處于學習專業(yè)知識的初期,雖然已經(jīng)學習了一些計算機專業(yè)知識,但對于許多問題認識還比較膚淺;大多數(shù)人幾乎未從事過比較深入的設計與開發(fā)工作,對于計算機的大部分系統(tǒng)層知識僅僅是停留在對書本的理解和少量的實驗課程理解上。
(2) 所學知識的貫通性差
在學習操作系統(tǒng)前,要求學生已經(jīng)掌握了計算機原理、匯編語言、數(shù)據(jù)結構、程序設計語言等方面的知識,但由于這些知識都可以自成體系,在學習時并不過多要求學生進行知識間的穿插,因此學生掌握的知識相對孤立,并沒有將所學知識融會貫通起來。另一方面,由于剛開始接觸專業(yè)課,難度加大,學生或多或少地存在忙于應付課程作業(yè)的狀況,所掌握的知識并不牢靠,各種知識點處于分離狀態(tài)。
(3) 學生解決實際問題能力差
由于學生在大學的前兩年中,主要是在進行基本概念和基本知識學習,學生的實踐機會普遍較少,無論是編程量還是涉及的問題復雜度都不夠。因此這個階段學生的編程能力普遍比較弱,更重要的是由于沒有獨立完成一項編程任務的經(jīng)歷,他們幾乎無法解決系統(tǒng)設計中碰到的中等以上復雜度的問題。
(4) 沒有工程設計的概念
由于以上幾點原因,這個階段的學生幾乎沒有任何工程設計的思想和概念。這就使得學生在理解操作系統(tǒng)設計策略和方法時,會碰到許多困難。
3常見教學問題
本課程中的這些狀況具有一定的代表性,應該有針對性的開展教學改革,倘若處理不當就會使教學任務無法落實,對以后的專業(yè)學習帶來不良影響。操作系統(tǒng)教學中可能出現(xiàn)的問題很多,針對不同的學生群體也會有不同的表現(xiàn),以下從幾方面分析教學中易出現(xiàn)的問題。
3.1建立的認知體系不完整
由于操作系統(tǒng)知識涵蓋內容廣泛,知識間層次關系也比較復雜,容易使學生無法建立起一個比較完整的操作系統(tǒng)認知體系。這種情況有時會影響到初學者對學習操作系統(tǒng)知識的信心,產(chǎn)生為難或懼怕心里,對學習造成負面影響;最直接的情況是,課程學完后對操作系統(tǒng)的概念仍認識不清,不了解操作系統(tǒng)技術中的典型問題處理方法和解決策略,認識模糊、概念混亂。
3.2出現(xiàn)理解方法上的誤區(qū)
由于操作系統(tǒng)設計中所包含的內核技術多,需要用到掌握多種算法和原理。而有些原理推導過程非常復雜、講解起來也很抽象,對于沒有實踐經(jīng)驗的人來說理解起來就更困難。若不注意教學可能會陷入一種誤區(qū),即將教學重點放在了對抽象概念的推導和理解上,花費大量的時間去教、去學這些理論和概念,從而偏離了學習操作系統(tǒng)的實際意義。
3.3所學知識不能學以致用
學生掌握知識不牢的原因有多種,是教與學多個環(huán)節(jié)出現(xiàn)問題后的結果,但我們這里主要談教學中的原因。由于教學方法不妥,可能致使學生對所學操作系統(tǒng)知識認識非常淺薄,沒有形成深刻印象,在學習完這門課程后很快會將所學內容丟在腦后,并不能對今后的學習產(chǎn)生有益的影響。
另外,由于操作系統(tǒng)技術發(fā)展歷程長,今天使用的許多技術是經(jīng)過復雜的演變過程形成的,而且由于每個階段要解決的問題又會有所不同,因此所采用的技術差異也會比較大。這就形成了一種矛盾,如果一味追求理論知識的完整性,很難在有限的教學時間中講清楚這些問題;另外,即便把這些問題都講清楚了,也很難對解決今天的實際問題有指導意義。若所學知識不能在實際中得以應用,當遇到問題時還是無從下手、不知所措,這就形成了嚴重的知識與實際相脫節(jié)的問題。
4 “操作系統(tǒng)”教學方法改進與實踐
“操作系統(tǒng)”教學中存在的各種問題,是新時期對“操作系統(tǒng)”教學提出的新課題。近年來,對“操作系統(tǒng)”教學改革的話題一直未斷,大家也在進行著各種方式的探索,而且也取得了許多良好的成效。但是,我認為任何一種改革都應該與本校的教學實際相結合,脫離了這個基礎,教學改革將會事與愿違,一事無成。
多年來,我們結合本校的實際情況進行了“操作系統(tǒng)”教學的研究與實踐,總結了一些教訓,也取得了一些經(jīng)驗。
4.1用實際問題引導學生做角色轉換
我們知道興趣是掌握知識的有力武器。為了促使學生了解操作系統(tǒng)知識,我們從調動學生學習興趣入手。學生在學習操作系統(tǒng)原理之前都或多或少的使用過計算機中的一些工具,比如完成一些作業(yè)編程和程序調試,但是他們對系統(tǒng)本身和所帶工具的設計問題很少考慮。大部分學生認為系統(tǒng)或工具設計不是我應該考慮的問題,或者認為其中包含的技術難度高不可攀。我們以此作為切入點,調動大家的學習興趣。
我們采用的方法是角色轉換法,在課程開始時并不急于講述有關的基本概念,而是提出幾個實際問題讓大家來考慮。比如,程序在計算機中如何存放才是合理的?在編輯程序時所設立的程序規(guī)范格式是如何告訴計算機的?當同時提交多項任務請求時,計算機會不會記錯了次序而產(chǎn)生混亂呢?當無休止地提出請求時,計算機會有多大的耐心呢?等等。所提問題有些是比較直觀的,也有些是需要在系統(tǒng)中進行實驗才能拿出數(shù)據(jù)的。
這些問題,不僅增加了學生在計算機上進行演練的興趣,而且在演練中學生會派生出許多過去不曾想過的問題,這樣學生學習的興趣也會被激發(fā)起來。當學生在考慮這些問題時,實際上就在進行著一種角色的變換,原來認為系統(tǒng)理所應當為自己完成的事情,現(xiàn)在需要自己來考慮了,盡管大多數(shù)同學對這些問題的解答是通過所使用的操作系統(tǒng)有關介紹了解到的,或者有些一時還無法考慮清楚,但這種換位思考的方式正是需要得到的效果,因為這些非常有利于提高對操作系統(tǒng)原理學習的熱情和興趣。
學會了換位思考,學生就會加深對“操作系統(tǒng)”課程的認識,因為他們會利用已經(jīng)掌握的知識或工具進行各種有益的探索,會提出許多合理或不合理的解決方案。這時教師要根據(jù)學生提出的內容進行有益的歸納和總結,然后再指出所提方案中的合理性和謬誤之處,進而再給出“操作系統(tǒng)”課程總體任務描述,使學生很快理解了“操作系統(tǒng)”課程的實質所在,建立起對該課程的一個比較完整的認識。
4.2利用網(wǎng)絡化教學環(huán)境強化教學效果
為了有效地進行教學,我們在每章授課中都會給出一個或若干個討論主題,讓大家在課后參與討論,并結合平時作業(yè)進行解答。討論形式比較靈活,可以是個人意見,也可以按小組提出比較規(guī)范的見解。在這個階段我們采用的方法是,充分利用學校網(wǎng)絡教學環(huán)境,完成提問、解答、交互、爭論、探索、計分等項活動。這種方法強化了教學效果,使學生有機會重復他所學過的知識。
網(wǎng)絡教學環(huán)境有許多優(yōu)勢,比如可以統(tǒng)計學生參與討論的次數(shù),也可以根據(jù)討論問題的質量為平時記分加權重。更重要的是,網(wǎng)絡環(huán)境是現(xiàn)代大學生非常依賴的信息獲取渠道,大家參與的興趣高,信息量大,信息交互效率高。這些有利于知識的掌握和鞏固。
4.3用大作業(yè)形式培養(yǎng)學生解決問題的能力
我們認為,對操作系統(tǒng)教學的最終目標,是培養(yǎng)學生可以用工程化的思想和方法來解決計算機系統(tǒng)中需要解決的問題。按照這一目標,我們在課程中設立了大作業(yè)制度,具體做法是:當教學任務進行到一半時就向學生下發(fā)若干個操作系統(tǒng)需要解決實際問題的大作業(yè),這些大作業(yè)中會包含一些具體任務,同時又要求要能自成系統(tǒng)進行設計。比如大作業(yè)題目可以是構建一個具有特定功能的文件管理系統(tǒng),或是編寫一個有特殊要求的設備驅動程序或存儲管理程序等等。大作業(yè)需要花費的時間和精力都比較多,所以它們在課程評價體系中所占評分比重也大。
在大作業(yè)提交中我們給出非常具體的要求,比如要求所完成的工作必須是可以在一個特定環(huán)境中運行的系統(tǒng),而且要求有完整的設計文檔和使用文檔;在大作業(yè)提交時必須在大課堂上進行陳述,作者要講出所完成工作設計思想、實現(xiàn)方法和和測試用例,說明系統(tǒng)中存在的不足和進一步改進的策略等等。這樣做的目的是希望學生通過大作業(yè)訓練,能真正感受到工程設計的真實過程,培養(yǎng)一些工程設計的思想和解決問題的能力。
學生在完成大作業(yè)時會碰到許多的困難,有時為了完成一項功能他們會費盡心機,查閱大量的資料。我認為這個過程也是本課程教學的一部分,因為必須要使學生理解:對一個實際問題僅僅提出一種解決思路與真正地完成一個有部分功能的系統(tǒng)之間是有差距的,所付出的努力是不同的。能夠面對具體實現(xiàn)方法和完成過程,同樣是計算機專業(yè)中非常需要的技能,在調試一個系統(tǒng)中所經(jīng)歷的磨難,對學生日后的專業(yè)成長經(jīng)歷受益無限。
5教學效果分析
由于在教學中采用了新的教學思想和方法,教學成果已逐漸顯現(xiàn)出來,主要體現(xiàn)在以下幾個方面。
5.1興趣帶動了學習的主動性
新的教學方法使學生漸漸喜歡上了“操作系統(tǒng)原理”課程,學生由原來的被動上課變成了主動上課,很少出現(xiàn)逃課或課堂上走神的現(xiàn)象了。另外,大家對操作系統(tǒng)技術的研究表現(xiàn)出了極大的興趣。除了課程中的內容外,同學們還會拿些他們平時碰到的各種問題來進行討論,而且還會想方設法地建立程序測試環(huán)境,驗證自己的解決思路的實現(xiàn)策略。
5.2可以用審視的目光看待現(xiàn)有系統(tǒng)
另一個效果是學生破除了對原有操作系統(tǒng)的迷信,學會運用系統(tǒng)設計的思想來審視系統(tǒng)中存在的問題了。更難能可貴的是,有些學生通過對所使用操作系統(tǒng)的各種表象提出了自己的改造策略,有些改造思想還被付諸了實踐。我認為這一點也是非常重要的進步,因為對于一個從事計算機技術研究的人員來說,就是應該具備創(chuàng)造性的設計沖動,這是專業(yè)人才的基本素質。這些素質可以促使學生不斷變革前人的工作,保持思想上和技術上的不斷創(chuàng)新,才有可能創(chuàng)造出計算機科學領域中比較有價值的業(yè)績來。
5.3增強了系統(tǒng)工程化設計能力
另外一方面,由于在課程中進行了大作業(yè)的訓練,使同學們的系統(tǒng)設計能力和編程能力也得到了不同程度的鍛煉,學生學會了用工程化的思想來解決系統(tǒng)問題,認識到在系統(tǒng)設計中工程化思想的重要性和必要性。大作業(yè)使學生有機會了解到在完成一個相對復雜的工作時應采用怎樣的步驟和策略,這些是對他們實踐能力的培養(yǎng)。
在完成“操作系統(tǒng)”課程的大作業(yè)訓練中,有多人比較完整地對litel-OS系統(tǒng)進行了各個管理子功能的設計與實現(xiàn),有四人在完成大作業(yè)后又對設計內容做了進一步的提煉和改造,申報了大學生百項工程題目,并在參賽中獲得了學校的一等獎和二等獎。
6結束語
目前學生學習操作系統(tǒng)核心技術的熱情比較高,各種學習體會也很多,大多數(shù)人表示:“操作系統(tǒng)”這門課是他們本科階段花費心思最多、收獲最大的課程之一。教師在教學中也有很多收獲,在理解學生需求和困惑的同時,提升了“操作系統(tǒng)”的教學能力和駕馭“操作系統(tǒng)”課程的能力,這些會對本科教學產(chǎn)生直接、良好的影響。
參考文獻:
[1] 徐志立. 關于操作系統(tǒng)課程改革的研究與實踐[J]. 計算機教育,2004(1):57.
[2] 蒲曉蓉,陸慶,耿技. 改革《操作系統(tǒng)》課程設置強化學生基礎知識[J]. 電子科技大學學報:社科版,2002(02):99.
[3] 林和,劉莉,蒙應杰,等.“操作系統(tǒng)”教學實驗標準化進程的思考[J]. 高等理科教育,2004(02):48.