汽车操作系统漫谈,仅QNX过了最高等级车规安全认证

随着汽车电气化和智能化程度的提升,汽车中的电子零部件越来越多,且硬件架构正逐步趋于标准化,产业对汽车软件,特别是基础操作系统的关注度明显提升。汽车操作系统为车机软硬件资源的调度者,在实现汽车功能的过程中扮演了重要角色。随着汽车功能的日益复杂,操作系统的职责从实现基本的车辆控制,发展到实现智能座舱,以及支持智能驾驶,甚至自动驾驶。

汽车操作系统的分类

一般来说,汽车的底层操作系统分为安全相关的车控操作系统和与用户体验相关的车载操作系统两大部分。其中,车控操作系统,主要实现车辆底盘控制、动力系统和自动驾驶等功能。从应用场景来看,车控操作系统主要包括:1)嵌入式实时操作系统RTOS,主要用于车辆控制,比如动力系统与底盘控制等环节。2)基于POSIX标准的操作系统,主要用于车辆控制,比如动力系统与底盘控制等环节。其特点是高实时性、高可靠性、功能安全、信息安全和高性能计算。

车载操作系统:车载操作系统与车控操作系统同属于汽车操作系统,但并不管理车辆动力、底盘、车身等基础硬件,而是一个管理和控制车载软件、硬件资源的程序系统,支撑了汽车的上层软件开发、数据连接、HMI。车载操作系统具体可以实现的功能包括:1)管理车载系统的数据资源、硬软件,并且控制应用程序的运行。2)提供多形式的人机界面,支持上层软件的运行。

汽车操作系统的主要玩家

目前普遍采用的车控操作系统底层内核主要有LinuxQNX和其他RTOS(如FreeRTOSThreadXVxWorks等。

在玩家方面,主要有四个,QNX、Linux、Android和刚刚兴起的鸿蒙OS。目前QNX和Linux占据了车载操作系统的主流。据IDC统计,2020年QNX的市场占有率为44%;其次为Linux,占了34%。

其中,QNX是黑莓旗下的一个子公司,它以安全稳定和实时性著称,适用于仪表和动力系统。它采用了非开源的微内核架构,是第一个符合ISO26262 ASIL-D规范的实时操作系统,可满足数字化仪表盘功能性安全的要求,同时还兼顾了数据安全的要求。不过,由于其为闭源系统,在生态建设上有所欠缺,因此适合用于仪表和动力系统等对安全要求高,但生态要求弱的应用场景。目前采用QNX的车企有通用、雷克萨斯路虎、大众、丰田宝马、现代、福特、日产奔驰等。

QNX诞生于1980年,由Gorden Bell和Dan Dodge成立的Quantum Software Systems公司研发,最初的名字是QUNIX,1982年腹部了第一个版本,并应用于Intel 8088 CPU。1984年,为了避免侵权问题,Quantum Software Systems公司将其重命名为QNX。2004年,哈曼国际以1.38亿美元的价格收购了QNX,2010年4月,黑莓又从哈曼国际手中收购了QNX软件系统,以获取其车载无线连接技术。

其实,QNX问世之初主要是面向嵌入式系统市场的,广泛应用于工业控制领域,后来才逐步向汽车制造业领域拓展的。在被哈曼国际收购之前,QNX系统已经广泛应用在了汽车行业的远程信息粗粒系统中。哈曼国际收购QNX后,将其设计到了200多种不同的汽车品牌和型号中,由于哈曼国际自身在信息娱乐领域有身后的积累,QNX也被应用在了信息娱乐和导航系统中。黑莓收购QNX后,又将QNX在汽车中的应用进一步扩大,除了车载ECU之外,还陆续推出了QNX CAR和QNX CAR2.0应用平台。

此外,黑莓还陆续发布QNX Aviage多媒体套件、QNX Aviage声学处理套件、QNX HMI套件等中间件,进一步完善QNX车载操作系统生态。2017年1月黑莓推出了QNX 软件开发平台SDP 7.0,支持IntelArm 32位和64位平台,并支持C 。2017年6月,黑莓推出QNX Hypervisor 2.0。QNX Hypervisor 2.0专门为自动驾驶设计,开发者能够将安全关键型环境从非安全关键型环境中分离隔绝开来,确保关键系统不会暴露在风险之中。

从开发角度来看,QNX的POSIX(Portable Operating System Interface,可移植操作系统接口)兼容性和其提供的UNⅨ特色的编译器、调试器、X Window和TCP/IP为开发者提供了丰富便利的编译环境。CPU角度来看,QNX适配多种CPU,包括AMD ElanSC300/310/400/410、Am386 DE/SE、Cyrix MediaGX、x86处理器(386以上)、Pentium系列、Arm 32位和64位平台等等。操作系统角度来看,QXN提供Hypervisor解决方案,支持复杂的底层硬件共享和抽象,可以将具有不同可靠性和安全性要求的各种嵌入式系统整合到单个SoC上,通过虚拟机的方式兼容Android和 Linux系统。

Linux是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统,核心在于网络化的设计架构,支持多用户、多任务、多线程的同时保障系统的性能稳定,但是开发难度较高,以及发环境不友好,影响了其生态建设的扩张,限制了它在车载导航和车载娱乐上的发展,因此适用于后台操作系统,并且适用于车联网以及自动驾驶技术对可靠性及网络设计的双重需求。Linux系统随着车联网和ADAS的发展逐步获得了更多的生存空间。特点在于其性能稳定且易于定制,开源的特性降低开发的门槛。合作企业包括丰田、日产、特斯拉等。

跟QNX一样,Linux最初也并不是面向汽车市场的,过去它主要面向服务器操作系统市场,在桌面和工业嵌入式领域虽然有一定应用,但需要面对Windows和QNX的激烈竞争。不过,在2014年,Linux基金会联合Intel、Toyota、三星、英伟达等多家企业推出了汽车端开源车联网系统Automotive Grade Linux(AGL,汽车级Linux)。

AGL是一个协作开源项目,它将汽车制造商、供应商和技术公司聚集在一起,为汽车应用构建了一个基于Linux的开放软件平台,并允许汽车制造商和供应商重复使用相同的代码库,提升产品研发效率。据AGL官网介绍,AGL最初专注于信息娱乐系统,目前已经开源的系统项目包括信息娱乐、仪表盘、平视显示器 (HUD)、远程信息处理/联网汽车、高级驾驶辅助系统 (ADAS)、功能安全和自动驾驶等,涵盖车辆中所有软件的组织。目前,AGL开发项目的参与者包括了丰田、铃木戴姆勒、福特、本田、捷豹路虎马自达三菱汽车、日产、斯巴鲁等众多全球知名车企。

Android具有开源开放、良好的开发环境,并且在手机短积累了大量的应用生态,在车载娱乐领域具有得天独厚的优势。Android手机上的应用能够很快地移植到车机上,能快速丰富车载应用,但它在安全性、实时性和稳定性上还有待提升。

Android系统最早是基于Linux内核打造的。2003年时,Andy Rubin、Rich Miner、Nick Sears和Chris White四人创立Android Inc.,起初公司意图开发的是数码相机的操作系统,后来由于市场空间不足,进而转向手机操作系统领域。2005年,谷歌以5000万美元的架构收购了Android Inc.,Rubin开始领导团队开发基于Linux内核的移动设备操作系统。2007年,谷歌联合HTC、摩托罗拉等科技公司,宣布成立开放手持设备联盟(Open Handset Alliance),旨在打造全面开放的移动设备平台,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。2008年,谷歌发布了Android1.0,并首次搭载于HTC Dream手机上,标志着Android系统正式问世,从此之后,一路狂奔,成为手机操作系统的王者。

Android系统在汽车领域的尝试,从2011年就开始了,不过开始并不是谷歌做的,而是Parrot基于Android系统做的汽车音响系统—–Asteroid,2012年又更新了一版。到了2014年,谷歌亲自下场,联合奥迪、通用、现代和本田等几家全球主要汽车制造商,以及英伟达,在CES上宣布成立开发汽车联盟,旨在生产基于Android的车载娱乐系统。同年6月,谷歌发布了Android Auto车载操作系统。该系统主要功能包括了个人智慧助理Google Now卫星定位和导航的Google地图、音乐控制,以及语音操作等。2019年,谷歌在Android Auto的基础上,又推出Android Automotive OS,定位于专业的车载信息娱乐系统。不同于Android Auto(更类似于一款APP),Android Automotive OS可以直接嵌入车辆,让汽车变成一台类似Android手机的IT设备,而无需使用手机进行连接。

鸿蒙OS则是由华为推出的车载操作系统,主要包括于在2020中国汽车论坛上发布的鸿蒙座舱操作系统HOS、智能驾驶操作系统AOS和智能车控操作系统VOS,分别为智能座舱、智能驾驶及智能车控系统。鸿蒙OS主打面向全场景,支持多内核,包括Linux内核、LiteOS和鸿蒙微内核,可按各种智能设备选择所需内核,例如在低功耗设备上使用LiteOS内核。鸿蒙OS能支持128K到8G内存范围内的硬件设备,跨度较大,对硬件的性能要求相对较低。该系统满足几乎所有设备的需求,从耳机、手机、平板、智慧屏到车机,实现不同设备中的交互。

汽车操作系统的市场格局

智能座舱和智能驾驶是目前汽车领域最热门的两个领域,汽车操作系统目前也主要应用在这两个领域。目前座舱领域QNX是主流的操作系统,比如现在智能座舱中最为火热的芯片高通的8155就是跟QNX绑定的,基本使用8155芯片的汽车采用的都是QNX系统。从这两年的趋势来看,越来越多的车企选择高通芯片作为其智能座舱解决方案,这就意味着QNX系统在智能座舱领域的市占率会进一步提高。

在智能座舱领域很少又厂商会使用Linux系统,鸿蒙系统会有用一些,因为华为在深度参与车厂的造车,他们会把鸿蒙系统融入其中。

从现在的情况来看,高通8155的下一代芯片需要到2024年才会出货,这就意味着,目前大多数的厂商已经开始着手下一代产品的开发,但要出货还要至少等上两三年,因此,QNX在未来5、6年内的地位还是非常稳固的。

比亚迪和特斯拉是少数没有采用QNX系统的厂商之一,他们采用的是自研的Linux体系。

在智能驾驶方面,随着自动驾驶等级的越来越高,Linux具有天然的优势,因为汽车的自动驾驶研究大部分都是从实验室开始的,而实验室的研究人员研发时采用的系统几乎都是Linux系统,因此,从实验室到落地,为了减少移植系统带来的成本,很多厂商就会直接选择Linux来作为自动驾驶的操作系统。

就目前来看,自动驾驶方面,Linux系统的优势会更大,但也有一些厂商在采用QNX切入自动驾驶。这是因为Linux系统有一个天生的缺点,那就是它没有办法做功能安全等级ISO26262规范的ASIL认证。ASIL(Automotive Safety Integrity Level)是指汽车安全完整性等级。它是由ISO 26262标准定义的风险分类系统,用于公路车辆的功能安全。该标准将功能安全定义为“由于电气或电子系统的故障行为而导致的危害,不存在不合理的风险”。ASIL根据损害的可能性和可接受性确定安全要求,以使汽车零部件符合ISO 26262。ISO 26262-A,B,C和D标识了四种ASIL。ASILA代表最低级别,而ASIL D代表最高的汽车危害等级。

一般来说,需要两年才能走完产品的认证过程,这个周期对于整个研发来说是相当长的。但是QNX已经过了安全认证了,所以很多国外厂商会偏向采用QNX来作为操作系统,比如最近大众就官宣采用QNX作为其ADAS的自动驾驶辅助功能的操作系统。

而鸿蒙OS目前仅涉足了智能驾舱领域,自动驾驶方面仅是比较初级的功能,未来如何发展,就需要看华为想要做到什么程度了,至少目前问界M7还没有看到鸿蒙OS在自动驾驶方面向前推进。

总的来说,国内的车企比较偏向于功能方面的丰富程度,海外的车企更偏向于功能安全,相对来说更加保守一点。

结语

从长远来看,汽车的电气化改革才刚刚开始,未来汽车上的硬件性能会越来越高,算力也会足够强,到时候汽车软件生态也会更加丰富,作为最底层的操作系统的价值也更加重要。未来,汽车上座舱操作系统和自动驾驶操作系统可能会变成同一个操作系统。当然,也有可能仍然会有两个独立的系统存在,但另一个仅作为备份存在。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。