《操作系统原理》课程教学中结构思维的建立
2017-12-29叶承琼袁书萍
叶承琼+袁书萍
[摘要]《操作系统原理》的课程属于当前阶段我国高校之中本科阶段的重要课程之一,主要被应用在大型计算机专业的相关软件结构研究之中。在开展教学工作的过程中,需要进一步强化结构性思维方式,并非是侧重局部性能及算法。充分结合实际操作的情况,形成对应的操作系统原理课程,并应当更加看重思维过程的充分培养。通过借助系统操作剖析的方式与学生之家相互影响,促使学生可以更好地了解操作系统原理。
[关键词]操作系统原理;教学过程;结构思维
作为计算机类课程之中的核心与关键,《操作系统原理》的作用巨大,在培养学生实践性以及实用性效果上作用明显。学生多认为这门课程相对比较容易掌握,主要是对算法内容的学习,例如虚席进程调度算法、死锁避免算法等内容。这种思维方式的形成集中体现出计算机教学之中广泛表现出来的问题,也就是课程彼此相互孤立,课程之中各章節方面也存在独立性问题。学生无法通过学习形成系统结构思维。实操阶段缺少系统性思维能力将会造成学生无法通过该学习,形成大型软件方面的系统构建能力。课程体系实际操作过程中,需要被安排在一定的程序设计以及数据设计结构之中,属于当前针对计算机专业方面的重要基础课程。计算机专业系统结构思维能力的培养开始受到国内教育领域的重视,一些具备条件的学生都已经建立了课程系统,本研究基于此基础,从多角度探究操作系统课程方面的相关问题,希望能够对未来技术与教育发展起到促进作用。
一、结构的含义
系统主要是指操作系统,也就是一个大型的系统结构,其中通过各项功能单元彼此之间形成关联,相互依赖,并最终产生特定功能。结构,主要是指系统之中所有要素彼此之间从时间、空间等方面形成的一种排列与组合。相对于结构,系统之中内外延属于系统对外形成的功能,包括操作系统的服务提供者方面的内容。针对大型软件类型来看,结构的优质与否直接决定了软件是否具有良好属性,因此十分关键。
二、操作系统结构
操作系统结构属于实现操作系统相关原理理论知识教学之中的关键,并贯穿于课程的始终。如需要有效识别课程,则应当针对结构内容进行学习,以此更好的优化学生认知能力与效率。
(一)操作系统整体结构分析
操作系统结构问题的分析,需要硬件、操作系统以及应用程序等几个方面出发。基于静态角度分析,计算机系统主要是不同物理设备以及传输速度各异的硬件与资源管理功能模块等共同构成的一种组合。所有这些都是计算机系统方面的基本要素。抽象以及分层则能够对所有要素之间进行重新整合。基于此结构之中,需要建立以内核作为重要基准,并向下开展,利用硬件驱动程序完成对具体硬件等类型差异的一种有效屏蔽。促使内核可以充分独立于日益发展的设备更新环境之中。向上方面,需要能够面向系统提供可以统一调用的接口,作为运行与用户态的各类型程序则应当能够访问内核功能门户,以便可以让上层应用程序充分独立与内核并实施优化。
(二)内核结构分析
具体到内核本身,其发展历程中也经历了多种结构的演变,从早期的整体式单内核结构到后来的层次式单内核结构再到微内核结构。Unix和Linux都是单内核结构,而Windows XP和Mach属于微内核结构。鉴于操作系统软件的复杂性,内核的结构对操作系统软件的正确性、效率、可扩展性、可移植性等具有重要作用,是“结构决定功能”的典型范例。
整体结构的概念产生于20世纪,但是当时对此类问题的研究相对较少,内核主要被分类在功能模块的范围之中,模块彼此之间则能够通过不加控的方式实施调用。此项结构的主要优势包括结构更加紧密,组合形式也比较便利,系统效率也能够获得明显提升。但是,此类系统结构也具有明显的缺陷,包括调用关系相对更加复杂,在结构性方面表现出一些问题,可移植能力不强等。层次式类型结构之中会对功能模块按照实际功能情况完成调用,并按照次序进行排列,形成多个层次,不同层次之间表现为单向调用方式。此类结构的基本优势是接口较少,操作简单。其中下层功能模块的正确性主要受到上层功能模块的影响。但是,从更加严格的角度出发,则无法进行精准确定。实施严格意义上的分层也将会进一步降低系统效率。除此之外,因为一层之中拥有大量的功能,针对不同层次实施较大水平的增减则将会造成对相邻功能的影响。为此,无法在一定系统基础之中通过增减功能的方式完成操作。微内核认为只有最核心部分的操作系统功能需要运行于内核态。
(三)进程结构分析
进程结构方面主要包括几点内容,第一,内核功能组织以及进程映像逻辑结构。在实际教学阶段,研究者认为一些学生通过对操作系统视为一种相对独立的特殊程序加以学习。实际上,操作系统本身具有一定的特殊性,包括系统运行在内核态下。但是,这个过程中更为重要的问题时,操作系统程序与普通程序之间相一致的是,需要能够获取处理器之后才能够完成相关执行操作。为了可以更好的掌握操作系统程序以及普通程序学习,需要充分理解操作系统内核功能之中的组织模型以及进程影响结构情况。
在分析操作系统程度的过程中,用户程序一般情况下会被应用在用户模式方面,系统功能能否设定为独立进程,则需要根据实际需求情况进行确定。一种早期的组织方式是,操作系统的功能运行在任何进程之外,拥有自己独立的地址空间和运行栈。第二种组织方式是让大部分内核功能在用户进程内执行,将os看成是一组用户进程经常会调用的常用功能的集合。为此,每个进程映像不仅包括用户程序执行所需的环境,还需要包含为执行操作系统内核程序执行所需的代码、数据和堆栈。这一执行模型很好地诠释了进程和程序的关系并非是1对1的。在同一个进程内,可以执行用户程序和操作系统程序,而在不同进程中执行的操作系统程序是相同的(通过共享地址空间共享)。最后一种方式是将大部分操作系统功能也组织成进程,与用户进程一样可被独立调度。这种方式的好处在于一些非关键的操作系统功能可以按照某个优先级和其它进程交错运行,同时,在多处理器环境下,也便于操作系统服务在不同的处理器中运行,从而提高性能。endprint
三、教学环节培养学生的系统结构思维方式
当前阶段,高校开展《操作系统原理》课程的过程中经常会出现学生的错误认知情况。将《操作系统原理》视为是学习算法的课程。因此,需要在未来的教学工作中强化结构概念。操作系统之中的教学人员应当充分了解构建系统结构意识所具有的重要性,不断强化结构概念并在这个过程中积极培养结构思维,从而实现大型计算机整体概念。通常情况下,在开展教学阶段,常规教学方法都采取的是自上至下的原则,也就是对系统的整体性结构进行分析,并介绍局部功能内容,以此提升对局部内容的理性认知,提高局部性能算法。
但是本方法的应用需要在初次介绍整体结构的过程中,学生能够形成一定的感性认知,但是这种效果并不明显。为此,对结构形成的感受也不深刻。本研究中结合实际情况,探究具体方法,以便能够从多角度出发,解决实际问题。第一,通过自上至下的结构分解方式,可以帮助学生形成操作系统结构的认知。第二,结合具体功能讲解,针对系统功能结构进一步强化,促使学生能够更加关注对各要素之间的关联性。第三,针对相对更加重要的结构概念内容,则需要加强不同教学模块支架的交互与融合。如对层次化存储结构在前后章节之中的强化,也包括了进程七态模型等的挂起态、多核cPu进程等相关内容。进程的系统上下文概念同样也能够通过进程映像结构等完成强化。最终,课程之中对主要层次进行讲解之后,可以通过自下而上的形式,對系统整体结构情况进行分析,实施重构。
文件系统本身应当是构建于I/O条件基础上的一种针对上层软件实施的优化设计与操作。虚拟内存属于针对包括主存以及外存方式的访问文件形式。进一步而言,进程则应当是在有效处理资源以及存储资源等方面的一种抽象描述,这个过程就充分形成了操作系统方面的抽象概念。充分依据这个结构关系的重构则能够在完成对软件系统操作的核心讲解之后更进一步对相关内容进行展开。学生就能够对学习过程中的操作系统产生整体认知,完成量质变的转换。
结束语
综上所述,本研究从“结构”的角度出发,探究《操作系统原理》相关课程的核心与关键。教学环节之中应当更加看重对系统所有元素之间的组合与关联性,因此,指引学生了解与掌握系统构造之中的一般规律性,并深入探究系统操作过程中各种存在的结构概念。通过这种方式,实现自上至下的认知与学习,深化学生对系统结构思维的形成。endprint