当前位置: 首页 > news >正文

Linux中进程的状态2

学习完进程的调度和等待我们接着学习进程的具体状态表示

进程的状态

在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,当然这个就需要调试之后才知道了,这个我们后面再说。感兴趣的话自己去做一下。

相关文章:

  • 【杂谈】加油!!!!
  • 根据研究主题自动生成研究报告,Open Deep Research远程服务器云部署
  • Medians
  • vscode通过ssh连接服务器实现免密登录+删除
  • 【DeepSeek三部曲】DeepSeek-R1论文详细解读
  • Python 基础-使用dict和set
  • Elon Musk的AI公司xAI重磅发布Grok 3,挑战OpenAI和Google
  • [文末数据集]ML.NET库学习010:URL是否具有恶意性分类
  • Cherry Studio 接入deepseek
  • 未来AI方向落地场景:小语言模型,super_private_agent
  • 适配器模式 Adapter Pattern
  • 自制简单的图片查看器(python)
  • 用deepseek学大模型08-循环神经网络
  • CoCo AI APP 初体验:开启智能知识管理新篇章
  • 单例模式、构造函数、左值右值
  • 数控机床设备分布式健康监测与智能维护系统MTAgent
  • leetcode 1594. 矩阵的最大非负积
  • Java8适配的markdown转换html工具(FlexMark)
  • STL介绍1:vector、pair、string、queue、map
  • 深度学习之图像回归(二)
  • 中国社科院:网文市场超430亿元,作者破3000万人
  • 中国科协发声:屡禁不止的奇葩论文再次敲响学风建设警钟
  • 四川资阳市原市长王善平被双开,“笃信风水,大搞迷信活动”
  • “降息潮”延续!存款利率全面迈向“1时代”
  • 明星同款撕拉片,为何能炒到三四百一张?
  • 保利42.41亿元竞得上海杨浦东外滩一地块,成交楼面单价超8万元