- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
“操作系統”课程中进程同步互斥教学研究
“操作系统”课程中进程同步互斥教学研究
摘要:“操作系统”是计算机专业的核心课程之一。由于涉及的学科多、知识点多、课程内容难理解等,该课程的教与学一直是学科难点。成人教育学生普遍起点较低,对纯理论性知识不太乐于接受。本文以该课程的一个核心知识点——进程同步与互斥为实例,探讨如何从学习者的角度设计循序渐进的教学内容,并通过编写程序验证书本理论,提高成教学生的兴趣和实践能力。br 关键词:进程;同步;互斥;信号量;多线程br G642br br 计算机专业中,“操作系统”课程非常重要。操作系统直接高效地管理着计算机的各种软硬件资源,为用户提供使用接口。操作系统是最复杂的系统软件,涉及了程序设计语言、计算机系统结构/硬件、软件设计、网络、算法等。由于该课程内容多而杂,普通高校学生特别是成人教育学生学习比较困难。传统教学方式下,只给学生讲解操作系统原理,学生感到抽象、难懂,近些年来,很多高校加大实验(实践)教学力度,在讲授理论的同时,加入操作系统内核代码分析,如一些学校让学生分析Linux内核。但这势必加大教学工作量,教师无法在五六十学时内完成课程教学。br 为了既让学生深入掌握理论知识,又能通过编码验证理论,本文根据实际教学经验,结合普通高校学生学习该课程的状况,以进程同步互斥为例,从以下四个方面讨论如何循序渐进地展开教学。br br 1 “进程同步与互斥”的引入br br 教学中,首先带领学生回忆在DOS环境下的C语言编程,使学生明白什么是单道程序环境。然后就提高系统的利用率,提出了程序并发执行的载体——进程。程序并发执行时,涉及到相同资源会引起一些问题,但抽象的理论并不利于学生的深入理解,笔者设计了一个银行存取款问题的案例:br 某一银行账户M,尚有存款100元;用户P、Q同时对该账户进行操作,可能会导致数据不一致,操作过程如图1所示:br ① 时间T2T1T0;br ② T0时刻,p0操作读出Mp0=100;br ③ T0时刻,q0操作读出Mq0=100;br ④ T1时刻,p1操作写入数据:存款100,M=Mp0+ 100=200;Q未能获得更新后的数据;br ⑤ T2时刻,q1操作写入数据:存款100,M=Mq0+ 100=200;br br 应该是300元的账户余额,由于操作的并发执行,造成只有200元余额。通过这一具体、直观的例子,让学生明白并发执行与顺序执行有很多不一样的地方,即并发环境中的共享资源,不能同时访问,只可互斥访问。然后带领学生学习并发操作的Bernstein条件、临界资源等知识。br br 2信号量描述br br 怎样才能做到在某一时刻,只有一个进程访问该资源呢,这就是临界资源的管理方法。在介绍了部分不成熟的管理方案后,引入Dijkstra提出的信号量和P、V操作机制。br (1) 信号量定义br 信号量是进程在某一特殊点上被迫停止执行直到接收到一个对应的特殊变量值。进程使用P、V两个原语操作发送和接受信号,如信号没有送到,进程被挂起,直到信号到达。br 信号量按其用途可分为:用于进程互斥访问临界资源的公用信号量;用于进程同步时协调相互关系的私有信号量。br 信号量按其取值可分为:整型信号量、可用资源数目的记录型信号量。br (2)P、V操作定义描述br 信号量结构中需要一个整型计数和一个等待对象。br P操作表示现行进程向系统申请资源,将信号量值减1,如结果小于0,则调用进程被置成等待信号量的状态。br V操作表示现行进程释放该类资源,信号量值加1,系统可用资源数也增加一个,如果s.value≤0,等待队列中有等待进程,则唤醒其中一个。br 信号量定义,PV操作算法C语言描述如下:br br typedef struct {br int value;//信号量值br QueueType waitQueue;//等待队列br } semaphore;br void P(semaphore s){ br --s.value;br if (s.value0){br 阻塞调用进程; br 进程进入等待队列s. waitQueue;br }br }br void V(semaphores){ br ++s.value;br if(s.value=0){br 从等待队列s. waitQueue中取出一个进程;br 将该进程入就绪队列;br }br }br (3) 关于信号量与PV操作的几个结论br 结论1:若信号量s为正值,则该值等于在封锁进程之前对信号量s可施行的P操作数,亦等于s所代表的实际还可以使用的物理资源数。br 结论2:若信号量s为负值,
您可能关注的文档
- “信號与系统”复习课.doc
- “信息安全”課程习题及参考答案.doc
- “先人一步,領先一路”占位的重要性.doc
- “先學后教高效减负”历史课堂教学模式的践行杨峰.doc
- “先鋒传媒手”大赛策划书.doc
- “入侵檢测技术”课程实验教学的设计与研究.doc
- “全可控渦”节能离心压缩机项目一期工程施工组织设计方案.doc
- “全員生产力管理与推行(TPM)”诊断咨询项目建议书.doc
- “全膜法”與离子交换水处理工艺运行成本分析.doc
- “兩型社会”视角下的武汉城市圈低碳经济发展模式初探.doc
- 携程产品营销经理岗面试题库参考答案和答题要点.docx
- 携程产品经理岗面试题库参考答案和答题要点.docx
- 携程供应链管理专员岗面试题库参考答案和答题要点.docx
- 携程交易数据分析师岗面试题库参考答案和答题要点.docx
- 携程公共关系专员岗面试题库参考答案和答题要点.docx
- 携程内部培训专员岗面试题库参考答案和答题要点.docx
- 福建省福州市2023-2024学年高二上学期期末测试英语试卷(含答案).pdf
- 携程人力资源专员岗面试题库参考答案和答题要点.docx
- 福建省三明市2023-2024学年高二上学期期末测试英语试卷(含答案).docx
- 福建省三明市2023-2024学年高二上学期期末测试英语试卷(含答案).pdf
最近下载
- 十年(2013-2022)中考真题集锦之课内文言文35:出师表(教师版)(全国通用).pdf VIP
- 十年(2013-2022)中考真题集锦之课内文言文19:桃花源记(教师版)(全国通用).pdf VIP
- (高清版)BT 39750-2021 光伏发电系统直流电弧保护技术要求.pdf VIP
- 光伏发电工程工程量清单计价规范.pdf
- 2024中国商业医疗险发展研究蓝皮书-南开大学+中国人民保险+蚂蚁保.docx
- ISO 27002 2022 信息安全、网络安全与个人隐私保护-信息安全控制.pdf
- MK铝合金热分析仪.pdf
- 循环平稳信号分析 .pptx
- 组织内外部环境因素识别表.pdf VIP
- 年度中工作汇报PPT.pptx VIP
文档评论(0)