进程五态模型简明理解

进程的状态和转换 三态模型和五态模型 进程的引入 由于早期未配置os的系统和单道批处理系统中程序是顺序执行的,然而这种方式浪费资源、系统资源利用率较低,从而出现了多道批处理系统。内存中可以同时装入多个程序,使其共享资源、并发执行。为了能使程序并发执行,并且可以对并发执行的程序加以描述和控制,于是引入了“进程” 什么是进程进程是程序的一次执行; 是一个程序及其数据在处理机上顺序执行时所发生的活动; 是具有独立功能的程序在一个数... 阅读详情

进程的基本状态是:运行态,就绪态,阻塞态。如果把创建和结束加上,就可以组成五态模型。

一、五种状态转换图


在这里插入图片描述

状态图说明:

就绪状态 -> 运行状态:根据系统的调度算法,处于就绪状态的进程获取到处理机资源(分派的时间片)

运行状态 -> 就绪状态:

  1. 处于运行状态的进程用完了系统分配给它的执行时间片,需要让出处理机

  2. 在可剥夺的OS中,当有更高优先级的进程就绪,调度算法会让更高优先级的进程先执 行

运行状态 -> 阻塞状态:当进程等待某一事件发生时,就会从运行状态切换到阻塞状态

阻塞状态 -> 就绪状态:当进程等待的事件已经发生,就会从运行状态切换到就绪状态

二、五种状态介绍


1. 创建状态

进程正在创建,尚未转到就绪状态。

创建过程:

  1. OS分配进程标识符,在内核中申请PCB
  2. 复制父进程的环境
  3. 分配资源(堆栈,文件…)
  4. 复制父进程空间里的内容(这里linux下fork()函数采用COW技术)
  5. 将进程设置为就绪状态,放入就绪队列
2. 结束状态

进程正在从系统中结束,原因可能是正常退出,也可能是异常退出。

退出过程:

  1. 根据终止进程的进程标识符在PCB集合中检索出要终止的进程,并查看该进程的状态
  2. 若该进程有子进程则全部递归终止
  3. 将该进程的所属资源还给父进程或者OS
  4. 将该进程的PCB从PCB集合中移除
3. 运行状态

进程正在处理机上运行,在单处理机环境下,每一时刻最多只有一个进程处于运行状态。那么由此可以推出,在单处理机环境下,如果创建了N个进程,每一时刻最多只有N-1个进程处于就绪状态。

4. 就绪状态

进程处于准备运行的状态,即 进程已经获得了除了处理机之外的一切所需资源,一旦得到处理机后就可以运行。

5. 阻塞状态

进程正在等待某一事件(某种资源的获取、IO…)而暂停运行。很显然这个状态下即使进程获得了处理机资源也不能立刻运行。

【操作系统】进程进程的基本状态及转换图 文章目录 前言 一、进程的定义及特征? 1.进程的定义 2.进程的特征 3.进程和程序的区别 二、进程的基本状态及转换 1.进程的三种基本状态 2.三种基本状态的转换 3.五种基本状态及转换 4.挂起操作、激活操作和进程状态的转换 2.读入数据 前言 作为资源分配和独立运行的基本单位都是进程。操作系统所具有的四大特征也是基于进程而形成的。 一、进程的定义及特征? 1.进程的定义 (1)进程是程序的一次执行。 (2)进程是一个程序及其数据在处理机上顺序执行时所发生的活.. 阅读详情

相关推荐

进程的转换(五状态模型)

一、五状态的各个状态 创建态:分配PCB、分配系统资源。 就绪态:有其他资源 、无处理机资源。 运行态:拥有处理机资源、其他资源。 阻塞态:无处理机资源、无其他资源。 终止态:回收系统资源,撤销PCB(先收回CPU资源,再回收内存)。 二、五状态中的三种基本状态 三种基本状态:就绪态、运行态、阻塞态。因为进程的生命周期中,大部分处于这三种状态,并可在三种基本状态中来回穿插。 三、进程的转换: (1)创建态----->就绪态 当一个进程被创建...

m0_51653144的博客 5325

操作系统:3、进程管理之五状态模型

操作系统:3、进程管理之五状态模型进程的五状态模型就绪状态执行状态阻塞状态进程就绪、执行、阻塞状态的切换创建状态终止状态 进程的五状态模型 进程主要有以下五种状态: 就绪 阻塞 执行 创建 终止 就绪状态 当进程分配到了除CPU以外所有必要的资源后,就是就绪状态; 其他资源都准备好了,只差CPU资源的状态为就绪状态 就绪状态下只要再获得CPU的使用权,就可以立即运行; 就绪队列:在一个系统中多个处于就绪状态的进程通常排成一个队列,这个队列就称为就绪队列。这个队列中有多个处于就绪状态的进程。 执

weixin_36020178的博客 2582

进程的三态和五态模型以及Java中线程的六种状态

一、进程与线程 1、进程和线程分别是什么? 进程进程是计算机中和程序关于数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程:进程的子集,它是进程内部的一个独立的执行单元,一个进程可以同时并发执行多个线程。 2、进程和线程的区别 进程:有独立的内存空间,进程中的数据存放空间是独立的(堆空间和栈空间都独立),进程中至少有一个线程。 线程:推空间是共享的,而栈空间是独立的...

云卷云舒的架构师之路 5852

OS 进程三/五态模型、CSAPP 进程三态模型和 JAVA 线程模型

OS 进程三态模型 模型出处:《计算机操作系统》 和 现代操作系统 状态表示 就绪(Ready)状态:进程已准备好运行,只要分配时间片,就能得到执行。也就是除了时间片外,已经准备好一切资源。 执行(Running)状态:进程已获得时间片,程序当前正在运行。 阻塞(Block)状态:正在执行的进程因为某些资源得不到满足,继而无法继续运行的状态。 状态转移 就绪 -> 执行:就绪状态的进程获得时间片 执行 -> 就绪:执行状态的进程时间片耗尽 执行 -> 阻塞:执行状态的进程发生的

不搞数学的汤老师 1352

【系统架构设计师】第一章:操作系统(1.2.1)进程的三态模型与五态模型

本篇帖子继续上篇。有兴趣可以点击链接进行查看以前写过的文章。 【系统架构设计师】第一章:操作系统(1.1.1—1.1.2) 参考教材: 《系统架构设计师考试全程指导(第二版)》 《系统架构设计师教程》 1.2 处理器管理 在单用户多任务的操作系统中,或者多用户多任务的操作系统中,系统同时运行多个程序,这些程序的并行运行势必形成对系统资源的竞争使用。因此,操作系统必须能够处理和管理这种并行运行的程序,使之对资源的使用按照良性的顺序进行。 1.2.1 进程的状态 首先我们要搞清楚三个东西的区别:程序,进程,.

薯片薯条的博客 8万+

系统操作原理:进程的状态和转换(五态模型)

起到平滑系统操作负荷的目的。挂起等待态→挂起就绪态:引起进程等待的事件发生之后,相应的挂起等待态进程将转换为挂起就绪态挂起就绪态→就绪态:当内存中没有就绪态进程,或者挂起就绪态进程具有比就绪态进程更高的优先级,系统将把挂起就绪态进程转换成就绪态。运行态→挂起就绪态:当一个具有较高优先级的挂起等待态进程的等待事件结束后,它需要抢占 CPU,而此时主存空间不够,从而可能导致正在运行的进程转化为挂起就绪态。就绪态→挂起就绪态:操作系统根据当前资源状况和性能要求,也可以决定把就绪态进程对换出去成为挂起就绪态。

嵌入式Linux内核的博客 3449

【操作系统】进程状态转换(三态模型/五态模型

本文系统梳理了进程状态管理的核心知识点。三态模型(就绪、运行、阻塞)是基础,重点掌握四种状态转换关系及其触发条件;五态模型新增新建态和终止态,完整描述进程生命周期。需注意:阻塞→运行不可直接转换,运行→阻塞是主动行为,而阻塞→就绪是被动触发。文章通过对比表格和转换图示强化理解,并附典型例题及记忆口诀。最后以时钟中断导致运行→就绪的测验题作结,强调时间片用完的调度场景。

bianyuan172的博客 951

2.1.1操作系统-进程管理:进程基本概念、进程与程序、进程与线程、进程的状态、进程三态模型、进程五态模型

它会将CPU和其它资源进行归类,进程是资源分配和调度的基本单位,调度的情况是由CPU来调度进程的,除CPU之外,还有一些其它资源,这样将资源分成了两大类,一类是CPU资源,一类是其它资源,相比而言,CPU资源更为重要和珍贵。因为CPU资源是非常珍贵的资源,在其它条件满足之前,是不会考虑将CPU分配给它的,所以会发现阻塞态没有反向进入运行态的过程,包括已经进入就绪态的进程,一般它的资源也不会被其它阻塞进程抢占走。程序是一个静态的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡;

郝开的博客 787

Linux操作系统进程的状态和转换(五态模型)

为了缓和内存紧张的情况,将内存中处于阻塞状态的进程换至外存上。三态模型和五态模型都是假设所有进程都在内存中的事实上有序不断的创建进程,当系统资源尤其是内存资源已经不能满足进程运行的要求时,必须把某些进程挂起(suspend),对换到磁盘对换区中,释放它占有的某些资源,暂时不参与低级调度。挂起等待态→挂起就绪态:引起进程等待的事件发生之后,相应的挂起等待态进程将转换为挂起就绪态挂起就绪态→就绪态:当内存中没有就绪态进程,或者挂起就绪态进程具有比就绪态进程更高的优先级,系统将把挂起就绪态进程转换成就绪态。

qq_34738754的博客 1089

深入理解Linux进程行为:Linux操作系统进程的状态和转换五态模型学习资料推荐

深入理解Linux进程行为:Linux操作系统进程的状态和转换五态模型学习资料推荐 去发现同类优质开源项目:https://gitcode.com/ 在当今技术发展日新月异的时代,Linux操作系统以其稳定性和高效性成为了众多开发者和系统管理员的首选。要想深入掌握Linux系统,理解进程的状态和转换至关重要。下面,我们就来为大家推荐一款优秀的开源学习资料——Linux操作系统进程的状态和转换五态...

gitblog_06700的博客 413

进程管理之PV操作的个人理解

在了解PV操作之前,我认为有必要先简单理解进程的状态与其之间的转换。 三态模型(图左)中最基本的三个状态:运行、等待和就绪。 运行:进程正在处理机上运行。对于单处理机系统和,处于运行状态的进程只有一个。 等待:进程因发生某事情而暂停执行。 就绪:顾名思义进程已经具备执行条件但并未执行。 在进程运行过程中,由于自身进展情况及外界环境的变化,这三种状态在一定条件下相互转换。 五态模型则是在三...

weixin_43286186的博客 6403

进程与线程的理解

对于进程和线程的理解一直很模糊,有看了一遍《操作系统》,感觉还是有点模糊,对于自己浅显的理解写下博客进行总结。 如有误,请留言指证错误,谢谢! 1 什么是进程? 我们可以简单的理解为: 进程是正在运行的程序的实例。 进程的概念主要有两点: 进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(st...

444

进程的生命之旅:从三态到五态的全面解读

运行态(Running)进程正在 CPU 上执行。就绪态(Ready)进程具备运行条件,但因 CPU 被其他进程占用而暂时等待调度。阻塞态(Blocked)进程因等待 I/O、资源或事件而暂停运行。新建态(New)进程被创建但尚未加入到调度队列中。就绪态(Ready)进程等待调度器分配 CPU。运行态(Running)进程正在 CPU 上执行。阻塞态(Blocked)进程在等待某种外部事件(如 I/O)完成。终止态(Terminated)进程执行完毕,或被强制终止。三态模型。

码事漫谈 1368

进程的三态、五态模型【转】

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

weixin_30877227的博客 324

Linux操作系统进程的状态和转换(五态模型)学习资料

Linux操作系统进程的状态和转换(五态模型)学习资料 去发现同类优质开源项目:https://gitcode.com/ 欢迎来到本仓库!这里提供了关于Linux操作系统进程的状态和转换(五态模型)的学习资料,以帮助您更深入地理解Linux系统中进程的行为和特性。 文件简介 本仓库包含以下资源文件: Linux操作系统进程的状态和转换(五态模型).pdf 该文件详细介绍了Linux操作系统中进...

gitblog_06765的博客 429

进程与线程的定义以及对多线程、多进程、并发和并行的理解

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33801856的博客 164

Linux进程五态模型详解:从原理到实战的状态转换机制

进程状态是操作系统调度的核心概念,它描述了进程在生命周期中的不同活动阶段。Linux系统采用五态模型来管理进程状态转换,包括新建态、就绪态、运行态、阻塞态和终止态。这种状态机制使得操作系统能够高效分配CPU时间片和系统资源,实现多任务并发执行。在工程实践中,理解进程状态转换对于系统性能优化、资源管理和故障排查至关重要。当进程需要等待I/O操作或外部事件时,会从运行态进入阻塞态;而当时间片用完或被高优先级进程抢占时,则从运行态转为就绪态。通过ps、top等工具可以实时监控进程状态变化,而strace则能深入分

weixin_34189116的博客 385

进程退出后子进程还会存在吗?_【干货】Linux进程模型 全解

关注、星标公众号,直达精彩内容ID:嵌入式情报局作者:情报小哥1进程与程序01什么是进程 ? 什么是进程 ? 进程(process)是具有独立功能的程序单次运行,是操作系统进行资源分配的基本单位。02进程的特点动态性 : 是程序的一次执行过程,这也是与程序最大的区别。并发性: 多个进程在一段时间内可以同时运行。独立性 : 各自独立运行、资源独立和调度的基本单位。03进程与程序...

weixin_39609527的博客 678
上一篇: 两个线程打印不同类型的字母
下一篇: 线程相关笔记
暂代
博客等级 码龄9年 170粉丝 102原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值