进程的状态

进程的状态

进程状态,就是PCB中的一个变量,所谓的状态变化,本质就是1.改变变量 2.将PCB链入不同队列中

状态后带+加号是什么意思?

前台进程,此时bash无法接受命令,并且ctrl​​+c​​可以终止

如何让他不为前台进程

在运行进程时加个&即可

1.运行状态 

在运行队列中的进程都为运行状态

2.阻塞状态 

进程被CPU执行时,进程或多或少会有等待数据的时候,例如 scanf,当数据没有准备就绪时,我们的进程就无法向后执行,此时PCB就需要被链入到设备(例如是需要设备的数据)的等待队列,此时PCB没有在运行队列而是在设备的等待队列中,此时就叫做阻塞状态

tips:当进程从阻塞状态中重回运行状态是,此过程叫唤醒。

​​

当一个进程阻塞了,我们应该看到什么现象?

1.进程卡住了

2.pcb没有在运行队列中,CPU不调度你的进程

所以我们的计算机上,什么时候会很卡?

频繁的使用同一个设备

3.挂起状态

当一个进程处于阻塞状态时,也就是说,该进程是无法被调度的,此时OS的内存资源已经严重不足时,此时OS会把该进程挂起,此过程也叫阻塞挂起

S(sleeping):休眠状态,可以被终止,浅度睡眠会对外部信号做出响应

D(disk sleep):专门对磁盘做设计的,深度睡眠,当进程向磁盘写入重要数据时,此时内存资源严重不足,OS不会将此状态的进程杀掉。

(当用户看到此进程状态时,服务器离挂掉就不远了)

T(stopped):在进程访问软件资源时,可能我们不让进程进行访问,就将它设置为STOP

t(tracing stop) :调试程序时,追踪程序,遇到断点,进程暂停了

Z(zombie):进程退出,但是PCB的退出信息并没有被OS或者父进程读取,此时OS必须维护这个退出进程的PCB,此时就叫Z状态

X(dead):OS或父进程读取完Z状态的进程退出信息完后,进程就会处于死亡状态,PCB才会被释放

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值