风河Linux为何能在汽车智驾领域成为主流

汽车行业越来越认同这样一个理念:决定未来汽车价值的是以 人工智能 为核心的软件技术,而不再是传统的机械性能或硬件配置。一场围绕着智驾软件的竞争因此已经在更高更广层面展开,并且每一个汽车行业人都明白,这是一场不能输的战争,因为在软件定义汽车时代,汽车主要通过软件为用户提供价值。

一辆今天的 “数字” 汽车所包含的代码量,甚至将要接近7亿行。这些智能驾驶底层软件的核心是其运行的操作系统,当 Linux操作系统 成为汽车智驾领域的主流操作系统之后,其在汽车行业的地位也不断凸显。

Wind River Linux Intelligent Driving

而回顾Linux操作系统发展的初期阶段,风河公司的 VxWorks 才是当时嵌入式市场的真正王者,只是因为 ARM 、StrongARM、MIPS等多种架构的存在,才给了Linux生存和发展空间,让其作为“游击队”的角色而发展了起来。那么,从“游击队”到主流操作系统,Linux操作系统在汽车智驾领域又经历了怎样的演变呢?

智驾领域操作系统的基本要求

智能汽车的代码量一直处于变化之中。如果回到2015年,当时一辆“数字”汽车软件代码量能只有1亿行,虽然这已经远高于Facebook、战斗机、人造卫星等高科技产品的代码量,但这个数字放在今天,却只能说是小巫见大巫。

行业专家预测,到2025年,一辆智能汽车代码量预计将达到7亿行。这个数字相较于2022年的代码量,将要提升2.3倍。从中不难看出,智能汽车的代码量一直处于高速增长期,因此汽车行业对于高效开发能力的追求,可以说是达到了如饥似渴的程度。

Wind River Linux Intelligent Driving

与智能汽车代码数量同步上升的,还有安全风险的高速同步上涨,因为每一行代码都有可能成为黑客的攻击点。自2022年上半年针对车联网平台的网络恶意行为突破百万之后,以汽车数据为核心的新安全问题给智能驾驶底层操作系统提出了更高安全性要求。

操作系统在智能汽车生态中发挥着承上启下的作用,不仅负责智能汽车对内管理、对外交互,同时也负责对上构建繁荣生态环境、对下协调硬件资源。对汽车内部,操作系统的作用是管理,对用户操作系统则要起到交互的作用。因此,操作系统的稳定直接决定着汽车的表现。也正是因为这个原因,智驾领域同样将稳定性作为操作系统的重要考量因素。

由此可见,安全、高效开发、稳定,就构成了智能汽车对于操作系统的基本要求,只有通过了这些门槛,才有可能在这个领域越走越顺。

Linux的长短板

应对安全性、高效开发、稳定性等几个基本要求,Linux操作系统有着天然的优势。

首先从高效开发的角度来看,Linux操作系统有多种程序语言与开发工具,对于不同的开发平台的接口和软件适配度将更好。此外,由于Linux内核大部分是用C语言编写,并采用可移植Unix标准应用程序接口,因此可以很好地支持车载智能汽车等相关嵌入式设备的控制。这些因素都为高效开发的实现提供了保障。

再从稳定性视角来看,Linux是一个真正多任务多用户的操作系统,开发人员可以对自己需要的资源配置需求的权限,这种方式允许多应用程序在同一时间调用操作系统资源且互不影响。并且,由于Linux内的源代码是以标准的32位计算机来做的最佳设计,因此基本可以确保其系统的稳定性,不易宕机。

Wind River Linux Intelligent Driving

然而,再比较下去,却会发现Linux中存在的一些安全短板。虽然Linux内部自带的防火墙、入侵检测和安全认证等工具也能在很多情况下满足对网络安全性的需求,但Linux却还是不可避免地表现出一些在智驾设计中的安全缺陷。

首先是许可协议方面的麻烦,Linux采用的是Open Source/GPL2/3; Monolithic kernel。GPL协议允许将使用产品最大化地授权给用户,确保用户可以获得自由运行、复制、研究和改进的分发产品。因此, Linux允许开发社区工程师任意注入不稳定或存在一定bug的程序代码,可能导致系统的突然崩溃,自然无法满足功能安全需求。

此外,从操作系统功能安全性来看,Linux这类操作系统相当于基于宏内核架构设计而成,其硬实时性问题及开源版本分支维护问题都相当明显,如果不经过深度定制和裁减,不可能满足功能安全中的暴露度、严重度、可控性要求。然而,深度定制对团队要求却极高,在这点上,对于智驾系统研发团队来说几乎是不可能做到。

Wind River Linux Intelligent Driving

这还带来了另一个问题,Linux源码多达2500万行,一般智驾系统公司的项目开发团队不具备裁剪Linux的能力,整体鉴定难度较大,同时对软件架构师的要求也比较高,需要对Linux系统进行软件安全分析及设计过程难度就会加大。

表面看来,Linux由于存在这些缺陷,不会在智能驾驶业界走得太远,但结果却是Linux操作系统依然是当前智能驾驶业界内部使用最为广泛的系统。要了解产生这种局面的原因,就得不聊聊开源产业中的中兴力量。

中兴力量的崛起

在开源运动的历史进程中,Eric S·Raymond所著的《大教堂与集市》无疑可以称得上是开源运动的《圣经》,甚至说它颠覆了传统的软件开发思路,影响了整个软件开发领域,也不为过。原因在于大家都喜欢“集市”带来的多样化与自由度,同时从用户的应用角度出发,却希望使用“大教堂式”的有质量保证和后期服务的产品。

正是从这样的需求出发,帮助把开源产品从野外的自然水加工成可以直接饮用的矿泉水的公司,都取得了成功。同时,这些公司的成功又让开源产品一步步从“游击队”转化成主流“正规军”。在嵌入式开源软件领域,风河(Wind River)公司恰好就是这样一股让嵌入式Linux中兴的力量。

Wind River Linux Intelligent Driving

相较于“集市”般的Linux社区,以稳健著称的风河公司却是“大教堂”一般的存在。创立于1981年的风河公司,最早产品就是为核电站这类重要设施提供实时控制软件,以后更是借助VxWorks深度参与了美国宇航局太空项目。以后,这种“集市”与“大教堂”风格的融合,更是让风河首款完全具备Linux文件系统的平台产品——2005年内置丰富网络中间件和应用组件的Linux版本网络设备平台(PNE)参考设计版本,一经问世就广受当时国内消费电子产品设计人员青睐。

具体到汽车行业,Linux操作系统天然具备稳定、高效的能力,而风河公事凭借着自己稳健的流程控制能力和强大的技术实力,让应用于汽车行业的Linux操作系统变得安全而可控。

经过多年的技术积累,风河完全有能力深度定制和裁减Linux操作系统,从而满足功能安全中的暴露度、严重度、可控性要求,也完全可以杜绝社区工程师注入不稳定代码的问题。因此,风河Linux使企业能够在专门构建的Linux操作系统上开发、部署和运行强大、可靠且安全的嵌入式解决方案。

Wind River Linux Intelligent Driving

风河公司对于Linux操作系统的安全保障,我们可以从Wind River Studio Linux Services解决软件维护问题中一窥究竟。

由于智能汽车性能的不断创新,底层控制软件始终处于高速开发进程中,开发团队因此而面临着开发和部署新功能的压力,但另一方面,软件的维护工作必须同步跟上,否则新的漏洞会不断出现,技术债会持续累积,未修复的安全问题最终会影响合规性、与最终客户签订的服务水平协议(SLA)以及按时为系统和设备部署新软件的能力。在这样的条件之下,Wind River Studio Linux Services却可以为用户的既有Linux或Yocto项目平台确保全生命周期安全。

一家全球知名的网络设备供应商非常专注于创新,以至于在Linux平台的日常维护方面有所滞后,而且严重影响到发布新软件的能力,他们急需迅速发现并修复Linux操作系统中所有的严重安全风险。为此,风河公司为其提供全生命周期安全服务。我们在今天可以通过还原这个问题的解决过程,来体会风河技术工具的强大。

通过Wind River Studio Linux Services,风河提供了CVE(通用漏洞披露)识别、CVE优先级、安全生命周期管理等服务。应用CVE扫描工具Wind River Studio Security Scanning,用户的既有Linux平台上被识别出超过1500个CVE,其中超过80个属于严重风险等级。

Wind River Linux Intelligent Driving

在分析了CVE的真实影响之后,风河的技术专家与客户的工程师协作优先解决了需要立即关注的漏洞。接下来,在CVE被修复并且平台稳定的条件下,Wind River Studio的Linux团队开始负责提供平台的持续维护和管理。基于用户硬件的质量检查和测试,通过每日构建以确保对其操作系统平台和BSP进行持续性高质量修复。此外,Studio Linux Services团队还提供在线发布仪表板和报告,以便跟踪修复和进展,连同发布说明和工件,来捕获发布中修复的CVE和漏洞。

最终,在软件维护瓶颈被突破之后,这家网络设备供应商的开发团队的创新能力得到了充分释放。并且这些工作应用Studio Security Lifecycle Assurance服务来完成,要比原来自行处理的方法节省了大量成本。

Wind River Linux Intelligent Driving

当稳定性、高性能、安全性同时具备时,也就不难解释风河Linux在汽车行业一路顺利攻城拔寨的原因了。合众汽车选用风河Wind River Linux开发最新软件定义汽车平台、极氪选用风河Wind River Linux用于未来EEA开发、哪吒选用风河Wind River Linux开发智能域控制器XPC-S32G推进软件定义汽车。

更为重要的,是风河在汽车行业没有仅仅止步于操作系统层面,也开始延伸到整个汽车基础架构软件领域,在先进的高性能计算、车辆内部及其与基础设施之间(V2X)各类网络以及高级驾驶辅助系统(ADAS)等领域越走越远。

记得Linux操作系统在服务器端成功的原因吗?当Linux操作系统单打独斗时,用户会因为它缺少应用支持而和它保持距离;只有当LAMP支撑起一个生态时,Linux操作系统才开始了成长之旅。今天,当Linux操作系统在汽车行业成为主流之时,就可能依托强大的平台,实现更为迅速的开源生态成长。这可能才是如风河这样的Linux中兴力量让Linux操作系统变得更为健硕的终极原因。