新工科背景下操作系统课程教学创新与实践
Innovation and Practice of Operating System Course under the Background of Emerging Engineering Education
摘要: 针对操作系统课程在教学中存在的问题,秉承“夯实基础、注重实践,培养能力、分类成才”的教学理念,提出了以教学讲授为主,基于真实操作系统内核实验、学科竞赛、科研为辅的“教学 + 实验 + 竞赛 + 科研”教育教学培养模式。经过多轮教学设计改革和实践,形成理念先进,模式有效,育人突出的完整课程教学方案。
Abstract: In response to the problems which exist in the teaching of operating system courses, adhering to the teaching philosophy of “strengthening the foundation, focusing on practice, cultivating abilities, and classifying talents”, a “teaching + experiment + competition + research” education and teaching training mode is proposed, which is mainly based on teaching lectures and supplemented by real operating system kernel code, competitions, and scientific research. After multiple rounds of teaching design reform and practice, advanced, effective, and outstanding curriculum teaching plan has been formed.
文章引用:宋丽华, 李源, 王超, 吴明礼. 新工科背景下操作系统课程教学创新与实践[J]. 创新教育研究, 2024, 12(11): 405-412. https://doi.org/10.12677/ces.2024.1211816

1. 课程教学中的问题

近年来,教育部实施系列新工科建设计划[1],引导全国高校全力探索领跑全球工程教育的中国方案,助力我国高等教育强国建设。新工科建设具有引领性、交融性、创新性、跨界性和发展性的典型特征,在国家所需求的创新人才培养中起着重要的作用,新工科的建设必定会引起教学模式的改革,而课程建设则是改革成功的关键问题。2020年教育部印发《高等学校课程思政建设指导纲要》[2],明确指出全面推进课程思政建设是落实立德树人根本任务的战略举措,是全面提高人才培养质量的重要任务,要结合专业特点分类推进课程思政建设。

《操作系统》是面向计算机科学与技术和信息安全专业大三学生开设的专业必修核心课程,操作系统介于硬件和软件之间,在课程体系中起到了承上启下的关键作用,是计算机专业考研统考初试科目408的必考课程之一。在针对计算机科学与技术和信息安全专业《操作系统》课程教学实践中发现如下几个问题[3] [4]

1) 注重知识传授多,价值引领和系统能力培养考虑得少。操作系统课程本身知识量比较大,知识点繁多,且每个方面知识点间没有特别明确的关联性,导致学生在学习课程的时候多以模块的形式理解知识点,不能将各个知识点整合在一起形成明确的系统观。如何帮助学生有效地建立系统观,培养学生的系统能力是操作系统课程中需要解决的重要问题。此外,工科专业课程在课程思政方面考虑得少。

2) 课程模拟实验多,系统实践接触少。目前各大高校所采用的主流实验方案有两种:一种是基于算法模拟的实验方案[5],这种方案基于对核心算法的原理模拟,通过编写程序模拟匹配输入输出,理解操作系统中常用算法的核心机理。该实验方案仅仅是让学生通过模拟算法的输入输出管中窥豹,无法真正了解到相关算法在操作系统中实际的运作机制;另一种是基于真实内核开发的实验方案[6]-[8],学生在本机上搭建内核开发环境,在其中编写真实的操作系统内核源码,并在真实硬件模拟器或开发板中加载并做功能验证,从而更深层次地加深对操作系统知识的理解。该方案需要学生花费较多时间精力用于搭建开发环境,学生初期易产生畏难情绪。

3) 学生被动听的多,课堂主动参与的少。传统的课程的授课方式是教师在讲台上讲,学生坐在讲台下听,教师课上提问主动回答的学生几乎没有,检查教学效果只能用课后作业和考试成绩来衡量,学生学习主动性不足,课堂气氛沉闷,如何提高学生的学习主动性,主动与教师互动也是课程改革要考虑的主要问题。

4) 学生个体差异性考虑得少。学生水平参差不齐,以往的教学安排不能满足部分学有余力学生的需求,另外部分学生在操作系统学习上有浓厚兴趣,希望能参与一些实际的科研活动。

2. 课程改革过程

针对上述问题,以“新工科”建设为指导,以学生为中心,围绕学校办学定位、专业人才培养目标和毕业要求,凝练课程教学知识目标、能力目标和思政教学目标,以课程内容为主体,自然融入课程思政内容,秉承“夯实基础、注重实践,培养能力、分类成才”的教学理念,从课程内容重构、改进教学方法、改进课程模式和组织方式、改进课程评价方式等方面进行了教学体系改革。

2.1. 教学内容的重构

秉承“夯实基础、注重实践,培养能力、分类成才”的教学理念,在教学内容上做了以下重构。

1) 基础知识方面,以练促学,构建学生系统的知识体系。除了传统的操作系统基础知识外,将经典的考研题目纳入习题课进行讲解,目前课程已将2010年至今有代表性的考研题目,按章节引入课堂教学中。一方面由于操作系统是计算机统考考研必考科目,对于考研的学生来说在课程学习期间为考研做好充足准备;另一方面,考研题目都是经典题目,很多题目对学生的系统能力培养具有有效的以练促学作用,通过题目练习使学生能够更好的理解操作系统的工作原理、运行机制和思维方法,帮助学生系统地构课程知识体系。

2) 改革实验题目,面向实践,培养学生的计算机系统能力。操作系统是一门系统性与实践性都非常强的学科,脱离实际来谈操作系统,极易陷入“纸上谈兵”。因此我们引入基于真实内核的操作系统实验,从验证性模拟实验向基于实际操作系统的设计实验转变。采用希冀自动评测系统平台,将实验环境部署在云端,学生可以通过浏览器不受时间和地点限制,随时登录实验平台,并且对实验结果给予实时反馈,不仅使经典理论与应用实践之间形成互为前馈、彼此推进的良性循环教学体系,使能够利用所学课程知识解决复杂实际工程问题,同时也培养了学生计算机系统能力。同时实验题目也设计为基础题目和进阶题目两类,满足不同水平学生学习需求。

3) 改进评价机制,与时俱进,提高学生的课堂参与度。以成绩为单一指标的学习评价方案难以充分反映学生的学习发展成效。对课程考核评价进行改革,引入“雨课堂”,不仅提高学生的课堂参与度,也对学生学习过程评价提供了客观的支撑材料,从课程出勤、课上答题情况、课后作业等更多视角评估学生发展。此外,把操作系统的学术研究前沿、竞赛、科研项目内容引入课堂讲解,不仅提高了学生对课程的兴趣度,也引导了学生面对新的应用场景,积极提出新思路,培养学生的系统化思想、工程思维和创新能力。

4) 课程思政方面,润物无声,注重学生的价值引领。课程在讲授环节中注重将思政育人目标落实到每章节知识和能力的培养中,培养学生的家国情怀,起到立德树人润物无声的效果,实现将知识传授与价值引领相结合。

2.2. 教学方法的创新

操作系统课程团队在近几年的教学中秉承“夯实基础、注重实践,培养能力、分类成才”的教学理念,提出了以教学讲授为主,真实操作系统内核实验、学科竞赛、科研为辅的“教学 + 实验 + 竞赛 + 科研”培养模式。通过基础知识的讲授让学生获得基本的专业对操作系统经典算法进行全面系统的梳理,使学生能够掌握操作系统相关概念,理解操作系统核心管理机制,深入体会操作系统核心算法思想和应用背景;通过实验和竞赛强化学生实践能力和复杂工程问题解决能力,利用科研项目培养学生将理论知识与实际应用相结合培养,实现学生计算思维的培养。在教学上注重“实践导向教学”和“情境化教学”教学方法。

实践导向教学:通过使用操作系统的真实内核代码以及实际应用案例,让学生们亲自参与到实际工程代码的阅读、分析和理解中,从而加深对操作系统原理和实现的理解。这种实践教学方法可以提高学生的动手能力和实际问题解决能力。以内存分配算法为例,引入工程实现问题,详见图1,以网络中遇到的内存管理案例设计为例,让学生理解操作系统内存管理算法的应用原理和场景。

Figure 1. Engineering application examples introduced in the course

1. 课程中引入的工程应用实例

情境化教学:通过生活中的例子来说明复杂的问题,增加操作系统课程的生动性和趣味性。通过一些实际案例让学生理解算法的原理和应用背景。使抽象的概念更加具体化,让学生能够更容易地理解和接受。这种生活化教学方法可以增加学生的兴趣,提高他们的学习积极性和参与度。比如讲授进程调度算法时,引入去银行办理业务常用的“先来先服务”算法,随着银行又为优质用户提供了VIP业务通道,这就对应基于优先级的调度算法。

这两种教学方法相结合,可以使学生在课堂上获得更加丰富和深入的学习体验,提高他们的学习效果和实际应用能力。这种教学方式对于计算机专业的学生来说尤为重要,因为计算机领域需要不断地实践和创新。

2.3. 教学模式和组织方式的创新

团队课程教学在教学模式上也做了创新摸索——利用信息化新方法,采用采用线上线下混合式教学模式,线上采用“雨课堂”软件及其SPOC资源展开,线下采用课堂教学并采用雨课堂软件加以辅助。具体形式介绍如下。

1) 线上教学。线上教学部分采用雨课堂软件,利用该软件的授课、课外SPOC、作业、成绩管理等相关功能,辅助教学。在“雨课堂”中,学生可以通过电脑或手机访问平台,灵活地学习,主讲教师将网络上优质的SPOC资源链接嵌入课件,形成学生课前预习相关内容,本部分内容只针对课程中的重点、难点以及提升学生兴趣的外部资源展开,学生可针对以上内容进行有侧重点地预习、学习。

2) 线下课堂。在线上教学的基础上“雨课堂”还提供了实时课堂教学服务。线上线下相结合的教学方式不仅可以让学生感受到真实的教学氛围,还可以提供更加个性化的教学体验,与老师进行在线互动式教学。课堂教学过程中,穿插课堂答题环节,既有督促学生签到的作用,还能够有效把握课堂进度,与学生实时互动。课堂弹幕打开,学生可以随时根据课堂内容或者关键课程节点,提出相关疑问,老师根据问题内容酌情解答,增加学生学习兴趣和课堂参与度,还可以完成学生出勤情况统计。

3) 线上实验。疫情期间,针对实践课程开展受限的问题,我们自主开发设计了线上操作系统实验自动评测系统,使学生可以远程分布式完成实验题目的测试和评测,并且可以实现学生登录注册、实验自动评测、成绩汇总等功能。该平台的优点不仅可以实现实验题目的自动评测,并且实验是基于真实操作系统内核,学生可以将理论学习与应用实际相结合,提高学生的复杂工程问题解决能力,培养学生计算机系统能力。详见图2为自主开发的操作系统实验自动评测平台。

按照“分层教学”的教学理念,首先要求学生掌握教学大纲包含的知识点,培养学生的逻辑思维和抽象思维能力。然后,注重兴趣培养,把竞赛和科研项目内容融入课堂教学,增加课程的容量,使学有余力的学生进行额外的学习,通过参加科研项目和学科竞赛提高解决复杂工程问题的能力。在教学组织中因材施教,兼顾各类学生,由于学生的基础不同,课程实验设置了基本实验和进阶实验,鼓励学有余力的学生完成高阶实验。这样既满足了课程目标的要求,又调动了学有余力学生参与的热情和积极性,使学生复杂工程问题解决能力得到提升。此外,通过线上实验使学生验机不受空间和时间限制,同时解决了学生系统实践接触少和系统能力培养的问题。

Figure 2. NCUT Operating system automatic evaluation experimental platform

2. NCUT操作系统自动评测实验平台

4) 线上辅导。此外,企业微信的应用也为线上辅导提供了有力的支撑。鼓励学生有问题随时可以企业微信联系老师,使答疑也不再局限于时间和空间限制。

总之,通过课堂教学,分层实验,线上线下混合教学模式为学生提供一个全面的、多元的学习环境,不仅提高了学生参与课堂互动的积极性,也培养了学生实践能力,提高了教学的有效性和学生的学习成效。

2.4. 课程思政的融入

一直以来,我国操作系统存在“卡脖子”问题,特别是近几年美国对我国基础软件领域的制裁,缺少生态系统的自主产权操作系统已成为制约我国在这些领域快速发展的因素之一。因此,操作系统课程思政目标设定为:培养学生精益求精的大国工匠精神,激发学生科技报国的家国情怀和使命担当,积极从事我国基础软件行业的意愿,以及在此价值理念基础上衍生出来的探索未知、追求真理、勇攀科学高峰的责任感和使命感、社会主义核心价值观。在教学的顶层设计上,把对学生的思想政治培养作为课程教学的目标,坚持将教学内容与国家社会需求相结合,将教学内容与社会正义感相结合,以知识传授为基本目标,以能力培养为进阶目标,以价值引领为升华目标。具体举措如下。

1)以爱国主义情怀为催化剂,激发学生爱国热情。

结合操作系统的发展历史与演化历程,纵观国内外操作系统发展过程和现状,引导学生认清我国操作系统研发能力尚未深入核心,由此带来的困局可能导致严重后果,以引导学生认清计算机系统安全的重要性及计算机核心技术自主可控的国家重大需求,激励和启发学生敢于担当操作系统研发重任、积极投身国家重大需求的爱国热情。

结合“中美贸易战”国际时局特别是跟操作系统及计算机系统相关的一些事件,适时地穿插一些相关的时事政治,譬如美国压制华为、中兴等公司无所不用其极的手段,引导学生了解国家社会的现实需求,使学生明白核心科技是不能轻易引进的,引导学生确立自身发展定位,直面自身弱项,进而不仅要强化自身的理论知识而且要加强锻炼编程实践能力和系统设计能力。

2) 以思政案例为载体,提高学生学习兴趣。

教学过程中,在基础知识传授的基础上,结合当下热门时事、热点问题,让学生主动去思考操作系统课程在其中已经有了哪些应用,以及将来还可以有哪些应用,将极大提升学生的学习兴趣,例如,在讲授进程的同步和互斥问题时,可引导学生回忆事物之间因资源竞争而引起的次序协调问题广泛存在于现实生活中,例如超市排队、银行ATM取款机的使用、产品加工的流水线作业等。这些随处可见的生活经历使得学生对于多个事物在执行过程中,对资源的竞争使用或次序协调问题都有感性的体验,这为正确认知并理解操作系统中进程之间的同步问题打下基础。再者,以我国操作系统落后困局为例,结合操作系统发展历程,尤其是我国操作系统长期处于落后状况的现实困局,激发学生勇于担当、积极投身国家重大需求的爱国热情。特别地,结合美国封堵压制华为无所不用其极的丑态,引导学生认清计算机核心技术自主可控国家重大需求所在,激励和启发学生敢于担当操作系统研发重任的热情。

总之,课程在讲授环节中注重将思政育人目标落实到每章节知识和能力的培养中,培养学生的家国情怀,起到立德树人润物无声的效果,实现将知识传授与价值引领相结合,使学生形成具有中国情怀的新时代价值观。

2.5. 教学评价

教学评价采用自动评价和人工评价相结合的方式,实现了全过程发展性学习评价和实时评价。教学评价包括期末考试评价(人工评价,占总评价的70%)和平时评价(占总评价的30%),详见图3。平时评价包括。

1) 考勤评价:占平时评价的10%,根据“雨课堂”课程出勤统计自动评价。

2) 作业评价:占平时评价的30%,人工评价 + 自动评价。

3) 实验评价:占平时评价的50%,学生在规定时间内通过线上实验评测平台在线提交,平台自动评价。

4) 课堂表现评价:占平时评价的10%,根据“雨课堂”课程答题参与情况,自动评价。

Figure 3. Thecourse scoring criteria

3. 教学评价评分标准

教学评价中平时成绩采用自动评价方式,评价更加客观,同时能减少学生和老师之间的分歧。该方案完整考核了课堂各个环节并体现为成绩,一定程度能够反映学生在该课程学习过程中的整体表现。

3. 教学成效及其推广价值

本教学体系已逐渐在计算机科学与技术专业与信息安全专业的多届学生的教学中,教学效果提升显著。

1) 整体课程评价

学生更加重视课程的学习和实践,课堂参与度高,自主学习的积极性不断提高。从近三年课程考试成绩数据可以看出课程优秀率逐年稳步提升,详见表1

Table 1. Statistics of the number of operating system students and test scores

1. 操作系统学生人数及试卷分数统计

课程人数

≥90分%

80~89分%

60~79分%

<60分%

2021年

133

6

27.8

54.1

11

2022年

135

6.7

30.4

51.1

11.9

2023年

118

7.6

32.2

49.2

11

2) 竞赛方面:“以赛促学,以赛促教、以赛促能、以赛促建”,从2021年开始参加全国大学生系统能力培养操作系统程序设计大赛。第一年两支队伍,无缘决赛。2022年,两支队伍,一队进入复赛,获得全国优胜奖。2023年,三支队伍均进入全国决赛,最后取得全国二等奖1项(全国仅10项),优胜奖1项,区域赛一等奖1项,区域赛三等奖1项,2024年,五支队伍进入全国决赛,最后取得全国三等奖1项,优胜奖2项,在同类院校中领先。获奖人数逐年增加,参赛学生人数也在逐年增加,详见表2

Table 2. Competition awards in recent years

2. 近年来竞赛获奖情况

年份

2021年

2022年

2023年

2024年

获得奖项

无缘决赛

全国优胜奖1项

全国二等奖1项,优胜奖1项,区域赛一等奖1项,区域赛三等奖1项

全国三等奖1项,优胜奖2项,五支队伍进入决赛

3) 学生参与科研方面:越来越多的本科生从大二开始加入到老师的科研队伍当中。仅以本人指导的近三年大学生创新创业项目为例,2021年“MINI操作系统研究与设计探索”,2022年大学生创新创业项目“分布式课程实验在线评测关键技术研究”,2023年“基于国产操作系统的桌面组件开发技术研究与实现”,累计十余名同学参加,学生一作发表论文5篇(EI检索3篇),申请软件著作权3项,5名学生被保送研究生。

4. 结论

在新工科背景下,秉承“夯实基础、注重实践,培养能力、分类成才”的教学理念,从课程内容重构、改进教学方法、改进课程模式和组织方式、改进课程评价方式等方面进行了教学体系改革,并将课程思政融入教学全过程。通过自动在线自动评测实验平台使学生在真实操作系统内核中进行实验,让学生能够将理论应用于实践,加深学生对理论知识理解,提升学生解决复杂工程问题能力;通过引入“雨课堂”等信息化技术以及对评价机制的改革,使学生能够积极地主动参与教学活动,提高了学习主动性;通过竞赛和科研使学生能够培养成为既具有理论创新思维又能解决复杂实际问题的人才,使各类学生“分类成才”,也实现了计算机类学生系统能力培养。总之,经过多年的探索与实践,采用“教学 + 实验 + 竞赛 + 科研”教育教学培养模式,取得了良好的教学效果和育人经验。

基金项目

北方工业大学教育教学改革项目,北京高等教育本科教学改革创新项目(京教函[2023] 372号)。

参考文献

[1] 教育部高等教育司. “新工科”建设复旦共识[J]. 高等工程教育研究, 2017, 65(1): 10-11.
[2] 教育部. 高等学校课程思政建设指导纲要[EB/OL].
https://www.gov.cn/zhengce/zhengceku/2020-06/06/content_5517606.htm, 2020-05-28.
[3] 夏文, 仇洁婷, 陈俊杰, 等. 面向自主可控人才培养的操作系统课程探索[J]. 计算机教育, 2023(2): 95-99.
[4] 翟高寿. 面向系统能力培养的操作系统优质课程建设[J]. 计算机教育, 2018(5): 108-111.
[5] 叶保留, 费翔林, 葛季栋, 等. “操作系统”实验课程建设与教学探讨[J]. 计算机教育, 2009(14): 122-125.
[6] Laadan, O., Nieh, J. and Viennot, N. (2011) Structured Linux Kernel Projects for Teaching Operating Systems Concepts. Proceedings of the 42nd ACM Technical Symposium on Computer Science Education, Dallas, 9-12 March 2011, 287-292.
https://doi.org/10.1145/1953163.1953250
[7] Andrus, J. and Nieh, J. (2012) Teaching Operating Systems Using Android. Proceedings of the 43rd ACM Technical Symposium on Computer Science Education, Raleigh, 29 February-3 March 2012, 613-618.
https://doi.org/10.1145/2157136.2157312
[8] 王雷. 操作系统实验设计[J]. 计算机教育, 2009(17): 54-56.