劉翔,丁慧華,石蘊玉
摘要:計算機硬件系列核心課程是計算機專業本科教學的重要組成部分,旨在培養該專業學生的計算機系統分析及設計等能力。本文討論了計算機硬件系列核心課程的國內外教學情況,并從培養計劃制定、實踐環節設計和課程體系舉措三個方面介紹了教學改革的探索工作,給出了需要進一步探索實踐的具體方案。
關鍵詞:計算機硬件課程;計算機系統分析;計算機系統綜合實驗
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2017)44-0253-02
計算機硬件系列核心課程實踐教學在計算機專業本科教學中占有重要的地位,其系列核心課程包括:數字邏輯、匯編語言程序設計、計算機組成原理與系統結構、微機原理與接口技術,還包括一些應用型計算機硬件課程,如嵌入式系統與單片機原理。這些課程不僅可使學生深入了解計算機基本組成及工作原理、掌握計算機系統基本設計技術,而且培養了學生的計算機系統能力,涵蓋了計算機系統分析、系統設計和系統繼承等重要教育環節[1]。
一、硬件系列核心課程教學狀況
隨著現代電子技術和信息技術的高速發展,計算機內部結構變得越來越復雜,結構高度集成化、計算資源多樣化;從外部設備來講,大規模數據中心、個人移動設備與PC等共存、軟件和硬件協同設計,為了編寫高效程序必需了解計算機底層結構,進一步使得計算機硬件系列課程顯得抽象、乏味、知識點繁雜,使得原先基于PC而建立起來的專業教學內容已經遠遠不能反映現代社會對計算機專業人才的培養要求[2],出現了“老師難教,學生難學、不易掌握”的尷尬局面,實踐環節薄弱與落后、難以與理論相結合,傳統的教學方法和教學手段難以實現教學目標,因此,針對計算機硬件系列核心課程,探索教學方法、提高教學效率、保證教學效果,是當前需要解決的關鍵問題。
與其他專業學生相比,計算機本科專業學生涉及的多方面能力并不占優,例如在硬件設計能力方面不如電子工程專業學生,行業軟件開發和應用能力不如軟件工程等專業學生,算法設計和分析基礎不如數學系學生。計算機專業學生的優勢之一在于計算機系統能力,即具備計算機系統層面的認知與設計能力、能從計算機系統的高度考慮和解決問題[3]。但與國外一流大學相比,國內高校在系統能力培養方面還存在一些問題。
(一)國內外大學相關教學情況
美國卡耐基梅隆大學(CMU)的計算機科學學院為CS和EE(ECE)學院本科學生開設的貫穿整個計算機系統的入門基礎課《Introduction to Computer Systems (ICS)》,所用教材都是由Randal E.Bryant和David R.OHallaron編著的《Computer Systems:A Programmers Perspective》,其教學內容主要是讓程序員了解計算機是如何執行程序、儲存信息和計算的,從而使學生成為更有效的程序員,與此對應的實驗內容是通過一組C語言編程實驗,使學生了解高級語言程序轉換為機器代碼的過程,深刻理解底層機器的系統結構(包括指令格式、數據表示、寄存器組織、Cache結構、虛存空間的映射等),云計算平臺上的并行編程、SIMD數據級并行編程和多線程編程實驗等[4],切實有效地提高學生編制和調試高效程序的能力,并為后續課程打下良好基礎。
在國內絕大多數高校開設的課程中,很難找到類似份量的關于計算機系統的入門課程,一般只會開設計算機系統概論或導論之類的課程,但側重于知識面的擴展,不會講透特定的知識點。如果說國內的計算機組成原理課程相當于美國大學的計算機系統入門課程,那么其教學內容的廣度和深度都相差很遠[5]。
在教學理念及教學內容方面,國內大多數學校的硬件核心課程仍然停留在計算機硬件的基本構成和基本設計原理層面。因而,計算機專業系列核心課程的教學未能達到既定目標:培養學生的硬件設計能力、編寫和調試高效程序的能力,讓學生建立對計算機軟件系統和硬件系統的整體概念。
(二)國內相關教學的改革現狀
隨著國際交流的進一步深入和電子技術的高速發展,眾多高校在計算機專業硬件課程教學中日漸重視培養學生系統能力。
目前,浙江大學在暑假開設有關CPU及其計算機系統設計的選修課;東南大學開設了面向所有學生的計算機系統綜合實驗課程;上海交通大學進行了數字邏輯、計算機組成、嵌入式系統等課程的軟硬件協同設計、多核系統設計和可重構系統設計;清華大學完成了計算機綜合實驗平臺的所有軟硬件的開發,準備在本科生中開設計算機系統綜合實驗課程。另外,復旦大學和上海交通大學開始開設與CMU類似的課程[2],但是要在國內高校全面推廣則具有一定困難。
二、相關教學改革總體思路
(一)教學目標的教學改革思路
根據計算機軟硬件領域的發展情況,對應國內外一流學校的教學情況,結合本校實際情況,我校計算機科學與技術專業在硬件核心系列課程基本培養目標為:建立計算機系統的整體概念,理解計算機系統的層次結構,具備計算機硬件的設計能力;合理劃分計算機系統的軟、硬件功能,理解從硬件角度出發編制和調試高效程序的基本原理,分析和調優計算機系統整體性能。
(二)課程體系實踐環節的教學改革方案
要達到上述教學目標,除做好師資隊伍建設、更換實驗設備外,還需要提高學生對整個計算機系統實現原理的認識,是學生掌握現代計算機系統中核心的技術和實現方法,主要包括對計算機系統整體概念的認識;對計算機系統層次化結構的深刻理解;對高級語言程序、編譯器、鏈接器等之間關系的深入掌握;對指令在硬件執行過程的理解;對構成計算機硬件的基本電路特性和設計方法等的基本了解等。從而更深刻地理解時空開銷和權衡、抽象和建模、分而治之、緩存和局部性、吞吐率和時延、并發和并行、遠程過程調用、權限和保護等重要核心概念[3]。endprint
(三)課程體系實踐改革方案具體措施
針對上海工程技術大學硬件課程實踐教學的實際狀況,完善教學大綱實施細則,進一步詳細規劃計算機硬件類課程涵蓋內容,進行課程整合優化,扎實地推進課堂教學、完善綜合實驗、提升創新性應用開發的綜合規劃和實施,需要保證計算機硬件類課程在專業課程中的主導地位,計算機硬件基礎知識是衡量計算機科學與技術專業畢業生知識結構是否合理的指標之一。因而,對于與計算機硬件系列核心課程,需要深入加強教學方法的研究、精心設計教學實踐環節,讓學生對硬件課程的學習產生興趣,提高其計算機硬件知識的掌握能力。
在計算機專業研究生入學考試和企業招聘面試過程中,逐漸重視學生或應聘者的計算機系統思維能力,程序執行的結果需要綜合考慮算法和編程語言,以及計算機硬件的系統結構,這在一定程度上表明了當前計算機硬件類課程進行有效教學的重要性。在我校的計算機硬件系列課程教學中,目前正采取突出重點、強調基礎、加強實踐環節的方式來穩步推進教學工作的開展。同時對綜合實驗、創新性課程進行了改革,協同保障實現硬件系列課程的改革目標;采用分級式實驗內容和成績評價指標,兼顧不同層次學生的個人能力和水平;鼓勵學生根據自身的學識水平,參加各類計算機硬件相關競賽活動,在競賽中充分利用已學知識和探索未知知識。利用我校“走出校園促發展”相關政策,與企業建立緊密聯系,實現學生實踐學習,提高我校學生專業素養,提升學生就業競爭力。
三、結語
在計算機硬件系列核心課程的教學中,應充分借鑒國內外一流高校的教學經驗和教學成果,對計算機科學與技術專業的學生重點強調計算機硬件知識對于計算機系統架構的重要性,順應電子技術和信息技術的研究發展趨勢,開展順應社會需求的教學與實驗改革,讓學生對計算機系統框架形成完整理解,理論課程內容與實踐環節內容形成緊密對應,為后續課程打下堅實的基礎,加強計算機系統思維能力,形成自己獨特的專業優勢。
參考文獻:
[1]徐昆良.《計算機組成原理》課程教學方法探討[J].中國科技信息,2009,(9):254+256.
[2]袁春風,王帥.大學計算機專業教育應重視“系統觀”培養[J].中國大學教學,2013,(12):41-46.
[3]劉洪濤,蘭文富.本科課程設計對學生能力培養[J].信息系統工程,2014,(5):160.
[4]袁春風,張澤生,蔡曉燕,楊若瑜,王帥.計算機組成原理課程實踐教學探索[J].計算機教育,2011,(17):110-114.
[5]鐵流.計算機教育出了什么問題,連龍芯都“忍不住”開源了[EB/OL].http://chuansong.me/n/1065186751281.endprint