[总结][进程] Proc & Thread status in Linux & Jvm

6 篇文章 0 订阅
6 篇文章 2 订阅

Linux 进程线程及 Jvm进程线程状态对比

一.进程的基本状态:

三种基本状态:

进程基本状态说明
就绪(Ready)状态当进程已分配到除CPU以外的所有必要资源后,只要在获得CPU,便可立即执行,进程这时的状态就称为就绪状态。在一个系统中处于就绪状态的进程可能有多个,通常将他们排成一个队列,称为就绪队列。
执行状态进程已获得CPU,其程序正在执行。在单处理机系统中,只有一个进程处于执行状态;再多处理机系统中,则有多个进程处于执行状态。
阻塞状态正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即程序的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。

三种状态转换:

在这里插入图片描述

五种基本状态:

五种状态只是在三种基本状态上引入了创建状态和终止状态,这是为了满足进程控制块对数据及操作的完整性要求以及增强管理的灵活性。

基本状态说明
创建状态进程是由创建而产生。引入创建状态是为了保证进程的调度必须在创建工作完成后进行,以确保对进程控制块的完整性。对于处于创建状态的进程,当其获得了所需资源以及对其PCB的初始化工作完成后,便可由创建状态转入就绪状态。
终止状态当进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所终结,或是被其他有终止权的进程所终结,它将进入终止状态。进入终止状态的进程以后不能在执行。终止有两个步骤,首先,是等待操作系统进行善后处理,最后将其PCB清零,并将PCB空间返还系统。

五种状态转换:

在这里插入图片描述

二. Linux进程(线程)中7种不同的状态:

状态标识说明
运行状态TASK_RUNNINGR并不意味着进程一定在运行中,它表明进程要么是在运行要么是在运行队列里。
睡眠状态TASK_INTERRUPTIBLES意味着进程在等待事件完成(可中断睡眠)。
磁盘休眠状态TASK_UNINTERRUPTIBLED也叫不可中断睡眠状态,在这个状态进程通常会等待IO的结束。不可中断状态睡眠(Uninterruptible Sleep),一般表示进程正在跟硬件交互,并且交互过程不允许被其他进程或中断打断;可处理signal, 有延迟
停止状态TASK_STOPPEDT可以通过发送SIGSTOP信号给进程来停止(T)进程。这个暂停的进程可以通过发送SIGCONT信号让进程继续运行.不可处理signal, 因为根本没有时间片运行代码
死亡状态TASK_DEAD - EXIT_DEADX这个状态只是一个返回状态,你不会在任务列表里看到这个状态。
跟踪状态TASK_TRACEDt
僵尸状态TASK_DEAD - EXIT_ZOMBIEZ僵尸状态是进程已经终止,但是还占用这系统中的资源没有释放,这种状态对系统是有害的。不可被kill, 即不响应任务信号, 无法用SIGKILL杀死.

Linux进程状态解析 之 R、S、D、T、Z、X (主要有三个状态): https://blog.csdn.net/sdkdlwk/article/details/65938204

linux 进程的线程也有该几种状态.

cat /proc/pid/status
在这里插入图片描述
这里的Status: S(sleep)指的是camera应用进程的主线程状态.

另外top 命令也可以看出各个进程的状态,可查看 [Linux-Android][Log] Top命令打印含义

三.Java的线程状态:

1.代码中定义的6种状态:

//java/lang/Thread.java中有枚举出线程的6种状态:
public enum State {
NEW,
RUNNABLE,
BLOCKED,
WAITING,
TIMED_WAITING,
TERMINATED;
}

具体含义:

状态名称说明
NEW初始状态,线程被构建,但是还没有调用start()方法
RUNNABLE运行状态,Java线程将操作系统中的就绪和运行两种状态笼统地称作“运行中”
BLOCKED阻塞状态,表示线程阻塞于锁
WAITING等待状态,表示线程进入等待状态,进入该状态表示当前线程需要等待其他线程做出一些特定动作(通知或中断)
TIME_WAITING超时等待状态,该状态不同于WAITING,它是可以在指定的时间自行返回的
TERMINATED终止状态,表示当前线程已经执行完毕

2.Java线程状态转换

Java线程的6种状态及切换(透彻讲解): https://blog.csdn.net/qq_22771739/article/details/82529874
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值