任务队列
考试要求: 掌握     
知识路径:  > 嵌入式系统软件基础知识  > 嵌入式操作系统基础知识  > 处理器管理  > 分区、进程、线程、任务的概念  > 任务的实现


 
       如前所述,在一个多任务操作系统中,各个任务的状态是经常变化的,有时处于运行状态,有时处于就绪状态,有时又处于阻塞状态。即便同是阻塞状态,引发阻塞的原因可能又各不相同,有的是因为等待I/O操作,有的是因为任务之间的同步。因此,在一个操作系统当中,采用什么样的方式来组织它的所有任务,将直接影响到对这些任务的管理效率。
       通常的做法是采用任务队列的方式,也就是说,由操作系统来维护一组队列,用来表示系统当中所有任务的当前状态,不同的状态用不同的队列来表示。例如,处于运行状态的所有任务构成了运行队列,处于就绪状态的所有任务构成了就绪队列,而对于处于阻塞状态的任务,则要根据它们阻塞的原因,分别构成相应的阻塞队列。然后,对于系统当中的每一个任务,根据它的状态把它的TCB加入到相应的队列当中去。如果一个任务的状态发生变化,例如,从运行状态变成就绪状态,或者从阻塞状态变成就绪状态,这时,就要把它的TCB从一个状态队列中脱离出来,加入到另一个队列当中去。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有