微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 车载娱乐系统应用发展及解决方案集锦

车载娱乐系统应用发展及解决方案集锦

时间:03-10 来源:网络整理 点击:

验。最后,第三方软件开发者必须针对车载系统的共同特征,开发一套公用平台,以方便不同的汽车制造商进 行移植,而且可以使同一个应用程序无缝隙地在不同的品牌的轿车上使用。

  本文是对谷歌Android系统应用的一种创新扩展,它可以对第三方应用程序进行隔离,并使可信任的第三方应用程序有访问汽车功能软件层的权限,加强了对汽车安全的防范。

  1 背景知识

   人们直观上感觉汽车内部的消费电子似乎只是提供同智能手机、PDA以及MP3类似的功能,但是由于其在使用时不可避免地要与汽车其他功能模块接触,所以 车载娱乐电子比其他消费电子要更加复杂。一般情况下,汽车上面的大多数应用软件都是厂商在汽车生产的时候已经固化好,它们一般会随着汽车的报废而报废,所 以其生命周期一般是手机或者MP3的5~10倍。这就要求车载电子设计公司支持对其出厂后的应用程序进行长期升级。但由于电子产品更新换代很快,仅靠软件 升级很大程度上提高了成本。

  GENIVI联盟去年同一些汽车巨头、芯片设计巨头、软件开发公司等召开了一次大会,主要讨论的是怎样为车载电子产品建立一个标准公开的开发平台。GENIVI提出开发一个可扩展的架构,可能会应用到下一代车载电子上面,它需要在以下方面进行努力:

  ①通过从开源社区以及专业软件开发联盟获取无缝隙的软件补丁以及插件,使其可以增加更多的内容和特点,并始终要考虑系统的安全性以及可靠性。

  ②增加车主和乘客的切身享受,并且尽量使其性价比更高,努力降低设备成本。

  GENIVI的软件架构利用英特尔的Moblin平台作为框架,通过增加或者删除组件来满足特定汽车需求和使用。支持用户自定义安装应用程序正在讨论,同时,许多可供选择的平台正在磋商中,谷歌的Android系统便是其中之一。

  要强调的是,目前被GENIVI和Moblin重点强调支持的汽车电子硬件设备(CAN总线上网络特定的设备),当前在Android上却未能实现。但由于Android对开源的大力支持,允许用户对终端程序安装并卸载,目前Moblin对这些功能尚未许可。

  2 谷歌Android

   2007年底,在谷歌主持召开的开放手机联盟大会上,一个完全免费开放的手机平台诞生了,其目标是要延伸到更为广泛的硬件设备当中。谷歌Android 基本的特点是其开放性,免费的SDK源码开发者可以很容易下载得到,Google的号召力以及Android的开源性迅速促使开发者社区的形成。

   Android是一个主要为手机设备提供的开发平台,它包含一个系统内核、中间层和底层驱动以及一些绑定的应用程序。整个项目有Apache许可证版本 2授权,因此移动运营商、软件企业、任何开发人员可以添加或删除功能。按照2.0范例协议,即使不是内容提供商,共享应用程序都是可能的。该平台允许一些 二次开发商根据自己的需要添加新的功能或者应用,所以可以很容易开发出丰富的端对端应用程序。

  2.1 结构概述

  Android系统架构由5部分组成:Linux内核、库函数、Android运行态、应用程序框架、应用程序。

   在线性架构的底层是Linux内核,基本上是Linux2.6.27版本。通过Linux内核为Android更新补丁,内核负责管理系统服务程序以及 驱动模块、内存管理、任务调度。根文件系统使用rootfs,而数据及文件使用YAFFS,它是专门为NAND和NOR存储器设计驱动的文件系统。

  应用程序框架和Android运行时态主要通过C/C++库,这部分库包括标准的C库、多媒体库、图形界面库、浏览器、字体库以及数据库。

  Android运行态包括核心库以及Java Dalvik虚拟机,Dalvik是一种允许在有限的内存上运行多进程的虚拟机,每一个程序运行在一个独立的Linux进程里。

  应用程序框架由许多类、接口、包组成。它的目的是提供一种简单、连续的方式去管理图形化用户接口,访问资源内存,收到通知,或者处理来电,主要的组成部分有可视系统、activity类管理、共享管理、资源管理、通知管理、电话管理。

  2.2 安全性

   Android内部进程通信以及安全性主要指在安装第三方应用的情况下,尽可能保证系统的稳定性。底层的许可机制是由Linux内核以及文件系统提供 的,基本上可以满足基于Linux内核的其他系统。由于Android设备针对的是单用户,因此多用户服务的设备靠分配唯一的标识才能应用。

  此外,Android是静态的安全许可系统,它在程序安装时被强制使用。

  2.3 进程间的通信

Android有两种进程间通信的模型:intent和code绑定。intent类框架提供上层的进程间通信,这是最好的方式,可以动态地利用SDK 包进行开发,并与上层应用程式绑定。intent类

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top