车辆行驶死锁问题.docVIP

  • 48
  • 0
  • 约3.95千字
  • 约 6页
  • 2016-10-13 发布于重庆
  • 举报
车辆行驶死锁问题

车辆行驶死锁问题 实验目的 理解死锁产生的原因,掌握预防和预防死锁的方法,以及死锁的检测方法。 通过车辆行驶死锁问题的设计与实现掌握解决死锁的方法。 实验内容 车辆行驶死锁问题,在Linux下用C语言完成下面模型:设有一个T型路口,其中A,B,C,D各处可容纳一辆车,车型方向如图所示。找出死锁并用有序分配法消除之,要求资源编号合理。 A B E:左转 W:直行 D C S:左转 T型路口模拟图 根据上述介绍,编写车辆行驶死锁问题的程序,要求如下: 在Linux下用C语言编程,利用信号量操作实现进程同步; 假设3个方向的车辆数目相等,数只有用户输入,并动态显示车辆行驶的状态,每个车辆行驶所用的时间可以预先设定。 准备知识 了解进程死锁的原理。 掌握自然有序分配法。 实验原理 死锁是指在一组进程中的各个进程占有不会释放的资源,但因互相申请被其他进程所占用不会释放的资源而处于一种永久等待的状态。 死锁的4个必要条件: 互斥条件。 请求与保持条件。 非剥夺条件。 循环等待条件。 死锁预防的基本思想是对进程在申请有关申请资源的时候规定某种策略,如果所有进程都遵守这一策略,则系统就不会进入死锁状态。 本实验主要使用资源有序分配策略来预防死锁。 实验指导 死锁的可能性有两种: E方向两辆车分别位于A和B,S方向一辆车位于C,W方向一辆车位于D。 S方向两

文档评论(0)

1亿VIP精品文档

相关文档