操作系统论文汇总十篇

时间:2023-02-15 11:46:43

操作系统论文

操作系统论文篇(1)

1.理论性强

该课程教学内容理论性强、概念抽象、涉及知识面广,学生时其整体实现思想和技术往往难以理解,学习时有较大难度,大部分学生有一种畏难情绪。因此学生很容易陷入疲于记忆的状态,忽略了对课程各部分间关系和课程教学目标的把握。因而该课程是计算机专业中教师“最难教”,学生“最难学”的课程之一。

2.学习效果见效不快

很多学生对学后有立竿见影效果的课程兴趣较大,如程序设计语言,学生学会了便很快可以就某个问题编写程序上机运行,颇有成就感;而对诸如操作系统这样原理性强,实验要求高,设计一个操作系统又不现实的课程,一些学生因感觉学习后效应不会立即显现而对课程重视度较低。

二、教学目标

操作系统是目前最复杂、技术含量最高的软件,在计算机专业软、硬件课程的设置上起着承上启下的作用,其中的许多设计思想、技术和算法都可以推广和应用到大型的、复杂的系统设计,以及其他领域。因此,其教学目标应重在培养学生理解和掌握计算机操作系统的基本工作原理、设计技术及设计方法,培养学生开发系统软件和大型应用软件的意识和能力,同时还要让学生了解现代操作系统的新思想、新技术和发展研究动向。

三、课程知识体系设计

鉴于以上课程教学难点,教师若能从繁杂抽象的理论中理出一个脉络清晰的课程知识体系呈现给学生,将为有效达到教学目标要求起到事半功倍的作用。该课程教学内容有纵、横两条主线,纵线主要指操作系统各功能的设计思想、处理机制,横线主要指功能实现的具体技术方法、不同环境下的实现差异。因此,整个课程知识体系可按纵、横两条线展开,遵循知识、能力、素质协调发展的原则,从知识模块、知识单元和知识点3个层次来设计。其中知识模块代表特定学科子领域,可包括若干知识单元;知识单元代表知识模块中的不同方向,可包括若干知识点;知识点代表知识模块中单独的主题,是教学活动中传递教学信息的基本单元。

1.纵向功能线

本文的纵向功能线是从资源管理功能出发来设计,通过基于操作资源管理功能的知识建构,学生能明确所学内容在知识体系中的层次、位置、关系。此处为使结构更清晰,按操作系统资源管理功能出发的纵向功能线细化为进程管理、处理机管理、存储器管理、设备管理、文件管理和用户接口六个知识模块,由此设计的纵向功能线知识结构如下:

(1)进程管理知识模块包括进程概念、进程调度、进程互斥、进程同步、进程通信、进程死锁各知识单元。进程概念包含进程特征、进程状态与转换、进程控制各知识点;进程调度包含调度时机、调度算法、调度过程各知识点;进程互斥包含与时间有关的错误、临界资源与临界区、临界区使用原则、临界区互斥访问的解决途径、临界区互斥访问的解决途径各知识点;进程同步包含信号量同步机制、生产者与消费者问题、读者与写者问题、哲学家进餐问题各知识点;进程通信包含忙等待策略、睡眠和唤醒策略、消息传递策略各知识点;进程死锁包含产生原因、必要条件、解决途径各知识点。

(2)处理机管理知识模块包括分级调度、调度算法、算法评价各知识单元。分级调度包含作业调度、交换调度、进程调度各知识点;调度算法包含作业调度算法、进程调度算法各知识点;算法评价包含作业调度算法评价、进程调度算法评价各知识点。

(3)存储器管理知识模块包括存储管理功能、存储管理方案各知识单元。存储管理功能包含内存分配与回收、地址映射、内存共享、内存保护、内存扩充各知识点;存储管理方案包含分区存储管理、页式存储管理、段式存储管理、段页式存储管理各知识点。

(4)设备管理知识模块包括数据传送控制方式、并行技术各知识单元。数据传送控制方式包含程序直接控制方式、中断方式、DMA方式、通道控制方式各知识点;并行技术包含通道技术、中断技术、缓冲技术、分配技术、虚拟技术各知识点。

(5)文件管理知识模块包括文件结构、文件存储空间管理、文件目录管理、文件存取控制各知识单元。文件结构包含文件逻辑结构与文件存取、文件物理结构与存储设备各知识点;文件存储空间管理包含空闲文件目录、空闲块链、位示图各知识点;文件目录管理包含文件目录形式、文件共享与保护、目录检索各知识点;文件存取控制包含文件存取控制方法。

(6)用户管理知识模块包括命令接口和系统调用知识单元。命令接口包含脱机控制命令、联机控制命令知识点;系统调用包含设备管理类命令、文件管理类命令、进程管理类命令、存储管理类命令、线程管理类命令各知识点。

2.横向技术线

操作系统知识点看似繁杂,但究其原理,在对不同系统资源功能进行管理时,所采取的策略和方法有很多是相同的。因此通过对重要方法和机制进行贯穿式的横向技术线,可使被条块分割的教学内容有效关联起来;通过横纵交错的连接,可使看似离散的知识有稳固而紧密衔接的结构。从操作系统四种重要实现技术出发的横向技术线包括中断技术、共享技术、虚拟技术和缓冲技术。当然,有些技术在其它相关课程中已有介绍,也可看出其在整个计算机系统中的重要程度,由此设计横向技术线知识结构如下:

(1)中断技术知识模块是实现程序并发执行与设备并行操作的基础,它包括中断类型、中断优先级、中断事件各知识单元。中断类型知识单元包括外中断、内中断知识点;中断优先级知识点在不同的系统中有不同的规定;中断事件知识单元包括进程创建与撤消、进程阻塞与唤醒、分时时间片、缺页中断与缺段中断、I/O操作、文件操作各知识点。

(2)共享技术知识模块是提高资源利用率的必然途径,它包括处理机共享、存储共享、设备共享、文件共享各知识单元。处理机共享包含进程的并发执行;存储共享包含外存储器共享、内存储器共享知识点;设备共享包含SPOOLing系统;文件共享包含便于共享的文件目录。:

(3)虚拟技术知识模块是把一个物理实体变为若干面向用户的逻辑单元,使资源的用户使用与系统管理相分离,从而提高资源利用率和安全性方,它包括虚拟处理机、虚拟存储器、虚拟存储器方法、虚拟设备、虚拟文件各知识单元。虚拟处理机包含多进程管理;虚拟存储器包含地址转换、中断处理过程、置换知识点;虚拟存储器方法包含页式管理、段式管理、段页式管理各知识点;虚拟设备包含设备共享;虚拟文件包含文件共享。

(4)缓冲技术知识模块是异步技术的实现前提,可大大提高相关资源的并行操作程度,它包括存储管理缓冲技术、设备管理缓冲技术、文件管理缓冲技术各知识单元。存储管理缓冲技术包含快表;设备管理缓冲技术包含硬缓冲、软缓冲、SPOOLing系统中的输入/输出井知识点;文件管理缓冲技术包含记录成组技术、文件表的打开。

四、课程知识体系操作

知识体系的设计显然要有必要的操作作为支持才能使其与学习者间进行互动,形成交流并达到知识的内化。依据上述的知识体系设计,该课程教学可采用以下两个步骤进行操作,一是以“核心拓展”的方式进行纵向功能学习,二是以“小组学习和共同学习相结合”方式进行横向技术综合学习。

“核心拓展”方式中核心指六大知识模块,它们也是该课程的核心内容,教师应结合具体系统的具体实例以讲授方式进行,讲授过程中对于一些关键算法一定要以具体实例加以讲解,不能照本宣科。“小组学习和共同学习相结合”方式可采用将多次出现的具体技术单独提出来,讨论哪些功能应用了该技术。分小组,一个小组负责总结一项技术,然后以小组宣讲共同讨论的方式来加深技术对功能的应用。

通过这两个步骤的操作,整个课程的知识体系便可以横、纵两条线的形式清晰地呈现在学生面前,为培养学生从离散到系统性的学习和思维习惯创造条件。

操作系统论文篇(2)

2《计算机操作系统》实践教学改革措施

2.1化难为易,从主观和客观两方面改进

2.1.1增强学生的主动性

首先,注重学科总动员。在实践课刚开始时,教师要通过实例为学生讲解计算机操作系统实践学习的重要性,让学生明确实践教学对本课程的理论学习和将来就业后的实际应用,都产生重大的影响作用。学生从新课伊始,就树立了正确的目标和学习的方向,有利于将来学习中有针对性的加强编程和动手能力。其次,教师要结合自身经验,列举以前学生的学习案例,将操作系统实践学习的特点以及重难点告诉学生,同时要进行学习方法的传授,让学生能根据自己的学习基础和能力,有计划的进行课前预习和资料的准备,为将来课堂效果的提升奠定良好基础。再次,在实践课堂上,教师要避免反复强调教学内容的重要,应该在安排作业的时候,有目的的对学生进行启发式教学,例如从应用或工程实践的角度,运用案例的形式对课堂所讲的实践教学内容进行多层次、全方位描述,挑战学生的思维,增加竞争意识和学习主动性。

2.1.2在客观上,化难为易

教师在实践教学中,要充分发挥主导者和点拨者的重要作用,能针对学生的学习难点和典型问题进行讲解,在合理设问和启发中,调动学生的学习自觉性,开发学生的思维能力。首先,分层次设计实验把学习者划分为:终端用户、程序员和系统设计者。五类实验:基础性实验、应用性实验、综合性实验、设计性实验和创新性实验。基础性实验是最简单的实验,目的是使学生熟悉某种操作系统的使用与配置。允许学生选择自已感兴趣的操作系统,为便于后续实验的开展建议选择Linux操作系统;应用性实验的难度略高于基础型实验,要求学生模拟实现一些经典的操作系统算法;便于学生理解操作系统原理和经典算法;综合性实验要求学生研究学习现代主流操作系统。其次,帮助学生快速入门以实验“模拟设计页面调度”为例:模拟设计页面调度实验目的,加深对虚拟存储管理算法的理解。实验内容:(a)模拟页式虚拟存储管理中的硬件地址转换和缺页中断;(b)用C语言设计一个算法,模拟页面调度,采用FIFO算法实现缺页中断;(c)程序应能显示或打印物理地址及是否缺页,并计算出缺页中断率,分别采用FIFO算法和LRU算法进行比较,观察并分析结果。再次,保护学生学习热情教师要保护学生的学习积极性,学生遇到疑难问题或者不能独立解决的疑惑,教师应对给予知识上的补充和学法上的指点。教师可以鼓励学生科学运用网络资源,自行到网络上进行知识更新和充实,搜索知识、观点、技术等,参加网上论坛或者班级学习群讨论留言。

2.2由浅入深,多角度多层次学习掌握Linux系统

教学时可以选择Linux作为实验操作系统,因为许多学生对它都很陌生,做实验时必须遵循认知规律,要由浅入深、循序渐进的操作。首先,了解Linux系统的基本操作流程,对操作员接口和程序员接口有所掌握。学生在这一环节中,可以比照早已熟练的Windows操作系统的一系列功能,自行领悟Linux操作系统。其次,了解操作系统的基本步骤和条件后,步入应用性实验环节,进行编程模拟,学会操作系统的部分功能。当学生学习兴趣提高,有了一定基础后,可以逐渐增加实验内容的难度,让学生实现操作系统功能的阶梯式进步,最后达到熟练掌握和应用,体验获得知识和能力的成就感。学生在这个过程中,增强了团队精神,锻炼了领导力和服从力,为将来走向工作岗位提升了综合素质。

2.3优化考核方式,加强实践教学质量的监控

操作系统论文篇(3)

1.1CDIO环节之设计——设计教学方案这一环节要求提高学生的感性认识,为学生主动建构打下基础。教师可按照从感性到理性的原则安排课程教学,结合实际案例组织教学,提高学生学习兴趣,帮助学生实现主动建构;利用多媒体教学手段和多种形式的教学资源,在各个教学环节中保护学生的积极性;创造交互式的学习环境,使学生的主动建构得以保障;开发网络化教学平台,为学生创造一个交互式的学习环境,能满足个性化学习的要求;注重能力培养,使学生的主动建构得以发展。教师在授课过程中应该合理组织教学流程,精心策划教学方案,可以“内容复习—新课引入—主题教学—总结回顾—课堂练习”作为主线开展教学。在每一章中引入该章内容导读,概述该章主要内容及教学要求,让学生先从整体上了解该章的知识框架,清楚地认识到该章的重、难点所在。在某一具体章节的教学中,教师可将微格教学思想及微格教学5个环节(导入、板书、提问、讲解、课结)很好地融入该门课程。教师需要构建和谐的课堂教学氛围,将教学过程视为是教师有目的、有计划引导学生在掌握系统的科学文化基础知识和形成基本技能的基础上,促进学生身心全面发展的过程。教学过程是学生在教师指导下的一种积极主动认知过程,是师生的双向交流与合作过程。教师应重视课堂提问,以操作系统中的一些基础理论或简单应用为提问内容,可以请学生参与回答,也可以自问自答,这样既能帮助巩固知识,又能活跃课堂气氛并将学生的学习成效及时反馈给任课教师。

1.2CDIO环节之实现

1)课堂表达。考虑到成教生的自身特点,教师在该门课程教学中应尽量做到用语通俗易懂,将一些操作系统中本身较为抽象的术语及定义转变为更为形象化及生活化的语言。对于某些基本概念,教材的定义都非常严谨而规范,但是教师可以通过自己的理解将其简化,不要求学生死记硬背,而是知其意,概其义,如讲到进程与程序之间的关系时,教师可以这样描述:程序好比一份菜谱,是静态的,而进程就像一位厨师按照菜谱炒菜的过程,是运行的、动态的,二者相辅相成,进程存在的目的就是为了执行程序,而程序又是以进程的形式存在以接受操作系统的调度。再以存储管理为例,学生通常不容易建立起存储管理的过程思维图,教师可将其与生活中的实际结合起来进行阐述。操作系统的存储管理如同一个大农场主管理着一个大庄园,当有农户需要租用田地时,农场主就分配一块地给他种(用户区分配),等到地里长出了果实(结果出来后),农场主还得收回这块地(存储空间回收)。为了管好这片田地,农场主还要管好庄园的门,凡是要进去种地的,都得由他根据申请人的需要让其到位置确定的实际田地干活(把逻辑地址转换成物理地址)。庄园里还有一些大家可以共同使用的地方,如农场主的花园、工具房等,大家可以进去,也可以使用,但是不许改变任何现有的东西,还有每个农户只能在自己的地里耕种,如果有人越权侵犯别人的领土就要受到惩罚享和保护)。当然,再大的地也不够多,农场主为了多赚些钱,当把所有的地都租出去的时候,他会想办法把有些种田人暂时不种的那块地里的东西连地皮一起挖出来,放到仓库里堆着,然后把地腾出来租给别人种(这就是“虚拟存储”)。通过这样一个生活中的实例,教师可以更加形象、直观地让学生理解存储管理的过程及相关定义,再以此为基础分析其工作原理,让学生由感性认识上升为理性认识,这也是一个知识逐步升华的过程。

2)算法演示。操作系统课程中有一些重要的算法,教材中一般会给出相关算法的思想及应用举例,那么如何能更生动地分析算法的执行过程呢?笔者认为可以设计基于Flash的算法演示动画,如进程状态变迁图、银行家算法、进程死锁、地址转换、页面调度等一系列算法均可以由教师设计成Flas,通过其动态演示效果分析算法的思想及执行过程,帮助学生更好地理解算法原理,进而达到算法应用的目的。教师在算法演示中应遵循循序渐进的原则,首先介绍算法思想,然后由此推导出算法模型及相关公式,再过渡到分步骤的动态演示,期间应设置暂停按钮,允许以交互式的方式控制算法的执行。

1.3CDIO环节之运作

1)搭建实验教学平台。对于某些基础性的重要算法,还可结合算法思想编程实现并在虚拟机环境下安装相应版本的操作系统加以运行,如并发过程中的进程创建、进程通信,文件管理中虚拟文件系统的创建,设备管理中驱动程序的工作过程等。学习操作系统课程的目的是为了理解操作系统的基本原理,进而过渡到使用、维护并具备一定的开发能力,因此实践环节尤为重要,教师可结合CDIO理念中提出的“做中学”及“基于项目教学”思想,按照CDIO大纲要求,努力培养学生团队合作和人际沟通的能力。教师可以设置若干个综合性实验,让学生以小组合作的形式完成实验项目,将任务划分为方案设计、代码调试、报告填写,小组内的成员可以自行决定其扮演的角色。每个小组根据事先计划完成实验项目的开发,最终形成一份项目总结报告并制作PPT文稿,分组进行演示答辩。这样既能够让学生根据自己的特长参与到项目实训中,又增强了他们的团队协作能力,同时鉴于成教生的编程功底较弱,因此整个实验教学平台的侧重点在于程序的运行调试上,教师在项目执行的中期可以针对较复杂的实验项目给出一部分实验源代码,各小组只需将空缺代码补齐即可运行,让学生着重体会程序的运行效果并由此联系自己在使用操作系统过程中对诸如此类功能的设置等。这样将书中原理过渡到实际应用,才能让学生真正理解操作系统的5大功能如何发挥作用。

2)构建辅助学习平台。教师可利用开发设计的辅助学习平台为学生提供交流学习的空间。结合操作系统课程特点开发相应的网络学习平台是新形势下课程发展的必然趋势。成教生基于自身特点,可能由于工作原因不能兼顾每一次的课堂教学,如果缺席了相关内容的课堂教学又没有及时补救,那么就会造成知识脱节,因此利用网络教学平台将使学生的学习不再仅局限于课堂内,学习过程不再受时间、空间的限制,也为学生的自主学习创造了条件,充分体现CDIO的“做中学”。为典型的辅助学习平台架构。观察该图的各个模块可以发现,通过网络答疑能及时解决学生提出的问题,也能增强师生间的交流与互动。在“问题讨论”区中,学习者之间也可以互动合作,分享学习过程中的经验体会,推荐优秀的学习资源,这种方式能将大家凝聚为一个团队,相互推动,相互进步。在“课程学习”模块中,学生可以自主选择“在线练习”或“在线测试”对所学知识进行自我检测,以此发现自己学习中的不足并实时补救。

2效果评价

在面向成人教育的操作系统课程教学中,将CDIO教学理念引入其中,充分考虑学生的主动性及能动性,令学生的自主学习能力、团队协作能力及综合运用知识能力得到锻炼与提升,学习效果良好,自考合格率有较大提高,学生对课程的教学评定为优秀。我们对近3年来学习该门课程学生的情况进行对比,通过汇总学生学习情况数据,发现基于CDIO模式的课程教学效果理想,学生掌握了更多的理论知识,提升了实践能力,提高了自我认可度和对授课教师的认可度。操作系统课程教学情况汇

操作系统论文篇(4)

自软件开发到现在已有四十多年历史了,在整个软件发展历史过程中,已经取得了划时代的成就,为了更好的理解计算机软件是计算机的灵魂并了解她的今天,这里让我们一起来回顾她的昨天。

我们将悠久的计算机软件历史分成三个阶段:

开创阶段:1955年到1965年

稳定阶段:1965年到1985年

发展阶段:1985年到现在

开创阶段

计算机在1946年出现时,占地2百余平方米,用电数千瓦,价值百万美元,而运行速度只有每秒千次,但它却为破译密码和武器弹道运算立了大功。六十年代大型计算机已发展到每秒百万次以上,能够进行快速复杂的计算,随着科研、金融和政府部门的需要而逐步形成了较大的计算机市场。

而计算机软件历史真正开始是在美国和欧洲的实验室里,大多数研究结果也产生于实验室。它们多数来自于学术界,其余产生于政府和私人公司。

在1955年到1965年这个期间,运算速度越来越快、价格越来越便宜的新计算机不断涌现,软件工作人员就需要不断针对不同计算机写出新的软件。这种变化速度令软件人员应接不暇。

在此阶段,计算机硬件向着专门用途发展,科学与商业领域需要的是完全不同的机器硬件。商业计算机具有变字长的特性,即有“清字标记”和“置字标记”,指令集为十进制。而科学计算机使用的是固定字长,当时定36位为一个字,而不是采用二进制计算。这种不同用途的机器使用不同字长,这给编程带来难以想象的困难。

频繁重写相同的软件触发了另一思想——软件移植,工业界中的软件研究人员试图将一台机器上汇编语言自动移植到另一台,但是却失败了。原因是60%或80%代码较容易移植,而余下的40%或20%必须人工移植,又是较复杂的代码,因此非常困难。多年来仍然不能完全解决问题,直到高级语言的产生。最早的FORTRAN语言在五十年代中期诞生的,五十年代后期出现了第一版COBOL语言,而ALGOL语言产生于六十年代早期。当时,高级语言不能被编制人员所接受,他们认为真正的编程人员应当使用汇编语言。

之后,软件业从计算机工业中独立出来,成为一枝新秀。那时,硬件厂商开放了他们的系统软件(由于没有这种开放,不能进一步推销他们的产品),有几个公司开始提供定制软件的服务,然而那时没有专门经销软件的公司。由于软件免费,用户相互赠送,使软件不断重用与推广,并鼓励共享软件的发展。例如,IBM科学用户组织SHARE提供了软件重用的目录清单,包含了三角函数分类和合并计算的多个数学程序,并对进入了SHARE目录中的软件产品,能给予此领域的最高荣誉。

60年代初期,学术上还没有计算学科、计算机科学和信息系统,然而却在实践中产生了以后称为“软件工程”的萌芽。软件工作者开始学习模块编程的方法,并涵盖了基本数据结构有关的子程序,从而使其易访问。现在,人们称为数据提取,并进一步拓宽到面向目标,但是那时的软件人员就已经意识到它的思想与价值。

此阶段,曾经出现过软件危机。即软件方面投入的资金和人力无法控制,软件开发完成的时间无法确定,软件的可靠性等等。例如,1962年7月22日美国飞往金星的火箭控制系统中的指令,DO5I=1,3误写成DO5I=1.3,使火箭偏离轨道,被迫炸毁。

此阶段是激动人心的年代,随着计算机硬件以令人生畏和惊奇的快节奏发展,计算机软件在计算机业中越来越占据着重要的地位,她开创了自己的事业,从计算机业中独立出来。

稳定阶段

这期间,出现了IBM等计算机大公司,是大型机硬件导向占主导地位的阶段。此时计算机成为专业人员使用的专门设备,普通老百姓用不了,也用不起。年产量不足数万台,市场有限,这样IBM360计算机将软件工业带入了稳定发展阶段。

IBM360采用了系列机的思想,开创了CISC时代(复杂指令系统计算机),目的能使指令系统兼容。新型机或高档机的指令系统在原有机型上只能扩充而不能减少任何一条指令,以达到软件兼容的目的,这样就导致日趋庞大的指令系统使计算机硬件的研制周期变长、运行速度慢、可靠性差、难以调试和维护。为了改进,提出了RISC(精简指令系统计算机)技术。RISC技术使指令数量大大减少,再加上一些其他措施(如指令系统面向寄存器,使数据能直接存储),从而大大减少指令执行所需要的周期数,极大的提高了计算机的计算速度。同时IBM360机为软件领域带来了重要发展。它使科学与商业应用合二为一,且同时使用十进制和二进制两种算法,它不再有讨厌的变字长。

随后,又产生了笨重的工作控制语言(JCL),使程序员只要把卡片塞进读卡机,然后按“启动”就可以运行程序。JCL要求用全新的语言编写程序,它能告诉计算机和操作系统按人的需求做相应工作。JCL太繁琐,这也许因为它包括了科学和商务所需的一切服务功能。然而JCL是360机上最不受欢迎的程序语言。

随着360机汇集科学和商务应用在一台计算机上,IBM也希望将所有的计算机语言合成一种语言。PL/1就这样诞生了,它不仅包含科学计算FORTARN和商务计算COBOL语言的功能,而且还具有新生语言ALGOL的功能。

除了IBM360带来的软件发展外,在稳定阶段,形成了软件的独立经销。几个敢于冒险的软件商开始销售他们的软件产品。这在当时极其不易,因为硬件厂商为阻碍软件发展,防止软件分离以形成独立行业,故意将软件的价格压得很低,无利润可赚。随着软件领域的稳定发展和新软件产品的问世,它们逐渐成为公司和市场的商品,价值连城。软件维护与更新也成为一项日益重要的工作。从而形成了计算机软件市场经济。

稳定阶段中开始出现了计算机学科的学术讨论。第一个计算机科学程序在六十年代晚期奠基,不久以后又编制了第一个管理信息系统程序。当时计算机软件工程还没有从计算机学科中分离出来,直到微型计算机年代才独立成为一门学科。尽管当时没有形成学科,然而软件工程研究一直在进行,重点聚集在计算机语言的问题上。

在此阶段,一些计算机科学家大力宣传他们引入的新思想。人工智能就是第一个竭力宣扬的学科,即称之为“有知觉”的机器,可以模仿人类大脑的功能,并期望代替人类大脑去做任何事情。

随后又出现了“控制领域”的议题。反控制反垄断的战斗打响了,美国司法部门IBM公司,声称它发展太快,且正在垄断计算机行业。当时,许多人将硬件工业比喻为“白雪公主和七个小矮人”,这里IBM是白雪公主,其他计算机硬件小公司是七个小矮人。例如RGA、GE和Xeroe等等公司。这些小公司逐渐萎缩,直到从计算机行业中消失。标准化组织也成为当时反控制反垄断的急先锋。它坚持只有统一计算机标准,各个公司才能参与并达到公平竞争。

同时,软件商与硬件商也开始竞争。硬件商努力保持软件的低价,以阻碍软件行业的形成。但是无论怎样阻挡,总有一些软件商脱颖而出,成为胜利的娇娇者。

此阶段由于计算机硬件变化节奏缓慢一些,属于较平稳的年代,计算机软件随着平稳发展,并确立软件在市场的重要地位,成为商品并逐渐变得被人们理解和接收。

发展阶段

此阶段是再一次激动人心年代,计算机已经普及和无处不有,同时软件业在计算机行业成为不可缺少部分并取得了辉煌胜利。

这个阶段是软件发展过程中最重要的时期。因为PC机和工作站以半年更新一代的令人目不暇接的速度,势不可挡地入侵小型机、中型机甚至大型机领域,从而使计算机无处不在,计算机走出了象牙塔,走进了平常百姓家庭,走进了普通人办公室。在家里、办公室、银行、邮局等生活工作的周围,处处可见计算机的应用业绩,普及流行速度极快,蓬勃向前。

过去存在的大量问题被解决了。老的JCL问题已经由友好用户、友好程序界面解决。图形用户界面(GUI)普及与流行,业已成为八十年代计算机领域最伟大的功绩。以前的FORTRAN和COBOL语言都没能解决用户界面的友好问题,而可视化软件编程才改变了这一现状。

由于VLSI的迅速发展,RISC的控制器又很简单,这就使RISC能集成在一个芯片上。CISC控制器需占芯片面积50%以上,而RISC的控制器仅占6-10%,这使RISC芯片具有极高的性能。到九十年代RISC技术被引入了到PC机内,使同样功能的计算机成本只有CISC的一半不到。随着VLSI进一步发展,已使巨型机上使用的并行处理技术能融入到RISC中。一方面采用新材料、新工艺,进一步提高主频,另一方面采用了超级流水线技术、并行流水线技术和超长指令字VLIM技术,极大地提高了RISC芯片的并行处理能力,使RISC进入了具有划时代的时期。

软件作用和价值牢固地树立起来了。人工智能、知识工程、专家系统以及神经网络领域的研究得以发展与深化。软件市场在世界范围内比较快的速度增长,在美国犹他州已出现以软件为主的第二高技术产业区。目前软件的发展速度已超过硬件产业,占信息产业的主导地位。美国垄断世界软件市场的格局,一时很难发生变化。微软公司软件巨头比尔.盖茨在五年前已成为美国首富,现在又是世界首富。随着市场分割,过去反控制反垄断的竞争也被分解了。IBM公司成为大型机之首;Intel公司是计算机芯片之王,也可以称为计算机硬件之王;Microsoft公司成为微机软件之冠。但是希望成为大型机软件之王的竞争仍然在继续。

软件特性体现为:软件进入结构化生产时期,以结构化分析和设计,结构化评审,结构化程序设计以及结构化测试为特征;从八十年代中期开始,软件生产进入以过程为中心的开发阶段;从1995年开始,逐步进入以软件过程,面向对象和构件重用等技术为基础的软件工业化生产时代。

此阶段软件业绩为:

1)软件重用技术

软件重用的目的是使非结构化、非标准化程序变为结构化、标准化,并形成大量能重用的计算机构件和模块。软件重用技术使软件的开发基本上变成了搭积木,把需要的对象和功能模块拼起来即可。它节省了大量的人力与物力,减少了重复开发。这种技术可以应用在数据库管理和信息系统管理上,MicrosoftAccess等软件均采用此软件技术,它们集成了大量应用的基本构件和模块便于重用。

只有可维护性软件才有可能最大限度地重用,而重用部分越多,维护成本越低,效率就越高。不可维护性到可维护性软件的重构是维护方法学的关键。最大限度地重用现存软件是软件维护方法学的重要思想原则。可重用是可维护性的基本属性和最大特征。

就软件重用而言,可有四个层次的重用:

(1)开发过程重用

主要指开发规范、开发方法及工具、软件标准等的重用,也称为开发支持环境重用。

(2)软件构件重用

这里软件构件指文档、程序及数据。应该将软件构件可重用性作为主要设计指导思想。

(3)用户业务知识重用

用户现存系统的业务处理过程、特定专业领域的需求特征等知识的重用。

(4)市场知识重用

应用领域标准、行业标准、市场规律知识的重用。

2)面向对象技术

八十年代中期以来,各个领域的发展和变化越来越快,对应用软件不断提出新的功能要求,这就使以功能为基础的软件体系改动较大,甚至推倒重来。八十年代末发现,使用面向对象技术能极大的提高软件的可维护性。而且它还有很多其他的优点,例如提高软件开发率,提高软件的可靠性和安全性等等。面向对象技术获得了极大欢迎,终于成为九十年代软件界最大的热点。随着发展,面向对象技术形成了OOP(面向对象编程)、OOD(面向对象设计)、OOA(面向对象分析),成为完整的软件开发方法学。

现实世界中的事物抽象到问题空间就称为对象。在面向对象技术中,对象被定义为“对一组信息和在其上的操作”,其中的信息就是数据,它反映的是对象的属性状态,操作则是对对象的处理。面向对象系统就是由对象组成的复杂系统,系统中所有对象的状态共同构成系统的状态,对象总是从一个初始状态出发,在对象之间的相互作用过程中不断改变着自身的状态。一个对象请求另一个对象执行某一处理或回答某些信息的要求称为“消息”,对象与对象之间的相互作用就是通过消息来实现的。

面向对象技术的最大优点就是软件的可维护性好。

3)集成工具与CASE技术

今天,已将过去单个的工具集成在一个系统中,用于软件开发,形成了集成工具。例如,我们经常使用的字处理工具,它只有一个工具菜单,但是却包含拼写检查、语法检查、词库和字词计数等功能。我们期待用于软件开发的系统收集了所有必需的工具,它必须支持文本和图像,也含有相关的数据库,能自动移植并进行计算机低层设计等。编程系统不仅含有编译程序,还应该支持编辑、调试与测试,最好能支持程序建立并在建立过程中检测它们的结构。

而CASE技术,即称谓“支持软件工程方法学的计算机辅助手段”。它为实现从软件工程诞生起就面临着如何组织人员进行集体作业和如何逐步代替人进行编程的两大任务。而且首先是解决前者———确定有次序、有效率、科学的工程作业方法,然后才能一步步用计算机取代各工程阶段的人工编程。软件工程的最终目的就在于软件自动化。

CASE技术有两个突出特点,使开发支持工具与开发方法学统一和结合起来,通过实现分析、设计、程序开发与维护的自动化,提高整个软件开发工程的效率。如果方法驱动器理论得以实现,软件自动化将成为现实。尽管目前真正实现的还仅限于方法指导系统,但CASE的迅速发展仍超出了辅助软件工程的范围。

综上所述,CASE的发展有待于软件工程方法的发展。它不仅给传统软件工程方法以新生,也推动着各种软件工程方法的演变、合并和淘汰,为新软件工程方法理论实用化开辟着道路。所以今后的软件工程应是“方法学+CASE技术”,两者共同协助开发人员控制和管理软件。当方法驱动器理论变为现实后,CASE与软件自动化可能会变成同义词。虽然今天的软件自动化尚不完全,但为了区别传统软件工程,我们以更明确的CASE软件工程概念来表述CASE与软件工程方法学的结合。

4)图形用户界面

用户界面一般是由菜单窗口和对话框等元素构成,它为用户提供了一个使用软件交互过程的环境,它提高了软件的使用效率,灵活便捷,并且易于修改维护程序,充分体现了“所见即所得”图形界面的现代软件设计风格,使用户能以简单自然的方式与软件系统交流信息;提供对键盘及鼠标两种输入设备的双重支持;引导用户正确、快速、方便地使用软件系统;易学易懂,尽可能地减少用户必须记忆的信息。

八十年代图形技术有了迅速的发展,出现了不少优秀的图形软件工具,例如,X-Windows、MicrosoftWindows和MacintoshWindows都是建立在图形用户界面的技术上,他们提供了图形交互所需的各种手段与方法。

AutoCAD是又一个优秀的图形软件工具。它提供了图形显示控制、图形编辑和存储以及三维绘图、三维动态显示、阴影与透视等功能。随着图形用户界面的成功,不少高级语言也增加了图形功能,使这种可视化编程日益广泛与流行。

5)多媒体技术

它是曾经被炒得沸沸扬扬的话题,也是计算机科学在九十年代的一个热点。多媒体技术是将文字、声音、图形、视频图象集成在一起的技术。它包括多媒体计算机原理、多媒体数据库、多媒体通信和多媒体表现技术等等。它的一个重要方面是将图像、图形、声音、文字等集成一体,再按1比10或1比30压缩比进行图象数据压缩,最后以高质量再现给用户。

由于多媒体技术提供了更多的交互手段,给人以更多的方便,所以有着极其广阔的应用前景,如电视、电子游戏、电子报刊、电视会议等等。正因为如此,多媒体技术不仅是计算机科学的热点,而且也是国民经济以及社会生活许多领域的热点。

然而在整个计算机发展历史过程中,软件领域仍然存在一些问题,相对于微处理器芯片和内存设备而言,计算机软件只是在不断发展而没有进行大的改革。例如,编程人员都知道,自从第一台IBM和第一个Intel电子芯片问世以来,硬件结构的软件部分──指令集和中断结构就没有发生大的变化。在程序设计语言中也没有大的变革,现在用得最多的语言仍然是十五年前C和C++,甚至是四十年前的FORTRAN和COBOL语言。第四代语言并没有达到某些人预先声称“无需程序员的编程”的功能。整个软件领域发展限制在一个应用领域──数据库上。

不过也有一些希望的象征。面向对象程序设计是一项新的技术,前景看好,它以一种完全不同方法来构造软件;客户/服务器技术和Internet/Intranet技术,它们大大地推动了软件行业的改革。Internet的TCP/IP协议使成千上万个不同的操作系统和应用程序能相互通信,使得网络访问容易,浏览众多的数据库和站点信息,从而产生了较大经济效益和社会效益。当谈起计算机软件的现代历史,Internet/Intranet将作为人-机通信原理的里程碑,而WWW、HTML、VRM和Java将是这个里程碑的组成部分。

操作系统论文篇(5)

2安全域隔离

(1)TEE隔离iOS在推出TOUCHID功能的同时也推出了SecureEnclave安全域,SecureEnclave是苹果A7及以上主处理器的协处理器,其自身具有微操作系统,与主处理器共享加密RAM,通过中断与主处理器通信,操作系统借助它实现指纹特征数据、UID和GID密钥等需高安全级别关键数据的存储,其在架构上与TEE相似。TEE系统架构标准由智能卡及终端安全的标准组织GlobalPlatform,它提出了在原有硬件和软件的基础上,隔离出可信执行环境TEE(TrustedExecutionEnvironment)和富执行环境REE(RichExecutionEnvironment),其中TEE用于安装、存储和保护可信应用(TA),而REE用于安装、存储其它的应用。TEE具有自身的操作系统,与REE环境中的操作系统(如iOS、Android)相隔离。REE中的授权应用,通过驱动程序才能与TEE中的驱动程序通信,不可直接访问TEE的资源。TEE还可具备可信用户界面(TUI),为一些关键的屏幕显示和交互提供了安全保障。图3为TEE系统架构示意图。TEE在实际应用中也存在一些问题与缺点:TEE的硬件隔离主要体现在对CPU资源的分时或分核隔离、RAM资源和存储资源的寻址隔离等,物理器件上仍然与REE环境共享,实质上只是芯片内的软件调度隔离,因此不具备较高的防篡改能力。同时,TEE仍存在认证的问题,CC(信息技术安全评价通用准则)组织的EAL(评估保证级别)等级认证仍在进行中。针对TEE架构的移动平台攻击包括:1)芯片攻击利用JTAG调试接口对MMU(内存管理单元)处理器单元重新编程,修改RAM及存储的寻址范围,以获得相应数据的访问权限。利用物理探针在SoC芯片的数据总线上进行信号窃听。2)共享资源攻击如果REE环境中的非法代码能共享访问与TEE相同的CPU或RAM资源,那么TEE就存在受到共享资源攻击的风险。3)系统漏洞攻击在智能手机设备上发现了TEE内存访问控制的漏洞。Bootloader存在设计漏洞,可用于系统非法提权。整数溢出会给TEE的运行带来风险。在安全启动代码中存在证书处理或签名有效期的漏洞,允许黑客插入恶意代码。4)入侵式攻击篡改代码签名机制可允许黑客插入恶意代码。(2)SE隔离SIMallicance组织提出了基于Java语言的OpenMobileAPI机卡通信接口,使得运行于智能手机操作系统上的应用可通过操作系统提供OpenMobileAPI接口,使用ISO7816协议与SE安全单元中的Applet应用通信,现主要应用于Android系统。SE是具有防物理攻击的高安全性的芯片,内含独立的CPU、RAM、FLASH和操作系统,SE可存储密钥等关键数据信息,SE中的Applet应用可进行各种加解密算法的运算。主流SE芯片厂家通过了CC组织的EAL5+安全认证,这是目前较为安全的系统隔离方案。由于SE自身不具备UI界面,需借助上层操作系统(即REE),用户输入的PIN码等仍有被截获的风险。由于Android系统的开源特性,黑客可对操作系统中安全规则检查模块代码进行修改、编译并向终端重新刷入更改的模块,使得非授权应用可直接与SE中的Applet通信,为终端安全带来极大的风险。

3安全解决方案建议

REE+TEE方案或REE+SE方案在一定程度上提升了终端系统的安全性,但仍然存在一定的缺陷,难以抵挡高级别的攻击。以下针对运营商的具体情况给出一些建议:(1)架构方面:建议SE不直接与REE对接,而是与TEE的TrustedKernal对接,REE对SE的访问,可通过TEE进行,即REE+TEE+SE方案。(2)关键信息存储方面:原存储于TEE中的密钥、密码等关键信息,可转移放至SE中,借助SE的抗攻击能力,对关键信息实施保护。(3)关键运算载体:大数据量的加解密预算,如对称加解密运算等,建议由TEE中TA应用负责,借助TEE丰富的运算和内存资源保障响应性能;小数据量的加解密运算,如数字签名等,建议由SE中的Applet应用负责。(4)实施建议:电信运营商的SIM卡是现成的SE资源,且具有成熟的TSM后台对其管理,终端TEE可通过ISO7816接口与SIM卡SE进行对接,把SIM卡SE作为可信设备,从而构建出软件+硬件的整套安全解决方案。

操作系统论文篇(6)

远景是要回答:企业将成为、想成为一个什么样的企业?经营战略则是实现远景的策略,人力资源战略是其中的重要组成部分。企业为实现其远景需要倡导的核心价值观是什么?采取什么样的理念来开展人力资源工作?如何制定人力资源规划?

例如,一家管理咨询公司的远景是成为向中国企业提供咨询方案的最佳服务机构。由于远景目标的知识性特点,其人力资源规划可以是初期选拔经验丰富并具有咨询业素质的专业人士,随着公司的成长和专业技术的完善,再加入毕业生由公司自己培养,以便尽快壮大队伍。其核心价值观可以是"信任、团队、智慧、创新",以激发员工的价值认同感。一流企业之所以能吸引并凝聚优秀的员工,认同感是其中的关键因素。

二、大人力资源管理涵括组织建设、文化建设与系统建设,通过企业文化整合战略、组织和系统,落实到各个相互配套的操作系统。

组织建设包括"硬"的组织结构规划设计和"软"的人力资源队伍建设,经营战略和人力资源战略决定组织建构并透过组织得以实现。文化建设首先确立核心价值观,再将其有系统的向组织渗透,并有意识的融入管理系统、制度和程序。系统建设既要求操作系统的科学与规范,更强调各系统间的配套衔接,这体现在两个方面:

1.人力资源操作系统是对战略由宏观到微观操作层面的细化,其间必须经过一个更为基础的普适性的技术分析过程,我们称之为"人力资源平台"。人力资源平台即通过对工作、人、职位的分析、评估,整理、明确三者之间的关系,为各操作系统提供技术支撑。招聘、绩效管理、培训发展、薪资福利及人员管理等子系统就是建立在此平台上。

2.操作系统是连贯一体的,如人才保留不仅是薪资待遇和发展机会的问题,在员工招聘时就应该加以考虑。面试评估标准应关注应聘人的价值观念是否符合公司的核心价值观,应聘人的发展期望是否是公司可以提供的;如果不相匹配,即使招聘进来也很难长期保留。只有综合、系统地制定各操作方法,才能保证其有效性。

三、人力资源不只是企业人力资源部门的事,所有管理者,上至总经理下到每个主管以至员工都应承担人力资源管理责任。

操作系统论文篇(7)

引言

操作系统是计算机必不可少的系统软件,《操作系统》课程是计算机专业的核心课程之一。它涉及计算机硬件、软件设计、程序设计语言、数据结构和计算方法等领域。具有涉及面广、概念抽象、理论性和实践性强等特点。对提高学生的思维能力、动手能力、创新能力和培养开发型人才具有十分重要的意义。正是由于这些特点,学生在学习过程中往往感到不易理解,难于掌握,和其他的应用软件如excel等相比学习起来更抽象、枯燥。所以,如何讲授《操作系统》才能激发学生的兴趣和创造力值得探讨。下面从几个方面来进行分析。

一、上好第一堂课

就像一部好戏,开头唱好才会有观众。一门课想要激发学生的兴趣,引起学生共鸣,如何上好第一堂课尤为重要。按照教材的组织,作为第一章的绪言将介绍“操作系统”的概念。所以第一堂课不要急于介绍操作系统的内核是如何实现的,而要从不同的方面给学生讲解操作系统的含义。让学生从不同的角度去认识操作系统。

二、选择适合的教学方法

(一)学科式教学

操作系统课程融合了多门计算机科学与技术专业的相关课程,在课程讲授上需要结合相关的课程知识进行扩展,体现学科式教学的特点。

例如,在学习存储管理功能中的页面置换算法时,除了演示算法的基本思想外,结合数据结构和程序设计相关知识,从算法设计角度讲解应选择何种数据结构来实现相关算法,这点非常重要。因为大多数学生对学习过的数据结构的用途还没有真正理解掌握,对于已经掌握的学生来说,可以进一步巩固。

(二)打比方

操作系统原理性强,且比较抽象,不易理解,此时可采用打比方的方法,将问题讲得深入浅出,清晰直观的比方帮助学生理解。

例如,在讲到互斥信号量mutex的作用时,可以用火车上公共厕所门锁来比方讲解。初始时,锁上显示“无人”,可看作mutex的值为1,表示厕所可用,乘客可以申请使用。当乘客进入厕所时,把门锁上取得互斥访问权,此时厕所显示“有人”,可看作对mutex的值进行减1操作,此时mutex的值为0,表示其他乘客则不能再使用厕所,只能等待。当乘客使用完毕,出来时,打开门锁,释放互斥访问权,厕所显示为“无人”,此时相当于对mutex进行加1操作,这时其他乘客可以申请使用。

在讲解程序与进程的区别时,以火车与列车进行比方,火车相当于程序,列车相当于进程。火车由多节列车组成。

(三)案例式

传统的操作系统课程教学的理论性较强、内容抽象。学生在实际使用计算机时,也很难找到这些抽象理论在实际操作系统中的应用。这使得学生对操作系统理论难以理解和掌握。而对于操作系统课来说,如果学生找不到具体的直观感受,对理论的理解和接纳就都成问题。因此教师在讲授时要注重理论与实践系统相结合,注重引导学生去发现问题、解决问题。尤其是一些常见的问题,往往体现着很多操作系统所涉及的基础知识。结合着这些实例问题进行基础内容教学可以收到事半功倍的效果。

比如文件管理,一个文件存储介质,格式化后就分成许多大小相等的单位--存储块(物理盘块)。并给每个存储块有个编号,称为物理块号。文件的存储以块为单位进行。“块”是内存和外存之间进行信息传输的基本物理单位。那么在实际的操作系统中如何来查看文件的存储块大小就可以作为一个案例引起大家的思考,并通过实际操作给出答案。这样即可帮助学生理解文件存储原理了。

(四)讨论式

操作系统课程讲授的操作系统设计的基本原理,也就是说可以从软件项目开发的角度,结合软件工程的思想来讲授,这样在讲授某些原理时,就将其看作是一个小的项目,然后采用讨论式教学模式,以“讨论式”教学为突破口,对更新教学内容、优化教学手段、加强素质教育、培养创新人才具有意义。教师要扮演“项目经理”的角色,根据学生不同的基础做一定的引导,可设置一些问题,帮助提高讨论的质量,同时作为一种促进的手段要求提交个人学结和学习小组的讨论记录,保证讨论的效果。小组学习讨论必须有充足的论题可以展开,以避免形式主义。作业与实验的量及其难度应适度,过多过难的作业对大多数学生的学习是不合适的,不利于学生学习自信心的加强。

比如在学习作业调度算法时,可先提出作业的特点,然后让学生分组讨论,应怎样设计算法来满足相应的要求。

“讨论式”教学以培养学生自主学习能力为宗旨,以实现课程教学目标为目的,通过开展课堂讨论、网上讨论、小组讨论等教学活动,使学生对专题问题有进一步的理解。“讨论式”教学能引发学生对不同角度与方法的探讨,增强学生的主体意识,增进学生的协作意识,培养学生的创新意识[1]。

(五)程序设计

操作系统原理课程的实践性环节按深度可以分为五个层次:使用级、观察级、习题管理级、源代码阅读级和实现级。而大多数本科院校都只达到了习题管理级,只有少数院校达到了源代码阅读级和实现级。这也说明要达到源代码阅读级和实现级是非常困难的。对于大多数院校来说可以采用模拟实现的方式来进行实践。

比如在进行进程同步教学时,可以利用某种高级语言对抽象模型“生产者与消费者关系”写出进程同步的代码,并上机实践,使学生把进程同步的抽象知识变为具体可理解的知识。

以java语言为例。对于进程同步问题,java语言提供了线程,即轻型进程,它为同步线程提供了两个方法:object类的wait()方法和notify()方法。当某线程通过管程请求资源而未能满足时,管程调用wait()方法使线程等待,并将它排在等待队列上。当一个线程对资源访问完后,通过notify()方法唤醒等待队列上的线程,需要同步执行的代码要用关键字synchronized修饰。

三、科学的组织教学内容

在内容组织上,无需按照教材编写的顺序进行开展。通过对操作系统原理进行分析,明确“计算机操作系统是方便用户,管理和控制计算机系统软硬件资源的程序的集合[2]”、计算机操作系统是计算机技术和管理技术的结合,以及“操作系统有五大类型和五大功能”的基础上,针对五大功能展开知识结构教学,首先对软件资源管理为主的作业管理,包括任务管理、人机交互界面管理等进行详细讲解,然后进行文件管理、涉及硬件资源管理的存储管理、输入输出设备管理等内容的讲解,最后深入到进程及处理机管理的讲解。

这样组织,可使得每一个新的内容是基于一些问题而引入,带着问题进行讲解,可引起学生的思考,进一步理解了问题的由来和解决问题的方法。

结束语

操作系统是现代计算机的必备系统软件,其应用范围之广,决定了操作系统课程学习的重要性,同时也对操作系统的教法提出了更高的要求。我们需要从实际出发,针对目前操作系统课程存在的问题,对教学活动的各个环节不断进行改进,以达到共同的目标,那就是努力提高教学质量,培养更多学生具备设计、构造和开发系统软件的综合能力。而这需要依赖于教、学双方的不懈努力和教学方法的不断创新。

操作系统论文篇(8)

引言

操作系统是计算机必不可少的系统软件,《操作系统》课程是计算机专业的核心课程之一。它涉及计算机硬件、软件设计、程序设计语言、数据结构和计算方法等领域。具有涉及面广、概念抽象、理论性和实践性强等特点。对提高学生的思维能力、动手能力、创新能力和培养开发型人才具有十分重要的意义。正是由于这些特点,学生在学习过程中往往感到不易理解,难于掌握,和其他的应用软件如excel等相比学习起来更抽象、枯燥。所以,如何讲授《操作系统》才能激发学生的兴趣和创造力值得探讨。下面从几个方面来进行分析。

一、上好第一堂课

就像一部好戏,开头唱好才会有观众。一门课想要激发学生的兴趣,引起学生共鸣,如何上好第一堂课尤为重要。按照教材的组织,作为第一章的绪言将介绍“操作系统”的概念。所以第一堂课不要急于介绍操作系统的内核是如何实现的,而要从不同的方面给学生讲解操作系统的含义。让学生从不同的角度去认识操作系统。

二、选择适合的教学方法

(一)学科式教学

操作系统课程融合了多门计算机科学与技术专业的相关课程,在课程讲授上需要结合相关的课程知识进行扩展,体现学科式教学的特点。

例如,在学习存储管理功能中的页面置换算法时,除了演示算法的基本思想外,结合数据结构和程序设计相关知识,从算法设计角度讲解应选择何种数据结构来实现相关算法,这点非常重要。因为大多数学生对学习过的数据结构的用途还没有真正理解掌握,对于已经掌握的学生来说,可以进一步巩固。

(二)打比方

操作系统原理性强,且比较抽象,不易理解,此时可采用打比方的方法,将问题讲得深入浅出,清晰直观的比方帮助学生理解。

例如,在讲到互斥信号量mutex的作用时,可以用火车上公共厕所门锁来比方讲解。初始时,锁上显示“无人”,可看作mutex的值为1,表示厕所可用,乘客可以申请使用。当乘客进入厕所时,把门锁上取得互斥访问权,此时厕所显示“有人”,可看作对mutex的值进行减1操作,此时mutex的值为0,表示其他乘客则不能再使用厕所,只能等待。当乘客使用完毕,出来时,打开门锁,释放互斥访问权,厕所显示为“无人”,此时相当于对mutex进行加1操作,这时其他乘客可以申请使用。

在讲解程序与进程的区别时,以火车与列车进行比方,火车相当于程序,列车相当于进程。火车由多节列车组成。

(三)案例式

传统的操作系统课程教学的理论性较强、内容抽象。学生在实际使用计算机时,也很难找到这些抽象理论在实际操作系统中的应用。这使得学生对操作系统理论难以理解和掌握。而对于操作系统课来说,如果学生找不到具体的直观感受,对理论的理解和接纳就都成问题。因此教师在讲授时要注重理论与实践系统相结合,注重引导学生去发现问题、解决问题。尤其是一些常见的问题,往往体现着很多操作系统所涉及的基础知识。结合着这些实例问题进行基础内容教学可以收到事半功倍的效果。

比如文件管理,一个文件存储介质,格式化后就分成许多大小相等的单位--存储块(物理盘块)。并给每个存储块有个编号,称为物理块号。文件的存储以块为单位进行。“块”是内存和外存之间进行信息传输的基本物理单位。那么在实际的操作系统中如何来查看文件的存储块大小就可以作为一个案例引起大家的思考,并通过实际操作给出答案。这样即可帮助学生理解文件存储原理了。

(四)讨论式

操作系统课程讲授的操作系统设计的基本原理,也就是说可以从软件项目开发的角度,结合软件工程的思想来讲授,这样在讲授某些原理时,就将其看作是一个小的项目,然后采用讨论式教学模式,以“讨论式”教学为突破口,对更新教学内容、优化教学手段、加强素质教育、培养创新人才具有意义。教师要扮演“项目经理”的角色,根据学生不同的基础做一定的引导,可设置一些问题,帮助提高讨论的质量,同时作为一种促进的手段要求提交个人学习总结和学习小组的讨论记录,保证讨论的效果。小组学习讨论必须有充足的论题可以展开,以避免形式主义。作业与实验的量及其难度应适度,过多过难的作业对大多数学生的学习是不合适的,不利于学生学习自信心的加强。

比如在学习作业调度算法时,可先提出作业的特点,然后让学生分组讨论,应怎样设计算法来满足相应的要求。

“讨论式”教学以培养学生自主学习能力为宗旨,以实现课程教学目标为目的,通过开展课堂讨论、网上讨论、小组讨论等教学活动,使学生对专题问题有进一步的理解。“讨论式”教学能引发学生对不同角度与方法的探讨,增强学生的主体意识,增进学生的协作意识,培养学生的创新意识[1]。

(五)程序设计

操作系统原理课程的实践性环节按深度可以分为五个层次:使用级、观察级、习题管理级、源代码阅读级和实现级。而大多数本科院校都只达到了习题管理级,只有少数院校达到了源代码阅读级和实现级。这也说明要达到源代码阅读级和实现级是非常困难的。对于大多数院校来说可以采用模拟实现的方式来进行实践。

比如在进行进程同步教学时,可以利用某种高级语言对抽象模型“生产者与消费者关系”写出进程同步的代码,并上机实践,使学生把进程同步的抽象知识变为具体可理解的知识。

以java语言为例。对于进程同步问题,java语言提供了线程,即轻型进程,它为同步线程提供了两个方法:object类的wait()方法和notify()方法。当某线程通过管程请求资源而未能满足时,管程调用wait()方法使线程等待,并将它排在等待队列上。当一个线程对资源访问完后,通过notify()方法唤醒等待队列上的线程,需要同步执行的代码要用关键字synchronized修饰。

三、科学的组织教学内容

在内容组织上,无需按照教材编写的顺序进行开展。通过对操作系统原理进行分析,明确“计算机操作系统是方便用户,管理和控制计算机系统软硬件资源的程序的集合[2]”、计算机操作系统是计算机技术和管理技术的结合,以及“操作系统有五大类型和五大功能”的基础上,针对五大功能展开知识结构教学,首先对软件资源管理为主的作业管理,包括任务管理、人机交互界面管理等进行详细讲解,然后进行文件管理、涉及硬件资源管理的存储管理、输入输出设备管理等内容的讲解,最后深入到进程及处理机管理的讲解。

这样组织,可使得每一个新的内容是基于一些问题而引入,带着问题进行讲解,可引起学生的思考,进一步理解了问题的由来和解决问题的方法。

结束语

操作系统是现代计算机的必备系统软件,其应用范围之广,决定了操作系统课程学习的重要性,同时也对操作系统的教法提出了更高的要求。我们需要从实际出发,针对目前操作系统课程存在的问题,对教学活动的各个环节不断进行改进,以达到共同的目标,那就是努力提高教学质量,培养更多学生具备设计、构造和开发系统软件的综合能力。而这需要依赖于教、学双方的不懈努力和教学方法的不断创新。

操作系统论文篇(9)

中图分类号:TP316-4

操作系统是计算机系统的核心软件,是其它一切软件运行的基础,是计算机应用开发的基础平台。操作系统将计算机软件硬件有机结合起来和用户进行交互。

操作系统在计算机系统中的特殊地位,使得《操作系统》课程在计算机科学学习中占据重要的地址,它是计算机科学体系中的基础课程。学习和了解操作系统的工作机理和工作方式,从而更好的进行计算机应用开发,是计算机科学、电子信息科学等专业同学必备的知识和技能。

1 课程特点

《操作系统》课程主要介绍操作系统的设计方法和实现技术,讲授众多操作系统的设计精髓。《操作系统》课程是人们在操作系统设计过程中工程实践经验的总结,课程内容是面向技术,而不是某个特定产品。课程学习学习者是站在操作系统设计者的角度来研究和学习操作系统的实现技术。

操作系统软件的特殊地位、操作系统课程的学科地位,以及该课程的学习内容和学习定位,使得操作系统课程教学中具有技术更新速度快、概念抽象、系统性差、原理性强等特点。

2 教学目标

教师在安排操作系统理论和实践教学时要综合考虑教学大纲、培养学时、培养对象类型及培养对象基础。一般来说,围绕操作系统教学可以分为三个层次:

2.1 作为专业基础课程,包含在“计算机基础”、“计算机原理”等课程的教学培训中,非独立授课,主要学习某一操作系统的基本操作和使用。

2.2 作为专业选修课程,要求培养对象对特定操作系统的系统结构、功能和工作原理有较全面和深入的了解,能够使用API和相关平台进行针对该操作系统的应用程序开发和调试。

2.3 作为计算机科学技术及相关专业的专业必修课,要求培养对象深入掌握操作系统工作原理,熟悉操作系统内核,能够使用该操作系统平台相关的复杂公交来解释并开发底层驱动、中间件和应用程序等一系列应用,掌握操作系统的分析和设计技术。

对于应用型院校非计算机专业来说,由于前期课程设置、培养方案等因素的影响,使得如果像计算机专业一样将本课程的导入起点和教学目标设定得过高的话,反而使得教学效果大打折扣。以课程学时设置为例:

计算机专业该课程的设置一般为48+16课时,电子信息专业为38+10课时,教学内容涵盖进程管理、内存管理、设备管理、文件管理等操作系统主要部分的原理和应用。标准教材一般偏重于理论讲解,较为抽象。学生没有一定的理论基础理解较难,以下是一本典型操作系统教材的章节安排:(1)操作系统概论;(2)进程管理;(3)处理器调度与死锁;(4)存储管理;(5)文件管理;(6)设备管理;(7)网络基础。

可以看出《操作系统》是综合性较强的课程,有较强的理论性和综合性。要学好这门课,学生不但要有较强的抽象思维能力,而且要具有一定的程序设计能力,对《C语言程序设计》、《数据结构》等前导课程有较好的掌握。如果不了解培养对象已有知识储备和能力,在较少的课时安排下照本宣科,强行灌输大量抽象枯燥的理论知识,将导致学生对该门课产生厌学逆反心理。

由以上分析可以看出,非计算机专业的操作系统课程设置和教学内容需要根据专业培养方案、前导课程、培养对象已有能力等统筹考虑和安排,灵活度大同时也更难把握。

3 教学模式

针对非计算机专业培养目标和实际课程设置的限制,设计规划了一套操作系统课程理论实践教学的模式,其核心理念是:“抓主干,扩枝叶;托低承高,动态调整”。

首先,通过“课堂理论教学+实践教学+课程大作业+毕业设计”将课程学时有机扩展,对不同层次不同培养目标的学生的教学侧重点进行区分,设置四个层次的教学目标:(1)操作系统的使用管理。针对初次接触某一操作系统,对其工作原理使用方法都不熟悉,相关基础薄弱的学生,通过该系统的安装、GUI和常用命令的使用以及系统功能的使用管理使学生对该系统有较好的感性认识,能够使用该系统完成一些实际工作并对系统进行必要的配置和维护;(2)操作系统内核及工作原理。在学生对操作系统已有一定了解和使用经验的情况下,进一步系统分析其各个功能模块和工作原理,以Linux操作系统为例,要让学生知道其文件管理、设备管理、进程调度等主要功能模块;内核如何通过内核态/用户态切换以及进程调度来管理同时运行的多个任务等,教学中要有主次,比如文件系统和进程调度的原理可以重点讲解分析,设备管理等只要介绍原理即可。使得学生将操作系统的直观的使用感受和对现行的观察同理论知识想结合,加深对操作系统的理解;(3)API编程及平台应用开发。介绍操作系统提供的API接口以及相应的开发工具和手段,让学生结合以后的编程知识编写、调试基于该操作系统的应用程序,这一过程应该“循序渐进”,从简单的shell编程到文件读写、存储管理、同步机制、进程/线程调度,通信等,在这一过程中不断补充加深对内核工作机制和相关算法的介绍,使得学生逐步具备基于该操作系统的程序开发设计能力;(4)内核定制与操作系统设计。在对内核工作原理熟悉掌握后,能根据需求对内核进行配置和开发,尝试进行微型操作系统的设计与实现,这一阶段是对所学知识的综合应用于提高,能够培养学生自主学习和创新能力可以结合课程设计或毕业设计来进行,主要针对具备一定能力,对操作系统有浓厚兴趣的学生进行。

操作系统各个层次的教学实践环节如图1所示:

为了更好的贯彻前述层次教学的理念,我们针对操作系统(Linux)课程理论教学部分进行如下调整设置:(1)操作系统概论;(2)Linux常用命令;(3)文件管理、设备管理;(3)Linux下Shell编程;(4)Linux下C编程;(5)进程管理、内存管理;(6)多线程。

相应的实验教学设置如下:(1)Linux常用命令练习;(2)TFTP、NFS服务配置;(3)Makefile的编写及应用;(4)Linux内核与根文件系统映像文件的编译及调试;(5)大作业(进程调度、通信或同步)。

与传统课程的安排不同,调整后的课程设置着重体现了“由易到难,循序渐进;由感性认识加深理性分析”的思想,其中“操作系统概论”、“Linux常用命令”两个教学章节将使得第一次接触Linux操作系统的学生对该系统的发展历程、现状,主流版本有所了解,熟悉Linux的用户界面、常用功能和命令行工作方式,建立对系统的直观认知;将“文件管理、设备管理”章节提前与此讲授是很有必要的,因为Linux操作系统将“数据”和“设备”统一作为“文件”来进行操作和管理,而文件系统与设备管理又是与用户关系最为密切,使用最为频繁的操作系统功能模块,因此如果学生不能对其内在架构和工作原理有所了解的话会对Linux的进一步掌握造成困难。“Linux下Shell编程”和“Linux下C编程”使得学生掌握Linux操作系统下的程序开发技能,从这里开始,编程开发和操作系统原理的知识互相穿插融合,使得理论知识和实际应用紧密结合;“进程管理、内存管理、多线程”是Linux操作系统的重点和难点,是多任务操作系统应用开发或内核开发都必须使用到的,应该重点讲授,使得学生对进程调度、优先级反转、同步/互斥/死锁、进程间通信等有全面的掌握。

在理论授课中,应该充分使用多媒体教学,包括PPT,虚拟机上Linux的实时演示示范等,避免枯燥的理论灌输。每一个阶段的教学到安排了与之配套的实验和作业,在学期末通过综合性的大作业考察学生对知识的整体掌握度。对于具备较高相关知识的学生,可以通过课程设计和毕业设计进行复杂项目的设计开发,从而使其对Linux的设计开发能力得到锻炼提高。

4 结束语

教学改革是一个是不断深化、完善的过程。操作系统教学改革应沿着教学内容、教学方法、教学理念、教学手段等方面继续深入下去,将操作系统的教学质量提高到一个新水平,培养出社会需要的、具有创新能力的人材。

参考文献:

[1]汤子瀛,哲凤屏,汤小丹.计算机操作系统(修订版)[M].西安:西安电子科技大学出版社[M],2002.

[2]晏杰.《计算机操作系统》教学的改革[J].现代计算机(专业版),2007(09):49-51.

[3]肖竞华,陈建勋.“计算机操作系统”教学改革探索与实践[J].高等理科教育,2007(03):68-70.

操作系统论文篇(10)

计算机操作系统是最核心、基础的计算机系统软件,计算机操作系统的设计原理与实现技术是计算机专业人员必须掌握的基本知识。《计算机操作系统原理》课程是计算机科学与技术及相关专业的核心课程之一。该课程主要介绍操作系统的基本原理和实现技术,是理解计算机系统工作、用户与计算机系统交互和设计开发应用系统等基本知识结构的重要途径。

由于该课程主要是由计算机各种操作系统的组成结构、设计思想、方法和理论综合而形成的,因此课程内容比较庞杂、涉及面广、概念抽象,不易理解,比其它专业课更加难教,学生也更加难学。根据多年的教学经验,我认为应根据《计算机操作系统》课程本身的特点,对学生的学习情况进行仔细分析和研究,有针对性地进行一些教学改革,这样才能提高学生的学习兴趣与实践能力。

一、目前各大高校操作系统课程的教学存在的问题

1.学生的程序设计能力较差

该课程主要是介绍操作系统的基本原理和实现技术,要求理解计算机系统工作、用户与计算机系统交互和设计开发应用系统等基本知识,其内容涉及理论、算法、技术、实现和应用。所以这门课程与C语言、数据结构、计算机组成原理等多门课程关联性很强,涉及面广,要求学生有较强的综合分析问题、设计及编程能力。因此,在学习理论知识以后,部分学生感到压力很大,对实践环节往往束手无策。

2.理论与实践相结合的内容较欠缺

各学校在《计算机操作系统》课程的教学中,很大程度上存在偏重理论知识传授的现象,基本上以书本各章节为主,在教学过程中缺少理论与实践相结合的具体内容。这造成课堂教学内容枯燥、实践内容不明确,使学生觉得这门课只能纸上谈兵,没有用武之地。

3.实验内容单一

目前学校使用的教材多是以UNIX为实例来介绍计算机操作系统的特征,但大多数学校机房操作系统环境是以Windows为主,很少有学校专门建设操作系统专业实验室。而且UNIX作为商业软件,源代码不公开,也给实验环境的构建带来了一定的难度。大部分教师在操作系统实验课的教学中,还是以编写各种算法程序为主,实验内容单一,并不能真正地达到课程实验大纲的要求。

二、操作系统课程教学的改进方法

针对以上存在的这些问题,我们必须对操作系统课程教学进行改进。我们应从以下几个方面入手,合理安排教学活动,引导学生正确地学习操作系统,切实解决课程学习中的问题,克服学生的畏难情绪和打破“无用论”。

1.完善教学内容与教学体系结构

我们应根据操作系统课程的特点,了解操作系统课程与其他专业课程之间的紧密联系,要求学生在学习操作系统课程之前具备程序设计语言和数据结构的基础知识,并要求学生预先修完计算机原理等硬件课程。

2.建立合理的教材体系

我们应改变原来的单本教材,形成“主―从―辅”三级教材模式。选用概念清晰、专业性强、系统全面的教材为课堂教学的主教材。选用难度适中,对问题的论述较为通俗,适合学生自学的教材为从教材,用来加深对理论和概念的全面理解。为解决课程中难于理解的问题,我们还需配备一本辅导教材,结合生活实际论述操作系统原理中涉及的概念、理论与方法,帮助对抽象专业知识的理解与深化。

3.改进理论教学方法

我们应提倡以学生为中心进行教学,改变单向式、灌输式为启发式、讨论式、研究式,使学生自主性、创造性地学习,留给学生更多的思考空间和自学空间,培养学生阅读参考书、科技文献和写读书报告的习惯。出台一些列考核与奖励机制,鼓励针对具体问题制作问题分析、算法及技术发展报告多媒体幻灯片,提倡公开交流和信息交换,讲课与讨论相结合的教学方式。

在理论课程教学过程中,为使学生能够适应课程实践教学的内容,我们建议增加操作系统原理课外实验环节,通过教师布置实验题目,学生自主上机实验的方式,提升学生对局部问题的理解力。理论课授课形式多样,通过主课、习题课、专题课、课堂讨论,以及资料收集与分析、小论文、源程序分析、小型实验与设计等形式提高学生的学习兴趣和教学效果。

4.改进操作系统实验环节

对于应用型院校的学生来说,学习操作系统原理的主要目的应该不是设计新的操作系统,而是在理解的基础之上很好地运用操作系统,所以针对教材要求的实验环境实现困难、实验内容单一等问题,我认为教师可以为学生提供一个研究操作系统内核的学习方法,使学生可以由此来体验操作系统内核及其设计技巧。这样学生可以在不修改任何代码的情况下,了解操作系统内部状态的各个方面;通过编写新的代码来阅读内核的数据结构和了解操作系统运作方式,等等。教师可以根据学校和学生的特点,尝试为操作系统课程编写自己的实验教材,这样能让学生在实践中真正体验到操作系统在整个计算机系统中的功能与作用。

5.采用多样化的实践环节

在大部分高校的操作系统教学计划中,实践环节仅为各章节实验课程开设,相对其他课程比较单一。其实操作系统的设计与实现体现了程序设计与软件工程的精髓,操作系统原理课程设计正是该课程实践环节的集中表现。它可使学生更加系统地巩固学习的概念、原理、设计及算法,也可培养软件开发所应有的系统结构设计和软件工程素养。课程设计在突出内容的系统性、设计性和可操作性的同时,应本着综合能力提高的宗旨,通过协作学习与模拟性学习相结合,强化学生对操作系统原理理论知识的掌握,提高实际软件设计、编程的能力,培养组织协作与团队精神。我们应注重学生知识、能力、素质的培养,充分调动学生的自主学习热情,培养学生的多元能力。

操作系统课程的教学改革工作是一项长期复杂的系统工程,教学的改进应该以教师为主体,从学校与学生的实际需要出发,切实贯彻该课程的教学大纲和基本要求,不断地完善教学活动的各个环节,夯实学生的专业基础,培养学生分析操作系统的能力,进而提高学生程序设计的能力,从而使学生真正地掌握好这门重要的计算机专业课程。

参考文献:

[1]张娟.《计算机操作系统》课程“互动式”教学研究与探索.中国校外教育杂志,2010,(02).

上一篇: 年度财务分析报告 下一篇: 员工管理述职报告
相关精选
相关期刊