已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验2 进程同步与死锁,实验内容1 读者写者问题 实验内容2 车辆行驶死锁问题,读者写者问题,实 验 目 的 实 验 内 容 准 备 知 识 实 验 原 理 实 验 指 导,实验目的,理解进程同步的原理和机制; 通过读者写者问题的设计与实现进一步掌握进程同步在实际中的应用。,实验内容,编写读者写者问题的程序,要求如下: (1)在Linux下用C编程,利用信号量操作实现进程同步; (2)读写请求随机产生(比如敲击键盘上的r和w),并动态显示当前的状态(读的时候有多少读者,有多少个写者在等待;写的时候是谁在写,还有多少写者和读者在等待),每个读者和写者用的时间可以预先设定。 本例中,有一个初始化的数组,读者和写者均是对此数组进行操作。写者是随机对数组中的数字进行修改,修改的值也是随机的,这样更直观、更有助于理解。,准备知识,了解如何创建线程及如何销毁线程; 分析线程的创建过程,理解同步信号量与互斥信号量的作用,实验原理,同步 同步是指进程间共同完成一项任务时直接发生相互作用的关系,即进程在执行的时间顺序上必须遵循特定的次序,这种时序关系称为同步关系。例如:B进程在运行时需要A进程的输出结果作为资源,那么A进程必须在B进程执行之前完成,这就确定了A、B两进程间的同步关系。 互斥 这是一种更常见的进程之间的相互关系,通常是由于多个进程共享某些资源而引起的,而这些进程往往彼此独立。例:系统只有一台打印机,有两个进程同时使用它输出数据的话,打印结果将使这两个进程的输出内容混杂在一起。为了保证共享临界资源的各个进程都能正确运行,当临界资源被一个进程访问时,其他访问进程必须等待。多个进程在共享临界资源时的这种制约关系称为进程互斥。,实验指导,设有一组共享数据DB和两组并发进程, 一组进程只对此组数据执行读操作, 另一组进程可对此组数据执行写操作(同时也可以执行读操作),将前一组进程称作读者,后一组进程称作写者。为了保证共享数据的完整性,要求: (1)多个读者的操作可以同时进行; (2)多个写者的操作不可同时进行; (3)任何读者与写者的操作不可同时进行。,实验指导,实验的流程图如图所示,车辆行驶死锁问题,实 验 目 的 实 验 内 容 准 备 知 识 实 验 原 理 实 验 指 导,实验目的,理解死锁的产生原因,掌握预防和避免死锁的方法,以及死锁的检测方法; 通过车辆行驶死锁问题的设计与实现掌握解决死锁的方法。,实验内容,车辆行驶死锁问题,在Linux下用C语言完成下面模型:设有一个型路口,其中A、B、C、D处各可容纳一辆车,车行方向如图所示,试找出死锁并用有序分配法消除之。要求资源编号合理。,请根据上述介绍,编写车辆行驶死锁问题的程序,要求: (1)在Linux系统下用C编程,利用信号量操作实现进程同步; (2)假设三个方向的车辆数目相等,数值由用户输入,并动态显示车辆的行驶状态,每个车辆行驶所用的时间可以预先设定。,准备知识,了解进程死锁的原理; 掌握自然有序分配法。,实验原理,死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所占用不会释放的资源而处于的一种永久等待状态。 死锁的四个必要条件: (1)互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。 (2)请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。 (3)非剥夺条件(No pre-emption):已分配的资源不能从相应的进程中被强制地剥夺。 (4)循环等待条件(Circular wait):系统中若干进程组成环路,该环路中每个进程都在等待相邻进程已占用的资源。,实验指导,死锁的可能性有两种: (1)E方向两台车分别位于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年山西省临汾市以重点学校高一语文分班考试试题及答案
- 2026年物业管理师考试基础知识真题试卷
- 2026年造价工程师考试《土建工程计量》培训试卷
- 2026宁波广电面试题及答案
- 2026配电柜面试题库及答案
- 2026期刊编剧面试题及答案
- 2026青协会的面试题目及答案
- 2026人口协管面试题目及答案
- 2026软件公司的面试题及答案
- 2026摄影基础面试题及答案
- 广东工业大学《机械设计基础E》2023-2024学年第二学期期末试卷
- 儿童绘本故事《蚂蚁搬家》
- 西南大学《机械制造技术基础》2023-2024学年第一学期期末试卷
- 劳务合作合同终止协议书
- 河南省南阳市2023-2024学年高二下学期期终质量评估+物理试卷答案
- 乡村法律明白人培训课件
- 超星尔雅《中国古建筑欣赏与设计》期末考试答案三套
- 3DS《合金装备食蛇者3D》迷彩面彩动物耀西频道全收集
- 人教版二年级语文数学下册期末试卷6套
- 中职中国旅游地理教案:青藏旅游区(一)
- 人教版PEP英语五年级下册单词默写四线三格
评论
0/150
提交评论