news 2026/5/1 7:06:01

Linux —— 进程概念 - 进程运行、阻塞、挂起状态

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux —— 进程概念 - 进程运行、阻塞、挂起状态

3.2 进程状态

3.2.1 Linux内核源代码怎么说

  • 为了弄明白正在运行的进程是什么意思,我们需要知道进程的不同状态。一个进程可以有几个状态(在Linux内核里,进程有时候也被叫做任务)

下面的状态在kernel源代码里定义:

/*
*The task state array is a strange "bitmap" of
*reasons to sleep. Thus "running" is zero, and
*you can test for combinations of others with
*simple bit tests.
*/
static const char*consttask_state_array[] = {
"R (running)",/*0 */
"S (sleeping)",/*1 */
"D (disk sleep)",/*2 */
"T (stopped)",/*4 */
"t (tracing stop)",/*8 */
"X (dead)",/*16 */
"Z (zombie)",/*32 */
};
  • R运行状态(running):并不意味着进程一定在运行中,它表明进程要么是在运行中,要么在运行队列里。
  • S睡眠状态(sleeping):意味着进程在等待事件完成(这里的睡眠有时候也叫做可中断睡眠(interruptible sleep))。
  • D磁盘休眠状态(Disk sleep)有时候也叫不可终端睡眠状态(uninterruptible sleep),在这个状态的进程通常会等待IO的结束。
  • T停止状态(stopped):可以通过发送 SIGSTOP 信号给进程来停止(T)进程。这个被暂停的进进程可以通过发送 SIGCONT 信号让进程继续运行。
  • X死亡状态(dead):这个状态只是一个返回状态,你不会在任务列表里看到这个状态。
1.操作系统的进程状态(理论):

2.Linux系统的进程状态 --- 运行状态(具体实现):

3.Linux系统的进程状态 --- 阻塞状态(具体实现):

4.Linux系统的进程状态 --- 挂起状态(具体实现):

3.2.2 进程状态查看

  • ps aux / ps ajx 命令
  • a:显示一个终端所有的进程,包括其他用户的进程。
  • j:显示进程归属的进程组ID、会话ID、父进程ID,以及与作业控制相关的信息。
  • x:显示没有控制终端的进程,例如后台运行的守护进程。
  • u:以用户为中心的格式显示进程信息,提供进程的详细信息,如用户、CPU和内存使用情况等。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 11:03:58

费雪的管理层访谈技巧:洞察公司文化

费雪的管理层访谈技巧:洞察公司文化关键词:费雪、管理层访谈技巧、洞察、公司文化、投资分析摘要:本文聚焦于费雪所提出的管理层访谈技巧,并深入探讨如何通过这些技巧洞察公司文化。公司文化对企业的长期发展和业绩表现有着至关重…

作者头像 李华
网站建设 2026/4/25 6:06:10

冥想第一千七百七十二天(1772)

1.今天周五了,项目上也非常忙,然后下了班本来是想着昨天跑步了,然后但是今天昨天没有时间,然后今天就跑了,感觉最近退步了退步的还是很多的不过这也感觉很正常,人总会有高潮和低谷。 2.感谢感谢父母&#x…

作者头像 李华
网站建设 2026/4/30 13:05:33

22-5. PLC的程序控制指令(子程序)

22-5. PLC的程序控制指令(子程序)在 PLC(可编程逻辑控制器)编程中,子程序指令是一种用于结构化编程的核心指令。它的核心思想是“模块化”:将复杂的程序分解成若干个独立的功能块,按需调用。简单…

作者头像 李华
网站建设 2026/4/30 0:16:33

基于STM32的智能停车场系统设计(实物设计)

基于STM32的智能停车场系统设计摘要随着城市化进程加快与汽车保有量激增,传统停车场管理c效率低下、信息不透明、安全隐患突出等问题日益显著。为解决上述痛点,本文设计了一套基于STM32微控制器的智能停车场系统,实现车辆出入计数、环境参数监…

作者头像 李华