Linux中进程的状态2
- 人工智能
- 2025-08-31 11:42:01

学习完进程的调度和等待我们接着学习进程的具体状态表示
进程的状态在Linux中进程的状态一共有7种。如下
接下来我会用代码来验证这几个状态,这个D状态暂时不验证,看看就好。
R(running)&&S(sleep)进程处在运行队列中就是处在运行状态了。
我们先弄一个死循环程序,通过这个程序来进行验证。
通过查询code的进程状态可知还没运行时处于S状态非常合理,运行时里面处于R状态,后面有个+号就说明是处于前台运行的,我们可以直接用ctrl终止。
不对呀,code都在运行为什么是S,那是因为code.c里面有一个sleep,处于R状态是会一直调用cpu的,这里由于sleep了就不能是R了。
现在删除sleep行再看细节。
也是终于刷出来了R+状态。如果还是S+的就这个显示进程状态就指令多运行基础
还有一种可以促使其变成S+就是用scanf强行等待输入,如下:
然后我们可以最后将进程杀掉。使用-9选项通过进程的pid杀掉进程。
D(disk sleep)disk是磁盘的意思,这个选项也是阻塞状态的一种,是不可中断的睡眠,深度睡眠,上面的S是可以中断的浅睡眠,多发于向磁盘中写入大量文件。
T(stopped) && t(tracing stop)程序做了非法但是不致命的操作而被操作系统暂停了就会出现T状态,简单来说就是进程被暂停了。
保证程序在运行状态,然后运行,在另一个主机进行暂停程序操作。
t状态是当进程被追踪时遇到断点被截停了就是t,当然这个就需要调试之后才知道了,这个我们后面再说。感兴趣的话自己去做一下。
Linux中进程的状态2由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Linux中进程的状态2”