linux 什么是进程和进程状态转换

什么是进程?

从程序角度:
计算机中正在运行在内存中的程序就是进程
从操作系统角度:
进程是一个术语,在UNIX、Linux和其他一些操作系统中,当程序启动时(由用户输入shell命令或由另一程序启动),进程开始。每个进程的描述都是一个结构体的统称及进程控制块(PCB)linux下叫具体为task_struct。

进程的几种状态

  • running (R)运行状态,该状态不只是指程序正在运行,还包括准备运行的状态。
  • sleeping (S)可中断睡眠状态 ,
  • disk sleeping(D)不可中断睡眠状态,系统的休眠等待,不可用户打断,有特殊方式唤醒
  • stopped(T)停止状态,通过发送sigstop信号停止,可以通过发送sigcont信号继续。
  • tracing stop(t)跟踪状态
  • dead(X)死亡状态,是一个返回状态,时间很短,
  • zombie(Z)僵尸状态,子进程先于父进程退出,而且父进程不关心子进程的退出状态,从而形成。

进程转换

这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40921797/article/details/81772234