• 进程的状态与转换


    进程的状态与转换

    知识总览

    进程的状态--三种基本状态

    进程是程序的一次执行。在这个执行过程中,有时进程正在被CPU处理,有时有需要等待CPU服务,可见进程的状态是会有各种变化,为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态。

    三种基本状态 运行态、就绪态、阻塞态

    运行态 占有CPU,并在CPU上运行

    就绪态 已经具备运行条件,但由于没有空闲CPU,暂时不能运行

    阻塞态 因等待某一事件而暂时不能运行

    注意:单核处理机环境下,每一时刻最多只有一个进程处于运行态(双核环境下可以同时有两个进程处于运行态)

    就绪态 万事具备 只欠CPU

    进程的状态--另外两种状态

    另外两种状态 创建态、终止态

    创建态 进程正在被创建,操作系统为进程分配资源、初始化PCB

    终止态 进程正在从系统中撤销,操作系统会回收进程拥有的资源、撤销PCB

    进程状态的转换

    运行态到阻塞态是一种进程自身做出的主动行为

    阻塞态到就绪态不是进程自身能控制的,是一种被动行为

    注意:不能由阻塞态转换到运行态 也不能由就绪态转换到阻塞态

    终止态 进程运行结束,或运行过程中遇到不可修复的错误

    知识回顾

    进程的状态 运行状态 有CPU、有其他所需资源

                       就绪状态 有其他所需资源、无CPU

                       阻塞状态 无CPU、无其他所需资源

                       创建状态 操作系统为新进程分配资源、创建PCB

                       终止状态 操作系统回收进程的资源、撤销PCB

    进程状态的转换 就绪态-->运行态 进程被调度

                             运行态-->就绪态 时间片到,或CPU被其他高优先级的进程抢占

                             运行态-->阻塞态 等待系统资源分配,或等待某事件发生(主动行为)

                             阻塞态-->就绪态 资源分配到位,等待的事件发生(被动行为)

                             创建态-->就绪态 系统完成创建进程相关的工作

                             运行态-->终止态 进程运行结束,或运行过程中遇到不可修复的错误

  • 相关阅读:
    thinkphp3.2生成二维码
    php实现图片下载
    yii2.0 Activeform表单部分组件使用方法
    Yii2美化confirm
    Yii2学习笔记之场景
    tp5页面输出时,搜索后跳转下一页的处理
    php页面输出时,js设置input框的选中值
    mac中使用rz,sz上传文件
    golang的命令行程序开发
    Sring MVC基于Java Config方式配置Mybatis, 无XML
  • 原文地址:https://www.cnblogs.com/mayrain/p/12389298.html
Copyright © 2020-2023  润新知