范振鈞,齊 悅
(通化師范學(xué)院 計(jì)算機(jī)學(xué)院,吉林 通化 134002)
操作系統(tǒng)課程是計(jì)算機(jī)專業(yè)的核心課程,在計(jì)算機(jī)專業(yè)課中起到承上啟下的作用.掌握操作系統(tǒng)的原理和實(shí)現(xiàn)的方法,不僅可以幫助學(xué)生理解計(jì)算機(jī)系統(tǒng)的工作原理,而且可以培養(yǎng)學(xué)生開發(fā)大中型軟件的能力,提高學(xué)生的創(chuàng)業(yè)技能.因此,對(duì)操作系統(tǒng)課程的教學(xué)現(xiàn)狀進(jìn)行分析,找出提高教學(xué)質(zhì)量的對(duì)策,進(jìn)行教學(xué)改革,具有重要意義.
操作系統(tǒng)課程一直是通化師范學(xué)院計(jì)算機(jī)學(xué)院的主干課程,并由學(xué)院的優(yōu)秀教師任教.但是學(xué)生普遍反映課程涉及面廣、概念抽象不易理解,不好掌握.雖然教師下了很多功夫進(jìn)行講解,學(xué)生的學(xué)習(xí)效果普遍不理想.下文以通化師范學(xué)院為例,分析操作系統(tǒng)課程的教學(xué)現(xiàn)狀.
C語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)、組成原理等課程都是操作系統(tǒng)課程的前導(dǎo)課,其中任何一門課程學(xué)不好,都會(huì)導(dǎo)致學(xué)生對(duì)操作系統(tǒng)課程教學(xué)內(nèi)容的不理解,嚴(yán)重影響了學(xué)生的學(xué)習(xí)效果;操作系統(tǒng)課程的很多概念都是看不見、摸不著的,十分艱澀難懂,課程的難度決定了教師在授課時(shí)要采用適當(dāng)?shù)慕虒W(xué)方法.
目前操作系統(tǒng)課程教學(xué)方法,主要是采用傳統(tǒng)的“填鴨式”教學(xué)方法.偏重于教師的講授,課堂上教師不停地講授,學(xué)生不斷記筆記,被動(dòng)地接受知識(shí).學(xué)生在學(xué)習(xí)中的主體地位被嚴(yán)重忽視,學(xué)習(xí)的目的只是為了期末考試過(guò)關(guān).因此,學(xué)生學(xué)習(xí)的積極性不高,嚴(yán)重影響了學(xué)習(xí)質(zhì)量.改革現(xiàn)有的教學(xué)方式,引入啟發(fā)式、類比等先進(jìn)的教學(xué)方式,調(diào)動(dòng)學(xué)生學(xué)習(xí)積極性,成為操作系統(tǒng)課程教學(xué)改革的當(dāng)務(wù)之急.
目前我院實(shí)驗(yàn)室使用的操作系統(tǒng)軟件是微軟公司的windows xp系統(tǒng),由于windows軟件是商業(yè)軟件,系統(tǒng)源代碼不對(duì)外公開,windows程序接口內(nèi)部的細(xì)節(jié)是看不見的[1],因此,在操作系統(tǒng)實(shí)驗(yàn)課中只能利用windows提供的外部程序接口進(jìn)行操作,學(xué)生無(wú)法深入到windows內(nèi)部進(jìn)行學(xué)習(xí).學(xué)生通過(guò)實(shí)驗(yàn)可以加深對(duì)操作系統(tǒng)原理的理解,實(shí)驗(yàn)課成為原理課的驗(yàn)證過(guò)程.但學(xué)生在實(shí)驗(yàn)中很難體會(huì)到操作系統(tǒng)和硬件之間的交互,以及操作系統(tǒng)的運(yùn)行機(jī)制(比如同步、互斥、消息)的特點(diǎn),實(shí)驗(yàn)教學(xué)沒(méi)有發(fā)揮其應(yīng)有的作用,直接影響到學(xué)生的學(xué)習(xí)興趣和積極性.因此,在實(shí)驗(yàn)課中創(chuàng)建一個(gè)相對(duì)真實(shí)的實(shí)驗(yàn)平臺(tái)成為課程實(shí)驗(yàn)教學(xué)改革的關(guān)鍵因素.
針對(duì)教學(xué)現(xiàn)狀,提出了以下幾條改進(jìn)措施,在教學(xué)中進(jìn)行實(shí)施,取得了較好的效果.
(1)類比教學(xué)法.類比法是一種由已知探索未知的方法,是以一個(gè)具體且容易理解的事物,用比較的方式來(lái)說(shuō)明一個(gè)抽象難懂的觀念,是將舉例和比較綜合起來(lái)的邏輯思維方法[2].
操作系統(tǒng)中概念盡管都很抽象,但有很多都可以用生活中的事物類比.通過(guò)類比教學(xué),能夠讓學(xué)生更好地理解抽象的理論,提高學(xué)習(xí)積極性,從而提高教學(xué)質(zhì)量.
例子1:“進(jìn)程”是操作系統(tǒng)中貫穿全書的重要概念,是操作系統(tǒng)課程教學(xué)的一個(gè)難點(diǎn),也是學(xué)生入門的一道坎,初學(xué)者很容易將“進(jìn)程”的概念和以前課程學(xué)的“程序”的概念混淆,如果教師講課時(shí)只是按照書本內(nèi)容將二者進(jìn)行簡(jiǎn)單的對(duì)比,學(xué)生會(huì)感覺(jué)很乏味,教學(xué)效果不理想.在教學(xué)實(shí)踐中,采用了類比教學(xué)法,這個(gè)問(wèn)題就迎刃而解了.我們可以用學(xué)生熟悉的 “Wps文檔處理器”來(lái)模擬“進(jìn)程”和“程序”之間的區(qū)別(見表1),幫助學(xué)生理解這兩個(gè)概念之間的區(qū)別和聯(lián)系.
表1 “進(jìn)程”和“程序”類比表
例子2: “進(jìn)程間的同步”是一組并發(fā)進(jìn)程,因直接制約而互相發(fā)送消息,相互等待,使得各進(jìn)程按一定的速度執(zhí)行的過(guò)程.我們可以用生活中的“公交車售票員和司機(jī)之間的合作”來(lái)形象生動(dòng)的描述.只有當(dāng)售票員關(guān)門之后司機(jī)才能啟動(dòng)車輛,只有司機(jī)停車之后售票員才能開車門.司機(jī)和售票員的行動(dòng)需要一定的協(xié)調(diào).我們可以把司機(jī)和售票員看成兩個(gè)進(jìn)程,這兩個(gè)進(jìn)程之間直接制約之間的關(guān)系就是同步.
(2)引進(jìn)啟發(fā)式教學(xué)法.啟發(fā)式教學(xué)是教師依據(jù)學(xué)習(xí)過(guò)程的客觀規(guī)律,引導(dǎo)學(xué)生主動(dòng)、積極、自覺(jué)地掌握知識(shí)的教學(xué)方法.啟發(fā)式是在對(duì)傳統(tǒng)的“填鴨式”教學(xué)方法深刻批判的基礎(chǔ)上產(chǎn)生的,“啟發(fā)式”與“填鴨式”是兩種根本對(duì)立的教學(xué)方法[3-4].
對(duì)于書中的一些基本原理和算法實(shí)現(xiàn),一般采用分組討論的方式讓學(xué)生自主討論.在小組討論之后,由一名學(xué)生進(jìn)行總結(jié),然后提出小組討論的問(wèn)題,讓全班學(xué)生共同討論,最后由授課教師做點(diǎn)評(píng).這種方式既活躍了課堂氣氛,又讓學(xué)生在思考中提高了創(chuàng)新能力.
例子3:在講解經(jīng)典互斥問(wèn)題“過(guò)橋”問(wèn)題時(shí),首先設(shè)置問(wèn)題:兩個(gè)過(guò)橋者能否一起過(guò)橋?會(huì)有什么后果?過(guò)橋者之間是什么關(guān)系?學(xué)生對(duì)上面幾個(gè)問(wèn)題分組進(jìn)行討論分析后,得出結(jié)論:在橋的載重量只能承擔(dān)一個(gè)人時(shí),兩個(gè)過(guò)橋者同時(shí)過(guò)橋,會(huì)出現(xiàn)事故.過(guò)橋者之間共享“橋”資源,因而是互斥關(guān)系.在明確上述之后,進(jìn)一步設(shè)置問(wèn)題:臨界區(qū)在哪里?公共信號(hào)量怎么設(shè)?經(jīng)過(guò)討論學(xué)生得出結(jié)論,臨界區(qū)就是過(guò)橋相關(guān)的代碼,公共信號(hào)量初值等于橋的承重量,如承重量1人,初值即為1.下一步繼續(xù)設(shè)置問(wèn)題:用pv操作,寫出過(guò)橋問(wèn)題的偽代碼.由于有了上述鋪墊,學(xué)生可以輕松寫下相關(guān)的代碼,完成教學(xué)任務(wù).通過(guò)設(shè)置問(wèn)題,激發(fā)學(xué)生思考的熱情,指引學(xué)生思考的方向.最后歸納總結(jié),得出最終結(jié)論.
采用啟發(fā)式教學(xué)方法后,改變了過(guò)去教師在課堂上唱獨(dú)角戲、學(xué)生被動(dòng)學(xué)習(xí)的局面,充分調(diào)動(dòng)了學(xué)生學(xué)習(xí)的積極性,較好地提高了教學(xué)效果.
本學(xué)期,我們?cè)趙indows操作系統(tǒng)下,使用vmare虛擬機(jī)技術(shù)模擬linux下的實(shí)驗(yàn),讓學(xué)生置身于相對(duì)真實(shí)的實(shí)驗(yàn)環(huán)境中,親身感受操作系統(tǒng)技術(shù)的具體實(shí)現(xiàn)情況.比如可以采用ps命令來(lái)顯示系統(tǒng)當(dāng)前運(yùn)行的進(jìn)程情況,可以采用kill命令創(chuàng)建和殺死進(jìn)程,可以完成操作系統(tǒng)課程教學(xué)中的注冊(cè)表更改等對(duì)系統(tǒng)有較大影響的實(shí)驗(yàn),還可以通過(guò)完成linux下進(jìn)程控制、內(nèi)存分配置換算法、文件管理器、銀行家算法等綜合性實(shí)驗(yàn)[5],從而了解linux系統(tǒng)的具體實(shí)現(xiàn)過(guò)程,提高教學(xué)效率.
從理論和實(shí)踐兩個(gè)環(huán)節(jié)進(jìn)行教學(xué)改革提高了課程的教學(xué)質(zhì)量.通過(guò)引入類比、啟發(fā)式教學(xué)方式調(diào)動(dòng)了學(xué)生學(xué)習(xí)的積極性,提高了教學(xué)效率;創(chuàng)建了基于linux的實(shí)驗(yàn)平臺(tái),徹底解決了操作系統(tǒng)課程理論和實(shí)踐脫節(jié)的頑癥.