进程状态反映进程执行过程的变化。这些状态随着进程的执行和外界条件的变化而转换。
三态模型中,进程状态分为三个基本状态,即就绪态,运行态,阻塞态。
五态模型中,进程分为新建态、就绪态,运行态,阻塞态,终止态。

进程状态转换的三态模型:

运行态(Running):进程占有处理器正在(Running)运行。即进程正在执行。当时间片结束后,运行态转换为就绪态,等待CPU等资源的分配

就绪态(Ready):进程具备运行条件,等待系统分配处理器以便运行。当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行,即到达运行态。在一个系统中处于就绪状态的进程可能有多个,通常将它们排成一个队列,称为就绪队列

阻塞态(Block):又称为等待(wait)态或睡眠(sleep)态,指进程不具备运行条件,正在等待某个事件的完成。如运行程序在等待用户输入时,即进入阻塞态。

(补充)时间片轮转RR进程调度算法:用于分时系统中的进程调度。每次调度时,总是选择就绪队列的队首进程,让其在CPU上运行一个系统预先设置好的时间片。一个时间片内没有完成运行的进程,返回到绪队列末尾重新排队,等待下一次调度。

进程状态转换的五态模型:

新建态:进程刚被创建时的状态,尚未进入就绪队列。
创建一个进程要经过以下几步:

  • 首先进程申请一个空白PCB,并向PCB中填写用于控制和管理进程的信息
  • 然后为该进程分配运行时所必须的资源
  • 最后把该进程转入就绪状态并插入就绪队列
    引入创建状态是为了保证进程的调度必须是在创建工作完成之后

终止态:进程完成任务到达正常结束点,或出现无法克服的错误而异常终止,或被操作系统及有终止权的进程所终止时所处的状态。进入终止态的进程以后不再执行,但依然保留在操作系统中等待善后。一旦其他进程完成了对终止态进程的信息抽取之后,操作系统将删除该进程。
进程的终止状态有以下两步:

  • 首先,等待操作系统做善后处理
  • 最后将其PCB清零,并将PCB空间返还给系统

(补充)进程控制块PCB
PCB作为进程实体的一部分,记录操作系统所需的用于描述进程的当前情况以及管理进程运行的全部信息,是操作系统中最重要的记录型数据结构。我们认为,创建进程就是创建一个PCB,销毁进程也就是销毁进程的PCB。它的作用是使一个能在多道程序环境下不能独立运行的程序称为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。

进程三态与五态是什么?相关推荐

  1. 进程、线程、进程池、进程三态、同步、异步、并发、并行、串行

    点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 来源:cnblogs.com/songhaixing/p/1 ...

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

    关注.星标公众号,直达精彩内容 ID:嵌入式情报局 作者:情报小哥 1进程与程序 01 什么是进程 ?  什么是进程 ? 进程(process)是具有独立功能的程序单次运行,是操作系统进行资源分配的基 ...

  3. 【操作系统】第3章 进程管理与调度

    进程管理与调度 3.1 中央处理器 CPU的构成与基本工作方式 特权指令与非特权指令 处理器的状态 程序状态字 3.2 中断 中断的分类 3.3 进程及其实现 进程的定义 进程分类 进程的特征 进程和 ...

  4. 进程、线程与协程傻傻分不清?一文带你吃透!

    目录 前言 内容大纲 进程 什么是进程 进程的控制结构 进程的状态 进程的上下文切换 线程 什么是线程 线程与进程的对比 线程的上下文切换 线程的模型 调度 调度原则 调度算法 好文推荐 前言 欢迎来 ...

  5. Linux——进程概念(进程状态)

    目录 进程状态 三态模型 五态模型 七态模型 Example eg1:阻塞态:等待某种资源的过程 eg2:挂起态 Linux内核源代码 Linux进程状态查看 Linux运行状态 R运行状态(runn ...

  6. ​五分钟扫盲:进程与线程基础必知

    全文脉络思维导图如下: 1. 进程与线程的简单解释 进程(Process)和线程(Thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握.以下这个解释出自阮一峰老师的博客(http://ww ...

  7. 操作系统笔记(二):进程和线程

    任何操作系统的一个核心概念都是进程:正在运行的程序的一个抽象,它几乎是一切计算的基础. 2.1 Process 现代计算机往往会同时进行多个操作,就在电脑开机之时,数以百计的进程就会启动来完成一些任务 ...

  8. Linux进程实践(1) --Linux进程编程概述

    进程 VS. 程序 什么是程序? 程序是完成特定任务的一系列指令集合. 什么是进程? [1]从用户的角度来看:进程是程序的一次执行过程 [2]从操作系统的核心来看:进程是操作系统分配的内存.CPU时间 ...

  9. 全面总结:进程与线程

    首先,进程和线程的区别: 根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位 在开销方面:每个进程都有独立的地址空间,进程之间的切换会有较大的开销:线程可以看做轻量级的进程, ...

最新文章

  1. Github下载量10万次,最终被所有大厂封杀!
  2. spring启动过程之源码跟踪(下)--spring Debug
  3. Windows Server 2012正式版RDS系列⑦
  4. Writing a Tile Engine in JavaFX
  5. re搜索字符串与find字符串不一样的结果
  6. [云炬创业基础笔记]第九章企业的法律形态测试6
  7. CSS框架+响应式设计
  8. 《深度学习》李宏毅 -- task3误差和梯度下降
  9. 在docker中配置apt工具与python的源均为国内源
  10. NET Compact Framework 与 .NET Framework 之间的差异
  11. 11 个创新的网站滑动效果设计案例展示
  12. Zabbix Trapper items
  13. wangEditor图片上传
  14. Revit建模快速剖面操作一键完成!
  15. 牛客网刷题——二叉树
  16. redis数据库的下载安装/免安装版
  17. 交流负反馈对输入电阻输出电阻的影响
  18. chrome 改变网页主题 设置黑色主题网页
  19. Java 发送短信验证码
  20. 40个精美绝伦的国外网站设计作品范例

热门文章

  1. IDEA SpringBoot 同一个模块启动多个服务(实例)
  2. ABAQUS如何输出应力应变曲线(XY曲线)
  3. web 开发最新技术
  4. 什么是Nginx?有什么用?
  5. Linux更改本机ip
  6. 学海拾遗:汇编语言实验
  7. 无法解析的外部符号 Direct3DCreate9@4
  8. 深度学习——损失函数(Regression Loss、Classification Loss)
  9. 独家 | 这张骑马的宇航员图片是AI感知世界的一个里程碑(附链接)
  10. excel设置行高_手把手教你用wps表格excel制作田字格书法练习字帖