上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 死锁的检测 死锁的解除 阅读全文
posted @ 2021-08-08 14:00 毋纵年华 阅读(78) 评论(0) 推荐(0)
摘要: 什么是安全序列 安全序列、不安全状态、死锁的联系 可以在资源分配之前预先判断这次分配是否会导致系统进入不安全状态,以此决定是否答应资源分配请求。这也是“银行家算法”的核心思想。 银行家算法 代码实现银行家算法: 阅读全文
posted @ 2021-08-06 17:32 毋纵年华 阅读(79) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2021-08-05 19:45 毋纵年华 阅读(38) 评论(0) 推荐(0)
摘要: 破坏互斥条件 采用SPOOLing技术之后,进程1和进程2使用打印机的请求被输出进程接收,则进程1和进程2则可以开始往下执行;之后输出进程会根据各个进程请求顺序,依次使用打印机,打印输出 破坏不剥夺条件 破坏请求和保持条件 源源不断有A类进程和B类进程到达,导致了C类进程的饥饿 破坏循环等待条件 假 阅读全文
posted @ 2021-08-05 19:27 毋纵年华 阅读(182) 评论(0) 推荐(0)
摘要: 注意: (1)死锁是在等待资源的分配,所以发生死锁的进程一定处于阻塞态 (2)发生饥饿的进程既可能是阻塞态 (如长期得不到需要的I/o设备),也可能是就绪态 (长期得不到处理机) (3)死循环的进程可能是 运行态的 死锁的必要条件 什么时候会产生死锁? (我们可以把同步信号量和互斥信号量看成是一种系 阅读全文
posted @ 2021-08-05 18:45 毋纵年华 阅读(194) 评论(0) 推荐(0)
摘要: 如果实现互斥的P操作在实现同步的P操作之前,可能会发生死锁 (1)管程也是用来实现进程的互斥和同步的 (2)共享数据结构:生产者和消费者问题中,生产者和消费者都需要访问的缓冲区,可以用一种数据结构来表示此缓冲区,来对缓冲区进行管理 互斥问题 同步问题:两个消费者进程先执行,生产者进程后执行时;先开始 阅读全文
posted @ 2021-08-05 10:46 毋纵年华 阅读(170) 评论(0) 推荐(0)
摘要: 如何避免临界资源分配不当造成的死锁现象,是哲学家问题的精髓 几种可行方案(详解方案三): 情况一: 情况二: 情况三: 阅读全文
posted @ 2021-08-04 19:48 毋纵年华 阅读(64) 评论(0) 推荐(0)
摘要: 用P、V操作来实现 要求 如果所有读者进程在访问共享文件之前都执行P(rw)操作,那么会导致各个读进程之间也无法同时访问文件。 读者写者问题的核心思想――怎么处理该问题呢? 阅读全文
posted @ 2021-08-04 19:21 毋纵年华 阅读(61) 评论(0) 推荐(0)
摘要: 注意: 加入const之后,一旦有修改的操作就会报错,可以防止我们的误操作 阅读全文
posted @ 2021-08-04 16:51 毋纵年华 阅读(200) 评论(0) 推荐(0)
摘要: 注意: 如果不想修改主函数中的数据,用值传递,反之用地址传递 点击查看代码 #include<iostream> #include<string> using namespace std; struct student { //成员列表 string name; int age; int score 阅读全文
posted @ 2021-08-04 16:31 毋纵年华 阅读(128) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 9 下一页