操作系统原理教学中多课程知识融合探析.docVIP

操作系统原理教学中多课程知识融合探析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统原理教学中多课程知识融合探析.doc

  操作系统原理教学中多课程知识融合探析 操作系统原理教学中多课程知识融合探析 1. 引言   计算机操作系统原理(以下简称操作系统)课程是计算机科学与技术及相关本科专业的一门重要的主干核心课程,它以先修课程计.L.算机导论、程序设计、数据结构和计算机组成原理等课程为基础对计算机专业知识进行扩展,并为后继课程计算机体系结构、计算机网络、软件工程等课程提供知识基础,在整个计算机科学与技术专业的课程中起着承上启下的关键作用。由此可以见,操作系统课程融合了多门计算机科学与技术专业的相关课程知识,如果教师在授课时仅限于本课程的知识点,就容易造成学生的知识结构过于单一和狭窄,不能很好地融会贯通,形成一个完整的知识体系,因此教师在授课时需要结合相关的课程知识进行扩展,实施多课程知识与操作系统课程的相互衔接与融合是很重要的。   2. 操作系统原理课程与多课程知识融合   2.1 程序设计与操作系统课程的融合   2.1.1 程序设计与操作系统的联系   程序设计是操作系统的先导课程之一,学生通过程序设计课程的学习可以初步掌握程序设计的思想和方法,具备利用计算机求解实际问题的基本能力。而操作系统是计算机中的系统软件,因此程序设计中的一些基本概念和方法被广泛的应用到操作系统课程中。   2.1.2 程序设计与操作系统知识融合的方法及举例   采用启发式教学方法,通过对具体问题的提问和讨论将程序设计的思想融入到操作系统的知识中,以提高学生解决问题的能力。   例如:生产者-消费者问题是操作系统中的经典进程同步/互斥问题,几乎所有的操作系统课程教材都会对这些内容进行阐述,教师在授课中讲到这个问题的具体解决时,首先应先给学生讲解和分析,经过分析让他们明白生产者-消费者问题既是互斥问题,也是同步问题,对于互斥问题肯定要设置互斥信号量(mutex),这个学生比较容易理解,但对于这个问题的两个私有信号量学生可能一下子不能理解,这时教师可以这样对学生进行启发:   1)生产者关心的问题是什么?(是否有空的缓冲区,因此可以设置一个生产者的私有信号量empty,表示空的缓冲区的个数,初值为n。)   2)那么消费者关心的问题又是什么?(是否有装满数据的缓冲区,因此可以设置一个消费者的私有信号量full,表示装满数据的缓冲区个数,初值为0。)   3)生产者所做的事情是什么?(生产一个数据,然后申请一个空的缓冲区,并给该缓冲区上锁,将数据放到该缓冲区中,数据装满后意味着它释放一个装满数据的缓冲区,最后给该缓冲区开锁。)   4)消费者所做的事情是什么?(申请一个装满数据的缓冲区,并给该缓冲区上锁,将数据从缓冲区中拿去消费,意味着它释放一个空的缓冲区,最后给该缓冲区开锁。)   经过以上分析,可以分别将生产者和消费者进程的操作写成如下的伪代码:   Producer:begin      Produce an item nextp;  P(empty);   P(mutex);   buffer(in)= nextp;   in:=(in+1) mod n;   V(full);   V(mutex)   end   Consumer:begin      P(full);   P(mutex);   nextc:=buffer(out);   out:=(out+1) mod n;   V(empty);   V(mutex);   Consume the item in nextc;   end   并对这些伪代码做些解释,学生就很容易理解和掌握,并在上机课时让学生利用某种高级语言对这些伪代码稍做修改就可以上机实践,使学生把进程同步的抽象概念知识变为具体可理解的知识。除此问题外,其他的经典进程同步/互斥问题如哲学家进餐问题、读者-写者问题等的解决,也可以通过这种方法向学生讲解。   2.2 数据结构与操作系统课程的融合   2.2.1 数据结构与操作系统的联系   数据结构是计算机科学中一门综合性的专业基础课,它研究非数值数据计算的程序设计问题中计算机操作对象以及它们之间的关系和操作等。随着计算机技术的发展,计算机加工处理的对象也由纯粹的数值发展到字符、表格和图像等各种具有一定结构的数据,正是基于这种需求,数据结构被广泛应用到操作系统当中来解决各种实际问题。   2.2.2 数据结构与操作系统知识融合的方法及举例   对数据结构的学习与掌握操作系统中的一些算法有着密切的关系,因此可以采用探究法、举例法等教学方法将数据结构的知识和操作系统的知识融合在一起,可以激发学生的求知欲,加深对课堂教学知识的理解和掌握。   例如:银行家算法是避免死锁的有效方法,为实现该算法系统中必须设置若干数据结构。1)可利用资源向量Available,它是一个含有m个元素的二维数组,其

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档