1、35计 算 机 教 育Computer Education第 10 期2023 年 10 月 10 日中图分类号:G642基于金字塔原理的操作系统课程知识图谱构建与应用段博佳1,2,胡 勇1,2,陈 波1,2(1.南京师范大学 计算机与电子信息学院,江苏 南京 210023;2.南京师范大学 人工智能学院,江苏 南京 210023)摘 要:分析操作系统原理课程教学中存在的问题,提出基于金字塔原理的操作系统课程知识图谱构建方法,以 4 个实践案例从不同角度介绍知识图谱具体教学应用,最后说明教学应用效果。关键词:金字塔原理;操作系统;知识图谱;系统观培养文章编号:1672-5913(2023)10
2、-0035-05基金项目:南京师范大学教育教学改革重中之重课题“知识图谱赋能混合式教学的路径研究与实践”(2022NSDJG004);江苏省高等教育学会重点资助课题“在线教学质量评价体系研究”(2021-Z07)。作者简介:段博佳,女,讲师,研究方向为计算机应用、人工智能,;陈波(通信作者),男,教授,研究方向为网络与信息安全、智慧教育,。0引 言操作系统原理是一门系统性强且涉及计算机学科多种相关知识的课程,对于连接计算机底层硬件体系与上层软件设计起着重要的作用。学生学好操作系统课程,不仅对学习计算机专业领域其他课程有很好的帮助,还对培养学生系统观、提升逻辑思维能力有着很强的支撑作用。操作系统
3、课程包含的知识点繁多且分散、模块间相对独立又彼此依赖,如何引导学生发现知识的共性、加强学生系统观的养成、培养学生在学习中善于发现问题的能力,是操作系统课程教学工作中的一大重点1-3。1操作系统课程教学问题分析1)知识点纷繁多样、概念抽象。与程序设计或算法设计课程中知识点通常相对独立不同,操作系统课程的知识点常常具有较强的关联特征,学生在“线性”学习过程中,常常只窥探细节而忽略系统的整体结构。如何帮助学生有效地建立系统观,是操作系统课程中需要解决的重要问题。2)算法成聚集态势,难以辨析。操作系统课程中的算法包括处理器调度算法、死锁避免算法、内存管理算法、磁盘调度算法、文件系统算法等,对操作系统的
4、性能、可靠性和安全性有着重要的影响。操作系统的算法原理相对简单,但成聚集态势;对于同一任务,不同算法的适用性、性能和使用场景纷繁复杂。学生理解单一算法本身并不存在太多困难,但对各种算法的分析、辨识与实践应用时常常会出现困惑和混淆情况。如何有效地帮助学生理解和应用纷繁复杂的算法也是操作系统教学中的一大 难点。3)系统性强,注重综合实践能力。除了要求学生掌握独立的知识点与算法,还要求学生能够理解复杂的综合性问题,对操作系统整体设计有结构化清晰的认知,这就要求学生在学习完课程核心内容后,能够独立完成复杂性大作业的实现,这对学生综合运用知识能力的要求较高。通常,学生在学习完复杂的知识点后,对知识点之间
5、的系统性认识和综合实践能力较薄弱,因此,如何帮助学生更好地解决综合性系统性问题,也是操作系统教学中的难点之一。202336计 算 机 教 育Computer Education2基于金字塔原理的操作系统知识图谱构建方法金 字 塔 原 理(Pyramid Principles)由 芭 芭拉明托提出,旨在培养思考、表达和解决问题的逻辑能力,被广泛应用于商业与专业培训,作为一种通用的思维工具,强调突出重点、逻辑清晰、主次分明的逻辑思路、表达方式和规范动作,该原理适用于各种领域4。在操作系统课程中,金字塔原理可以用于设计课程大纲、课前备课、课堂渗透、课后总结,帮助学生更好地理解、掌握并应用操作系统原理
6、相关知识5-6。此外,知识图谱已经证实在教学过程中能有效帮助学生理解知识点,并促进以学生为中心的概念知识体系的形成7-10。基于金字塔原理构建操作系统课程的知识图谱,将逻辑化思维引入课程教学实践中,是新工科理念之下行之有效的系统能力培养教学改革措施11-12。金字塔原理的基本结构是“中心明确,结论先行,以上统下,归类分组,逻辑递进。先重要后次要,先全局后细节,先结论后原因,先结论后过程”4。将金字塔原理融入操作系统课程教学的首要任务,就是要在第一堂课的操作系统概述中,明确向学生指出该课程对于计算机专业的重要性,以及学习这门课程对于学生自身系统观培养的必要性。操作系统原理课程的主要目标是理解操作
7、系统内部的实现。为了克服概念过多和学生短时理解困难的问题,可以采用金字塔结构将概念以体系化、视觉化的方式呈现出来,这样能够快速地和学生建立一种共识。这种体现知识体系的思维导图,也贯穿在整个课程的教学过程中。操作系统原理课程大纲及章节小结示例如图 1 和图所示,图是操作系统原理课程的大纲,图是 1.1章节内容总结。在课堂教授中,将“总分总”的结构模式贯穿始终,在每章节内容展开前介绍其整体组成,在逐步细化展开内容后,及时带领学生进行总结,回顾各个知识点在整个体系中的位置和作用,以加深学生对知识体系的理解。图 1 操作系统原理课程大纲3知识图谱应用案例3.1实践案例 1培养学生系统观的养成在操作系统
8、课程中,除了要求学生掌握知识点本身,更重要的是让学生理解知识点之间的相互关联。为了加强学生对知识点间相互关系的理解,建立相应的知识图谱就至关重要。操作系统课程为培养学生系统观的养成提供了丰富的案例。以操作系统第二章进程为例,第一部分先引入进程的概念,第二部分详细介绍进程的状态转换模型及进程间的组织方式,这两个知识点随后被融合于第三部分介绍如何通过原语实现对进程的控制。除了章节内部知识点间存在各种连接,在操作系统各个章节之间,知识点的关联性也非常强。进程的状态转换模型如图 3 所示,这个概念在课程开展的不同时期,向学生展示的侧重点也不相同。图 3(a)在初次介绍进程的状态转换模型时,重点强调进程
9、的 5 种状态以及 5 种状态之间的转图 2 章节小结示例操作系统定义和目标定义:管理系统资源、控制程序执行、改善人机界面、提供各种服务、合理组织计算机工作流程、为用户计算机提供良好运行环境的一种系统软件目标:提供使用户方便、高效地执行程序的环境计算机系统硬件软件操作系统层系统程序层应用程序层角色对上:服务者对下:管理者硬件操作系统用户应用程序操作系统和上层软件的区别核心课程建设第 10 期37换时机,包括中间 3 种状态(就绪态、运行态和等待态)所拥有的操作系统资源情况(如 CPU、内存等资源),让学生对进程的状态转换有一个基本认识。有效建立新知与已知间的联系,让学生理解操作系统的各个组成部
10、分是如何系统化地结合在 一起。3.2实践案例2培养学生界定问题的能力金字塔原理能够有效帮助学生加深对知识点的理解和掌握,并通过对新知的理解培养界定问题的能力。金字塔原理的情境分析法(SCQA原 理)包 含 4 个 部 分:情 境(Situation)、冲突(Complication)、问 题(Question)和 回 答(Answer)。金字塔原理常用于商业问题的解决过程中,帮助洞察所需解决问题的本质原因。SCQA 原理很适合用在操作系统教学过程作为新知识点的导入模式。在常规教学中,通常一个新知识点的引入是从概念入手,常忽略知识点的引入动机和当时历史条件下的内在发展需求。通过SCQA 原理可以
11、更好地帮助学生理解为什么会引入相关知识点,如为什么会在操作系统中引入进程的概念,而后又进一步引入线程的概念;为什么处理器的调度会有 3 个层次;为什么进程间存在同步与互斥的需求等。表 1 基于 SCQA 原理,以“为什么引入线程”为例展开说明。基于 SCQA 引导学生逐步理解操作系统原理中各个知识点的导入模式。例如,可以先给出知识点本身,再引导学生思考这个知识点背后隐含的需求是什么。这种模块化范式除了能够快速地帮助学生理解知识点的产生背景,还可以培养学生一种界定问题的能力,使其在实践中养成发掘问题本质的科学素养。在遇到新知时如果学生能够自发性地分析新知背后存在的需求,则在需求导向下就能够进一步
12、发散地思考该问题是否有其他的解决方案。这种思维范式也能够帮助学生提升独立思考及创新的能力。(a)第一次引入进程概念(b)引入调度算法(c)引入信号量和 PV 操作图 3 进程的状态转换模型图 3(b)在之后介绍到处理器调度算法时,再次展示这张图,强调处理器调度算法所发生的时机,是从就绪态转为运行态,也包括因抢占算法造成的运行态到就绪态的转换。图 3(c)在引入信号量和 PV 操作的概念时,再次重现这张图,指出信号量和 PV 操作在进程三态模型转换中的位置。在信号量的数据结构中包含两个部分,信号量 value 的值和一个指向某个 list 的指针。通过提问,引导大家思考,list 指向的是哪一个
13、队列(就绪队列、运行队列还是等待队列),启发学生根据已学知识自主寻找某种连接。list 的指针所指向的队列,是处于等待态的等待队列;P 操作的作用,就是在 value 0 时,使进程从运行态进入等待态(将进程的控制块 PCB 放入 list 指向的队列中);而 V 操作的作用,就是当某个等待事件发生时(value 0),使进程从等待态进入就绪态(将进程的控制块PCB 从等待队列中取出放入就绪队列中)。同一张图,在操作系统不同章节中引入,可以加强学生对知识点的复习和巩固,同时能够202338计 算 机 教 育Computer Education3.3实践案例 3培养学生结构化分析问题的能力金字塔
14、原理的结构化思维范式能够帮助学生更好地理清辨识复杂的算法类别,提升结构化分析问题的能力。例如,通过在同类问题中提取出“共性”以引导学生寻找知识点间的相关性;将不同类问题放在一起进行区分和联系,以帮助学生对多类问题进行辨识。结合 SCQA 原理,通过结构化地组织解决方案,能够有效地帮助学生理清算法策略与问题需求之间的因果关系,区别算法之间的优缺点,进一步辨识不同算法的应用场景,以便在实践中有效应用。举例说明如何应用金字塔原理呈现各种处理器调度算法之间的异同点。在介绍处理器调度算法时,引入 CPU 利用率、响应时间、周转时间、公平性等评价指标。通过对比不同调度算法(如先来先服务、最短作业优先、最高
15、响应比优先、优先级调度算法等)在各个指标下的表现效果,能够有效帮助学生理解算法的使用场景以及为什么适合在该场景下使用。此外,可以进一步引导学生思考在不同需求下可以采取哪一种调度算法。例如,可以引导学生站在操作系统视角,考虑系统的平均性能,提出“如何尽可能缩短进程的平均周转时间”的问题;也可以引导学生站在用户视角,从用户需求着手,提出“如何快速响应用户的紧急需求”的问题。学生通过思考来理解不同的需求会引出不同的调度策略,并且理解在实践中并不存在“完美”的调度策略。在这个过程中,也可以帮助学生认识操作系统的复杂性,理解需要利用“有限的资源”,在“最重要的需求”下选择相应的算法策略。在课堂教学过程中
16、通过知识图谱帮助学生构建知识框架,引导学生自主地进行逻辑推演,辨识不同算法在使用中可能存在的各种问题,以帮助学生更好地理解和分析算法的应用场景;同时,在课堂教学中着重引导学生有意识地进行结构化思考,能够有效地培养学生结构化分析问题的能力。通过将金字塔原理融入课堂教学和课后复习中,提升学生结构化思考的意识,使学生在遇到同类问题或者其他领域的问题时,能够举一反三,自主地进行归纳思考与分析。3.4实践案例 4提升学生解决综合性问题的逻辑思维能力在课程接近尾声的时候,通过综合性大作业考查学生的掌握情况,提升学生的综合思维能力(如图 4 所示)。大作业的形式涉及进程与线程管理、处理器调度和内存管理等多方
17、面知识,需要学生在理解各章节内容后,能够针对具体问题提出有效的解决方案并开展实验设计与实现。表 1 SCQA 原理应用于教学导入的示例导入阶段导入内容情景(Situation)随着计算机技术和网络技术的发展,人们对多任务并行处理的需求大幅增加,如在微信程序中进行文字聊天时,人们往往还需要完成视频通话、文件传输等任务,这些操作都需要占用处理器资源冲突(Complication)在进程模式下,上述操作必须按顺序执行,不能“同时”进行,并发性较低问题(Question)如何能够“同时”完成聊天、视频通话和文件传输的任务呢?更准确地,如何使同一进程能够并发执行,使程序执行的并发粒度更细、并发性更好回答
18、(Answer)将进程分成更小的线程。在引入线程之前,CPU 调度的最小单位是进程;在引入线程之后,CPU 调度的最小单位是线程,此时,同一进程内的多个线程就可以并发地执行,即可以“同时”执行上述任务此外,针对一些学生实践能力强但表达能力较弱的问题,金字塔原理也能够帮助学生进一步提升表达的逻辑。在大作业的实验报告撰写中,加强引导学生在写作中注重结论先行,以上统下的表达。在整体上把握纵向结构,突出重点;在具体内容上把握横向结构,突出报告的层次性和逻辑性。同时,通过写作加强学生的逻辑化思维图 4 金字塔原理有助于学生逻辑思维能力的提升!#$%!#$%&()*+,-./0011,2233445566
19、&)*778899:;)*核心课程建设第 10 期39参考文献:1 邓松,杨乐婵.操作系统课程的敏捷式教学实践与探索J.软件导刊,2022,21(11):177-181.2 张丽丽,陈莉君,梁琛,等.操作系统课程思政系统化建设与实践J.计算机教育,2022(11):65-68.3 李姗姗,沈立,文艳军,等.高级操作系统课程思政探索与实践J.计算机教育,2021(11):85-88.4 芭芭拉明托.金字塔原理思考,表达和解决问题的逻辑M.汪洱,高愉,译.海口:南海出版公司,2013.5 唐金萍,耿江华.明托金字塔原理在英语写作教学中的应用J.林区教学,2019(5):59-60.6 彭阳辉,王同
20、顺,邹晖.明托金字塔原理在英语学术演讲教学中的应用研究J.当代外语研究,2017(5):27-33.7 于俊伟,刘楠,马宏琳,等.基于概念知识树构建的操作系统教学实践J.计算机教育,2018(7):104-106.8 王宪莲,安凤平,陈贵宾.基于优慕课平台与知识图谱的微课课程设计及应用J.教育现代化,2019,6(79):201-207.9 范玉雷,雷艳静,韩姗姗,等.基于知识图谱的计算机组成原理课程植入与导入式教学J.计算机教育,2020(5):113-117.10 张勇,杨进才.基于学科知识图谱的高校教学模式研究J.计算机教育,2021(6):141-144.11 董跃宇,强振平,胡坤融,
21、等.新工科理念下的计算机系统能力培养教学体系建设探讨J.大学教育,2021(6):115-117.12 施莹娟,金晓康,任明远,等.聚焦计算思维培养的问题驱动教学模式探索J.计算机教育,2022(11):180-185.(编辑:宋文婷)能力,进一步反馈提升学生针对综合性问题的处理能力。最后,在报告中强调重点,规范格式,这也为学生在大四毕业设计(论文)课程中打下一定的基础。4教学应用效果基于金字塔原理的操作系统知识图谱贯穿应用于操作系统课程的教学中,已经在本院校进行了试点应用,通过实践证明效果良好。在学期末的学生自评中,学生评价好。在 20222023 学表 2 教学课程目标达成度问卷调查课程目
22、标毕业要求指标点课程目标 1:掌握计算机操作系统及其各功能模块中各类基本概念。学习和理解操作系统运作的一般原理和实现方法,并且能够初步实践能够运用计算机基础理论和专业知识对计算机领域中的问题进行分析、建模,并给出合理的解决方案课程目标 2:理解计算机操作系统中各种软硬件资源管理的关键技术,为能编写较为复杂的系统和应用软件打下基础在掌握基本的算法和硬件架构基础上,理解软硬件资源的管理以及建立在此基础上的各类系统的概念、原理及其在计算机领域的主要体现课程目标 3:从专业层次角度深入了解计算机操作系统在计算机系统中的地位及作用,以及它与硬件和其他软件之间的关系,为能优化系统和应用软件性能打下基础能够
23、针对计算机领域复杂系统和过程的要求进行分析和表达课程目标 4:理解以操作系统为中心的计算机系统的全局和整体的概念,培养学生具有一定的系统化思维能力在掌握基本的算法和硬件架构基础上,理解软硬件资源的管理以及建立在此基础上的各类系统的概念、原理及其在计算机领域的主要体现年,课程目标达成度问卷调查中学生自评内容见表 2,其中各项满分值 10 分,学生自评分数单项最高 10 分,最低 7 分。课程目标 14 的平均分分别为 9.29,9.31,9.29 和 9.29。学生在学期末的评教中也给予了充分肯定,评价课程讲解清晰明了、内容突出、教学细致、教法合理。教师能够带领学生对知识点进行系统化梳理,帮助他们建立系统观,使其对课程的理解更加深入。学生给任课教师的评教平均分高达99.57。5结 语基于金字塔原理的操作系统课程教学改革实践,很好地体现了以学生为主体、教师为主导的教学思想。实践表明,通过引入金字塔原理并应用知识图谱,能够有效地帮助学生加深对操作系统复杂知识点和算法的理解,加强对综合性问题的处理能力,同时有助于提升逻辑化思维能力。将逻辑思维方法论引入教学设计与教学实践中,也为教学的科学性和系统性提供了新思路和新 方法。