码迷,mamicode.com
首页 > 系统相关 > 详细

进程管理

时间:2016-10-06 00:33:04      阅读:339      评论:0      收藏:0      [点我收藏+]

标签:

进程定义:

(1) 进程是程序的一次执行。
(2) 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
(3) 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独
立单位。

进程的三种状态:

1) 就绪状态:进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行。

2) 执行状态:进程已获得CPU,其程序正在执行。

3) 阻塞状态:正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。致使进程阻塞的典型事件有:请求I/O,申请缓冲空间等。

技术分享

图1 进程的三种基本状态极其转换

 

以上为系统的基本状态,但是在另一些系统中又增加了一些新状态,例如挂起状态:

4) 挂起状态:在资源不足的情况下,操作系统对在内存中的程序进行合理的安排,其中有的进程被暂时调离出内存,当条件允许的时候,会被操作系统再次调回内存,重新进入等待被执行的状态即就绪态,系统在超过一定的时间没有任何动作。

(1)活动就绪(Readya):当进程处于未被挂起的就绪状态时,称此为活动就绪状态。(2) 静止就绪(Readys):当进程被挂起后,该进程便转变为静止就绪状态,处于静止就绪状态的进程不再被调度执行。(3) 活动阻塞(Blockeda):当进程处于未被挂起的阻塞状态时,称它是处于活动阻塞状态。(2) 静止阻塞(Blockeds):当进程挂起后,进程便转变为静止阻塞状态。

技术分享

图2 具有挂起状态的进程状态图

 

 5) 创建状态和终止状态:在实际的系统中,为了管理的需要,还存在着创建状态和终止状态。

                                                     技术分享技术分享

图3 引入创建状态和终止状态的状态图

 

前驱图前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系,即后一个必须在前一个条件满足后才能执行。

 并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。

技术分享

图4 并发程序的前驱图

进程同步:(1) 间接相互制约关系。同处于一个系统中的进程,通常都共享着某种系统资源,如共享CPU、共享I/O 设备等。所谓间接相互制约即源于这种资源共享,例如,有两个进程A和B,如果在A 进程提出打印请求时,系统已将惟一的一台打印机分配给了进程B,则此时进程A只能阻塞;一旦进程B将打印机释放,则A进程才能由阻塞改为就绪状态。(2) 直接相互制约关系。这种制约主要源于进程间的合作。例如,有一输入进程A通过单缓冲向进程B 提供数据。当该缓冲空时,计算进程因不能获得所需数据而阻塞,而当进程A把数据输入缓冲区后,便将进程B唤醒;反之,当缓冲区已满时,进程A因不能再向缓冲区投放数据而阻塞,当进程B将缓冲区数据取走后便可唤醒A。

 

 

进程管理

标签:

原文地址:http://www.cnblogs.com/feichangnice/p/5933272.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!