Linux4.5、进程状态(二)

简介: Linux4.5、进程状态(二)

Linux4.5、进程状态(一)+https://developer.aliyun.com/article/1393973

D状态

D (disk sleep) 不可中断进程

这个我们无法演示,但是可以说明,这个状态也叫做磁盘休眠,也就是说一个进程在内存向磁盘写入代码和数据时, 该进程无法被操作系统终止回收,即使计算机资源吃紧,也不可唤出或者杀死。

需要说到的是,如果你的电脑能够查到这个状态,说明你的磁盘已经很满了,操作系统和你的计算机也快玩完了,因为在向磁盘写入数据时,再慢也不是我们能够感知的,同时还被操作系统查到了,说明你的电脑已经很卡顿了,也就快完了。

T状态

什么时候会出现T状态呢?就是进程想要访问某些硬件,但是硬件不允许,但是操作系统又不想杀死或者回收,就会出现这个状态,我们无法演示,但是可以通过信号来让进程暂停。

T (stopped) 暂停状态

恢复进程

我们kill -9 2472 杀掉进程即可。

t状态

t (tracing stop) 暂停状态

我们通过调试来展现这个状态。

此时我们直接跳到断点处,就是t中断状态。

Z状态(僵尸进程)

Z (zombie) 僵尸状态

进程在结束时会将他的task_struct数据返回给父进程,只有父进程读取了这些数据,这个子进程才会结束,如果不读取,就会处于僵尸状态,成为僵尸进程,不会被操作系统释放他的task_struct如果这样的进程很多,那么就会平白占据很多内存空间。

子进程在运行。

子进程变成僵尸,因为父进程一直没有结束,没有去读取子进程的数据。

我们平时为什么看不到Z状态呢?因为他们的父进程自动就回收了,计算机的速度很快,不要用我们的感受去衡量计算机的速度。

X状态

X (dead) 从Z状态退出就是X状态

这个不解释。

孤儿进程

如果父进程结束,但是子进程没有结束,子进程就会成为孤儿进程,被操作系统接管。

可以看到子进程后面被1号进程接管。我们可以查看一下1号进程,就是操作系统


目录
相关文章
|
6天前
|
消息中间件 算法 Linux
【Linux】详解如何利用共享内存实现进程间通信
【Linux】详解如何利用共享内存实现进程间通信
|
6天前
|
Linux
【Linux】命名管道的创建方法&&基于命名管道的两个进程通信的实现
【Linux】命名管道的创建方法&&基于命名管道的两个进程通信的实现
|
6天前
|
Linux
【Linux】匿名管道实现简单进程池
【Linux】匿名管道实现简单进程池
|
6天前
|
Linux
【Linux】进程通信之匿名管道通信
【Linux】进程通信之匿名管道通信
|
6天前
|
存储 Linux Shell
Linux:进程等待 & 进程替换
Linux:进程等待 & 进程替换
30 9
|
6天前
|
存储 Linux C语言
Linux:进程创建 & 进程终止
Linux:进程创建 & 进程终止
29 6
|
6天前
|
Linux 数据库
linux守护进程介绍 | Linux的热拔插UDEV机制
linux守护进程介绍 | Linux的热拔插UDEV机制
linux守护进程介绍 | Linux的热拔插UDEV机制
|
6天前
|
Unix Linux 调度
linux线程与进程的区别及线程的优势
linux线程与进程的区别及线程的优势
|
6天前
|
Linux 调度 C语言