2023年3月14日-16日,在2023第四届软件定义汽车论坛暨AUTOSAR中国日上。普华基础软件战略研究院院长张晓先表示,现有的车载操作系统可分为三类,首先是车用安全车控操作系统,主要沿用AUTOSAR CP标准,没有太多发挥的空间;智能座舱操作系统,分别包括QNX安全嵌入式实时操作系统和鸿蒙、Linux等强生态的座舱操作系统;智能驾驶操作系统,主要包括QNX、RT-Linux。
目前车用操作系统适用的场景和特性均不相同。张晓先强调,“行业仍然缺乏一个开源、开放、强实时、高可靠、高安全,并且具有自主技术的嵌入式操作系统。”
以下是演讲内容整理:
关于普华基础软件
普华基础软件是中电科旗下一家专注于基础软件的公司,包括通用基础软件和车用基础软件。
2008年开始,我们一直在中国推动AUTOSAR技术,推动国际汽车开放体系架构的技术和产品。从一个公司的孤独赛跑到今天繁荣的市场生态已历经15年时间。
普华基础软件还是一家具有开源基因的基础软件公司。15年来一直在推动开源、参与开源,并鼓励公司的开发者积极贡献开源。通用基础软件方面,普华基础软件已贡献近100万行代码在社区;车用基础软件方面,2016年,普华基础软件在CASA联盟的开源社区首次尝试将普华基础软件AUTOSAR CP301.5版本的部分代码进行开源探索。
2023年2月18日,中国汽车工业协会发布了车用操作系统开源计划,该计划中首个开源项目车用操作系统内核是基于普华基础软件车用操作系统内核产业化研发成果进行开源的。
行业对开源有诸多疑问。例如为什么要开源?为什么是微内核首先开源?如何参与开源?开源是怎样的形式?
在信息技术行业,开源经历了30多年的发展。过程中,开放软件通过开源、开放、共享、协同的新型生产方式,成为全球信息技术的强大推动力。简而言之,开源已经改变了全球软件开发的格局。
随着软件产业的发展,我国参与开源的趋势非常明显。开源的社区越来越多,参与的人数也越来越多,发展速度非常之快。全国政协经济委员会副主任、工业和信息化部原部长苗圩在去年的会议上提出,希望通过努力来打造自主可控、开源开放,最好是免费的操作系统,形成中国市场的产业发展生态。从国际到国内,开源是一大趋势。
为何要开源车用操作系统?
第一,软件定义汽车趋势下,电子电气架构向中心化发展,软件需要域融合、需要高算力的计算,和过去分布式的软件完全不同。如此一来,就需要新的操作系统、新的架构和设计。此外,芯片从单核到多核再到异构多核等架构,操作系统是硬件发挥算力的支撑,也提出了更新的要求。两个要求结合下,就需要既安全可靠,又能支持高算力,又有高数据处理能力的新一代操作系统出现。
但操作系统研发是一个系统工程,规模非常大。十年前汽车的软件可能只有一千万行代码,如今已达到一亿行,到完全自动驾驶可能会有3-5亿行。相比之下,F34战斗机只有2400万行的代码规模,汽车可以说是工业领域皇冠上的明珠,聚集了跨行业、跨领域技术的结合。如此复杂的操作系统,不是一家企业可以简单开发出来的。
开源被证明是进行大规模治理协同的有效可行模式。社会生物学家爱德华威尔逊曾说:“地球上曾经生活过的生物中,最成功的生物当然是人类。在人类之后,第二、第三成功的生物是什么呢?是蚂蚁和蜜蜂。因为他们和人类一样,懂得协同。协同、合作是生存发展的优势。”
第二,对于开源技术而言,协同合作有三大优势。
一,协同可以让一件工作从串行变成并行,许多人一起做,效率得以提高。
二,在协同中可以形成开放的产业合作生态,相对于封闭的生态发展潜力更大。
三,随着研发的规模越来越大,复杂性越来越高会对公司的管理带来挑战,协同让研发可以从公司内部的管理,变成社会化的生态合作。
三大优势是开源组织人类进行大规模治理协同模式成功的原因之一。
开源的重要意义
第一,当我们去购买、使用软件时,供应商会提供现成的软件。如果我们有超出该软件之外的需求,就需要供应商去修改。开源软件给我们提供了一个机会,可以按照自身的需求自行修改原代码,也可以委托公司或开发者进行开发。
第二,过去,中国行业有很多人认为AUTOSAR很贵。在预算不足的情况下,可以采用开源软件,花自己的时间和精力在开源软件上开发,构建自己的AUTOSAR平台或计算平台。
下图是最成功的国际开源社区GNU Linux的发展路线,最左边是GNU Linux的根。基于这样的根,30多年来,国外国内的社区都蓬勃发展起来。中国企业也不断地应用开源系统,做出贡献。普华基础软件已经贡献了近100万行的代码,衍生出不同行业的应用和不同企业的新商业模式。
在发布开源时,我常常听到一个问题:汽车行业已经有了鸿蒙、Linux,我们再去开源是不是重复造轮子?在回答这个问题之前,我想把车用操作系统再简单的介绍一下。车用操作系统有三类——第一类安全车控操作系统,行业基本上使用的是AUTOSAR的技术,这是确定的几乎没有任何变化空间的;第二类智能座舱,包括安全嵌入式实时性操作系统和强生态操作系统;第三类智能驾驶,在智能驾驶里有很多的技术路线。
我个人认为,Linux和安卓的操作系统最适用于智能座舱领域,但由于内部的结构设计,并不适合于强安全性的智能驾驶。一些公司可以用硬件软件结合的方案,去解决车用操作系统的安全问题。但随着汽车从L3往后发展到L4、L5,汽车的安全性要求越来越高,功能安全标准是必须遵守的行业规则。目前,Linux还不足以达到汽车功能安全的目标。
而我们此次发布的“微内核操作系统”适用于高安全性、高实时性的场景,比如智能驾驶。未来这三类操作系统在车上会长期存在,不同的操作系统有不同的空间。关键是在智能驾驶操作系统里现在使用的技术和产品,要么是封闭生态,要么在安全性和实时性方面有缺陷,要么是处理能力不够。缺乏一个开源、开放、强实时、高可靠、高安全并具有自主根技术的嵌入式操作系统。
什么是根技术?
ChatGPT对根技术的定义是:一种基础技术或基础设施,可以为高级别的技术提供支持。再进一步问它操作系统根技术时,Chat GPT回答“内核”是操作系统的根技术。
内核是什么?内核是操作系统最基础的部分,决定了操作系统的性能。
操作系统的内核有几种实现思路。
宏内核的优势在于所有的文件系统、调度、驱动、内存管理全部在一个内核进程中,优点是性能非常高;缺点是耦合程度很强,所以安全性、可扩展性不足。
微内核是把最小的部分放到内核里,只有内存管理、调度。优点是把操作系统的内核解耦出来,提高安全性;缺点在于由于解耦,性能没有宏内核高。
混合内核基于微内核发展而来,它把一部分与性能相关的模块放到内核中,通过内核及各种各样系统服务的进程,组建起混合内核,解决高安全和高性能兼顾的架构。
下图中标红部分是开源微内核,微内核之上通过一系列的基础服务,去支持上层各种各样的系统服务。系统服务、基础服务和微内核三部分组成了车用操作系统最核心的部分。
车用操作系统之上,我们还可以基于标准接口去支持生态,支持不同种类的中间件、功能软件和应用软件。同时,打造完整的支持车用操作系统的工具链;通过开放的硬件驱动接口支持不同种类的芯片。
普华基础软件只做基础软件部分,我们希望整车企业、供应商、科技和软件公司等工具链上的伙伴都积极参与到开源发布中,发挥各自的能力开发各有特点的产品。我们将为汽车行业贡献更多的力量,提供最好的服务,让汽车软件开发变得简单。
(以上内容来自普华基础软件战略研究院院长张晓先于2023年3月14日-16日在2023第四届软件定义汽车论坛暨AUTOSAR中国日发表的《开源共建,打造中国车用操作系统根技术》主题演讲。)
免责声明:本文由用户上传,如有错误请指正,如有侵权,请联系删除!