某研究所承担了一项宇航嵌入式系统的研制任务,本项任务技术难度大、可靠性要求高、进度要求紧,预计软件规模约在一万行以上。而该所原先承担的相关项目均是用汇编语言编写(软件规模较小,一般是几百行)。项目主管工程师将软件开发的论证工作分别布置给了王工和李工,要求他们根据本项目的技术要求,在一周内分别提出软件的实施方案。
①该宇航嵌入式系统由数据处理机、信号处理机及数据采集模块组成。信号处理机主要通过数据采集模块将大量不同时间周期的外部数据采集进来,进行预处理(如FFT变换)后提交给数据处理机;数据处理机根据功能要求完成各种计算处理工作,并将结果输出。为了达到数据处理机和信号处理机的标准化,这两类处理机均采用同种处理机的体系结构(如PowerPC7410)。整个系统工作的最大周期为1s,最小周期为5ms。数据处理机上任务分布如表12-16所示。
②一周后,王工和李工提交了各自的实施方案,其共同之处在于二者均提出采用操作系统及相应的软件开发环境。但是,王工和李工在选择什么样的操作系统及开发环境方面出现了较大分歧。王工的实施方案指出,为了满足本项目的技术要求,并有利于本所软件的长期发展,应选用具有硬实时处理能力的嵌入式实时操作系统及开发环境(如VxWorks);而李工的实施方案指出,操作系统主要完成对计算机资源的管理与分配工作,考虑到人们对操作系统及软件开发工具的熟悉程度,本项目应选用具有大众化的、开发人员容易上手的嵌入式操作系统(例如,WindowsCE、Linux)。
③在两人争执不下的情况下,项目主管工程师组织了相关专家对王工和李工提交的实施方案进行了评审。最后,专家组一致认为王工的方案切实可行,操作系统的选型论证充分、客观,可以作为本所未来几年中相关项目的软件开发的基本环境。同时专家组还就具体实施选择嵌入式实时操作系统及开发环境产品时应着重考虑的相关问题提出了几点建议。
因为∑Ci/Ti=1/5+4/10+8/40+9/50+3/1000=983/1000<1,因此系统是可调度的。调度次序为AE→B→D→C→B→C→D→D→E,其中,A代表5ms任务,B代表10ms任务,C代表40ms任务,D代表50ms任务,E代表1000ms任务(调度次序可改变,不唯一)。
嵌入式系统基本架构主要包括哪几部分?
答案:
软件系统架构
博学公司欲开发一个车辆定速巡航控制系统,以确保车辆在不断变化的地形中以固定的速度行驶。如图12-6所示给出了该系统的简化示意图。表12-2描述了各种系统输入的含义。
公司的领域专家对需求进行深入分析后,将系统需求认定为:任何时刻,只要定速巡航控制系统处于工作状态,就要有确定的期望速度,并通过调整引擎油门的设定值来维持期望速度。
在对车辆定速巡航控制系统的架构进行设计时,公司的架构师王工提出采用面向对象的架构风格,而李工则主张采用控制环路的架构风格。在架构评估会议上,专家对这两种方案进行综合评价,最终采用了面向对象和控制环路相结合的混合架构风格。
架构描述语言(Architecture Description Language,ADL)是一种为明确说明软件系统的概念架构和对这些概念架构建模提供功能的语言。ADL主要包括以下组成部分:组件、组件接口、()和架构配置。
请详细阅读有关嵌入式软件架构设计方面的描述,回答问题1和问题2。
在嵌入式系统中,软件采用开放式架构已成为新的发展趋势。软件架构设计的优劣将直接影响软件的重用和移植能力。
某软件公司主要从事宇航领域的嵌入式软件研发工作。经二十多年的发展,其软件产品已被广泛应用于各种航天飞行器中。该公司积累了众多成熟软件,但由于当初没有充分考虑软件的架构,原有软件无法被再利用,为适应嵌入式软件技术发展需要,该公司决策层决定成立宇航嵌入式软件开放式架构研究小组,为公司完成开放式架构的定义与设计,确保公司软件资源能得到充分利用。研究小组查阅了大量的国外资料和标准,最终将研究重点集中在了SAEAS4893《通用开放式架构(GOA)框架》标准,图20-1给出了GOA定义的架构图。
阅读以下关于软件系统架构选择的说明,在答题纸上回答问题1至问题3。
博学公司欲针对Linux操作系统开发一个KWIC(Key Wordin Context)检索系统。该系统接收用户输入的查询关键字,依据字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其他方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其他的方法实现这一功能。
在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序.子程序的架构风格,而李工则主张采用管道.过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、功能变更、数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。
论文:论信息系统的架构设计架构是信息系统的基石,对于信息系统项目的开发来说,一个清晰的架构是首要的。传统的开发过程可以划分为从概念直到实现的若干个阶段,包括问题定义、需求分析、软件设计、软件实现及软件测试等。架构的建立应位于需求分析之后,软件设计之前。
请围绕“信息系统的架构设计”论题,分别从以下3个方面进行论述:
(1)简要叙述你参与分析和设计的信息系统(项目的背景、发起单位、目的、项目周期、交付的产品等),以及你在该项目中的工作。
(2)结合你的项目经历,论述在系统开发中,为什么要重视架构设计。详细讨论你是如何设计系统架构的(3)你的架构设计中还存在哪些问题?如何改进?
论文:论混合软件架构的设计
C/S架构将应用一分为二,服务器负责数据管理,客户机完成与用户的交互任务。
B/S架构是随着Internet技术的兴起,对C/S架构的一种变化或者改进的结构。在B/S架构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。由于C/S架构和B/S架构各有其优点和缺点,可以适用在不同的应用场合,在某些场合中,可能把C/S架构和B/S架构混合进行设计,更能满足系统的需求,这些需要包括功能上的,也包括性能上的。
请围绕“混合软件架构的设计”论题,依次对以下3个方面进行论述。
(1)概要叙述你参与设计和开发的软件项目以及你所担任的主要工作。
(2)简要说明C/S架构和B/S架构的优点和缺点。
(3)详细说明C/S和B/S混合架构的实现方式,在你的系统中具体是如何实现这种混合架构的,这种设计有什么优点。
论文:论软件架构的选择与应用
软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式(idiomatic paradigm)。对软件架构风格的研究和实践促进了对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。架构风格的不变部分使不同的系统可以共享同
一个实现代码。只要系统是使用常用的、规范的方法来组织,就可使别的设计者很容易地理解系统的架构。例如,如果某人把系统描述为C/S模式,则不必给出设计细节,我们立刻就会明白系统是如何组织和工作的。请围绕“软件架构的选择与应用”论题,依次对以下3个方面进行论述。
(1)概要叙述你参与设计和开发的软件项目以及你所担任的主要工作。
(2)详细论述你是如何根据项目的实际需要设计软件架构的,特别是如何选择多种不同的架构来实现系统的。
(3)分析你采用的架构所带来的效果,你的设计还存在哪些不足之处。
免费的网站请分享给朋友吧