摘要:汽车对安全性、可靠性、实时性、传感器带宽、计算能力以及复杂的软件供应链生态都有很高的要求,使得智能汽车成为下一代计算运算的产物。 系统。 软件生态系统和容器如果你看看智能汽车生态系统,今天的驾驶舱和两台域计算机作为完整的解决方案出售给原始设备制造商。
【CSDN编者注】智能汽车是由软件定义的,以软件为中心的新架构也很重要。 下一代。 对车辆底层软件,包括核心操作系统提出了新的要求。 未来主机厂的核心能力将如何变化?本文从对未来汽车的新定义入手,探讨下一代智能汽车操作系统的发展趋势。
作者 | Michael Yuan
创建者 | “新程序员”
目前,一辆典型的汽车有 1.5 亿行代码,相当于 10 倍。波音 787 的代码。 汽车已经成为软件工程的一个重要方向。 由于汽车对安全性、可靠性、实时性、传感器带宽、AI算力等方面的高要求,以及复杂的软件供应链生态,智能汽车正在催生下一代计算操作系统。 从过去30年的基础软件发展史来看,我们相信汽车软件生态一定会开源,为程序员创造更广泛的机会。
软件定义的汽车
与 20 年前的数据中心一样,传统汽车使用经典的“硬件分离的软件”架构。 每辆量产车都有超过50家软件供应商。 为了让如此多的软件模块在同一辆车上安全可靠地运行,传统的做法是每个供应商将软件打包到自己的计算机硬件上。 这些供应商为其计算机提供以下功能:致电ECU。 每个ECU都有一套完整的芯片、存储、操作系统和应用软件。 ECU通过Simple Real-Time网络传输信息,达到分离不同供应商软件的目的。 如今,每辆汽车都有 100-150 个 ECU,管理其软件复杂性非常困难。
于是,以特斯拉为代表的“新能源制造力量”开始采用以软件为中心的架构。 新一代智能汽车的ECU数量不超过100个。 电脑。 供应商的软件作为模块在这些计算机上运行。 硬件和网络不再分隔各个供应商模块,而是软件容器。 这是一辆“软件定义的汽车”。 以包括核心操作系统在内的下一代汽车基础软件为中心的以软件为中心的架构提出了新的要求。
智能车操作系统战斗
当前,智能汽车正在从ECU转向“软件定义”。 车企无法一步到位实施。 您只能过渡到 3-3-3-3-3-3-3-4“域计算机”(也称为“域控制器”)。 其中两个是重要的域:ADAS域和座舱域。
ADAS 域计算机管理自动驾驶汽车的传感器、AI 推理、决策和控制。 车厢域计算机管理驾驶舱控制和用户交互体验。
这两个域中的操作系统并不相同。 在座舱领域,车企通常采用Android系统或Linux的尾部版本,以保证大量应用的兼容性。 Cockpit的Linux和Android系统采用开源底层操作系统,拥有庞大的开发者社区。 上层应用程序可以打开和关闭。
在 ADAS 领域,汽车公司通常使用 QNX 和 VXWorks 等真正的操作系统来开展业务。 ADA 底层的操作系统一般不是开源的,虽然 Autoware 和百度的 Apollo 等应用程序都是开源的,但大多数算法、传感器集成和推理应用程序还没有准备好。
>
当然,这两个领域的操作系统也有重叠。 例如,驾驶舱域中的驱动数据屏幕(速度、自动驾驶信息)通常使用 QNX 来确保实际数据的读写。 在 Cockpit 中,对 Android、Linux 和 QNX 的需求还催生了 OpenSynergy 等特殊的虚拟机管理程序虚拟化解决方案。 这允许多个操作系统以虚拟化方式在同一台硬件计算机上运行。
因此,未来“软件定义汽车”很可能从多个领域进一步演化为超级计算机。 这台计算机需要一套操作系统和中间件服务来服务驾驶舱、自动驾驶等各种内部应用服务。 如果你想实现这个操作系统,主要有两条路径。
基于当前Cockpit中使用的Linux。 与此同时,Linux也在不断调整。 同时,它增加了对 Linux 上实际任务的支持。 Linux本身并不是一个真正的操作系统,它是为嵌入式设备设计的。 这条路非常艰难,但Linux拥有庞大的开发者社区和应用生态系统。 这里的代表就是Linux基金会旗下的Automotive Grade Linux(AGL)。 AGL拥有近百家会员企业,包括全球领先的主机制造商和一级供应商。 发展您的品牌 - 下一个新的实时操作系统。 一个强有力的竞争对手是来自 Linux 基金会的 SEL4。 SEL4是一个基于微核的实时操作系统。 其主要特点之一是经过形式化验证可以保证内核的安全性和稳定性。 不过,SEL4目前只有内核,但在中间件和应用生态结构方面还有很长的路要走。 好消息是,地平线、外来汽车、理想汽车、Second State近期加入SEL4基金会共建生态。
我们注意到,未来汽车操作系统的一个明显趋势是开源。 这意味着开发者测试和投入汽车生态的门槛将越来越低。
在火热的中国市场,有技术实力的汽车软件公司也在努力开发操作系统。 所有这些都从基于Linux的驾驶舱系统(例如AGL)发展到实际的车辆控制操作系统。 有更多的代表性别是:
阿里与上汽合资的斑马智行于2021年7月获30亿元增资。 它主要用于开发开源Alios Car操作系统。 华为于2021年发布开源微核鸿蒙操作系统。 业界普遍认为它可以用于未来的汽车。 2021年5月,Magic Grandics资助1亿美元用于开发汽车操作系统和应用程序商店。 中科创达是国内领先的汽车软件应用开发商。 他的高层在最近的采访中多次强调了公司做操作系统的决心。
此外,在原SEL4基金会成员地平线、蔚来、理想、二省等地平线、蔚来、理想、二省,中国厂商目前在汽车操作系统两大方向上进行布局,在全球智能汽车操作系统上我们都走在了前列系统。
软件生态与容器
纵观智能汽车生态系统,如今的座舱和ADAS领域都是以整体解决方案卖给车厂的。 对于整车厂来说,这两台关键域计算机就是黑匣子。 控制这两个领域相关软硬件生态的是领域计算机供应商,而不是整车厂。 例如,Adas激光雷达的选择以及座舱语音识别算法的选择都是由域计算机供应商决定的。 这不是一个与当今汽车生态相兼容、整个汽车将长期被接受的解决方案。 如果未来软件定义汽车发展成每辆车只有一台超级计算机,那么汽车制造商就不能放弃对这台计算机操作系统和软件生态的控制。
这里的挑战是如何安全高效地将多个下游供应商和开发商集成到一个开放计算平台上。 事实上,这个问题对于“软件定义数据中心”有合适的解决方案。 使用软件容器来分隔不同供应商编写的模块。
云原生数据中心使用Docker等软件容器来实现隔离。 汽车制造商正在寻求使用 Docker 等软件容器。
由丰田汽车和多家汽车制造商在汽车中进行测试在 Linux 系统上运行 Docker。 实时操作系统VXWorks于2019年正式推出对Docker和Kubernetes(以下简称K8)的支持。 QNX也在多个技术会议上表示愿意支持Docker。 然而云原生数据中心广泛应用的Docker、K8S根本无法满足汽车软件容器的需求。 它们太慢且太重,无法满足实时要求。 市场迫切需要更好的解决方案。
新一代轻量级软件沙箱/容器技术,例如支持多种编程语言和多种操作系统/硬件的WebAssembly运行时,是在汽车等边缘设备中实现软件隔离的不错选择。 WebAssembly直接从操作系统线程启动,不需要模拟自己的操作系统环境。 启动时间比 Docker 等解决方案快 100 倍以上。
基于 WebAssembly 的软件容器也需要自己的管理和编排工具。 这里有两个主要想法。 利用K8S成熟的云原生生态系统,将K8S转变为可以在边缘设备上编排WebAssembly容器的工具。 Kubeedge、SuperEdge 和 OpenYurt 等轻量级 K8S 工具已在边缘设备上使用。 使用数据流处理框架在传感器数据流上实时启动容器和第三方应用程序。 目前Erdos、Autoware等所有基于ROS的自动驾驶解决方案都可以采用该方案。 工业用途的实时流处理框架(例如 Yomo)也可以用于调度 WebAssembly 容器。 云原生计算基金会(CNCF)的官方托管项目 Wasmedge 也针对 Yomo 和 Erdos 进行了适配。
WebAssembly 运行时抽象了底层硬件和操作系统,允许开发人员使用现代编程语言和框架(例如 Rust)创建高性能、便携式汽车应用程序。
软件定义开发者机会
数据中心生成“云源”使用场景,赋能海量开发者。 软件定义汽车的重要性在于将汽车变成一个开放的计算平台。 它是一个集成了多家一级供应商的组件,但类似于今天的云、手机厂等公有制,需要集成一个软件开发者的生态,为用户提供最好的软件体验。 k4]align:center;">
本文来自 60 多位专家撰写的《新数据库时间和软件定义汽车》。 《数据库全景v1.0》和《2021年汽车技术与产业生态全景v1.0》还将同时包含《2021年数据库发展调查报告》和《2021年软件定义汽车调查报告》,图文、视频多媒体演示。 。
数据库是三大核心技术之一。 我们邀请了27位来自新数据库传播、数据库开源趋势、数字化转型赋能、资本支持产业等角度的人物。 数据库行业专家通过非关系数据库、文档数据库、分布式数据库、混合数据库、时序数据库、图形数据库等理论和行业实践帮助数据库开发人员快速提高。 CATALOG
智能驾驶作为人工智能的顶冠,以技术与商业融合创新为主线,我们邀请了23位汽车领域的专家,开发各种开源系统、车路等,诚邀您从不同的角度分析云计算。 协作、数字孪生和其他观点。 人工智能、物联网等技术对汽车行业的影响和机遇让汽车从业者能够更深入地了解行业动态。适合中高端从业者的决定。 同时,众多专家经历的入门和实践之旅为初学者提供了一条可以学习的专业路径。
立即扫描图片二维码订阅。
扫描下方二维码添加您的小助手。 添加“新程序员002”和“读者群”,第一时间收到杂志最新资讯。 错过
评论前必须登录!
注册