进程的状态

在这里插入图片描述
如上,这是一幅常见的进程执行状态的示意图,在进程控制块一节中讲过进程的状态信息存储在task_struct也就是PCB 中。

意义

进程状态的意义:方便操作系统快速判断进程,完成特定的功能,比如调度,本质是一种分类

具体状态

R:运行态,不一定正在占用CPU: 并不意味着进程一定在运行中,它表明进程要么是在运行中要么在运行队列里
S:睡眠状态,意味着进程在等待事件完成(这里的睡眠有时候也叫做可中断睡眠
D:磁盘休眠状态:有时候也叫不可中断睡眠状态(uninterruptible sleep),在这个状态的 进程通常会等待IO的结束,进程如果处于D状态,不可被杀掉。
T:暂停状态,彻底的暂时进程的数据不会更新
t:追踪状态
X:死亡状态,死亡需要回收进程资源
Z:僵尸状态,为什么要有僵尸状态,为了辨别退出死亡原因,进程退出的信息(在task_struct),正常程序退出先进入Z状态把进程退出信息保存到PCB当中,再进入X死亡状态退出

状态演示

R状态

测试代码如下:

#include<unistd.h>
#include<unistd.h>
int main()
{
   
  while(1)
  {
   
  }
  return 0;
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值