进程状态TASK_UNINTERRUPTIBLE
2024-08-29 13:19:50
进程拥有以下几种状态:就绪/运行状态、等待状态(可以被中断打断)、等待状态(不可以被中断打断)、停止状态和僵死状态.
TASK_RUNNING:
正在运行或处于就绪状态:就绪状态是指进程申请到了CPU以外的其他所有资源,正所谓:万事俱备,只欠东风.提醒:一般的操作系统教科书将正在CPU上执
行的进程定义为RUNNING状态、而将可执行但是尚未被调度执行的进程定义为READY状态,这两种状态在Linux下统一为
TASK_RUNNING状态.
TASK_INTERRUPTIBLE:
处于等待队伍中,等待资源有效时唤醒(比如等待键盘输入、socket连接、信号等等),但可以被中断唤醒.一般情况下,进程列表中的绝大多数进程都处于
TASK_INTERRUPTIBLE状态.毕竟皇帝只有一个(单个CPU时),后宫佳丽几千;如果不是绝大多数进程都在睡眠,CPU又怎么响应得过来.
TASK_UNINTERRUPTIBLE:处于等待队伍中,等待资源有效时唤醒(比如等待键盘输入、socket连接、信号等等),但不可以被中断唤醒.
TASK_ZOMBIE:僵死状态,进程资源用户空间被释放,但内核中的进程PCB并没有释放,等待父进程回收.
TASK_STOPPED:进程被外部程序暂停(如收到SIGSTOP信号,进程会进入到TASK_STOPPED状态),当再次允许时继续执行(进程收到SIGCONT信号,进入TASK_RUNNING状态),因此处于这一状态的进程可以被唤醒.
用户级进程之间的状态切换关系如图2所示.
图2 用户进程状态切换图
http://blog.csdn.net/u010006102/article/details/39957967
最新文章
- Spring操作指南-IoC基础环境配置(基于XML)
- Windows Git中文文件名乱码
- Spine批量导出Command line Export
- 第二章——建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别-----答题者:徐潇瑞
- 转-Android中自动连接到指定SSID的Wi-Fi
- leetcode 129. Sum Root to Leaf Numbers ----- java
- win8 hyper-v 禁用不必卸载虚拟机
- 【转】使用junit进行单元测试(中级篇)
- 黑马程序员—C语言的特点和关键字
- Android中使用HttpGet和HttpPost访问HTTP资源
- SAP 条形码
- NFS启动时报错Linux NFS:could not open connection for tcp6
- 【Qt编程】基于Qt的词典开发系列<;二>;--本地词典的设计
- Xshell访问和连接Linux
- CSS初识盒子
- ios原生项目内嵌u3d工程
- jsp相关笔记(三)
- Partition Array into Disjoint Intervals LT915
- Bootstrap表单构造器
- spring核心之AOP学习总结二