第1题:
阅读以下关于嵌入式实时操作系统软件的选型分析方面的叙述,回答问题1至问题3。
某研究所承担了一项宇航嵌入式系统的研制任务,本项任务技术难度大、可靠性要求高、进度要求紧,预计软件规模约在一万行以上。而该所原先承担的相关项目均是用汇编语言编写的(软件规模较小,一般是几百行)。项目主管工程师将软件开发的论证工作分别布置给了王工和李工,要求他们根据本项目的技术要求,在一周内分别提出软件的实施方案。
(1)该宇航嵌入式系统由数据处理机、信号处理机以及数据采集模块组成。信号处理机主要通过数据采集模块将大量不同时间周期的外部数据采集进来,进行预处理(如 FFT变换)后提交给数据处理机;数据处理机根据功能要求完成各种计算处理工作,并将结果输出。为了达到数据处理机和信号处理机的标准化,这两类处理机均采用同种处理机的体系结构(如PowerPC7410)。整个系统工作的最大周期为1s,最小周期为5ms。数据处理机上任务分布如下表所示。
(2)一周后,王工和李工提交了各自的实施方案,其共同之处在于两者均提出采用操作系统及相应的软件开发环境。但是,王工和李工在选择什么样的操作系统及开发环境方面出现了较大的分歧。王工的实施方案提出,为了满足本项目的技术要求,并有利于本所软件的长期发展,应选用具有硬实时处理能力的嵌入式实时操作系统及开发环境 (例如VxWorks等):而李工的实施方案指出,操作系统主要完成对计算机资源的管理与分配工作,考虑到人们对操作系统及软件开发工具的熟悉程度,本项目应选用具有大众化的、软件开发人员容易上手的嵌入式操作系统(例如WindowsCE、Linux等)。
(3)在两人争执不下的情况下,项目主管工程师组织了相关专家对王工和李工提交的实施方案进行了评审。最后,专家组一致认为王工的方案切实可行,操作系统的选型论证充分、客观,可以作为本所未来几年中相关项目的软件开发的基本环境。同时专家组还就具体实施选择嵌入式实时操作系统及开发环境产品时应着重考虑的相关问题提出了几点建议。
为什么专家组一致认为王工的实施方案切实可行?请用200字以内文字简要说明。
第2题:
阅读以下关于嵌入式软件体系架构的叙述。
3. 某公司承担了一项宇航嵌入式设备的研制任务。本项目除对硬件设备环境有很高的要求外,还要求支持以下功能:
(1) 设备由多个处理机模块组成,需要时外场可快速更换(即LRM结构);
(2) 应用软件应与硬件无关,便于软硬件的升级;
(3) 由于宇航嵌入式设备中要支持不同功能,系统应支持完成不同功能任务间的数据隔离;
(4) 宇航设备可靠性要求高,系统要有故障处理能力。
公司在接到此项任务后,进行了反复论证,提出三层栈(TLS)软件总体架构,如下图所示,并将软件设计工作交给了李工,要求他在三周内完成软件总体设计工作,给出总体设计方案。
[问题1]
用150字以内的文字,说明公司制定的TLS软件架构的层次特点,并针对上述功能需求(1)~(4),说明架构中各层内涵。
[问题2]
在TLS软件架构的基础上,关于选择哪种类型的嵌入式操作系统问题,李工与总工程师发生了严重分歧。李工认为,宇航系统是实时系统,操作系统的处理时间越快越好,隔离意味着以时间作代价,没有必要,建议选择类似于VxWorks5.5的操作系统;总工程师认为,应用软件间隔离是宇航系统安全性要求,宇航系统在选择操作系统时必须考虑这一点,建议选择类似于Linux的操作系统。
请说明两种操作系统的主要差异,完成下表中的空白部分,并针对本任务要求,用200字以内的文字说明你选择操作系统的类型和理由。
两种操作系统的主要差异
[问题3]
故障处理是宇航系统软件设计中极为重要的组成部分。故障处理主要包括故障监视、故障定位、故障隔离和系统容错(重组)。用150字以内的文字说明嵌入式系统中故障主要分哪几类?并分别给出两种常用的故障滤波算法和容错算法。
第3题:
嵌入式系统对应用软件的开发和编程语言的选择提出了不同的要求。以下所考虑的一些因素说法错误的是(55)。
A.通常嵌入式系统要求具有实时处理的能力,这种实时性主要是靠硬件层来体现的
B.通常嵌入式系统要求支持多任务,能够处理并发事件
C.嵌入式软件的开发需要交叉编译工具
D.电源能量的供应在嵌入式系统中是一项约束条件
第4题:
(A)嵌入式系统通常是形式多样、面向特定应用的软硬件综合体;
(B)嵌入式系统得到多种类型的处理器和处理器体系结构的支持;
(C)嵌入式系统通常极其关注成本;
(D)嵌入式系统有实时性和可靠性的要求;
(E)嵌入式系统使用的操作系统一般是适应多种处理器、可剪裁、轻量型、实时可靠、可固化的嵌入式操作系统;
(F)嵌入式系统开发不需要专门工具和特殊方法。
第5题:
阅读以下关于工业控制系统软件方面的叙述,在回答问题1至问题4。
某公司新近签订了一份控制系统软件的研制合同。合同技术要求如下:
(1)本控制系统的软件运行平台拟采用嵌入式实时操作系统,控制系统的工作周期为10ms,要求控制软件能够精确地按事先预定的时间顺序完成数据的采集、处理和输出。
(2)为了提高整个系统的可靠性,控制系统采用容错处理,即用两个相对独立的计算机承担相同的工作,通过交叉对比,实现控制的双余度管理;当任何一台计算机出现故障时,系统可以进行单余度控制。系统结构如图4-1所示。
(3)在10ms工作周期内的时间分配如表4-1所示。
公司总工程师将本项任务交付给项目主管李工程师实施,要求李工按双方合同要求完成本项目的策划、需求分析和方案设计工作,重点强调系统的可靠性要求,并特别提示:目前比较流行的嵌入式操作系统普遍采用可抢占式优先级调度策略,不能满足用户关于“能够精确地按事先预定的时间顺序完成数据的采集、处理和输出”的要求。
李工接到任务后,认为本项目比较简单,很快就安排3名技术人员分别负责数据采集/输出模块、数据处理模块和比较监控模块的编写。总工程师听到汇报后,认为李工的方案和安排不妥,理由是李工忽视了系统的可靠性要求,对系统需求的理解不够深入。为实现系统关于可靠性方面的需求:
(1)你认为在组织结构、人员分工、设计开发等方面应做出哪些安排和规定?
(2)请写出关于余度表决算法的考虑。
第6题:
第7题:
第8题:
第9题:
第10题:
第11题:
嵌入式系统的硬件架构是以()为中心,由(),I/O设备,通信模块以及电源等必要的辅助接口组成。
第12题:
第13题:
阅读以下嵌入式多核程序设计技术方面的叙述,回答问题1至问题3。
甲公司承担了一项为宇航系统配套生产高性能嵌入式计算机系统的任务,用户要求该系统要具有高速并发处理能力、低功耗、高可靠性,并可以有效地防止系统故障的蔓延。根据用户对本项目的要求,甲公司成立了软/硬件两个项目组,总体设计由硬件组承担,负责高性能嵌入式计算机系统体系结构设计,软件组负责确定软件的技术需求和应用软件开发平台的软件设计工作。
在处理器选型方面,硬件组王工与软件组张工在讨论采用哪种CPU体系结构方面发生争议。目前,流行的处理器结构包括了单核结构、多处理器结构、超线程结构、多核结构、共享Cache的多核结构和超线程技术的多核结构六种,如下图所示。
王工提出,根据用户要求,本嵌入式系统应具有高速并行处理能力,采用多处理器结构比较适合,主要理由是多处理器结构设计简单、可支持多个进程在不同处理器上并发处理;而张工提出,必须分清“多处理器结构”与“多核结构”的优点和缺点,多处理器结构虽然支持多进程的并发处理,但没有直接实现多线程并发执行;多核结构可以直接实现多线程并发执行。要提高应用的并行性就必须利用多个硬件资源的并行工作,建议采用超线程技术的多核结构的处理器。请填写下图(f)中的(1)~(8),并用300字以内的文字对上述六种处理器结构的工作原理进行简要描述。
第14题:
以下关于嵌入式系统的组成说法错误的是(26)。
A.在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块,其中嵌入式操作系统和应用程序都可以固化在 RAM中
B.Cache位于主存和嵌入式微处理器内核之间,用于减小主存或辅助存储器对微处理器内核造成的存储器访问瓶颈,使处理速度更快,实时性更强
C.板级支持包(BSP)位于嵌入式系统硬件层和系统软件层之间,也称为硬件抽象层(HAL),它将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关
D.系统软件层位于嵌入式中间层和应用软件层之间,由RTOS;文件系统、GUI、网络系统及通用组件模块等组成。
第15题:
嵌入式系统需求分析的任务通常不包括(64)。
A.确定功能要求
B.分析数据要求
C.软硬件模块划分
D.修正开发计划
第16题:
近年来,分区化(Partitioning)技术已被广泛应用于大型嵌入式系统,此项技术重在解决嵌入式系统中多类应用软件共享计算机资源的安全性问题,同时,也可降低软件开发成本,提高软件的可重用能力。某公司承担了一项宇航计算机系统研制任务,要求将以前采用的多处理机系统精简为由单个处理器系统完成,而整体功能应在原有功能不变的基础上,可灵活扩展,并要求原应用软件可被快速移植到新系统。公司将任务交给王工程师组织并承担总体设计工作。在采用何种嵌入式实时操作系统的选型问题上,王工认为宇航系统强调安全性,原系统应用软件功能分布在各自的处理机上,在保持功能不变的情况下,应适当地维持各个软件的相对独立性,因此采用具有分区能力的操作系统(如:VxWorks653)比较合适。
【问题1】(共9分)
图3-1给出了具有分区能力的操作系统架构,该架构支持分区和进程两类调度,并提供了分区的时间、空间隔离保障,保证了应用软件可安全共享计算机资源。请用300字以内文字说明该类操作系统中分区化技术的主要特点。
图3-1 具有分区能力的操作系统架构
【问题2】(共16分)
完成该项目总体设计后,王工将软件设计工作交给李工,要求李工在原有软件基础上,完成新环境下的软件设计。经分析,李工统计出了原系统的任务基本情况(见表3-1)。原系统包含三个子系统,为了保证各子系统软件间的相对独立性,将三个子系统移植到新系统的三个分区工作,假设将“显示子系统”、“雷达子系统”和“任务子系统”分别用P1、P2和P3表示,系统的最小时间计时(tick)设为1ms,调度表的主时间框架将是40ms。
根据表3-1给出的原系统各任务周期和最坏执行时间数据,新系统中的所有任务可被调度,请对此进行分析说明,完善表3-2所示的分区调度表的设计,在空(1)~(10)填写正确内容并将解答填入答题纸的对应栏内。
(注:WCET,Worst-Case Execution Time)。
表3-1 原系统软件任务情况
第17题:
阅读以下关于某嵌入式实时系统的软件需求的叙述,回答问题1、问题2和问题3。
某公司承担了一项嵌入式实时控制系统的软件开发任务,其内容是按系统要求的固定的时间序列采集、处理、输出数据,以实现对多个设备的综合控制。
系统由硬件和软件组成,硬件由处理机(采用PowerPC603e,主频133MHz)、存储器、定时器、中断控制器、双口存储器(空间大小1 024KB)、4路422半双工串行接口 (其中两路的频率115 200Hz,另两路频率38400Hz)、两路A/D、D/A数模转换器和10路离散量接口组成。系统的软件需求如下(注:B:字节;s:秒;ms:毫秒):
.系统要求以5ms为周期从双口存储器中采集1 024KB的输入数据,处理任务的时间约为1ms;(称为5ms任务)
.要求以20ms为周期从两路422接口(115 200Hz)中采集一定格式的大小系统为64B的数据,在完成处理(处理时间约为4ms)任务后,分别输出大小为16B的控制命令;(称为20ms任务)
.系统要求以60ms为周期从两路422接口(38400Hz)中采集一定数据格式的大小为6B数据,从两路A/D接口采集28位数据,在完成处理(处理时间约为2ms)任务后,分别输出大小为2B的控制命令和一个28位D/A数据,输出8路离散量控制数据;(称为60ms任务)
.作为系统的安全监控保障,系统要求在每1s内对系统软硬件状态进行测试并完成系统工作的状态记录工作。该任务共需处理时间是5ms。(称为1s任务)
本公司课题组根据用户的硬件环境及对软件的需求,就软件的实施方案展开了激烈的讨论,讨论的首要问题就是本系统中软件的运行平台是采用嵌入式实时操作系统还是在裸机上直接开发,李工程师(简称李工)提出为了保证系统的实时性,应该采用在裸机上直接开发的方式,关键部分采用汇编语言编写,而王工程师(简称王工)提出,由于系统将由多种周期的处理任务组成,为了保证系统的可靠性,应该采用商用嵌入式实时操作系统作为本项目的开发基础,经过充分论证,最后李工接受了王工的建议,并申报课题组组长,课题组长同意采用了操作系统的方案,并指出必须尽快对需求的时间性能做出评估。
请用450字以内文字简要说明王工提出的采用嵌入式实时操作系统的理由或优点,并说明选择操作系统产品时需要重点考虑其哪些功能与性能?
第18题:
第19题:
第20题:
第21题:
第22题:
第23题: