死锁的检测与解除C语言代码.docxVIP

  • 42
  • 0
  • 约3.36千字
  • 约 8页
  • 2019-06-30 发布于浙江
  • 举报
实验名称: 死锁的检测与解除 姓 名: 杨秀龙 学 号: 1107300432 专业班级: 创新实验班111 指导老师: 霍林 实验题目 死锁的检测与解除 实验目的 为了更清楚系统对死锁是如何检测和当死锁发生时如何解除死锁 设计思想 首先需要建立和银行家算法类似的数组结构,先把孤立的进程(没有占用资源的进程)放入一个数组中,根据死锁原理,找出既不阻塞又非独立的进程结点,使之成为孤立的结点并放入孤立数组中,再释放该进程的占用资源,继续寻找下一个孤立结点,如果所有进程都能放入孤立数组中,则系统不会发生死锁,如果有进程不能放入,则系统将发生死锁,并进行死锁解除,撤消所有的死锁进程,释放它们占用的资源。 主要数据结构 和银行家算法类似,需要建立相应的数组 int allocation[M][M]; int request[M][M]; int available[M]; int line[M]; //管理不占用资源的进程 int no[M]; //记录造成死锁的进程 int work[M]; 开始结束 开始 结束 输入总进程数 输入资源数 输入Request矩阵 输入Allocation矩阵 是否发生死锁 死锁解除 否 是 输入a

文档评论(0)

1亿VIP精品文档

相关文档