华北电力大学操作系统---第二章进程管理(修改版)绪论.ppt

华北电力大学操作系统---第二章进程管理(修改版)绪论.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 进程管理;第二章 进程管理;第二章 进程管理;2.1 进程;2.1.1 进程概念 ;2.1.2 进程特性;2.1.2进程特性 ;进程的特征;2.1.3进程状态和转换;2.1.3进程状态和转换;2.1.3进程状态和转换;2.1.4进程的组成;2.1.4进程的组成;2.1.4进程的组成;2.1.5进程控制块和进程队列;2.1.5进程控制块和进程队列;2.1.5进程控制块和进程队列;2.1.6进程控制;2.1.6进程控制;进程创建过程;进程创建过程;创建原语的实现过程; 引起撤消的原因; 撤消原语的实现过程 ; 进程的阻塞原语;进程的唤醒原语; 唤醒原语的实现过程 ;2.2 线程 ; 2.2.1 线程引入和线程概念; 2.2.1 线程引入和线程概念;2.2.1 线程引入和线程概念;2.2.1 线程引入和线程概念 ;2.2.1 线程引入和线程概念;2.2.2 线程的实现 ;2.2.2 线程的实现 ;2.2.3 线程池 ;2.2.4 线程优势;2.3 同步;2.3.1 进程同步和进??间通信;2.3.1 进程同步和进程间通信;5.使用临界区的原则;2.3.2 互斥的实现方式 ;2.4 信号量;2.4.1 整形信号量;2.4.1 整形信号量;2.4.2 记录型信号量;2.4.2 记录型信号量;2.4.2 记录型信号量;2.4.2 记录型信号量;2.4.3 信号量的应用;2.4.3 信号量的应用;2.4.3 信号量的应用;2.4.4 经典同步问题;生产者-消费者问题;2.4.4 经典同步问题;2.4.4 经典同步问题;读者与写者问题 有两组并发进程: 读者和写者,共享一组数据区 要求: 允许多个读者同时执行读操作 不允许读者、写者同时操作 不允许多个写者同时操作;2.4.4 经典同步问题;2.4.4 经典同步问题;2.4.4 经典同步问题;理发店里有一位理发师和一把理发椅,还有 N 张座 椅供等候的顾客休息。在没有顾客的时候,理发师 就会躺在理发椅上睡觉。因此,当有顾客来到理发 店时,他必须先叫醒理发师。如果理发师正在理发 时又有顾客来到,此时,如果有空椅子可坐,他们 就会坐下来等;如果没有空椅子,就会离开。 问题:用信号量和P、V原语写出理发师和顾客行为 的程序描述。;理发师问题;S1 判断有多少人在等待, 有多少把椅子,若椅子 不够,转S5; S2 如果是第一个顾客,就 去叫醒理发师; S3 走到一把空椅子处坐下 等,等理发师叫自己; S4 理发中…; S5 离开理发店。;理发师问题;理发师问题;理发师问题;睡着的理发师问题;睡着的理发师问题;哲学家就餐问题;#define N 5 void philosopher (int i) { while (true) { 思考; 取fork[i]; 取fork[(i+1) % 5]; 进食; 放fork[i]; 放fork[(i+1) % 5]; } }; 为防止死锁发生可采取的措施: 最多允许4个哲学家同时坐在桌子周围 仅当一个哲学家左右两边的筷子都可用时,才允许他拿筷子(?) 给所有哲学家编号,奇数号的哲学家必须首先拿左边的筷子,偶数号的哲学家则反之。 为了避免死锁,把哲学家分为三种状态,思考,饥饿,进食,并且一次拿到两只筷子,否则不拿;用P-V操作描述前趋关系的例子;用P-V操作描述前趋关系(续); 用P.V操作解决司机与售票员的问题;用P.V操作解决司机与售票员的问题;信号量和P、V原语的小结;第二,把信号量视为是某种类型的共享资源的剩余个数,其目的是为了实现对这种类型的共享资源的访问,如各种I/O设备。信号量的取值具有实际的意义,就等于空闲资源的个数。多个进程可以同时使用这种类型的资源,直到所有空闲资源均已用完。其特征是信号量的初始值为N(N?1),然后在一个进程内部对它进行配对的P、V操作。;第三,把信号量作为进程间同步的工具,利用它来设定两个进程在运行时的先后顺序。比如说,它可以是某个共享资源的当前个数,但是由一个进程负责生成该资源,而另一个进程负责消费该资源,由此引发了两个进程之间的先后顺序。其特征是信号量的初始值为N(N ? 0),然后在一个进程里面用对它使用V原语,增加资源个数,而在另外一个进程里面对它使用P原语,减少资源个数,从而实现两个进程之间的同步关系。; 课后练习;2.5 进程通信;2.5.1进程通信的定义;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.5.2消息传递;2.

文档评论(0)

过各自的生活 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档