【OS】2.1.2 进程的状态与转换_进程的组织

Blog's 主页: 白乐天_ξ( ✿>◡❛)

🌈 个人Motto:他强任他强,清风拂山冈!

🔥 所属专栏:C++深入学习笔记

💫 欢迎来到我的学习笔记!

一、进程的状态

1.1.创建态

......的同时正在创建进程,这就是创建态。在创建态中,操作系统会为进程分配资源、初始化PCB。创建态又叫做"新建态"。

1.2.就绪态

创建完的进程会进入就绪态,此时它已经具备运行条件,但是由于没有空闲的CPu,就暂时无法运行。

1.3.运行态

系统中不只有一个进程处于"就绪态"。CPU空闲时就会任选一个进程上机运行,此时该进程处于"运行态",CPU就会执行该进程对应的程序(执行指令序列)。

1.4.阻塞态

正在运行中的进程可能会请求某个事件的发生(比如等待某种系统资源的分配或者等待其他进程响应)。在这个时间发生之前,该进程无法继续往下执行,此时操作系统就会让这个进程下CPU,让它进入"阻塞态"。

等待的事件发生后,该进程就会从"阻塞态"转换为"就绪态",此时进程就会拥有再次上机运行的能力。

"阻塞态"又叫做"等待态"。

1.5.终止态

一个进程可以执行exit系统调用,请求操作系统终止该进程,此时进程就进入"终止态"。操作系统会让该进程下CPU,并回收内存空间等资源,最后还要回收该进程的PCB。

终止态又叫做结束态。

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

三、进程的组织

3.1.链接方式

  1. 按照进程的状态将PCB分为多个队列;
  2. 操作系统持有指向各个队列的指针。

3.2.索引方式

  1. 根据进程状态的不同,建立几张索引表;
  2. 操作系统持有指向各个索引表的指针。
相关推荐
汇能感知37 分钟前
光谱相机的探测器阵列
经验分享·笔记·科技
CHHC18801 小时前
vSIM / SoftSIM笔记
笔记
逆小舟2 小时前
【C/C++】指针
c语言·c++·笔记·学习
望获linux7 小时前
【实时Linux实战系列】实时系统的可观测性:Prometheus 与 Grafana 集成
大数据·linux·服务器·开发语言·网络·操作系统
Cathy Bryant7 小时前
球极平面投影
经验分享·笔记·数学建模
Larry_Yanan8 小时前
QML学习笔记(三十一)QML的Flow定位器
java·前端·javascript·笔记·qt·学习·ui
The_Killer.8 小时前
近世代数(抽象代数)详细笔记--环(也有域的相关内容)
笔记·学习·抽象代数·
Larry_Yanan9 小时前
QML学习笔记(三十)QML的布局器(Layouts)
c++·笔记·qt·学习·ui
不会kao代码的小王9 小时前
突破机房围墙:openEuler设备的公网管理实战指南
开发语言·数据库·笔记
He BianGu9 小时前
【笔记】WPF中如何的动态设置DataGridTextColumn是否显示
笔记·wpf