操作系統原理課程的沉浸式課堂的設計與實施
來源:用戶上傳
作者:
摘 要:本文針對操作系統原理課程教學中存在的教學內容抽象、學生理解困難,教學方式單一、學生缺乏學習興趣等問題,提出以操作系統的資源管理的本質特性為出發點,設計以課堂教學中存在的管理任務為主要實踐內容的沉浸式課堂,學生在實施課堂管理任務時學習、實踐操作系統原理的基本概念、原理和方法。在此基礎上,為了進一步提高學生的創新能力和實踐能力,利用TRIZ體系中的資源分析法對沉浸式課堂進行了優化。教學實踐表明,沉浸式課堂的實施有效地增強了學生對于操作系統原理知識的理解,提高了學生學習的興趣,培養和鍛煉了學生的創新能力和實踐能力。
關鍵詞:操作系統;沉浸式教學;TRIZ
中圖分類號:TP33 文獻標識碼:A
Abstract:Aiming at the problems of abstract content,difficulty in understanding,single teaching method and lack of interest in learning,this paper puts forward the design of immersion classroom for the operating system principles course,based on the resource management features of operating system.The immersion classroom is designed with the existing management tasks in classroom teaching as the main practical content.Students learn and practice the basic concepts,principles and methods of operating system principles when implementing classroom management tasks.On this basis,in order to further improve students' innovation ability and practical ability,the immersion classroom is optimized by using the resource analysis method in TRIZ system.Teaching practice shows that the implementation of immersion classroom effectively enhances students' understanding of the operating system principle knowledge,improves students' interest in learning,and cultivates and exercises students' innovative ability and practical ability.
Keywords:operating system;immersion teaching;TRIZ
1 引言(Introduction)
操作系統原理是計算機科學與技術、計算機應用、信息安全和軟件工程等相關專業的專業核心課程,對于建立學生的計算機系統思維、提升編程的效率等具有非常重要的作用。操作系統原理的教學內容包含大量抽象的概念、原理和算法,傳統的教學方式是由教師講授,學生被動學習,教學內容的抽象和教學方式的單一導致學生感到操作系統原理枯燥,學生缺乏學習的興趣和積極性;同時,這種教學方式使得學生產生“操作系統原理課程實用性不強”的錯誤認知,學生學習被動,學習目的僅僅是為了應付期末考試。新工科建設提倡提升學生的工程實踐能力,國際工程教育認證提倡以能力為導向的教育理念,操作系統原理課程的教學和學習現狀顯然與其不符[1]。
針對上述問題,分析操作系統課程的特點,我們發現操作系統本質上是管理的科學。我們抓住“操作系統是計算機資源的管理者”這個操作系統的基本特性,把課堂的資源和計算機資源作類比,從中抽取出需要管理的資源,設計各種課堂管理任務,分配給學生完成,這樣學生可以在對課堂任務的管理中體會計算機資源管理的各種功能和算法。在教學設計中,教師對課程的管理也為學生提供了資源管理的示范。我們把這種課堂稱為沉浸式課堂。由于在沉浸式課堂中,學生需要調動各個感官完成課堂管理任務和學習任務,學習的效果要優于傳統的通過閱讀、聽講學習的方式。
為了進一步提升學生的創新能力和實踐能力,在創新理論和方法TRIZ的資源分析法的指導下,我們對課堂設計進行進一步優化。教學實踐結果表明,基于TRIZ的沉浸式課堂的實施調動了學生學習的積極性和主動性,提升了學習效果,可以有效地提高學生的創新能力和實踐能力,符合新工科建設的要求和國際工程教育認證的理念。
2 操作系統課程的本質特性(Essential characteristicsof the operating system course)
2.1 三大主線
在長期的操作系統教學實踐中,我們總結出操作系統課程的三大主線和兩個核心概念。
第一條主線是操作系統的功能。計算機操作系統是配置在計算機硬件上的第一層軟件,是對硬件系統的第一次擴充。從一般用戶的觀點,可以把操作系統看作是用戶與計算機硬件系統之間的接口;從資源管理觀點,則可把操作系統視為計算機系統資源的管理者[2]。國內外的經典的操作系統教材都是以操作系統對各種資源的管理為編目的依據和標準,分別從處理機管理、存儲器管理、設備管理和文件管理闡述操作系統的原理,操作系統就是資源管理器,操作系統的設計目標就是提高資源的利用率和為用戶提供友好的接口[2-4]。因此,操作系統本質上來說是管理的科學。 第二條主線是操作系統的實現。操作系統作為配置在計算機硬件上的第一層軟件,其本質上是系統軟件,因此可以從軟件設計的角度學習操作系統。從操作系統的編程實現的角度研究操作系統,操作系統由兩大部分組成,數據結構和算法。對于任意一種資源管理的實現,都是要設計相應的數據結構來描述資源,設計相應的算法來對資源進行控制和管理。
第三條主線是一個進程的生命周期??梢詮囊粋€進程的視角,研究操作系統如何對一個進程在一個完整的生命周期中的各項活動進行管理,如何對其使用到的資源進行分配和回收,以及如何對于進程和其他進程之間的關系進行協調和控制。
2.2 兩個核心概念
兩大貫穿始終的概念,包括時間與空間、邏輯與物理。拋開操作系統管理各種資源的細節,我們把操作系統管理的計算機資源分成兩大類,一類是時間資源,例如,進程管理、線程管理都是對處理機的時間進行分配和管理;另一類是空間資源,例如,內存管理是對內存空間的管理,磁盤管理是對磁盤空間的管理,文件管理是對文件存儲的物理空間的管理等。為了提高管理的效能,經常會在時間和空間兩個要素之間做平衡,有時候是在用時間換取空間,例如,虛擬存儲有時候是在用空間換取時間,例如,頁式存儲管理中的快表的使用。
學習操作系統時,我們經常會用兩個不同的視角,一個是用戶的視角,從用戶視角所觀察到的稱為邏輯的,例如邏輯地址空間、文件的邏輯結構等;另一個是系統的視角,從系統視角所觀察到的稱為物理的,例如物理地址空間、文件的物理結構等。
3 沉浸式課堂的設計(Design of immersion classroom)
從學生的角度來看,操作系統概念多、原理多、算法復雜,并且抽象。但是,從我們長期的教學實踐來看,操作系統的知識脈絡很清晰,由以上總結的三大主線和兩個核心概念組成,其他的概念都圍繞著它們展開。如果學生能夠較容易地理解操作系統的知識脈絡,將會極大地提升學習的效果。而我們總結出來的主線和概念不是抽象的,是和我們的生活和學習密切相關的、是具體的,每個學生都會遇到時間管理和空間管理的問題。
為了讓學生對于管理有更深切的體會,在學生和教師之間建立共同的語境,我們把課堂管理作為課程教學的沉浸式的實踐環節,把操作系統課堂設計成為需要學生完成多項課堂管理任務的課堂,學生沉浸在各種課堂管理任務中,時刻會遇到與操作系統資源管理相似的資源管理任務,操作系統課程中學習到的各種算法可以隨時應用到課堂管理任務中。
3.1 課堂自主管理
我們在課堂活動中,挖掘出多項課堂管理任務,在學生中成立課堂管理任務小組。課堂自主管理小組的設置如表1所示。
每一個小任務都可以類比為操作系統中的一個程序,而每節課每個課堂管理任務的執行就是一個程序的執行,即進程。因此,進程管理中的很多概念和算法可以滲透進去。例如進程的創建、執行、撤銷、阻塞,進程的同步、進程的互斥、進程的死鎖。
此外,在任務的執行過程中,會遇到各種需要解決的問題。例如,小組成員的調度問題。小組有多個成員,每次的任務由誰來完成,需要進行調度,那么如何進行調度呢?進程管理中我們學習到很多種調度算法,學生可以嘗試使用這些調度算法來解決小組成員的任務調度問題。由于這些課堂管理任務都是額外的,所以需要學生具備很強的時間管理能力,有很多事要做,先做什么再做什么,有長任務、短任務,如何平衡,也可以使用進程調度中學習到的調度算法。
課堂管理為操作系統教學提供了學生和老師,以及學生和學生之間可以交流的共同的語境。教師可以在講授操作系統的理論時,使用課堂管理任務作為例子,由于有過管理實踐,學生很容易心領神會。學生也可以在課后運用操作系統課程中學到的算法,提升課堂管理的效率,從而更好地理解操作系統的算法。
3.2 學習管理
組織學習管理小組,讓學生主動地有意識地對自己的操作系統課程的學習進行管理,學習管理小組的設置如表2所示。
課堂回顧組 課后對知識點進行總結、歸納和拓展,上課時帶領全班同學進行上一節課的課堂內容回顧課堂回顧組由多名同學組成,負責在課后對課堂學習的內容進行總結和拓展,在下一節課上課前帶領全班同學進行課堂內容的回顧。學習是教師和學生共同參與的活動,傳統的學習方式是教師從教師的視角講授知識,由于教師常年多次講授,會認為所講知識簡單,學生很容易接受;學生進行課堂回顧,可以讓教師得以從學生視角看到學生對知識的掌握程度,以及學生的關注點等,是一種非常及時的對于教學的反饋。
而操作系統原理的學習也需要學生經常站在用戶和系統兩個不同的視角學習,課堂回顧的設置為學生提供了不同的視角看同一個問題的示范。
3.3 沉浸式課堂的典型案例
3.3.1 課代表可以由班長擔任嗎—通道
為了保證操作系統教學的正常運行,在開課時,都會征集一名課代表。在征集課代表的時候,教師會強調,班長不能擔任課代表。教師會埋下一個伏筆,為什么班長不能擔任課代表呢,課程后面會為大家揭曉答案。于是,就激發了學生的好奇心。在講到設備管理時,講到I/O控制時,以班長要一名同學幫他完成一項小任務為例,由程序直接控制方式,到中斷控制方式,再到DMA,最后講到通道方式,通道方式是對于班長來說效率最高的一種控制方式,班長可以和通道并行工作、被中斷的次數最少。這時候,教師再提醒大家,給大家揭曉“班長為什么不能兼任課代表”這個問題的答案。
通過這樣的方式,學生很容易就理解了I/O控制的發展過程,以及各種方式的優缺點,學生還會把打趣某個班委或者課代表“你就是一個通道”。
3.3.2 課堂管理和學習管理中的表格—數據結構 在前面,我們提到操作本質上是一種系統軟件,由數據結構和各種算法構成。在計算機操作系統的學習過程中,我們也學習了各種資源管理相應的數據結構。對于這些名目繁多的數據結構的作用,學生并不是很能理解。在課堂管理及學習管理任務布置時,教師會有意識地給學生一些標準的表格模板,用來登記任務,在管理過程中也會提醒學生對表格進行更新,學期末要求學生根據表格中登記的數據對任務執行情況進行考核。教師在上課時會給學生指出,這些管理表格的本質就是計算機操作系統中設置的數據結構,操作系統通過這些數據結構對進程的運行和資源的使用進行管理;而課堂管理或學習管理小組的小組長也正是用這些數據結構記錄任務進程的運行的。通過這樣的類比,很多抽象的概念都變得具體了。
4 基于TRIZ創新方法的沉浸式課堂的優化(Optimization of immersion classroom based on TRIZ innovative method)
TRIZ(The Theory of Inventive Problem Solving)是1946年由G.S.Altshuller創立的一種創新理論和方法[5],應用于技術創新、管理創新等各個領域。TRIZ的理論和方法源于對大量專利的分析,已形成一套系統的創新方法體系。
TRIZ理論基礎是技術系統進化法則,包括完備性法則、能量傳遞法則、動態性進化法則、提高理想度法則、子系統不均衡進化法則、向超系統進化法則、向微觀進化法則、協調性法則。
TRIZ提供了一組創造性思維技法,這些創新思維技法幫助人們打破思維定勢,引導人們在遵循客觀規律的基礎上,沿著一定的維度進行思考。TRIZ創新思維技法包括:小人法、STC(Size、Time、Cost)算子法、最終理想解法、金魚法、九屏幕法。
TRIZ認為,對技術系統中可用資源的創造性應用能夠增加技術系統的理想度,這是解決發明問題的基石。資源分析就是從系統的高度研究分析資源,挖掘系統的隱性資源,關注系統資源間的有機聯系,合理地組合、配置、優化資源結構,提升系統資源的應用價值或理想度。
我們以TRIZ資源分析法對操作系統課堂進行進一步優化。操作系統課堂作為一個獨立的系統,它的子系統包括學生、教師、教材,以及教室的硬件設施;超系統包括學校的軟硬件環境,整個上海市、全國以至全球的操作系統研究的環境,操作系統相關的其他技術等等。從時間軸上,又可以擴展到過去和未來。利用九屏幕法可以把操作系統課程可以利用的資源擴充到九個維度,為原來的數十倍甚至更多倍。用TRIZ資源分析法對操作系統課堂的優化,包括課外拓展、課外實踐和智慧課堂等。
4.1 課外拓展
我們在教師教授、教材單一的基礎上,把課堂從課堂內容、講授人、講授內容、講授方式等方面進行廣泛拓展,設計了課外拓展這個課堂環節。課外拓展由學生在課后以小組為單位完成,主題為操作系統課外內容或與操作系統相關的前沿內容。
在一個學期的第一節課下發課外拓展任務書,由課外拓展組組長負責課外拓展小組的劃分、拓展主題和拓展時間的填報。課外拓展展示的時間安排在每次課的第二節課的開始,這樣可以在學生聽教師講授一節課后,通過講授人、講授內容等的轉換,減輕學生聽講理論課的疲勞度,活躍課堂氣氛。經過拓展組組長的統一整理和規劃,每次課的拓展主題基本和課程教學進度一致。
任務書中的課外拓展主題和學生實際選擇的主題如表3所示。
從表3可以看出,經過學生的拓展,操作系統的學習內容變得立體而豐富了,從操作系統的發展歷史,到操作系統的類型,從操作系統的原理到具體操作系統的源碼分析,從操作系統技術到相關技術。學生通過同學的拓展展示,沉浸在一個完整的由它們自己構建的課堂環境中,由此激發了對操作系統的學習興趣和主動性、促成了一個互相學習互相分享的良好的學習氛圍。
4.2 課外實踐
在課外拓展的基礎上,為了滿足部分學生的進一步提升實踐能力的要求,提高課外拓展分享的質量,鼓勵采用分組形式進行課外實踐,并把實踐內容及結果在課堂上分享。實踐可以采用興趣小組的形式完成,每個興趣小組(2到3人)選擇一個主題,在一個學期內完成一個微項目。微項目的主題有,Linux源碼分析、Linux內核編程、Windows內核編程等與操作系統原理及編程相關的主題。這樣一個為期一個學期的項目實踐,可以培養學生的項目管理能力和時間管理能力。在此過程中,教師盡其所能為學生的實踐提供必要的資源和幫助。
4.3 智慧課堂
操作系統的課堂還利用到各種網絡資源及智能手機APP資源,以實現最理想的課堂設計。運用了手機APP的各種課堂考勤方式,包括二維碼考勤、位置考勤、手勢考勤、拍照考勤等,節約了考勤的時間、提升了課堂的效率。此外,運用手機發起討論和提問的功能,激活了原本沉悶的課堂氣氛。運用手機考試的功能,可以隨時檢測學生的學習效果,提升了課堂練習的效率。
這些智慧課堂教學手段的運用,既提高了教學的效率,提升了教學的效果,又為學生示范了創新的教學方式和手段,學生感到耳目一新,有走在技術發展的前沿的自豪感,這種自豪感會激發學生努力學習、將來開發出更好的軟件的積極性。
5 教學效果(Teaching effect)
從2015年開始進行操作系統的沉浸式課堂的設計與實施,每一個學期結束都會對實施的效果進行評估,結合收集到的反饋意見,持續改進。目前,操作系統的沉浸式課堂從設計到具體實施已經比較成熟,具有完備的管理文檔,積累了豐富的教學案例和教學資料。操作系統課程已經不是學生望而生畏、上課睡覺的課程了,學生對操作系統課程充滿了期待,對操作系統的學習充滿了興趣。以下列出比較有代表性的學生的反饋信息。
“這門課除了平時的教學外,還增加了課前回顧、課外拓展、課外實踐的內容。增加了同學上課的參與度,課外知識的學習,以及對這門課程的深入探索。”“通過同學準備的課前回顧、課外知識拓展,在進一步夯實基礎的同時,也普及了當下運用的一些技術,著眼于現在業界的變化,不為學而學,而是著眼于實際生活,為了解而學?!?
實施沉浸式課堂以來,學生對教師及課程的評價普遍較高,2015年以來的評教數據如表4所示。
6 結論(Conclusion)
針對操作系統教學中存在的理論性強、概念抽象、學生學習興趣低的問題,基于對操作系統的本質特點的分析,把操作系統的概念和原理融入課堂管理任務中,創建有利于操作系統教學的沉浸式課堂。結合TRIZ創新方法,對課堂設計進行進一步優化,廣泛使用各種課程資源,建立理想的操作系統課堂環境。經過一段時間的實施和持續改進,建立了比較系統的操作系統的沉浸式課堂,學生取代教師成為課堂的主人,有效地激發了學生主動深入學習操縱系統的興趣,建立了良好的互相學習、互相分享的學習氛圍。學生個人的動手實踐能力、合作能力、演講能力等都得到了很好的鍛煉和培養。
本文的探索符合國際工程教育認證提倡面向結果、能力導向、持續改進的教學理念,可以在除了操作系統課程之外的其他計算機專業課程中推廣。
參考文獻(References)
[1] 王英,王鑫,左萬利.操作系統課程改革的啟發和思考[J].計算機教育,2017(2):34-37.
[2] 湯小丹,梁紅兵,哲鳳屏,等.計算機操作系統(第四版)[M].西安:西安電子科技大學出版社,2016.
[3] 費翔林,駱斌.操作系統教程(第五版)[M].北京:高等教育出版社,2014.
[4] Abraham Silberschatz,Peter Baer Galvin,Greg Gagne.操作系統概念(第9版)[M].北京:機械工業出版社,2018.
[5] 阿奇舒勒.創造是一門精密的科學[M].北京:北京航空航天大學出版社,1990.
轉載注明來源:http://www.hailuomaifang.com/1/view-14892941.htm