- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验2 进程同步与死锁 实验内容1 读者—写者问题 实验内容2 车辆行驶死锁问题 读者—写者问题 实 验 目 的 实 验 内 容 准 备 知 识 实 验 原 理 实 验 指 导 实验目的 理解进程同步的原理和机制; 通过读者—写者问题的设计与实现进一步掌握进程同步在实际中的应用。 实验内容 编写读者—写者问题的程序,要求如下: (1)在Linux下用C编程,利用信号量操作实现进程同步; (2)读写请求随机产生(比如敲击键盘上的r和w),并动态显示当前的状态(读的时候有多少读者,有多少个写者在等待;写的时候是谁在写,还有多少写者和读者在等待),每个读者和写者用的时间可以预先设定。 本例中,有一个初始化的数组,读者和写者均是对此数组进行操作。写者是随机对数组中的数字进行修改,修改的值也是随机的,这样更直观、更有助于理解。 准备知识 了解如何创建线程及如何销毁线程; 分析线程的创建过程,理解同步信号量与互斥信号量的作用 实验原理 同步 同步是指进程间共同完成一项任务时直接发生相互作用的关系,即进程在执行的时间顺序上必须遵循特定的次序,这种时序关系称为同步关系。例如:B进程在运行时需要A进程的输出结果作为资源,那么A进程必须在B进程执行之前完成,这就确定了A、B两进程间的同步关系。 互斥 这是一种更常见的进程之间的相互关系,通常是由于多个进程共享某些资源而引起的,而这些进程往往彼此独立。例:系统只有一台打印机,有两个进程同时使用它输出数据的话,打印结果将使这两个进程的输出内容混杂在一起。为了保证共享临界资源的各个进程都能正确运行,当临界资源被一个进程访问时,其他访问进程必须等待。多个进程在共享临界资源时的这种制约关系称为进程互斥。 实验指导 设有一组共享数据DB和两组并发进程, 一组进程只对此组数据执行读操作, 另一组进程可对此组数据执行写操作(同时也可以执行读操作),将前一组进程称作读者,后一组进程称作写者。为了保证共享数据的完整性,要求: (1)多个读者的操作可以同时进行; (2)多个写者的操作不可同时进行; (3)任何读者与写者的操作不可同时进行。 实验指导 实验的流程图如图所示 车辆行驶死锁问题 实 验 目 的 实 验 内 容 准 备 知 识 实 验 原 理 实 验 指 导 实验目的 理解死锁的产生原因,掌握预防和避免死锁的方法,以及死锁的检测方法; 通过车辆行驶死锁问题的设计与实现掌握解决死锁的方法。 实验内容 车辆行驶死锁问题,在Linux下用C语言完成下面模型:设有一个T型路口,其中A、B、C、D处各可容纳一辆车,车行方向如图所示,试找出死锁并用有序分配法消除之。要求资源编号合理。 请根据上述介绍,编写车辆行驶死锁问题的程序,要求: (1)在Linux系统下用C编程,利用信号量操作实现进程同步; (2)假设三个方向的车辆数目相等,数值由用户输入,并动态显示车辆的行驶状态,每个车辆行驶所用的时间可以预先设定。 准备知识 了解进程死锁的原理; 掌握自然有序分配法。 实验原理 死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所占用不会释放的资源而处于的一种永久等待状态。 死锁的四个必要条件: (1)互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。 (2)请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。 (3)非剥夺条件(No pre-emption):已分配的资源不能从相应的进程中被强制地剥夺。 (4)循环等待条件(Circular wait):系统中若干进程组成环路,该环路中每个进程都在等待相邻进程已占用的资源。 实验指导 死锁的可能性有两种: (1)E方向两台车分别位于A和B、S方向一台车位于C、W方向一台车位于D。 (2)S方向两台车分别位于B和C、E方向一台车位于A、W方向一台车位于D。 实验指导 实验的程序流程图如图所示
您可能关注的文档
- 速汇通外贸收款介绍.ppt
- 人教版八年级上册第二单元《老王》——曹鹏.ppt
- 逻辑代数中的三种基本运算.ppt
- 逻辑学真值表及命题演算.ppt
- 人教版八年级上册语文课件大自然的语言PPT.ppt
- 逻辑架构与UML包图详解.ppt
- 遇到困难的时候课件.ppt
- 实战营销的技巧与方法(最新).ppt
- 人教版八年级下第二单元第六课雪.ppt
- 实用可爱字母模版.ppt
- 闽教版(三起)(2024)三年级上册(2024)Review 1-2课件.pptx
- 【情境课堂】(单元思考与行动)第一单元 少年有梦 课件 统编版道德与法治七年级上册.pptx
- 6.5 求比一个数多(少)百分之几的数是多少 课件 人教版 六年级上册数学.pptx
- 高中地理人教版必修第一册3.3 海水的运动 课件.pptx
- 苏教版高中化学必修第一册 专题1物质的分类及计量 1.2.1物质的量 教学课件.pptx
- 【人教七上数学情境课堂课件】 1.1.2 正数和负数的应用 课件.pptx
- 《消息二则-人民解放军百万大军横渡长江》课件 部编语文八年级上册.pptx
- 1.2地球运动的地理意义(第1课时) 课件 高二地理人教版选择性必修第一册.pptx
- 2.2大气受热过程和大气运动(第一课时)课件 高一地理人教版必修第一册.pptx
- 古诗歌四首《次北固山下》课件 初中语文七年级(上).pptx
文档评论(0)