免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2018年下半年 嵌入式系统设计师 下午试卷 案例
  第4题      
  知识点:   操作系统   AR   工业   软件架构   系统架构

 
【说明】
随着汽车工业的飞速发展,越来越多的车上的原有机械控制装置正在被电子控制装置所取代,这是典型的实时控制系统,例如用于控制发动机、自动变速箱、防抱死系统、电子稳定控制系统、牵引力控制系统、刹车辅助系统的ECU和用于座位调整、车窗玻璃升降、车顶移动的电子产品,这在很大程度上提高和完善了汽车的性能和技术水平。但是,汽车上电控系统的多样化和系统结构的复杂化,也直接导致相应的汽车电子软件开发难度越来越高。
某汽车的ECU (Electronic Control Unit,电子控制单元)系统,采用某高性能的多核处理器,软件架构米用符合AUTOSAR (AUTOmotive Open System Architecture,汽车开放系统架构)标准的多核操作系统,将多个控制应用集成在一个处理器上运行,降低了系统设计的成本、体积、功耗。
 
问题:4.1   (5分)
AUTOSAR中定义了应用任务有四种不同的状态,其状态之间的切换如图4-1所示。

请从以下状态选项中为(1)〜(5)选择正确的状态编号,并将答案填写在答题纸的对应栏中。
A. 触发
B. 启动
C. 挂起
D. 被抢占
E. 创建
F. 激活
G. 删除
H. 时间片用完
 
问题:4.2   (4分)
(1) 该系统中任务的优先级是静态分配的,在某些特定的情况下,多任务抢占资源会发生死锁,解决的策略一般是采用优先级天花板方式。请简述优先级天花板的原理。
(2) 该系统采用了多核处理器,多核处理器一般有SMP和AMP两种不同的工作方式。请简述SMP和AMP的差异。
 
问题:4.3   (6分)
该ECU系统在上电、复位或唤醒后,首先进入Boot模式,进行开或者关,对FLASH 和RAM进行初始化,然后进入用户程序,用户程序是从cstart函数开始执行的,在多核嵌入式系统中通常是先进行主核的cstart,主核自身进行部分初始化后将从核从HALT 状态激活,然后主核和从核在完成各自必要的设置后分别进入各自的main函数。图4-2 是该系统多核处理器的启动流程,请补充空(1)〜(3)的内容,将解答填写在答题纸的对应栏中。
 
 
 

   知识点讲解    
   · 操作系统    · AR    · 工业    · 软件架构    · 系统架构
 
       操作系统
        编写嵌入式软件有两种选择:一是自己编写内核;二是使用现成的操作系统。如果嵌入式软件只需要完成一项非常小的工作,例如在电动玩具、空调中,就不需要一个功能完整的操作系统。但如果系统的规模较大、功能较复杂,那么最好还是使用一个现成的操作系统。可用于嵌入式系统软件开发的操作系统有很多,但关键是如何选择一个适合开发项目的操作系统,可以从以下几点进行考虑:
        (1)操作系统提供的开发工具。有些实时操作系统只支持该系统供应商的开发工具,因此,还必须从操作系统供应商处获得编译器、调试器等;而有的操作系统应用广泛,且有第三方工具可用,因此选择的余地比较大。
        (2)操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择那些可移植性程度高的操作系统,以避免因移植带来的种种困难。
        (3)操作系统的内存要求,有些操作系统对内存有较大要求。
        (4)操作系统的可剪裁性、实时性能等。
 
       AR
        (1)AR的定义。增强现实技术(Augmented Reality,AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这种技术1990年提出。随着随身电子产品CPU运算能力的提升,预期增强现实的用途将会越来越广。
        (2)AR的特点。
        ①真实世界和虚拟世界的信息集成;
        ②具有实时交互性;
        ③是在三维尺度空间中增添定位虚拟物体。
        (3)AR的营销价值。
        ①虚实结合,震撼体验。借助AR的虚实交互体验,增强产品发布会的趣味性和互动性。另外借助AR技术,可以展示模拟现实条件无法表现的细节和创意,使消费者更直观形象地感知产品,提升对企业品牌形象的理解,尤其适用于工艺复杂、技术含量高、价值相对较高的产品。
        ②体验营销。AR技术实现品牌和消费者零距离接触,在游戏或互动中潜移默化地传达产品内容、活动及促销信息,加深消费者对品牌的认可和了解。AR技术借助手机摄像头可以生动地再现产品使用场景,增强用户的购物体验,解决电子商务当下无法试用、试穿的瓶颈,给我们生活带来极大地便利和乐趣。
        ③与微博、SNS等社交媒体整合。利用AR技术与微博、SNS等社交媒体的融合打通,实现从体验营销到自营销,最终形成消费者对产品和品牌的信任和钟爱,满足了消费者购买咨询、体验和分享的需求,促成消费者形成良好的口碑并促进购买。
 
       工业
        立体显示技术可以应用于过程控制、数值模拟、CAD/CAM(计算机辅助设计/制造)设计、工业检测、远程监视、危险产品生产安装以及远程机器人视觉显示等各个方面,可以带来前所未有的逼真视觉效果。
        目前,3D技术在专业行业的应用已经十分成熟,包括汽车设计制造、船舶设计制造、航天航空、能源动力、机械电子、建筑房产、城市规划等行业,3D技术为设计方式和用户界面带来了新的革命。3D技术常用的设计软件包括ProE、AutoCAD、3Dmax、MAYA等,这些工具已经成为行业必备的设计软件。在工业设计领域,ProE和AutoCAD已经具备了丰富的3D设计功能,并被广大工程设计人员所采用;在图形图像领域,3Dmax、MAYA已经被广大艺术和IT工作者熟练使用。
 
       软件架构
        随着嵌入式技术的发展,特别是在后PC时代,嵌入式软件系统得到了极大的丰富和发展,形成了一个完整的软件体系,如下图所示。这个体系自底向上由3部分组成,分别是嵌入式操作系统、支撑软件和应用软件。
        
        嵌入式系统的软件架构
        嵌入式操作系统(Embedded Operating System,EOS)由操作系统内核、应用程序接口、设备驱动程序接口等几部分组成。嵌入式操作一般采用微内核结构。操作系统只负责进程的调度、进程间的通信、内存分配及异常与中断管理最基本的任务,其他大部分的功能则由支撑软件完成。
        嵌入式系统中的支撑软件由窗口系统、网络系统、数据库管理系统及Java虚拟机等几部分组成。对于嵌入式系统来讲,软件的开发环境大部分在通用台式计算机和工作站上运行,但从逻辑上讲,它仍然被认为是嵌入式系统支撑软件的一部分。支撑软件一般用于一些浅度嵌入的系统中,如智能手机、个人数字助理等。
        嵌入式系统中的应用软件是系统整体功能的集中体现。系统的能力总是通过应用软件表现出来的。
 
       系统架构
               客户机/服务器系统
               C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到客户机端和服务器端来实现,降低了系统的通信开销。目前大多数应用软件系统都是客户机/服务器形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和客户机/服务器应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
               浏览器/服务器系统
               B/S (Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(浏览器)实现,但是主要事务逻辑在服务器端(服务器)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握,成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(如LAN,WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
               多层分布式系统(Multi-tier System)
               (1)概念。
               随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行。在多层体系中,各层次按照以下方式进行划分,实现明确分工:
               ①瘦客户:提供简洁的人机交互界面,完成数据的输入/输出。
               ②业务服务:完成业务逻辑,实现客户与数据库对话的桥梁。同时,在这一层中,还应实现分布式管理、负载均衡、Fail/Recover、安全隔离等。
               ③数据服务:提供数据的存储服务。一般就是数据库系统。
               (2)多层系统主要特点。
               多层系统主要特点是:
               .安全性。中间层隔离了客户直接对数据服务器的访问,保护了数据库的安全。
               .稳定性。对于要求24×7工作的业务系统,多层分布式体系提供了更可靠的稳定性。一是中间层缓冲Client与数据库的实际连接,使数据库的实际连接数量远小于Client应用数量。当然,连接数越少,数据库系统就越稳定。二是Fail/Recover机制能够在一台服务器宕机的情况下,透明地把客户端工作转移到其他具有同样业务功能的服务上。
               .易维护。由于业务逻辑在中间服务器,当业务规则变化后,客户端程序基本不做改动。
               .快速响应。通过负载均衡以及中间层缓存数据能力,可以提高对客户端的响应速度。
               .系统扩展灵活。基于多层分布体系,当业务增大时,可以在中间层部署更多的应用服务器,提高对客户端的响应,而所有变化对客户端透明。
               (3)多层系统举例。
               目前最为流行的两类多层应用架构为Sun的J2EE和Microsoft.Net,下面简单介绍J2EE的多层架构。
               
               J2EE多层应用架构
               (4)客户层。
               客户层用于与企业信息系统的用户进行交互以及显示根据特定商务规则进行计算后的结果。基于J2EE规范的客户端可以是基于Web的,也可以是不基于Web的独立(Stand Alone)应用程序。
               在基于Web的J2EE客户端应用中,用户在客户端启动浏览器后,从Web服务器中下载Web层中的静态HTML页面或由JSP或Servlets动态生成的HTML页面。
               在不基于Web的J2EE客户端应用中,独立的客户端应用程序可以运行在一些基于网络的系统中,例如手持设备或汽车电话等。同样,这些独立的应用也可以运行在客户端的Java Applet中。这种类型的客户端应用程序可以在不经过Web层的情况下直接访问部署在EJB容器(EJB Container)中的EJB组件。
               (5) Web层。
               J2EE规范定义的Web层由JSP页面、基于Web的Java Applets以及用于动态生成HTML页面的Servlets构成。这些基本元素在组装过程中通过打包来创建Web组件。运行在Web层中的Web组件依赖Web容器来支持诸如响应客户请求以及查询EJB组件等功能。
               (6)业务层。
               在基于J2EE规范构建的企业信息系统中,将解决或满足特定业务领域商务规则的代码构建成为业务层中的Enterprise JavaBean (EJB)组件。EJB组件可以完成从客户端应用程序中接收数据、按照商务规则对数据进行处理、将处理结果发送到企业信息系统层进行存储、从存储系统中检索数据以及将数据发送回客户端等功能。
               部署和运行在业务层中的EJB组件依赖于EJB容器来管理诸如事务、生命期、状态转换、多线程及资源存储等。这样由业务层和Web层构成了多层分布式应用体系中的中间层。
               (7)企业信息系统层。
               在企业应用系统的逻辑层划分中,企业信息系统层通常包括企业资源规划(ERP)系统、大型机事务处理(Mainframe Transaction Processing)系统、关系数据库系统(RDMS)及其他在构建J2EE分布式应用系统时已有的企业信息管理软件。
   题号导航      2018年下半年 嵌入式系统设计师 下午试卷 案例   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
 
第4题    在手机中做本题