qileilove

blog已经转移至github,大家请访问 http://qaseven.github.io/

轻松学——操作系统

  进程

  1、进程的状态:

  这里边我们主要是要讲的内容就是这两个图:我们通过这两个图来介绍一些相关的知识点:

  三态图:

  我们还是来看图进行分析:

  我们就这个图进行分析各个关键部分:这些关键在于理解,很Easy的,或者你把这个图画出来也就马上明白了。

  就绪:就是“万事俱备只欠东风”,就差CPU的调度了,只要CPU一调度便可运行。

  运行:就是在就绪状态的基础上得到了CPU的调度。

  等待(阻塞):还没具备运行条件,等待时机的状态,我们从这个图也能看的出来,等待状态不能直接运行,必须要经过就绪这个状态的,所以等待状态除了等待CPU调度之外,还缺少某些运行所需的条件。

  五态图:

   我们把几个关键的概括一下:其实这个图跟咱们上面那个三态图是吻合的,只是把三态图分的更细了点我觉得;所以分析五态图咱们只需要把三态图掌握好就行, 就这么easy;我们再看看几个关键的:主要是三态图的一个动态的一个表示过程,所以这些概念的东西,结合前面的三态图理解就非常容易了:

  就绪——>运行:就是三态图中的,条件被CPU选中了。

  运行——>就绪:运行超时或者是条件被更高优先级进程剥夺。

  运行——>等待:条件还没具备运行条件,等待某一事件的发生。

  等待——>就绪:条件是等待的事件已发生,具备了运行条件。

  在这里边,还非常要主要这些箭头的指向。

  2、进程死锁:

  死锁是进程管理设计不当造成的;进程死锁是一个进程在等待一个不可能发生的事;系统死锁是一个或多个进程产生死锁。

  其实对于这方面的知识,跟咱们生活是很有联系的。比如我们使用过打印机都知道。所以把生活的场景投进去理解,就很简单了。

  死锁产生的必要条件:

  互斥条件:即一个资源每次只能被一个进程使用。

  保持和等待条件:有一个进程已获得了一些资源,但因请求其他资源被阻塞时,对已获得的资源保持不放。

  不剥夺条件:有些系统资源是不可剥夺的,当某个进程已获得这种资源后,系统不能强行收回,只能由进程使用完时自己释放。

  环路等待条件:若干个进程形成环形链,每个都占用对方要申请的下一个资源。

  解决死锁的策略

  死锁预防:我们要求用户申请资源时一起申请所需的全部资源,这就破坏了保持和等待条件:将资源分层,得到上一层资源后,才能申请下一层资源,它破坏了环路等待条件。预防通常会降低系统的效率。

  死锁避免:避免是指进程在每次申请资源时判断这些操作是否安全,典型算法是”银行家算法“。但这种算法会增加系统的开销。

  死锁检测:前两者是事前措施,而死锁的检测则是判断系统是否处于死锁状态,如果是,则执行死锁解除策略。

  死锁解除:这是与死锁检测结合使用的,它使用的方式就是剥夺。即将资源强行分配给别的进程。

  接下来,我们来实战一下:

  银行家算法:

  找了这么一个例子跟大家分析分析我的理解过程:

  首先求剩下的资源数:

  R1=9-(1+2+2++1)=2

  R2=8-(2+1+1+2+1)=1

  R3=5-(1+1+3)=0

  我们从这个表中很容易的分析出:还需资源数=最大需求量-已分配资源数

  那么需要一个系统是安全的,那么这个进程就不能产生死锁。现在就一目了然了都:

  从我们剩下的资源数和还需要的资源数,我们剩下的R1=2、R2=1、R3=0这个只能符合P2进程的0、1、0;

  那么我们给P1运行完成之后,我们的资源要释放,所以我们资源=现有资源+已经分配的:

  那么我们现在就有了R1、R2、R3的资源分别为:4、2、1;我们再观察一下看哪个进程需要资源符合我们的释放的资源的:

  那只能是P4了,因为需要的资源为:0、0、1;而我们现在有的资源为:4、2、1,完全能满足这个进程P4的要求;我们看图:

  那么这两个进程就完成了,接下来我们还继续对比着来看:

  我们剩下的资源5、4、1。这时候我们发现了P5和P1都能满足他们所需的资源:所以P5和P1就可以随心所欲了,那我们不如就从需要资源小的开始分配试试;

  这时候我们发现我们剩余的资源又能满足到P3和P1进程了。所以我们的答案就不止一种了:

  我们要是先分配P1,再分配P5,再到P3.结果就是:

  虽然进程的这个顺序有很多种,在都满足不造成死锁的情况下,是否有最优的排序呢?我觉得应该是有的,就是在不发生死锁的情况下,我们应该是优先给予需要资源少的进程。

posted on 2012-04-17 13:33 顺其自然EVO 阅读(206) 评论(0)  编辑  收藏 所属分类: 测试学习专栏


只有注册用户登录后才能发表评论。


网站导航:
 
<2012年4月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

导航

统计

常用链接

留言簿(55)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜