中易网

VxWorks中的任务状态 “pend”和“suspend”有什么区别

答案:1  悬赏:10  
解决时间 2021-01-18 13:06
VxWorks中的任务状态 “pend”和“suspend”有什么区别
最佳答案
操作系统中挂起和阻塞的区别如下:
一:挂起是一种主动行为,因此恢复也应该要主动完成,而阻塞则是一种被动行为,是在等待事件或资源时任务的表现,你不知道他什么时候被阻塞(pend),也就不能确切 的知道他什么时候恢复阻塞。而且挂起队列在操作系统里可以看成一个,而阻塞队列则是不同的事件或资源(如信号量)就有自己的队列;
二:阻塞(pend)就是任务释放CPU,其他任务可以运行,一般在等待某种资源或信号量的时候出现。挂起(suspend)不释放CPU,如果任务优先级高就永远轮不到其他任务运行,一般挂起用于程序调试中的条件中断,当出现某个条件的情况下挂起,然后进行单步调试;
三:pend是task主动去等一个事件,或消息.suspend是直接悬挂task,以后这个task和你没任何关系,任何task间的通信或者同步都和这个suspended task没任何关系了,除非你resume task;
四:任务调度是操作系统来实现的,任务调度时,直接忽略挂起状态的任务,但是会顾及处于pend下的任务,当pend下的任务等待的资源就绪后,就可以转为ready了。ready只需要等待CPU时间,当然,任务调度也占用开销,但是不大,可以忽略。可以这样理解,只要是挂起状态,操作系统就不在管理这个任务了;
五:挂起是主动的,一般需要用挂起函数进行操作,若没有resume的动作,则此任务一直不会ready。而阻塞是因为资源被其他任务抢占而处于休眠态。两者的表现方式都是从就绪态里“清掉”,即对应标志位清零,只不过实现方式不一样。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
歌曲《四年半》的歌词?
新朗逸 EA211发动力,最近冷车发动坐在驾驶室
我的指纹算命如何
只会打嘴炮,中国人到底是自大还是自卑
多人跳棋怎么快点玩
权健公司老总束煜辉的电话号码是多少?
WOW布兰多夫NPC在哪里
问一道数学题目: 已知sinα+cosα=3/5
清蒸大排的做法步骤图,清蒸大排怎么做好吃
一年数学比24大30的数是多少
蒙肯纸是什么纸
我和女朋友才谈一个星期,她对我有点冷淡怎么
如果对一个自己的长辈说“牙尖嘴利”到底是褒
高三发现以前落后自己很多的同学,快赶上自己
上吊真不好受
推荐资讯
美甲模板饰品店有卖吗?
艾克斯加90等于1000除以10
明天考二级有身份证尾号是1,准考证尾号是4的
请问:你如何控制自己的愤怒或生气?
我女的,今年29,昨天晚上和曰本男人基站了一
华硕d552w6010能装xp系统吗
魔兽世界猎人误导宏
黑痣恶变有何特征性改变?
用简便算法计算下面各题102×0.35 (8+0.8)
鑫城商会温泉分公司我想知道这个在什么地方
新世纪福音战士(EVA)的h谁有?中文英文都行
求lol盖伦和拉克丝的本子
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?