首页 > 范文大全 > 正文

操作系统中进程互斥的多元化教学方法研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇操作系统中进程互斥的多元化教学方法研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:该文针对操作系统课程传统课堂教学方式存在的缺陷,分析了多元化教学方法的特点,指出在操作系统课程运用多元化教学方法的重要意义;然后以进程互斥知识点为例,详细说明了多元化教学方法在操作系统课程课堂教学中的具体实施方法。

关键词:操作系统;多元化;进程互斥

中图分类号:G642文献标识码:A文章编号:1009-3044(2012)04-0955-03

The Multivariate Teaching Mode of the Process Exclusion in Operation System Course

LI JING-feng, LIU Wei, ZHOU Hui-juan

(Institute of Electric Technology, PLA Information Engineering University, Zhengzhou 450004, China)

Abstract: Firstly, the drawbacks in the traditional teaching of Operation System Course are listed. Based on analyzing the special characteristics of multivariate teaching mode, the significance of deploying the multivariate teaching mode in operation system course is given. Then, taking the teaching of the process exclusion as an example, the implementing methodology of the multivariate teaching mode is described in details.

Key words: operation system; multivariate teaching mode; process exlusion

1问题背景

操作系统课程是计算机专业的一门重要专业基础课,进程和并发是该课程的两块重要基石。进程互斥就是多个并发进程因竞争资源而产生的一种特殊制约关系[1]。掌握进程互斥的基本概念以及实现机制,能够有效帮助学生理解进程具有的独立性、异步性等特征,也可以为他们后继学习进程死锁、进程通信等重要知识打下坚实的理论基础。然而,由于这部分内容涉及临界资源、原语等较为抽象的知识概念,所以始终是课程教与学的难点之一[2]。

为提高课堂教学实效,引导学生掌握相关知识,本文尝试运用多元化教学方法,引导学生主动思考,由浅入深、循序渐进地展开学习。

2多元化教学方法的运用研究

本节将阐述如何运用多元化教学方法,按照新课导入、新知讲授和巩固练习三个阶段具体组织进程互斥基本概念及实现机制的课堂教学。

2.1多元化教学的目的

按照专业人才培养方案和课程标准要求,进程互斥一节包含如下知识点[1]:1)进程互斥的基本概念

2)进程访问临界区的基本原则

3)信号量机制的基本原理

多元化教学目的可以概括为:综合运用“任务驱动”、“类比教学”、“演示教学”等教学手段,调动学生的学习积极性、营造师生之间良性课堂教学互动,使学生最终扎实掌握上述重要知识点[3]。

2.2多元化教学的实施

我们可以将实施多元化教学方法的课堂教学实施过程划分为新课导入、新知导入和巩固练习等三个环节,具体课堂教学设计思路描述如下:

1)运用“任务驱动”进行新课导入

为营造良性课堂教学氛围,教师首先利用图书馆管理系统实例说明并发进程共享资源不当很可能导致计算机系统异常。如图1所示,假设图书馆管理系统连有两个终端,每个终端运行同样的借书程序。为简化问题,设所有用户借阅的图书是相同的;设x代表图书的剩余数量。假设某个时刻只剩一本书,即x=1。有读者在终端1上借书,进程P1执行,当程序执行到①处时被中断;终端2上有读者借书,进程P2执行,当程序执行到②处时被中断,此时P1和P2都判断有书,此后二者并发执行。显然,该系统会将同一本 书借给两位读者。通过分析不难发现,发生这种错误的原因是进程P1和P2对必须互斥使用的共享变量x同时进行了操作,使x陷入了不确定状态。

此时,教师首先向学生指出因并发进程争用资源而形成的相互制约关系称为进程互斥。然后,再告诉学生本节课的主要任务就是找到能够实现进程互斥的恰当机制,让学生带着任务进入新知讲授环节。

图1存在错误的图书馆管理系统

2)运用“类比教学”进行新知讲授

在这一环节中,教师首先告诉学生,只有一次只允许一个进程使用的资源才会导致进程互斥,这类资源被称为临界资源。然后启发学生思考计算机系统中有哪些资源属于临界资源呢?学生通常可以举出硬盘、CPU、光驱、全局变量等。接下来,教师引导学生拓展思维,使他们意识到生活中其实有很多临界资源实例,如百货商场的试衣间、银行里的ATM机等。接下来,告诉学生进程使用临界资源的代码段称为临界区。在给出临界资源和临界区的定义后,我们可以将进程互斥的定义具体化:“两个或两个以上的并发进程,不能同时进入自身关于同一种临界资源的临界区,否则可能产生错误的或者不确定的执行结果”。

由于现代系统中并发进程数量成百上千,临界资源种类和数量也很多,所以为了要实现进程互斥必须要分析实现进程互斥需要遵循哪些原则?这里,教师重点运用“类比教学”方法引导学生类比使用百货商场试衣间的习惯出发,分析解决这一问题。

在实际生活中,如果顾客挑完衣服发现试衣间里没人,那么直接使用就可以了。类似的,当一个进程发现与它争用临界资源的其他进程都没有进入相应临界区时,它就可以进入自身相应的临界区。这被称为“空闲让进”原则。如果发现试衣间里已经被占用,那么顾客就必须在外面耐心等待。相似的,当进程发现已经有和它共享临界资源的其他进程进入了相应的临界区,它必须停留在自身相应的临界区外面耐心等待。这被称为“忙则等待”原则。如果试衣间里的人总是不出来,顾客等待一段时间后就会失去耐心,转头去别的店铺。同样,如果一个进程长时间无法进入自身临界区,就意味着它不能使用临界资源去完成任务,系统通常只好终止该进程。为避免这种情况,操作系统应保证希望使用临界资源的进程能在有限时间内进入相应临界区。这被称为“有限等待”原则。最后,由于CPU是系统中最宝贵的资源,所以必须尽量提高其使用效率。因此,规定一旦进程无法进入自身临界区,就必须马上让出CPU供其他进程使用。这被称为“让权等待”原则。本节课要找的进程互斥实现机制必须同时满足进程访问临界区的这四条原则。

接下来,教师就要引导学员思考是否有这样一种实现机制?教师可以启发学生回想商家为了能让顾客安心使用试衣间都采取了哪些措施?商家在试衣间门上安了锁。当顾客使用试衣间前,通常会观察这把锁,只有锁是开启状态时才会走进试衣间,先关锁再在试衣间里面试衣服。如果发现试衣间已被占用,一般会到休息区坐下等待,而不会站在试衣间外面一直等。当顾客用完试衣间,也是先开锁再走出来。当试衣间空闲后,营业员会走过来请顾客去使用试衣间。如果一种机制遵循了上述基本思路,就能够满足进程访问临界区的四条原则。信号量(Semaphore)恰恰就是这样一种进程互斥实现机制。

当运用信号量机制时,我们要给每种临界资源加一把“锁”,即被称为信号量的含有两个分量的一种纪录型数据结构:

typedef struct Semaphor {

int value ;

PCB *blockList;

} S;

其中,第一个分量是整型量value。value的物理含义如下:S.value≥0:临界资源可用数,S.value

为加强学生印象,教师可以引导学生分析信号量机制是否真的遵循了进程访问临界区的四条原则?首先,P操作通过对value

3)运用“演示教学”进行练习巩固

为帮助学生在头脑中主动构建所学新知识点,教师运用“演示教学”方法,鼓励学生走上讲台,尝试利用信号量机制修改进程代码,实现功能正确的图书馆管理系统功能。通过前导环节的教学,学生已经知道解决问题的关键在于实现对共享变量x的互斥访问。依据信号量机制的基本原理,学生应首先对临界资源x设置信号量mutex,并且将mutex.value初值设为1。接下来,应考虑在进程中恰当位置放P/V操作。其中,P操作应放在代码段中首个使用x的语句之前,V操作应放在代码段中最后使用x的语句之后,才是恰当的,如图2所示。通过让学生自行修改代码进行课堂教学演示的方法,提升了学生的课堂教学参与度,激发了学生的学习主动性。

图2利用信号量实现进程互斥

至此,教师和学生通过三个环节的共同学习,最终完成了找寻一种进程互斥实现机制的任务。在此过程中,学生也对进程互斥、临界资源、临界区、信号量机制等知识点有了较为深入的理解。

3结束语

在课堂授课过程中,多元化教学方法是教师依据学习过程客观规律和学生认知结构,综合运用多种授课方式,主动引导学生获取和掌握知识的一种有效教学模式。本文对多元化教学在操作系统课程中的运用进行了深入探讨,以进程互斥为例给出了多元化教学实施方法。多元化教学经过多年的教学实践,已经成为该课程的课堂教学亮点,能够调动学生成为教学活动的积极参与者在课堂上营造出积极发表见解和争论的良好氛围,课堂教学实效显著提升。

参考文献:

[1]汤小丹,梁红兵,哲凤屏,等.计算机操作系统[M].3版.西安:西安电子科技大学出版社,2007.

[2]陈荣.《计算机操作系统》课程教学问题分析与教学方法研究[J].新疆广播电视大学学报,2008(3):37-39.

[3]葛艳,刘国柱,杜军威,等.《操作系统原理》课程的多元化教学模式研究[J].电脑知识与技术,2010(5):1495-1497.