摘要: 如果一个正在等待的进程所申请的资源被其他等待进程占有,那么该等待进程有可能无法改变状态,这种情况称为死锁。 当一组进程的每个进程等待一个事件,而这一事件只能由这一组进程的另一进程引起,则这组进程处于死锁状态。 一、系统模型 系统拥有一定数量的资源,资源分成多种类型,每种类型有一定数量的实例。 进程在 阅读全文
posted @ 2018-03-24 20:24 爆炸的果核 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 一、有限缓冲问题 二、读者-作者问题 一个数据对象可以为多个并发进程所共享,有的进程只需要进行读取(读者),有的进程需要读也需要写(作者)。多个读者同时访问共享数据对象,不会出现什么不利的结果。如果,一个作者和其他一些进程同时访共享对象,则很可能产生混乱。 为了避免这样的混乱,要求作者对共享对象有完 阅读全文
posted @ 2018-03-24 19:48 爆炸的果核 阅读(835) 评论(0) 推荐(0) 编辑
摘要: 如何确保共享同一逻辑地址空间(包括代码和数据)的协作进程能有序执行并维护数据的一致性? 一、背景 多个进程并发访问和操作同一数据且执行结果与访问发生的特定顺序有关,称为竞争条件(或竞态条件)。 为什么出现这种情况呢? 因为再CPU调度发生上下文切换后,一个进程A的上下文被保存,而当这个进程A再次被执 阅读全文
posted @ 2018-03-24 04:09 爆炸的果核 阅读(507) 评论(0) 推荐(0) 编辑
摘要: CPU调度是多道程序操作系统的基础。 阅读全文
posted @ 2018-03-24 03:52 爆炸的果核 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 一、概述 进程的概念被提出后,OS一直都是以进程作为能拥有资源和独立运行的基本单位。之后又提出了比进程更小的能独立运行的基本单位 在操作系统中引入进程,为了使多个程序能并发执行,以提高资源利用率和系统吞吐量。那么在操作系统各种引入线程,则是为了减少程序在并发执行时所付出时空开销,使OS有更好地并发执 阅读全文
posted @ 2018-03-24 03:50 爆炸的果核 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 下面的资料讲得很清楚了: https://www.backblaze.com/blog/whats-the-diff-programs-processes-and-threads/ https://msdn.microsoft.com/en-us/library/windows/desktop/ms 阅读全文
posted @ 2018-03-24 01:00 爆炸的果核 阅读(89) 评论(0) 推荐(0) 编辑