欢迎来到天天文库
浏览记录
ID:34654935
大小:200.55 KB
页数:3页
时间:2019-03-08
《案例模拟教学法在_写者优先_问题中的应用_王文霞》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第29卷第5期运城学院学报Vol.29No.52011年10月JournalofYunchengUniversityOct.2011案例模拟教学法在“写者优先”问题中的应用①王文霞,贺玉珍(运城学院计算机科学与技术系,山西运城044000)摘要:案例模拟教学法是学生通过自身的行为模拟身边发生的事例来完成课堂的教学内容,让学生提出问题进行讨论,分析。就操作系统中“读者和写者”中的“写者优先”问题,运用案例模拟教学法通过学生模拟读者和写者动作,分析、设计并完成了写者优先的进程同步过程。关键词:案例模拟教学法;写者优先;P、V操作中图分类号:G642文献标志码:A文章
2、编号:1008-8008(2011)05-0110-03案例教学法(case-basedteaching)是由美国商求阅读该书但并不会对其进行修改,我们称这些同学院最先提出的用于教学管理中的一种新型的学习学为“读者”。而有些同学要求“修改图书中的部分方法即指教师在课堂授课过程中,以学生为中心,让内容”,我们称这些同学为“写者”。学生通过自身的行为模拟身边发生的事例来完成上计算机名词术语:一个数据对象若被多个并发课的教学内容,从而达到激发学生对学习产生兴趣进程所共享,且其中一些进程只要求读该数据对象浓厚的一种教学模式。的内容,称为“读者”;而另一些进程则要求修改它
3、,[1]操作系统课程是计算机方面的一门专业主干课称为“写者”。程,它在整个计算机课程体系中具有极其重要的地1.2进一步对提出的问题进行分析(写者优先)位。另外该课程起着承上启下的作用,具有理论性①写者优先是什么意思?强、概念多、算法比较抽象且难以理解等特点,如果是指一个写者申请一个共享资源的时候,如果使用传统的“以教师独自讲授为中心”的教学方法,已经有读者在阅读该资源,那么必须封锁后续来的学生们是很难理解和掌握的。为了使学生产生浓厚读者,以便写者进行修改。的自主学习兴趣,笔者不断进行教学方法的研究和②"reader"和"writer"能不能同时对图书资源改进,其
4、中在课堂教学活动中采用案例模拟教学法进行操作?不能就是其中之一。实验表示上课时通过用这种方法来③"writer"和"writer"能不能同时对图书资源进剖析案例不仅可以帮助学生加深对课程内容的理解行操作?不能和掌握而且还会起到事半功倍的效果。④"reader"和"reader"能不能同时对图书资源1.案例模拟教学法在操作系统课程中的应用进行操作?可以在操作系统课程教学过程中,教师只要把案例1.3通过分析问题写出需要哪些变量:举得贴近学生生活且操作运行得好,就能把即抽象①设置两个共享变量:枯燥又深奥难理解的知识变得浅而好懂。下面笔者◆Readcount=0作为读者
5、计数器用来计算有多把案例模拟教学法应用于“读者和写者”问题中的少个读者阅读过资源。“写者优先”中来讨论其可行性。◆Writecount=0作为写者计数器用来计算有1.1提出问题进行讨论:什么是"reader"和"多少个写者修改过资源。writer"?②设置四个信号量:案例教学法:用一本图书为例子,有些同学只要◆book=1用来互斥"reader"和"writer"以及"①收稿日期:2011-05-28作者简介:王文霞(1979-),女,山西闻喜人,运城学院计算机科学与技术系讲师。·110·writer"和"writer"。①申请Writecount计数器资源,即
6、P(Wmu-◆Rmutex=1用来互斥"reader"之间互斥使用tex),目的是为了计算有多少写者修改过该资源。Readcount计数器。②if(Writecount==0)P(Mark);/表示第一位◆Wmutex=1用来互斥"writer"之间互斥使用写者来时申请标志资源,并且只到最后一位写者走Writecount计数器。才释放该资源,目的是封锁后续读者,达到写者优先◆Mark=1读写进程访问文件前都要先取此标的作用。志,通过区别对待读写进程便可达到提高写进程优③Writecount=Writecount+1;先级的目的。④V(Wmutex);/释放计数器
7、资源,以便另外写1.4运用案例模拟法详细描述"写者优先"的者使用。P、V操作过程,举例读者和写者到达的时间先后顺⑤P(book);/此时读者1拿走了书,所以写者序如下图所示:只能等待书的资源若最后一位读者3此时来到,因为Mark标志此时写者拿走,所以读者3只能等待,即用Mark标志实现了对后续读者的封锁。(3)读者1和读者2读完后要离开,他们所做的操作是:◆先申请Readcount计数器资源,即P(Rmu-tex);◆Readcount=Readcount-1;/对计数器做减1操作。◆if(Readcount==0)V(book);/如果发现计数器为0,表示其是
8、最后一位读者,释放"书"
此文档下载收益归作者所有