-
2019-09-22 13:13:36
进程执行时的间断性决定了进程可能具有多种状态。
一 .进程具有三种基本状态:
1、就绪状态。某些进程“万事俱备”(必要资源),只差CPU。(就绪队列)
2、执行状态。某进程占有CPU并在CPU上执行其程序。
3、阻塞状态。某些进程由于某种原因不能继续运行下去,等待处 理问题。也称为等待状态或封锁状态。如:请求I/O。(多个等待队列)
三种状态随着执行和条件的变化而发生转换:
二 进程状态转换的原因:
1)就绪-→执行:
对就绪状态的进程,当进程调度程序按一种选定的策略从中选中一个就绪进程,为之分配了处理机后,该进程便由就绪状态变为执行状态;
2)执行-→阻塞:
正在执行的进程因发生某等待事件而无法执行,则进程由执行状态变为阻塞状态。
如:进程提出输入/输出请求而变成等待外部设备传输信息的状态,进程申请资源(主存空间或外部设备)得不到满足时变成等待资源状态,进程运行中出现了故障(程序出错或主存储器读写错等)变成等待干预状态等等;
3)阻塞-→就绪:
处于阻塞状态的进程,在其等待的事件已经完成,如输入/输出完成,资源得到满足或错误处理完毕时,处于等待状态的进程并不马上转入执行状态,而是先转入就绪状态,然后再由系统进程调度程序在适当的时候将该进程转为执行状态;
4)执行-→就绪:
正在执行的进程,因时间片用完而被暂停执行,或在采用抢先式优先级调度算法的系统中,当有更高优先级的进程要运行而被迫让出处理机时,该进程便由执行状态转变为就绪状态。
更多相关内容 -
进程的状态与转换
2021-02-20 15:44:54通常进程有以下五种状态,前三种是进程的基本状态。 一、进程的五种状态。 1)运行态(Running)。进程正在处理机上运行。在单处理机环境下,每个时刻最多只有一个进程处于运行态。 2)就绪态(Ready)。进程获得了...
前言
进程在其生命周期内,由于系统中各进程之间的相关制约关系及系统的运行环境的变化,使得进程的状态也在不断地发生变化(一个进程会经历若干不同状态)。通常进程有以下五种状态,前三种是进程的基本状态。
一、进程的五种状态。
1)运行态(Running)。进程正在处理机上运行。在单处理机环境下,每个时刻最多只有一个进程处于运行态。
2)就绪态(Ready)。进程获得了除处理机外的一切所需资源,一旦得到处理机,便可立即运行。系统中处于就绪状态的进程可能有多个,通常将他们排成一个队列,称为就绪队列。
3)阻塞态(Waiting),又称等待态。进程正在等待某一事件而暂停运行,如等待某资源为可用(不包括处理机)或等待输入/输出完成。即使处理机空闲,该进程也不能运行。
4)创建态(New)。进程正在被创建,尚未转到就绪态。创建进程通常需要多个步骤:首先申请一个空白的PCB,并向PCB中填写一些控制和管理进程的信息;然后由系统为该进程分配运行时所必需的资源;最后把该进程转入就绪态。
5)结束态(Terminated)。进程正在从系统中消失,可能是进程正常结束或其他原因中断退出运行。进程需要结束运行时,系统首先必须置该进程为结束态,然后再进一步处理资源释放和回收等工作。二、状态之间的转换。
总结
需要注意的是,一个进程从运行态变成阻塞态是主动的行为,而从阻塞态变成就绪态是被动的行为,需要其他相关进程的协助。
-
进程的状态与转换(操作系统8)
2020-10-06 11:43:31- 进程的五大状态:三种基本状态+初始和结束状态 - 进程状态间的转换进程的状态与转换
视频链接地址: https://www.bilibili.com/video/BV1YE411D7nH/?spm_id_from=333.788.videocard.2
前言
在本篇中,你将掌握
- 进程的五大状态:三种基本状态+初始和结束状态
- 进程状态间的转换
1 进程的状态
1.1 进程的三种基本状态
进程的三种基本状态:- 运行态:单核处理机,每一时刻最多有1个进程处于运行态。多核如双核处理机,每一个时刻最多有2个进程处于运行态
- 就绪态:万事俱备,只欠CPU
- 阻塞态(等待态):等待某一事件发生而暂时不能运行
1.2 进程的另外两种状态
- 创建状态:操作系统需要完成创建进程。为该进程分配所需内存空间等系统资源,并为创建、初始化PCB
- 终止状态:进程运行结束(或因为bug导致进程无法继续执行,如数组越界),需要撤销进程,回收给进程的资源、内存区域等
2 进程状态的转换
进程状态的转换如上图,值得注意的是:
运行态 to 阻塞态 是一种进程自身做出的主动行为;阻塞态 to 就绪态 是一张被动行为
进程是不能从就绪态直接到阻塞态,因为阻塞态是只有在进程在运行时主动做出的改变而发出请求;也不能从阻塞态直接到运行态,因为处于阻塞态的进程需要被转换为就绪态才能被调度运行。3 小结
本篇重点:
(1) 进程的三大基本状态:运行态、就绪态、阻塞态,分辨方式如上图,区分CPU和其他所需资源
(2) 进程的基本状态的转换,发生什么事件可以导致状态的转换非常重要。 -
三分钟理解三种基本进程状态
2020-05-10 22:19:35进程在生命周期内可能有多种状态,不过一般而言,每一个进程都至少有三种基本状态 就绪(Ready)状态 进程已处于准备好运行的状态,获得处CPU以外所有必要的资源。如果获得CPU,立即执行 执行(Running)状态 进程获得...进程的三种基本状态
进程在生命周期内可能有多种状态,不过一般而言,每一个进程都至少有三种基本状态
就绪(Ready)状态
进程已处于准备运行的状态,获得除CPU以外所有必要的资源。如果获得CPU,则立即执行
执行(Running)状态
进程获得CPU,正在执行的状态
阻塞(Block)状态
正在执行的进程,由于等待某个事件(如I/O申请,申请缓冲区失败,访问临界资源等)的发生而暂时无法继续执行时的状态三种状态的转换
进程的三种状态及转换
进程在运行期会经常发生这三个状态间转换
就绪→执行
处于就绪状态的进程,在进程调度程序为之分配下获得CPU,进程由就绪状态转变成执行状态。执行→就绪
处于执行状态的进程在其执行过程中,分配给进程的时间片已用完而让出CPU,进程从执行状态变成就绪状态。执行→阻塞
处于执行状态的进程因等待某种事件发生而无法继续执行时,便从执行状态变成阻塞状态。阻塞是进程的主动行为
某些事件一般指:- 向系统请求资源(内存,临界资源等)失败(eg.向系统申请更多的内存时,系统中的内存不能达到进程的需求,进程将会进入阻塞状态)
- 等待某事件的完成(eg.进程申请I/O设备,I/O设备启动后进程便自动进入阻塞状态去等待,等I/O操作完成后,进程将会被唤醒)
- 新数据尚未到达(eg.有俩个进程,进程A用于数据的输入,进程B进行数据的加工,在进程A数据输入完成之前,进程B都是处于阻塞状态)
- 等待新任务的到达(eg.例如网络环境中的发送进程,主要任务是发送数据包。若已有的数据包已发送完毕,则自动进入阻塞状态;仅当有新的数据包到达时,进程才会唤醒)
由此也可见进程阻塞是主动行为
阻塞→就绪
处于阻塞状态的进程,若其等待的事件已经发生,进程由阻塞状态变为就绪状态。 -
什么是状态机?用C语言实现进程5状态模型
2020-10-13 08:43:49一个健壮的状态机可以让你的程序,不论发生何种突发事件都不会突然进入一个不可预知的程序分支,本篇通过实现一个简单的进程5状态模型的状态机,让大家熟悉一下状态机的魅力。 定义 有限状态机(finite-state ... -
进程一般具有哪三个主要状态?举例说明状态转换的原因
2017-10-09 20:04:51显然,在单处理机系统中任一时刻只能有一个进程处于此种状态; (2) 就绪态(Ready): 进程本身具备运行条件,但由于处理机的个数少于可运行进程的个数,暂未投入运行。 即相当于等待处理机资源; (3) 等待态(Wait): 也... -
进程在运行过程中的三种基本状态是什么?画出其转换图。
2020-06-07 17:40:09进程三种基本状态 进程三种基本状态分别是就绪、执行和阻塞。 就绪状态 当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。 执行状态 当进程已获得处理机,其程序... -
Linux进程的几种状态之R、S、D、T、Z
2017-10-10 15:35:14前言:Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。 众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看... -
操作系统中进程的控制和描述(一)【前趋图和程序执行、进程的基本状态转换及进程的创建、终止、阻塞、唤醒、...
2020-08-15 20:27:40前趋图(Precedence Graph),是指一个有向无循环图,可记为DAG(Directed Acyclic Graph),它用于描述进程之间执行的先后顺序。图中的每个结点可用来表示一个进程或程序段,乃至一条语句,结点间的有向边则表示两个... -
进程的三个基本状态,以及三个状态之间切换的条件
2017-01-10 21:20:32一个进程在运行期间,不断地从一种状态转换到另一种状态,它可以多次处于就绪状态和执行状态,也可以多次处于阻塞状态。 (1) 就绪->执行 就绪状态是指进程获得了调度程序为之分配的除了CPU时间之外的其他必要... -
进程的挂起状态详细分析
2020-04-21 10:17:35通常我们所认为的进程有五大状态,新建态,就绪态,阻塞...交换的需要 前面图中三个基本状态(就绪态、运行态和阻塞态)提供了一种为进程行为建立模型的系统方法,并指导操作系统的实现。 但是,可以证明往模型中增... -
进程同步及线程同步的几种机制
2018-09-14 09:09:35因为互斥对象只有一个,所以可以保证公共资源不会被多个线程同时访问。 2. 信号量: 它允许同一时刻多个线程来访问同一资源,但是需要控制同一时刻访问此资源的最大线程数量。 3. 事件(信号):通过通知操作的... -
TCP11种状态
2018-09-03 10:48:08TCP11种状态图 CLOSED:初始状态,表示TCP连接是“关闭着的”或“未打开的”。 LISTEN:表示服务器端的某个SOCKET处于监听状态,可以接受客户端的连接。 SYN_RCVD:表示服务器接收到了来自客户端请求连接的SYN... -
linux:进程中信号的“3种状态 And 3张表”
2017-06-14 19:04:07信号在进程中的表示方法:3种状态—3张表2.对上述方法进行代码验证,包括: 信号集(sigset_t)和信号屏蔽字(Signal Mask)及信号集操作函数的介绍 代码验证(pending表) ————>全文阅读大概需要5min(我发四)... -
操作系统(1)进程状态、同步、互斥、通信和CPU调度
2020-08-21 18:50:54操作系统大纲: 进程和线程知识体系: 1. 进程 在多程序系统中,操作系统调度CPU上的进程以获得最大的利用率,此... 短期调度程序从就绪队列中选择另一个进程并将CPU分配给此进程。 这个过程被称为上下文切换。 -
Android进程保活方案的几种方案
2019-04-25 20:18:02自己曾经也在这个问题上伤过脑经,前几日刚好有一个北京的哥们在QQ说在做IM类的项目,问我进程保活如何处理比较恰当,决定去总结一下,网上搜索一下进程常驻的方案好多好多,但是很多的方案都是不靠谱的或者不是最好... -
引起进程调度的原因有以下几类
2019-11-08 16:11:57http://baike.baidu.com/view/1380355.htm?fr=aladdin 引起进程调度的原因有以下几类 进程调度发生在什么时机呢?这与引起进程调度的原因以及进程调度的方式有关... -
操作系统——四种进程调度算法模拟实现(C语言)
2022-05-03 22:11:52操作系统——四种进程调度算法模拟实现(C语言) -
linux进程状态浅析
2013-05-11 15:41:36在linux系统中,每个被运行的程序实例对应一个或多个进程。linux内核需要对这些进程进行管理,以使它们在系统中“同时”运行。linux内核对进程的这种管理分两个方面:进程状态管理,和进程调度。本文主要介绍进程... -
进程线程(一)——基础知识,什么是进程?什么是线程?
2020-10-10 19:09:31进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织... -
ZUCC操作系统原理习题 进程概念
2020-03-25 01:25:251.在操作系统中用户进程本身启动的唯一状态转换是()。 编号 选项 A 调度 B 阻塞 C 时间片到 D 唤醒 2.在分时系统中,导致创建进程的典型事件是()。 编号 选项 A 用户查询 B 用户输入 C ... -
linux进程状态的转换
2017-05-07 20:29:44为了对进程从产生到消亡的整个过程进行跟踪和描述,就需要定义各种进程的各种状态并制定相应的状态转换策略,以此来控制进程的运行。 不同的操作系统对进程的状态解释不同,但是最基本的状态都是一样的。包括一下... -
进程调度算法设计
2019-08-06 19:10:29在进程管理中,进程调度是核心,因为在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态,当就绪进程个数大于处理器数目时,就必须依照某种策略决定哪些进程优先占用处理器。本实验模拟在单处理器情况下... -
线程、进程、多线程、多进程 和 多任务 小结
2019-04-20 11:59:561 进程 2 线程 3 多进程 4 多线程 5 线程与进程的关系 6 线程和进程的区别 7 进程的优缺点 7.1 进程的优点 7.2 进程的缺点 8 线程的优缺点 8.1 线程的优点 8.2 线程的缺点 9 多线程的优缺点 9.1 多线程... -
Linux进程状态
2013-03-20 10:04:41而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进程最多只能出现在一个CPU的可执行队列中)。进程调度器的任务就是从各个CPU的 -
进程和线程的区别和linux运行状态查看简单介绍
2017-03-12 15:34:43线程和进程的区别、linux下一些常用的指令 -
操作系统学习(2) 进程管理
2020-04-28 11:05:53进程 是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程 是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己... -
程序,进程,线程的区别和联系
2018-08-26 22:27:18进程是一个动态的实体,它有自己的生命周期。它因创建而产生,因调度而运行,因等待资源或事件而被处于等待状态,因完成任务而被撤消。反映了一个程序在一定的数据集上运行的全部动态过程。 2)进程和程序并不是一一... -
系统架构设计师学习历程--进程的状态(三)
2022-03-18 22:07:241.2 处理器管理 在单用户多任务的操作系统中,或者多用户多任务的操作系统中,系统同时运行多个程序,这些程序...进程具有**动态性**和**并发性**,程序是进程运行所应对的运行代码,**一个进程对应于一个程序,一个程