目录
1.操作系统的进程状态
a.新建:就是新建一个进程
b.运行:PCB结构体在运行队列中排队
c.阻塞:PCB结构体在等待队列中,等待非CPU资源就续
d:挂起:当内存不足的时候,操作系统置换进程的代码和数据到磁盘中,PCB结构体还在内存中的状态
2.Linux系统的进程状态
上面的进程状态是操作系统普通的状态,Linux系统有更详细的状态
R运行态:task_struct结构体在运行队列中排队
S睡眠态:task_struct结构体在等待队列中,等待非CPU资源就续,也叫可中断睡眠
D磁盘休眠状态:当对磁盘进行写入时,突然中断,这时磁盘就在一直等待写入,一直等,这个也叫不可中断睡眠,要自己慢慢等待结束
T停止态:进程被停止,比如打断点
X死亡态(终止态):进程结束
特殊的进程状态
Z僵尸状态:一个进程退出,但是它的资源还不允许被操作系统释放,处于被检测状态 ,只能由操作系统和父进程释放,所以如果一直不释放会导致内存泄漏,可以用进程等待来进行处理
例如:子进程先退出,父进程还没退出,子进程就进入僵尸状态,父进程可以通过等待来处理子进程
孤儿进程
父进程先退出,子进程后退出,子进程进入Z态,这个子进程就成了孤儿进程,他会被1号init进程领养,也由它回收。
进程的查看
ps axj 命令