博客
关于我
操作系统~进程的状态、转换、控制
阅读量:335 次
发布时间:2019-03-04

本文共 710 字,大约阅读时间需要 2 分钟。

文章目录

进程的状态

操作系统中的进程有五个核心状态, 分别为运行态, 就绪态, 阻塞态, 创建态, 终止态
其中运行态和就绪态和阻塞态为最基本的三个状态
在这里插入图片描述

三种基本状态

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

三个基本状态的核心区别就是在于是不是正在CPU上执行和合适可以在CPU上执行

在这里插入图片描述

另外两种状态

这俩个状态表示的是进程创建和销毁
在这里插入图片描述

进程状态的转移

在这里插入图片描述
由上图我们可以看到, 运行态到阻塞态是因为发送某种系统调用,是进程主动发生, 而阻塞到就绪态是进程被动的完成了某个条件才可以到达的状态

总结

在这里插入图片描述

进程控制

在这里插入图片描述

什么是进程控制

进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。

简化理解:反正进程控制就是要实现进程状态转换
在这里插入图片描述

如何实现进程控制?

用原语实现进程控制。
原语的特点是执行期间不允许中断,只能一气呵成。这种不可被中断的操作即原子操作。
原语采用“关中断指令”和“开中断指令”实现
在这里插入图片描述
显然,关/开中断指令的权限非常大,必然是只允许在核心态下执行的特权指令

进程控制会导致进程状态的转换。无论哪个原语,要做的无非三类事情:
1.更新PCB中的信息(如修改进程状态标志、将运行环境保存到PCB、从PCB恢复运行环境)
a.所有的进程控制原语一定都会修改进程状态标志
b.剥夺当前运行进程的CPU使用权必然需要保存其运行环境
c.某进程开始运行前必然要恢复期运行环境
2.将PCB插入合适的队列
3.分配/回收资源
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

转载地址:http://qaee.baihongyu.com/

你可能感兴趣的文章
mysql查看数据库状态
查看>>
怎么去利用已有的数据做分析?
查看>>
小程序开发之第三天
查看>>
自适应数字墙星系网站404页面源码
查看>>
某易游戏经典吃豆豆动画404页面源码
查看>>
随机二次元新浪图床api源码
查看>>
专升本——英语视频学习
查看>>
Future education software
查看>>
C语言——经典200道实例【基础例题100道——进阶例题100道】
查看>>
数据结构——线性表&树&图的【数据元素名称-有无结点-内部之间的关系】的区别
查看>>
考研必备100个网站
查看>>
不知道考研各科课程那个老师的课好?怎么选择安排?在哪找课程课本资料?看这里
查看>>
考研高数一_高数二_高数三考试大纲
查看>>
【无线传感器网络简明教程-学习笔记8】第八章 无线传感器网络试验
查看>>
【无线传感器网络简明教程-学习笔记11】第三章课后思考题答案
查看>>
C++第十三次作业(拷贝构造函数_对象数组)
查看>>
【考研高数-高等数学-基础】第四章 不定积分
查看>>
【考研高数-高等数学-基础】第六章 定积分的应用
查看>>
【考研英语-基础-简单句】简单句的核心变化_谓语情态
查看>>
【考研英语-基础-简单句】简单句的核心变化_谓语否定与强调_考场攻略
查看>>