• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      軟件工程專業(yè)“操作系統(tǒng)”課程的教學探討

      2009-08-28 09:09:14張玉軍
      計算機教育 2009年14期
      關鍵詞:操作系統(tǒng)軟件工程教學方法

      馬 馳 張玉軍

      摘要:“操作系統(tǒng)”是軟件工程專業(yè)本科教學中的必修課程,其龐雜的內容給教師的教學和學生的學習都帶了很大的困難。本文針對軟件工程專業(yè)學生的培養(yǎng),結合自身的教學經(jīng)驗,對課程的教學內容,教學方法,實踐教學幾個方面進行了探討,為課程的教與學提供了一些觀點和思路。

      關鍵詞:軟件工程;操作系統(tǒng);教學方法

      中圖分類號:G642 文獻標識碼:B

      1引言

      目前我國計算機本科教育中培養(yǎng)的軟件人才主要來自于計算機科學與技術專業(yè)及軟件工程專業(yè),從本質上講,這兩個學科在人才培養(yǎng)方式,培養(yǎng)目標以及所關注的知識領域等方面都有所不同。一般來講,計算機科學與技術專業(yè)是學習軟件及硬件理論的專業(yè),側重于研究;軟件工程專業(yè)是以學習軟件理論為主的專業(yè),側重于技術。從目前我國的軟件行業(yè)的市場需求來看,更需要軟件工程專業(yè)的人才,因此高校對于軟件工程專業(yè)學生的培養(yǎng),應更強調其動手能力,實踐能力的培養(yǎng),使其盡早了解計算機的工程屬性,適應軟件技術快速發(fā)展的市場環(huán)境。

      “操作系統(tǒng)”課程是軟件工程專業(yè)的必修課程,是涉及到較多硬件知識的計算機系統(tǒng)的軟件課程,該課程通過講述操作系統(tǒng)的基本理論,經(jīng)典的算法以及現(xiàn)代操作系統(tǒng)成熟的設計思想來培養(yǎng)學生的抽象思維,邏輯推理和實踐動手能力。同時通過對于操作系統(tǒng)的學習,也有助于培養(yǎng)學生對于大型軟件系統(tǒng)的使用能力,分析能力和設計能力。但是由于“操作系統(tǒng)”課程具有內容龐雜,涉及面廣,概念抽象,實踐性強等特點,尤其涉及大量硬件知識,對于軟件工程專業(yè)的學生的教學有相當?shù)碾y度,因此有必要在課程內容,實驗內容,教學方法及教學手段上做出改進和創(chuàng)新。本文結合作者自身的教學經(jīng)驗,總結了以下的一些經(jīng)驗及觀點。

      2根據(jù)培養(yǎng)目標,合理組織教學內容

      軟件工程專業(yè)人才培養(yǎng)的特點是以技術應用能力培養(yǎng)為核心,以技術需要為依據(jù)。目前還要面向就業(yè),產(chǎn)學結合,這些都注重實踐技能的培養(yǎng)。面向計算機科學本科教育的“操作系統(tǒng)”教學內容主要是以講述操作系統(tǒng)概念、原理、經(jīng)典算法和硬件基礎等理論知識為主,很少講述現(xiàn)代典型操作系統(tǒng),如Linux、Solaris和Windows等便于學生實際操作使用的內容,也很少將理論知識運用到實際的典型操作系統(tǒng)中去,這不適合于軟件工程人才的培養(yǎng)目標,所以應該根據(jù)軟件工程專業(yè)及市場的需求,擺脫傳統(tǒng)“操作系統(tǒng)”教學中所采用的理論分析長而深的模式,在“操作系統(tǒng)”課程教學中增加并充實大量的應用實例內容,以便于教師理論聯(lián)系實際地講解操作系統(tǒng)的理論知識,將理論知識及時的轉化成應用實例,并運用到實際的經(jīng)典操作系統(tǒng)中去。同時應加強學生對典型操作系統(tǒng)的使用能力和在其上的開發(fā)能力,提高軟件工程專業(yè)學生實際的研發(fā)能力。在具體的教學內容組織實施上,可將教學內容劃分為以下三個部分。

      首先講授操作系統(tǒng)實現(xiàn)的基本原理和概念。如進程管理部分闡述進程和線程的概念,進程的管理,同步與互斥,死鎖等問題,存儲部分說明連續(xù)分配方式,分頁分段存儲管理,虛擬存儲系統(tǒng)的概念和請求分頁系統(tǒng)的實現(xiàn)原理等,設備管理部分介紹在I/O系統(tǒng)及控制方式,設備分配,設備驅動程序的基本概念,磁盤管理等。文件部分講述文件系統(tǒng)的基本概念,文件的組織結構,文件目錄管理以及文件存儲,共享與保護等內容。在講授這些內容的同時,應注意考慮軟件專業(yè)學生硬件基礎較差的特點,適當取舍硬件相關知識,比如涉及硬件知識較多的中斷技術就可以適當刪節(jié),說明原理即可。

      其次應該為學生介紹典型操作系統(tǒng)的使用。這里操作系統(tǒng)的使用主要指對于典型操作系統(tǒng)的基本操作,常用管理,基本配置工具使用以及典型開發(fā)環(huán)境的了解。在說明抽象的原理和概念之后介紹這些實用內容,既有助于對抽象原理和概念的理解,鞏固了理論知識,又為下一步進行系統(tǒng)相關的程序設計奠定了較為扎實的基礎。在具體實施中,可以選擇Windows操作系統(tǒng)和Linux操作系統(tǒng)。Windows操作系統(tǒng)的基本使用方法對于大多數(shù)計算機相關專業(yè)的學生來說問題不大,但其高級管理功能有必要向學生介紹,如它用于維護進程管理,存儲管理,文件系統(tǒng)管理,設備管理等的相關工具的使用。對于Linux操作系統(tǒng)或者其他開源的Unix系統(tǒng)而言,在對它們研究和學習之前,必須給出一點時間介紹它的基本使用方法,目前很多高校的操作系統(tǒng)實驗課及實踐課都在Solaris或Linux下進行,但實驗中很顯著的問題就是學生對操作系統(tǒng)的使用都比較陌生,大量的時間花在摸索操作系統(tǒng)的使用,而延誤了基本的實驗內容。因此Unix或Linux的基本shell命令,vi的使用,基本的shell的程序設計知識,C/C++編譯器的使用等基本知識要給予講授。

      最后,根據(jù)軟件專業(yè)學生應注重軟件的開發(fā)的特點,介紹典型操作系統(tǒng)下的程序設計知識。這里不是指介紹一些開發(fā)工具的使用以及具體的程序設計語言,主要是指對典型操作系統(tǒng)編程接口(API)的介紹。如借助C++語言和Windows的API函數(shù)適當適量的介紹相關Windows編程知識。利用C語言和Unix或Linux的系統(tǒng)調用介紹其系統(tǒng)級的程序設計。該部分內容的講解,既回憶和鞏固了操作系統(tǒng)原理的知識,又拓展了學生程序設計的知識面,為學生進

      一步的接觸特定操作系統(tǒng)的系統(tǒng)級編程打下良好的基礎。

      3改進教學方法,提高學生學習主動性

      在原有的“操作系統(tǒng)”課程教學中,教學方法比較單一,主要采用教師使用PPT課件講授為主,無法激發(fā)學生的學習興趣。這里根據(jù)上述提出的教學內容,改進原有的填鴨式教學方法,以提高學生學習的主動性。首先,對于操作系統(tǒng)原理這部分內容的教學,由于教學內容具有一定的難度和廣度,因此教學中面臨的主要問題是學生對理論課程所產(chǎn)生的興趣和信心問題。針對軟件工程專業(yè)的學生的教學,一方面盡量考慮在軟件層面上體現(xiàn)教學內容,不宜講解過深。另一方面考慮采用多種教學方法相結合,活躍課堂氣氛,提高學生學習的興趣。教師可以采用啟發(fā)式的教學方法,如在介紹進程同步問題時,首先教師可以講授一個生產(chǎn)者和一個消費者共用一個緩沖區(qū)的情況,而后,可以啟發(fā)同學嘗試修改同步算法,以適應生產(chǎn)者和消費者使用多個共享空間和無限共享空間的情況。在教學中經(jīng)常設置問題,能夠啟發(fā)調動學生的思維,提高同學的學習主動性。另一個角度,教學中經(jīng)常引用日常生活中的應用實例是引發(fā)學生學習興趣的又一種好的方法,如在講授進程互斥時,可以使用航空售票,交通流量統(tǒng)計等應用實例,在講授中斷機制時,引入一些基于中斷機制的病毒工作原理,都會很大程度的引起學生的興趣。好的實例既能夠簡化學生對抽象復雜問題的理解,又能調動學生思維,使其聯(lián)系其他課程知識,并理論聯(lián)系實際,達到學以致用的效果。

      對于典型操作系統(tǒng)應用這一部分的內容,建議首先應該由教師演示講解,使學生了解基本使用方法和理論。之后可以為學生布置一些特定功能的任務,來使學生鞏固課堂講解內容,以任務促進教學。比如學習Linux命令過程中,可以布置利用命令和管道及輸入輸出重定向操作相結合的任務完成指定功能。在學生了解基本shell命令和基本shell語法后,可以布置些短小的shell程序以鍛煉學生的動手能力。

      最后,對于系統(tǒng)編程這部分的內容,建議教師首先要為同學編寫幾個典型程序,在學生了解基本程序設計流程后。教師可以為學生布置幾個針對特定功能是小項目,以項目促進教學,來提高學生的編程能力,以達到軟件工程專業(yè)學生的學習目標。

      任務和項目驅動教學方法有助于提高學生的自學能力,在動手的過程中,一般會遇到一些通過課堂知識無法解決的問題,要求學生查閱相關資料解決問題。這一過程可以很好的培養(yǎng)學生獨自解決問題的能力。

      4加強實踐教學,提高學生實踐能力

      操作系統(tǒng)的實踐課是其教學過程必不可少的環(huán)節(jié),其實施質量對專業(yè)教學質量具有舉足輕重的影響。在重視基本概念,理論和算法的課堂講授教學的基礎上,有針對性地加強實踐教學,有助于提高學生的綜合素質,培養(yǎng)學生的創(chuàng)新精神與實踐能力。由于教學課時所限,必須重視實踐課程內容的合理性,是其緊跟課堂教學,達到學生邊學邊練,及時消化課堂教學內容的效果。

      從實踐課程的組織上,一般可以分為課程實驗,課程設計,以及課外實驗幾個部分。課程實驗通常要求緊跟教學內容,在操作系統(tǒng)理論部分主要應設置利用程序設計語言完成操作系統(tǒng)經(jīng)典算法的驗證和模擬。如對進程調度算法,存儲算法的模擬等實驗。這部分實驗具有一定難度,通常需要教師提供指導和部分代碼,而后引導學生實現(xiàn)實驗內容。教師可以鼓勵并啟發(fā)有余力的學生完成理論課中出現(xiàn)的其他經(jīng)典算法。系統(tǒng)應用和編程部分的實驗可以借助虛擬機軟件完成系統(tǒng)命令和系統(tǒng)管理的實驗。教師布置任務可以是一些成型的案例,由教師先演示操作一遍,然后讓學生自己重復、調試操作,以便加深學生的印象。案例的組織可以按章節(jié)知識點的內容,盡量做到前后聯(lián)系,以求融會貫通。比如shel1腳本編程練習的時候,可以設計一個實現(xiàn)稍微復雜點功能的shel1腳本,其內容可以覆蓋操作系統(tǒng)多個章節(jié)的內容。

      除了隨課的課程實驗之外,設置必要的課程設計,對綜合運用和鞏固操作系統(tǒng)知識也非常有必要性。課程設計的內容應貼近操作系統(tǒng)并結合軟件專業(yè)的教學特點,著重編程實現(xiàn),如實現(xiàn)一個特定功能的守護進程,實現(xiàn)一個簡單的系統(tǒng)調用等等。給有余力的同學布置編寫內核雛形等設計任務,提高學生的系統(tǒng)級編程能力。

      課外的實驗部分,應該給學生較大的自由空間,增加學生涉獵知識的廣度,可以為學生布置些開源系統(tǒng)源代碼的閱讀和修改。組織設計小組修改精簡開源內核,以及編寫簡單的小型操作系統(tǒng),從軟件工程的角度,培養(yǎng)學生的工程意識,進一步提高學生的實踐能力。

      5結束語

      操作系統(tǒng)相關知識是軟件人才應必備的基礎知識,同時“操作系統(tǒng)”課程也是軟件工程專業(yè)的一門核心主干課程。合理的組織“操作系統(tǒng)”的教學內容,采取適當?shù)慕虒W方法,加強實踐教學環(huán)節(jié)是軟件人才培養(yǎng)必要的手段和途徑。本文探討的觀點和經(jīng)驗希望能夠起到“拋磚引玉”的作用,使更多教師和同學提出對于“操作系統(tǒng)”教與學的新方法。

      參考文獻:

      [1] 王知非. 操作系統(tǒng)課程教學與學生能力培養(yǎng)[J]. 計算機教育,2008(14):73-74..

      [2] 魯和杰. 基于Linux系統(tǒng)下的Java語言實驗教學探討[J]. 電腦知識與技術,2007(7):572-573.

      [3] 王國華. 操作系統(tǒng)實驗課程的設置與實踐[J]. 山西財經(jīng)大學學報,2006,9(1):108-109.

      [4] 蔣靜,徐志偉. 操作體統(tǒng)原理?技術與編程[M]. 北京:機械工業(yè)出版社,2004.

      [5] Andrew S.Tanenbaum. Modern Operating Systems[M]. 北京:機械工業(yè)出版社,2002.

      猜你喜歡
      操作系統(tǒng)軟件工程教學方法
      初中英語寫作教學方法初探
      甘肅教育(2020年2期)2020-09-11 08:01:42
      教學方法與知識類型的適宜
      智能手機操作系統(tǒng)的分析與比較
      卷宗(2016年10期)2017-01-21 14:04:15
      國產(chǎn)桌面操作系統(tǒng)中虛擬化技術應用研究
      計算機維護中操作系統(tǒng)還原技術的分析
      對計算機進行操作系統(tǒng)重裝的維護
      依托工作室的軟件工程實踐教學研究
      基于工程教育認證的《軟件工程》課程教學質量建設研究 
      軟件導刊(2016年9期)2016-11-07 22:31:23
      關于提高軟件工程實踐教學質量的幾點思考
      關于如何創(chuàng)新和完善計算機軟件工程管理的探討
      泰和县| 河津市| 新绛县| 金华市| 绍兴县| 兴安盟| 镶黄旗| 郴州市| 岢岚县| 阳江市| 武汉市| 沂水县| 田阳县| 武隆县| 藁城市| 岳阳市| 漳州市| 加查县| 日喀则市| 清水县| 沁源县| 禄丰县| 襄樊市| 海城市| 阜康市| 江津市| 淮北市| 景东| 永顺县| 石屏县| 禹州市| 东海县| 德江县| 法库县| 宁海县| 璧山县| 武威市| 拜城县| 辽源市| 龙山县| 上思县|