下载此文档

操作系统第三章.ppt


文档分类:IT计算机 | 页数:约67页 举报非法文档有奖
1/67
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/67 下载此文档
文档列表 文档介绍
进程的同步与通信
本章主要内容:
同步与互斥的概念
进程间的相互关系
互斥的PV操作实现
同步的概念
同步的实现
进程通信的定义
进程同步与互斥的基本概念
进程间的相互关系主要分为三种形式:
互斥
同步
通信
同步与互斥的概念

进程间的同步:异步环境下的一组并发进程因直接制约而互相发送消息进而进行互相合作、互相等待,使得各进程按一定的速度执行的过程。
同步是进程间共同完成一项任务时直接发生相互作用的关系。

互斥是一组并发程序中的一个或多个程序段,因共享某一共有资源而导致它们必须以一个不允许交叉执行的单位执行。
互斥也就是不允许两个以上的共享该资源的并发进程同时进入临界区。
互斥的进程间逻辑上是完全独立的,对共享资源没有时间顺序的特征。
并发进程互斥执行满足的准则:
不能假设各并发进程的相对执行速度。
并发进程中的某个进程不在临界区,它不阻止其他进程进入临界区。
并发进程中的若干进程申请进入临界区时,只能允许一个进程进入。
并发进程中的进程从申请进入临界区时开始应在有限的时间内进入临界区。
准则1、2、3保证各并发进程享有平等的、独立的竞争和使用公有资源的权利,且保证每时刻只有一个进程进入临界区。4保证不发生死锁。
临界资源与临界区
临界资源:一次只允许一个进程使用的资源。例如:打印机、读卡机、表格等资源。
临界区:在每个进程中访问临界资源的那段程序。简称CS.
类:把那些不允许交叉执行的临界区按不同的公用数据划分为不同的集合。
PA和PB共享内存MS,MS分为三个区系统区、进程工作区和数据区。系统区主要是堆栈。
Getspace为取空数据块过程,release(ad)为释放数据块过程,ad为待释放数据块的地址。
Getspace: begin local g
G=stack[top]
top=top-1
release(ad): begin
top=top+1
stack[top]=ad
end
设时刻to时,top=h0,则可能按照顺序执行:
首先release(ad)的第一句执行:
T0:top=top+1 top=h0+1
接着执行getspace执行:
T1:G=stack[top] G=stack[h0+1]
T2:top=top-1 top=h0
再是release(ad)的第一句执行:
T3:stack【top】=ad stack【h0】=ad
Getspace的进程取到的是ho+1中一个未定义的值,而release(ad)的进程把空块地址重复放入了h0中。
进程A和进程B互斥使用临界区的过程

操作系统第三章 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数67
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xunlai783
  • 文件大小1.01 MB
  • 时间2017-11-24