- 1、本文档共86页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章进程管理详解
进程间的互斥 临界区 临界资源: 虽然在多道程序系统中的诸进程可以共享各类资源,然而临界资源却是一次只能供一个进程使用,使用完后归还系统,才能给其他进程使用。(如上例变量COUNT是临界资源)。 进程对临界资源必须互斥使用,为实现对临界资源的互斥访问,应保证诸进程互斥地进入自己的临界区。把每个进程中访问临界资源的那段代码称为临界区。为此,每个进程在进入其临界区前,必须先申请,经允许后方能进入。 同步机制应遵循的准则 对于等待进入临界区的进程而言,它必须立即释放处理机,以免进程“忙等” 让权等待 对要求进入临界区的进程,应在有限时间内使之进入,以免陷入“死等”。 有限等待 当已有进程处于临界区内时,其它试图进入临界区的进程必须等待,以保证它们互斥地进入临界区。 忙则等待 当无进程处于临界区内时,必须让一个要求进入临界区的进程立即进入,以有效地利用临界资源。 空闲让进 解决互斥的锁机制 实现互斥的一种软件方法是采用锁机制,即提供一对上锁(Lock)和开锁(UnLock)原语,以及一个锁变量W。 进程进入临界区前,通过锁变量来判断临界资源是否被占用。 下面给出实现临界区互斥的锁操作法: 这种方法使用了一个物理实体,称为锁,用W来表示。锁有两种状态:W=0 表示锁已打开;W=1 表示锁被关闭。 加锁原语用LOCK (W)表示,其操作为: 测试W,若W=1,表示资源正在使用,继续反复测试; 若W=0,置W=1(加锁)。可描述为 L: if W=1 then go to L else W∶= 1; 开锁原语用UNLOCK (W)表示, 可描述为 W∶=0; 于是,两个进程P1,P2使用如下程序实施进程的互斥: 进程P1 进程P2 LOCK (W) LOCK (W) S1 S2 UNLOCK (W) UNLOCK (W) 其中S1和S2分别为进程P1 和P2 的临界区。 信号量机制 信号量机制是一种卓有成效的进程同步工具,被广泛应用于单处理机和多处理机系统,以及计算机网络中。 锁机制仅能表示“开”与“关”两种状态;开、关原语必须作为原子操作来进行;关锁原语中反复测试W状态,浪费了处理机的时间;锁机制只能解决互斥,不能用于同步。信号量同步机制能完满地解决上述问题,以下介绍经典信号量机制。 P操作:意味着请求分配一个单位资源 V操作:意味着释放一个单位资源 P、V操作是定义在信号量S上的两个操作,其定义如下: P(S): ① S∶=S-1; ② 若S≥0,则调用P(S)的进程继续运行; ③ 若S0,则调用P(S)的进程被阻塞,并把它插入到等待信号量S的阻塞队列中。 V(S):① S∶=S+1; ② 若S0,则调用V(S)的进程继续运行; ③ 若S≤0,从等待信号量S的阻塞队列中唤醒头一个进程, 然后调用V(S)的进程继续运行。 P、V操作可表示为如下两个过程: Procedure P(Var S:Semaphore); begin S∶=S-1; if S0 then W(S) end; {P} Procedure V(Var S:Semaphore); begin S∶=S+1; if S≤0 then R(S) end; {V} 互斥、同步例子 互斥例子 三个进程共用两个I/O缓冲区 解:设用信号量S表示共享资源,S初始值为2 同步例子 设有A、B两进程,A进程从卡片机读信息入缓冲区,B进程负责加工读进缓冲区的卡片信息。 解:设信号量S1:缓冲区中有否可供加工的信息,初始值为0; 信号量S2:缓冲区是否为空,初始值为1; 在输入进程A中,可以把P(S2)调到V(S1)后面,而把信号量S2的初始值设为0。大家可以自行分析这两个进程如何实现同步。 用P
您可能关注的文档
- 第2章软件体系结构概述详解.ppt
- 第2章软件项目综合管理详解.ppt
- 抗凝药分类及作用机制分解.ppt
- 昆虫的基础知识分解.ppt
- 惊喜求婚策划案分解.ppt
- 第2章超声波检测物理基础详解.ppt
- 昆虫的生殖和发育终分解.ppt
- 第2章进程的描述与控制(part5)详解.ppt
- 第2章运算方法和运算器详解.ppt
- 第2章计算机与计算机网络详解.ppt
- 2.1等式性质与不等式性质(培优教学课件)人教A版2019必修第一册.pptx
- 4《窦娥冤(节选)》课件-2024-2025学年统编版高一语文必修下册.pptx
- 13.2+磁感应强度+磁通量-2025-2026学年高二物理同步备课(人教版2019必修第三册).pptx
- 8.3《琵琶行(并序)》课件+2025-2026学年统编版高一语文必修上册.pptx
- 6.《芣苢》《插秧歌》联读课件+2025-2026学年统编版高一语文必修上册.pptx
- +2026届高三化学有效复习备考策略+课件.pptx
- 2025年高考英语读后续写阅卷报告+课件-2026届高三英语上学期一轮复习专项.pptx
- 2025年普通高等学校招生全国统一考试:全国I卷语文真题解析.pptx
- 2026届高考语文一轮复习备考:精准施策+专注前行+课件.pptx
- 1.1《子路、曾晳、冉有、公西华侍坐》课件-2024-2025学年统编版高一语文必修下册.pptx
最近下载
- 存储网络配置指导华为oceanstor sns2124 2224 2248 3096 5192 5384产品概述.pdf VIP
- YB∕T 4001.3-2020- 钢格栅板及配套件 第3部分:钢格板楼梯踏板.pdf VIP
- 中国钢结构制造企业资质管理规定(暂行).pdf
- VTE的治疗与预防.pptx VIP
- (公共英语等级考试三级大纲词汇4107个记忆情况.doc VIP
- [医疗机构设置审批有关规定.doc VIP
- 建设工程档案管理课件.ppt VIP
- DD 2019-02 固体矿产地质调查技术要求(1:50000).pdf VIP
- xx太阳能发电公司50MWp光伏电站项目安全设施设计专篇.pdf VIP
- 物业管理单位服务费用测算明细表.pdf VIP
文档评论(0)