TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE
来源:互联网 发布:unity3d ongui button 编辑:程序博客网 时间:2024/06/05 03:21
TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别
TASK_INTERRUPTIBLE是可以被信号和wake_up()唤醒的,当信号到来时,进程会被设置为可运行。
而TASK_UNINTERRUPTIBLE只能被wake_up()唤醒。
信号本质
信号是在软件层次上对中断机制的一种模拟,软中断
信号来源
信号事件的发生有两个来源:
硬件来源:(比如我们按下了键盘或者其它硬件故障);
软件来源:最常用发送信号的系统函数是kill, raise, alarm和setitimer以及sigqueue函数,软件来源还包括一些非法运算等操作。
区分是什么原因唤醒进程,用signal_pending( current );
检查当前进程是否有信号处理,返回不为0表示有信号需要处理。-ERESTARTSYS 表示信号函数处理完毕后重新执行信号函数前的某个系统调用。也就是说,如果信号函数前有发生系统调用,在调度用户信号函数之前,内核会检查系统调用的返回值,看看是不是因为这个信号而中断了系统调用.如果返回值-ERESTARTSYS,并且当前调度的信号具备-ERESTARTSYS属性,系统就会在用户信号函数返回之后再执行该系统调用。
0 0
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE
- TASK_INTERRUPTIBLE 和 TASK_UNINTERRUPTIBLE
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别
- TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE
- 睡眠--TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE
- 睡眠--TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE
- 进程资源和进程状态 TASK_RUNNING TASK_INTERRUPTIBLE TASK_UNINTERRUPTIBLE
- linux进程状态-TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE
- TASK_INTERRUPTIBLE
- error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)和error: 'TASK_NORMAL' undeclare
- error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
- error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
- error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
- kernel对D状态(TASK_UNINTERRUPTIBLE)task在120s不被调度的检测
- 对于php输出INF的理解
- 根据metalink脚本学习undo(六)
- Codeforces 468B Two Sets
- android ListView组件使用常见问题或形式总结(一)
- HTTP GET POST详解
- TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE
- JAVA启动参数大全
- 分析java.lang.NullPointerException thrown in RelativeLayout measure()
- php 如何保留2位小数
- Mongodb从这里开始
- Spring的事务管理难点剖析(5):联合军种作战的混乱
- Android判断当前界面是否是home界面
- 今天秀逗了啊
- Android开发-精华帖推荐