进程的状态

三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化。进程一般有3种基本状态:运行、就绪和阻塞。

(1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。

在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。

(2)就绪:当一个进程获得了除处理机以外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。就绪进程可以按多个优先级来划分队列。

例如,当一个进程由于时间片用完而进入就绪状态时,排入低优先级队列;当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。

(3)阻塞:也称为等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O而等待I/O完成等)而暂时停止运行,这时即使把处理机分配给进程也无法运行,故称该进程处于阻塞状态。

转自:http://blog.sina.com.cn/s/blog_7c03bb1f0100wcco.html

五态模型:对于一个实际的系统,进程的状态及其转换更为复杂。引入新建态终止态构成了进程的五态模型。

新建态: 对应于进程刚刚被创建时没有被提交的状态,并等待系统完成创建进程的所有必要信息。 进程正在创建过程中,还不能运行。

操作系统在创建状态要进行的工作包括分配和建立进程控制块表项、建立资源表格(如打开文件表)并分配资源、加载程序并建立地址空间表等。

创建进程时分为两个阶段,第一个阶段为一个新进程创建必要的管理信息,第二个阶段让该进程进入就绪状态。

由于有了新建态,操作系统往往可以根据系统的性能和主存容量的限制推迟新建态进程的提交。

终止态:进程已结束运行,回收除进程控制块之外的其他资源,并让其他进程从进程控制块中收集有关信息(如记帐和将退出代码传递给父进程)。

类似的,进程的终止也可分为两个阶段,第一个阶段等待操作系统进行善后处理,第二个阶段释放主存。

由于进程的不断创建,系统资源特别是主存资源已不能满足所有进程运行的要求。这时,就必须将某些进程挂起,放到磁盘对换区,暂时不参加调度,以平衡系统负载;

进程挂起的原因可能是系统故障,或者是用户调试程序,也可能是需要检查问题。

活跃就绪是指进程在主存并且可被调度的状态。

静止就绪(挂起就绪):是指进程被对换到辅存时的就绪状态,是不能被直接调度的状态,只有当主存中没有活跃就绪态进程,或者是挂起就绪态进程具有更高的优先级,系统将把挂起就绪态进程调回主存并转换为活跃就绪。

活跃阻塞是指进程已在主存,一旦等待的事件产生便进入活跃就绪状态。

静止阻塞是指进程对换到辅存时的阻塞状态,一旦等待的事件产生便进入静止就绪状态。

时间: 2024-10-15 22:08:59

进程的状态的相关文章

进程(三)—— 进程的状态

进程的状态 概要 进程创建 进程执行 进程等待 进程抢占 进程唤醒(就绪) 进程结束 进程创建 引起进程创建的情况 系统初始化时 用户请求创建一个新进程 正在运行的进程 执行了创建进程的系统调用 进程执行 内核选择一个就绪的进程,让它占用处理机并执行 如何执行?==> CPU调度再讲 ! 进程等待 进程进入等待(阻塞)的情况: 请求并等待系统服务,无法马上完成 启动某种操作,无法马上完成 需要的数据 没有到达 只有进程自身才能知道 何时需要 等待某种事件的 发生 进程抢占 进程会被抢占的情况 高

(转)进程的状态

转自:http://blog.sina.com.cn/s/blog_7c03bb1f0100wcco.html 三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化.进程一般有3种基本状态:运行.就绪和阻塞. (1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态.处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个.在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程. (2)就绪:当一个进程获得了除处

进程的状态与转换

进程在其生命周期内通常进程有以下三种状态: 1) 运行状态:进程正在处理机上运行.在单处理机环境下,每一时刻最多只有一个进程处于运行状态. 2) 就绪状态:进程已处于准备运行的状态,即进程获得了除处理机之外的一切所需资源,一旦得到处理机即可运行. 3) 阻塞状态,又称等待状态:进程正在等待某一事件而暂停运行,如等待某资源为可用(不包括处理机)或等待输入/输出完成.即使处理机空闲,该进程也不能运行. 注意区别就绪状态和等待状态:就绪状态是指进程仅缺少处理机,只要获得处理机资源就立即执行:而等待状态

操作系统——进程的状态及转换

1.    为什么要分开就绪和阻塞状态 答:因为就绪态只需要等待处理机,而阻塞态可能在等待输入输出,即使分配给处理机也是徒劳,所以两状态图不妥.对于调度进程,只需要等待就绪队列里的进程,因为阻塞状态可以转换到就绪队列里去. 2.    进程五状态 1)       新状态:进程已经创建,但未被OS接纳为可执行进程.(还没有申请到相应的资源). 2)       就绪态:进程做好了准备,准备执行(只等待处理机). 3)       执行状态:该进程正在执行(单处理机,某一时刻仅一个进程占用处理机)

[转] 进程的状态

为了对进程从产生到消亡的整个过程进行跟踪和描述,就需要定义各种进程的各种状态并制定相应的状态转换策略,以此来控制进程的运行. 不同的操作系统对进程的状态解释不同,但是最基本的状态都是一样的.包括一下三种: 运行态:进程占用CPU,并在CPU上运行: 就绪态:进程已经具备运行条件,但是CPU还没有分配过来: 阻塞态:进程因等待某件事发生而暂时不能运行: 下面是3种状态转换图: 当然理论上上述三种状态之间转换分为六种情况: 运行--->就绪:这是有调度引起的,主要是进程占用CPU的时间过长 就绪--

进程的状态和切换(学习笔记)

时间:2014.05.28 地点:基地 ------------------------------------------------------------------------------- 一.进程的三种基本状态 进程的三种基本状态包括:就绪状态,执行状态,阻塞状态 1.就绪状态 当进程分配得到除CPU之外的所有必要资源后,只要再获得CPU就可以立即执行了,万事俱备只欠东风而已.该状态即就绪状态,一个系统中处于就绪状态的进程可能有很多,将他们排成一个队列,形成一个就绪队列. 2.执行状

Linux内核调试技术——进程D状态死锁检测

Linux的进程存在多种状态,如TASK_RUNNING的运行态.EXIT_DEAD的停止态和TASK_INTERRUPTIBLE的接收信号的等待状态等等(可在include/linux/sched.h中查看).其中有一种状态等待为TASK_UNINTERRUPTIBLE,称为D状态,该种状态下进程不接收信号,只能通过wake_up唤醒.处于这种状态的情况有很多,例如mutex锁就可能会设置进程于该状态,有时候进程在等待某种IO资源就绪时(wait_event机制)会设置进程进入该状态.一般情况

进程以及状态

1. 进程 程序:例如xxx.py这是程序,是一个静态的 进程:一个程序运行起来后,代码+用到的资源 称之为进程,它是操作系统分配资源的基本单元. 不仅可以通过线程完成多任务,进程也是可以的 2. 进程的状态 工作中,任务数往往大于cpu的核数,即一定有一些任务正在执行,而另外一些任务在等待cpu进行执行,因此导致了有了不同的状态 就绪态:运行的条件都已经慢去,正在等在cpu执行 执行态:cpu正在执行其功能 等待态:等待某些条件满足,例如一个程序sleep了,此时就处于等待态 原文地址:htt

转载:进程退出状态--waitpid status意义

最近遇到一个进程突然退出的问题,由于没有注册signalhandler所以没有捕捉到任何信号. 但是从log中看到init waitpid返回的status为0x008b,以前对status不是很了解,下面的文章对status有比较全面的介绍. 转至http://tsecer.blog.163.com/blog/static/15018172012323975152/ 一.和子进程同步在linux系统中,父进程通常需要通过waitpid来等待/获取子进程状态变化情况,而这个主要就是通过waitX