请详细阅读有关嵌入式实时操作系统方面的描述,回答问题1至问题2。 [说明] 近年来,分区化(Partitioning)技术已被广泛应用于大型嵌入式系统,此项技术重在解决嵌入式系统中多类应用软件共享计算机资源的安全性问题,同时,也可降低软件开发成本,提高软件

admin2016-03-25  31

问题 请详细阅读有关嵌入式实时操作系统方面的描述,回答问题1至问题2。
[说明]
近年来,分区化(Partitioning)技术已被广泛应用于大型嵌入式系统,此项技术重在解决嵌入式系统中多类应用软件共享计算机资源的安全性问题,同时,也可降低软件开发成本,提高软件的可重用能力。某公司承担了一项宇航计算机系统研制任务,要求将以前采用的多处理机系统精简为由单个处理器系统完成,而整体功能应在原有功能不变的基础上,可灵活扩展,并要求原应用软件可被快速移植到新系统。公司将任务交给王工程师组织并承担总体设计工作。在采用何种嵌入式实时操作系统的选型问题上,王工认为宇航系统强调安全性,原系统应用软件功能分布在各自的处理机上,在保持功能不变的情况下,应适当地维持各个软件的相对独立性,因此采用具有分区能力的操作系统(如:VxWorks653)比较合适。
[问题2]
完成该项目总体设计后,王工将软件设计工作交给李工,要求李工在原有软件基础上,完成新环境下的软件设计。经分析,李工统计出了原系统的任务基本情况(见表3—1)。原系统包含三个子系统,为了保证各子系统软件间的相对独立性,将三个子系统移植到新系统的三个分区工作,假设将“显示子系统”、“雷达子系统”和“任务子系统”分别用P1、P2和P3表示,系统的最小时间计时(tick)设为1ms,调度表的主时间框架将是40ms。
根据表3—1给出的原系统各任务周期和最坏执行时间数据,新系统中的所有任务可被调度,请对此进行分析说明,完善表3—2所示的分区调度表的设计,在空(1)~(10)填写正确内容并将解答填入答题纸的对应栏内。
(注:WCET,Worst-Case:Execution Time):

选项

答案所有任务可被调度的分析如下: 保证所用任务的可调度性必须满足在主时间框架内,系统中所用任务的最坏执行时间(WCET)均被执行至少一次。初步计算如下: 1(P3T1)≤5ms 1(P1T1)+1(P2T1)≤10m 2(P1T2)+1(P3T2)≤20m 1(P3T1)*8+1(P1T1)*4+1(P2T1)*4+2(P1T2)*2+1(P3T2)*2+5(P1T3)*1+3(P2T2)<=40ms 依据上述三个设计条件,新系统的分区调度表可安排如下: (1)0 (2)1 (3)2 (4)P2 (5)P3 (6)4 (7)20 (8)1 (9)null (10)7 [*]

解析 本问题主要考查考生对嵌入式实时系统方面的知识掌握程度。这里涉及两方面知识,其一是实时系统的周期任务的可调度分析方法;其二是针对[问题1]中提到的分
区的时间表调度算法,完成对表3—1的实例进行可调度分配,使操作系统按照设置好的调度序列调度分区,一定会保证表3—1中所有任务在最坏情况下按其周期要求执行完成。在可调度分析时,表3—1给出实例中,分区调度的主时间框架应是实例中所用任务周期的最大公约数,即40ms,这样可调度分析首先应分析在40ms时间范围内是否可保证表3—1中的所有任务的最坏执行时间都被至少执行一次。在此前提下,以此类推,完成对20ms周期、10ms周期和5ms周期三种周期内的所用任务的最坏执行时间都被至少执行一次,如果四种分析都可调度,则表3—1给出的实例是可调度的。具体公式如下:
1(P3T1)≤5ms;
1(P1T1)+1(P2T1)≤10ms
2(PlT2)+l(P3T2≤<20ms
1(P3T1)×8+1(P1T1)×4+1(P2T1)×4+2(P1T2)×2+1(P3T2)x2+5(P1T3)×1+3(P2T2)≤40ms
如果上述分析是可调度的,那么,完成表3—2的分区调度表就可很容易实现。调度表是分区操作系统调度分区的依据,调度表将主时间框架分成若干个窗口(windows),每一窗口可定义分配给哪个分区运行,启动时间是指本窗口针对主时间框架的第一个窗体“0”的偏移量,持续时间是指分配给此窗口的实际可运行时间。考生在填写时必须清楚以下4点:
(1)分区时间表调度中某窗口的启动时间不一定必须等于上一窗口的启动时间加持续时间。也就是说,窗口间的启动时间可以不连续;
(2)分区时间表调度中的第一个窗口的启动时间一般都为0;
(3)操作系统调度程序在遇见主时间框架最后一个窗口运行完后,应在主时间框架结束时刻重新加载主时间框架,新周期开始从第一个窗口运行;
(4)空窗口(null)是指本时间段操作系统不做任何分区调度,系统运行一种称之为空分区的任务。
转载请注明原文地址:https://kaotiyun.com/show/YZQZ777K
0

最新回复(0)