“操作系统”实例化教学的改革探讨

上传人:wm****3 文档编号:42636042 上传时间:2018-06-02 格式:DOC 页数:15 大小:336KB
返回 下载 相关 举报
“操作系统”实例化教学的改革探讨_第1页
第1页 / 共15页
“操作系统”实例化教学的改革探讨_第2页
第2页 / 共15页
“操作系统”实例化教学的改革探讨_第3页
第3页 / 共15页
“操作系统”实例化教学的改革探讨_第4页
第4页 / 共15页
“操作系统”实例化教学的改革探讨_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《“操作系统”实例化教学的改革探讨》由会员分享,可在线阅读,更多相关《“操作系统”实例化教学的改革探讨(15页珍藏版)》请在金锄头文库上搜索。

1、“操作系统”实例化教学的改革探讨摘要:“操作系统”作为一门传统的计算机课程,随着 IT 领域的不断进步和发展,它的教学将面临更多的新问题。本文从我校“操作系统(Linux)”的教学情况入手,结合本校学生的学习特点和教育心理学理论,对“操作系统”课程的教学环节进行了探讨。 关键词:操作系统;Linux;实例化教学 G642 1“操作系统”教学中存在的问题 “操作系统”是计算机专业学生的一门必修课程,大部分高校将此课程设置在大二下半学期。学生在此之前虽然已经完成“C 语言程序设计”和“计算机组成原理”的课程,但首次接触“操作系统”,基本上属于丈二摸不着头脑。这主要是因为“操作系统”本身是一门博大精

2、深的课程,而我们教学主要是传授学生关于操作系统原理方面的知识,可谓是对操作系统核心内容的高度概括。即便是遇到了一些经典的算法也基本上是属于纸上谈兵。对于这样抽象的内容,学生无法像学语言课程一样,通过编写代码后能够立竿见影的看到程序运行的结果,因此对于操作系统的学习逐渐产生了厌学情绪。传统的“操作系统”教学中能够引起他们兴趣的主要就是其中生动有趣的算法,如果我们在此能够多做一些实践教学,让学生勤动脑、多动手,甚至将自己的算法逐渐整合成一个最简单的操作系统,这种实例化的教学将会让学生体会到操作系统学习的成就感,同时有利于培养学生的创新能力。 2“操作系统”教学改革方案 2.1操作系统原理实例化 这

3、里提出将操作系统原理实例化,其实就是拿出一个可以提供给学生的操作系统,可以让学生真正体会所有经典算法的真正的操作系统。选择一个开源的操作系统这是一个必然的趋势,而在众多的开源操作系统中,Linux 是很多高校教学和实验的首选。Linux 不仅可以让学生查看像 PCB(进程控制块)这样的数据结构的源码程序,更可以让学生在 Linux 上编写出进程创建、线程并发等等只可意会不可言传的程序代码。 例如操作系统中第二章的内容进程管理,通常在最初阶段将学生头脑里的“程序”转化成“进程”是比较困难的,另外对于进程并发的概念总是不能真正的理解。在这里如果能够及时的引入 Linux 中的系统调用 fork()

4、来创建进程,并且设计出一个易于学生理解,并且有一定趣 味的例子给学生实现,那么对于刚进入操作系统学习的学生来说无疑是一个巨大的帮助。这里给出一个使用 fork()调用创建进程的简单的例子。 #include main() pid_t id=0; printf(“program is excutingn”); printf(“in function mainn”); id=fork(); if(id=0) printf(“I am child!n”); else printf(“I am parent!”); 这个例子仅仅几行代码却诠释了进程创建、进程并发、进程父子关系等多个概念。当然在这里一定

5、要交代好 fork()调用的几个重点: (1) 子进程复制父进程的代码和数据; (2) 子进程从 fork()调用之后开始执行; (3)fork()调用成功给子进程返回值为 0,给父进程返回子进程的 pid 号。 通过系统调用fork()抛砖引玉,让学生自己写出一段有意义的程序。学生通过自己的思考也会提出一些有意思的问题,例如如果在子进程里再调用 fork()创建进程,这些进程之间的关系又是什么。学生开始思考也就意味着他开始对这个理论感兴趣了,学生提出了新的问题说明了学生对这些概念有了深刻的理解。而我们的教学的目的和意义也就达到了。 2.2 经典算法程序化 算法本事身就是相对比较深奥的程序,而

6、这部分也恰恰是软件编程的核心。如果能够掌握这个庞大的软件操作系统里的关键性算法,自然对学生编写程序和研究算法有着不可估量的好处。从第二章的信号量开始就已经开始涉及到了操作系统中某些关键和经典的问题。很多学生由于是第一次接触算法,很难把这些经典问题和操作系统中的某一部分代码有效的联系起来,所以抽象的算法就成了他们最难以理解和消化的“食物”了。在这里设计了一些实验内容,如表 1 所示: 3 结束语 “操作系统”作为计算机专业的必修课程,是一门有着重要地位的核心课程。如何让实验教学配合好理论教学,让枯燥无味的原理变成趣味十足且耐人寻味的一门课程成为了改革的主要目标。将操作系统中的每一个难以理解的定义

7、和算法实例化,搞好这个教学环节,对于提高计算机的教学质量、全面提高学生的素质有着重要的意义。 “操作系统”课程教学方法的改进要遵循适应课程教学改革和专业发展的实际需要,切实贯彻该课程的教学大纲和基本要求,不断完善教学活动的各个环节。充分发挥学生的能动作用,培养学生发现问题、分析问题、解决问题的综合能力,真正培养学生在系统软件开发方面的综合能力。 本文出自: 大学生论文网参考文献: 1 付晓翠.计算机操作系统教学方法改革探悉J. 山东农业教育,2008(4):32-34. 2 孙斌,周海波. 操作系统(Linux)实验指导M. 大连:东软电子出版社,2008. 摘要:本文结合“计算机操作系统”课

8、程的特点,分析了发达国家实验教学开设的状况,有针对性地提出了计算机操作系统实验的设计思想、教学内容及其教学模式。 关键词本文来自:计算机毕业网 :计算机操作系统;实验教学;工程能力培养;创新能力 1 引言 计算机操作系统课程是理论性和实践性都很强的学科,计算机操作系统实验教学作为课堂教学的继续,不仅是计算机教学中不可缺少的重要环节,也是计算机教学成效的初步体现。近年来我院计算机实验教学中心从多方面加强计算机操作系统的实验教学工作,措施之一就是改进和优化实验课程的设置,分层次、立体化地安排实验课程的内容,从而加强对学生动手能力的培养,促进了学生基本技能和工程实践能力的提高。 2 发达国家大学实验

9、教学状况 美国密歇根大学工学院机械系三、四年级共开设 15 门课程记 56 个学分,其中:主干课 6 门(64),设计课 3 门(34),大实验课 2 门(24)、其他课程 4 门(43)。由此可见,其中设计课程、实验课程共计 5 门 20 个学分,占课程总数的 1/3,占学分总数的 1/3 强。 麻省理工学院(MIT)加强学生工程实践能力训练的办法是让学生利用课余及假期进入科研或直接参与企业的某一项目。为此分别拟订了不同的实践计划,目前实施的计划有: (1) 本科研究导向计划(UROP):该计划要求学生在教授指导下完成某些研究性实验,有 7080的本科生进入该计划;(2) 本科实践导向计划(

10、UPOP):该计划与企业结合,组织学生参与企业中的某项设计或工程实践,有 30本科生进入该计划; (3) 技术创业计划:该计划只有少数优秀学生参与,着重强调探索与创新,甚至允许学生自己办个小公司去实施。 从以上的例证中我们可以发现以下几个共同点: (1) 实验课程的课时和学分比例都在全部课程的 1/3 以上; (2) 实验教学完全面向具体工程,培养学生的动手能力和创新能力; (3) 实验教师有丰富的工程实践经验; (4) 实验教学计划是动态的,修改的依据是实际工程需要。 3 精心构建“计算机操作系统”课程实验体系 为使学生更好地掌握操作系统知识,针对该课程内容复杂、涉及面广、实践性强等特点,课

11、程组不断跟踪国内外著名计算机专业教学计划,结合实际教学经验,精心构建操作系统课程体系和实验体系。以“计算机操作系统”为核心配套形成丰富的实验内容,将实践教学分为三个层次四种类型,具体包括:操作系统基础实验、操作系统原理实验、基于操作系统程序设计和操作系统内核综合实验,如图 1 所示。课程内容与实验间相互促进,理论与实际紧密结合,由浅入深、循序渐进,覆盖主流系统平台,结合应用编程,取得了理解、抽象、思考、实验、设计和掌握知识结构和应用技术的成功。本课程的实践教学环节包括三个层次,即课程实验、应用实验和综合实验。在实践过程中,充分发挥师生互动的作用,充分利用“实验室课堂”和“案例库” ,完成相应实

12、践过程,达到能力训练和启发创新的目的。 1) 课程实验 含系统上机操作等过程,是一种体验性的实践,实践平台包括当前主流操作系统(Windows 和Unix/Linux)。 2) 应用实验 主要完成模块设计和程序设计,是难度较大的实践环节,通过案例复现和模块替换实验等,掌握技术实现和模块设计的方法与技巧。 3) 综合实验 较大型的综合实验,可以与操作系统应用技术结合,可以以学生团队方式参加。根据情况,部分课题可以拓展到本科毕业设计课题完成。 根据不同的实验层次,设计了四种实验类型,即操作验证型、技术应用型、模块设计型、综合型四种类型: 1) 操作验证型实验属于操作系统实际操作,目的是让学生熟悉目

13、前流行的多用户、多任务操作系统,激发学习兴趣,为理论课程的学习提供基础。包括系统配置、命令使用、Shell 语言、系统安装等; 2) 技术应用型实验是操作系统原理技术实现,从系统软件和结构的基础上理解设计和实现过程,联系 Windows/UNIX 两类主流操作系统,理解系统整体框架、各种不同算法、软件设计架构、功能实现特点、安全机制实施等内容,使抽象能够与设计结合,与实际的操作系统相联系,去除操作系统的神秘感和复杂感,随课开设的操作系统原理实验指导学生设计系统中的各种数据结构及算法,比较算法性能,使学生理解和重视设计原理。包括算法设计、结构编程、模块替换等; 3) 模块设计型实验是操作系统的模

14、块设计,引入开放系统和开放源码技术,利用 Shell 设计和 C 对系统核心编程,掌握并积累基于现代操作系统环境的编程经验。包括调度、分配、并发、管理等; 4) 综合型实验(含课程设计)是操作系统应用设计,是在前面实验的基础上对学生综合能力的训练,供有一定基础、并对操作系统有关内容感兴趣的学生选择。本实验在前面知识的基础上,有重点地分析开源 Linux 系统内核源代码并设计出相关系统模块,培养学生的综合设计能力,激发学生的创新能力,达到对本课程内涵的深入理解和灵活运用。 通过分类型和阶段的实践过程,加强了学生系统编程与内核模块设计的能力,使学生对课程的重点和难点,如多道程序、进程调度和切换、并

15、行与并发、资源分配和冲突的解决、系统对外的连接、系统软件的架构和应用切入模式等都有了更加深入的认识,加深了课程内容的理解和运用,创新效果明显。 4 实验体系的特点与创新 1) 注重实践环节,强调能力培养,合理进行学生考核计算机实验教学中心利用较好的实验室条件,开设“实验室课堂” ,构建“操作系统案例库” ,结合课程实验、应用实验和综合实验加强学生系统编程与内核模块设计的能力。这些案例既作为教学,也供学生自行设计或复现,优秀作品又进入案例库循环,使学生能即学即用,及时发现和解决问题,对抽象概念通过实践环节理解,拓展深层次思考,对学生的能力训练收到很好的效果。 2) 立体化、分层次设计实验体系,全

16、面培养学生创新能力 本课程的实践教学分为三个层次四种类型。其中,课程实验主要解决学生对“计算机操作系统”中主要技术原理、算法的理解和设计问题。应用实验主要训练学生对典型操作系统的具体实现技术的掌握;综合设计实验(含课程设计)主要训练学生面对实际的操作系统进行综合分析、方案设计和具体设计操作系统的综合解决能力。 3) 实验环节面向具体操作系统,强调工程化设计 根据目前发达国家对学生工程教育的培养,结合我国学生大学毕业后普遍存在动手能力较弱和缺乏工程实践能力问题,提出以计算机操作系统中的具体工程技术问题为主线开发设计实验,使开发出的实验具有很强的工程性、实践性和实用性。 4) 实验形式以项目方式下达和管理,体现设计性和工程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号