智能汽车操作系统功能安全探索与落地化实践_自动驾驶如何做到真安全 csdn

写在最后

在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。

需要完整版PDF学习资源私我

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

汽车行业正在经历一场翻天覆地的变革,从机械化到电子化、电动化,再到自动化、智能化,以及未来的云计算化、车路云协同化……智能网联汽车时代已经拉开序幕,智能汽车的诞生推动汽车行业从硬件主导的传统方式转变为以软件为中心的个性化模式。汽车电子产业链也在发生巨变与重塑,面向部件的整体功能式供应链转为硬件+平台化软件+定制化开发的联合形态,急需构建围绕主机厂和最终用户需求的智能计算基础平台和产业链生态,智能汽车操作系统必将成为产业核心,推动和引领智能网联汽车的发展。只有智能汽车操作系统才能支撑打造跨车型、应用定制,适配不同异构分布硬件的统一汽车智能驾驶产业化平台合作模式,实现软硬解耦、功能应用解耦、车型解耦的灵活开发模式,真正赋能主机厂的自主开发。

纵观历史,每一次科技变革,一定会带来一场旧思想的颠覆和新思想的渗透与冲击!对于汽车行业的巨变,随之带来的是新思想新理念新技术的融合与创新。传统车企多年沉淀的优势在于强大的集成能力与规范且规模化的生产制造能力,传统汽车行业零部件供应商具有良好的电子零部件开发及供货能力,但是二者在大规模平台化软件开发方面经验欠缺,缺乏较大型软件规划、架构、设计等方面的正向积累,所以传统汽车行业的各路玩家是无法独自撑起一个完整的智能网联汽车时代,在这样智能汽车取代传统汽车的大时代背景下,融合车企规范性和ICT先进性的高科技平台软件公司必将登上历史舞台,作为中坚力量,向下实现跨车型跨硬件的扩展集成,向上赋能车企深入到软件开发中,真正实现定制化应用软件的自主开发。由此诞生的智能计算基础平台、智能汽车操作系统,作为承上启下的时代新产物,大家对它的认知还需要时间的沉淀,而我们作为智能计算基础平台,智能汽车操作系统最早的定义者和引领者,在行业内不断的授人以渔,慢慢的让行业各路资深玩家们开始觉醒,认同,并开始协同合力共创智能网联汽车时代华章。

对于智能网联汽车,安全是最为关注的话题。从功能安全ISO26262到预期功能安全ISO21448,标准只是提供最基本的方法论,而如何真正做到安全是需要每一个从业者深度思考、深入研究以及深刻实践的。智能汽车操作系统作为支撑智能网联汽车产业的核心产品,其安全可靠也是我们一直以来追求的目标,传统的安全标准虽然按部就班的给出相应的开发指导,但是对于智能汽车操作系统而言,所需支持的应用场景复杂多变,AI算法作为服务嵌入其中,功能逻辑复杂,代码量巨大,大量开源代码的使用,基于linux内核开发的广泛应用……这些似乎都与传统的功能安全背道而驰,新生的预期功能安全似乎也还处于一种混沌状态,那么智能汽车操作系统安全性如何保障?智能网联汽车的安全是否有明天?在智能汽车操作系统功能安全上,我们就好像是“孤身走暗巷”的孤勇者一样,虽然对峙绝望但也算一路披荆斩棘,摸索开拓出一条属于智能汽车操作系统功能安全的正确之路,也希望能把这些经验与理念传播给行业内为了确保安全而奋力作战的同行者们,大家共同真正推动落实智能汽车操作系统的安全可靠性。

智能汽车操作系统的安全入场券

智能汽车操作系统的安全性如何保障?毋庸置疑,一定是先站在巨人的肩膀上,标准是行业智慧的体现,是经过时间见证的优秀方法论,标准不一定是最好最先进的,但一定是最基础的理论,所以对于智能汽车操作系统的安全之路第一步一定是先买入场券,我们在公司范围内建立安全体系,在基础质量体系基础上建设稳固的ASPICE体系、再在此基础上融合功能安全体系和预期功能安全体系,万丈高楼一定需要坚实的地基与框架。

在汽车行业里,很多人对于功能安全和预期功能安全的理解只停留在标准层面上,因此会有很多误解,认为它侧重在文档功夫上,甚至有些人认为它很鸡肋,但很多时候都是无知者无畏。真正的功能安全与预期功能安全一定是和技术融为一体,在开发过程中自然而然能够考虑到,也会自然而然去解决。文档作为一种载体和体现形式,虽然不是产品能够设计好的充分条件,但是一定是产品卓越的必要条件。

传统功能安全聚焦于电子电气设备的失效,对于硬件有形产品,硬件固有属性随着时间的推移会产生随机失效,例如一个电阻元器件可能随机产生开路、短路、阻值漂移等随机失效模式,如果它在一个电路中处于很关键的角色,那么它的失效可能带来整个电路、模块或设备、的失效,如果这个产品又是一个安全相关产品,它的失效就可能导致人身伤害的危险事故。而对于软件这种无形产品,软件人员能力差异,开发过程的疏忽,所使用的工具的准确度偏差都会影响最终软件的质量,这些不可量化的失效统称为系统性失效,系统性失效无法完全消除且一旦运行环境或条件达到相应触发临界点时,便一定会发生,同样,对于安全相关软件,系统性失效可能导致人身伤害的事故发生。因此功能安全的终极使命便是降低随机性失效和系统性失效,把一切风险控制在可接受的范围。

ISO26262基于对抗这两种失效给我们提供了一套最基础的方法论。总体概括,它包括两部分内容:功能安全技术和功能安全管理。功能安全技术包括逐层细化的功能安全分析,架构层面的功能安全方案设计,硬件的安全架构设计、失效探测、诊断措施、随机失效的度量与定量计算,软件的安全架构设计、故障检测与故障处理机制,各层级测试技术的充分运用。功能安全管理包括安全文化的建立、功能安全认可、功能安全审核、功能安全评估、配置管理、质量管理、变更管理、验证管理等内容。

同时ISO26262给我们提供了两种开发思路:一种是自上而下的开发,从概念阶段的HARA分析到功能安全概念FSC,到系统阶段的技术安全概念TSC,再到软硬件层面的安全需求、设计与测试,一切基于相关项定义进行分析与分解。另一种是自下而上的开发,也就是SEooC开发(脱离上下文环境的安全要素开发),我们选定要开发范围后假设它的上一层需求,以便推导出它的安全需求,然后进行相应的分析、设计和测试等一系列的活动,当它工程化实践落到实际应用场景中时,假设条件与实际条件进行相应的匹配与偏差分析。这两种开发思路的区别在于,第一种思路就是根据客户的需求进行定制;第二种思路是正向开发产品进行客户营销。

对于智能汽车操作系统,显然SEooC的开发方式更符合它的基因,而功能安全技术和功能安全管理是缺一不可的。

随着智能网联汽车的发展,面对复杂的应用场景,人们开始意识到事故的发生不仅仅来源于电子电气的失效,也有可能是功能不全、性能不足以及人的误操作。但早在传统功能安全诞生时,专家们就武断的给功能安全下了一个“针对电子电气失效”的紧箍咒,因此这些新型可能导致危害的情况衍生了一个功能安全的孪生体——预期功能安全。ISO21448在这种混沌的状态下诞生,立足对自动驾驶安全影响广泛的非故障安全领域,重点关注智能汽车的行为安全,解决因自身设计不足或性能局限在遇到一定的触发条件(如环境干扰或人员误用)时导致的整车行为危害。

ISO21448预期功能安全方法论总体概括也可分为两部分内容:一是功能设计、分析与优化;二是场景的验证与确认。前者包括功能规范设计、分析系统功能、危害识别与风险评估、改进系统设计进行功能优化;后者包括已知危险场景的评估和未知危险场景的评估。

图片

在ISO21448标准中,从安全性和已知性角度,将车辆行驶场景划分为4类:

• 已知安全场景(区域1)

• 已知危险场景(区域2)

• 未知危险场景(区域3)

• 未知安全场景(区域4)

对于已知危险场景2,基于现有用例可以明确评估,通过SOTIF分析方法保证这类场景的残余风险足够低。基本思想是通过危害分析识别出风险场景,针对风险场景开发对应策略,再对已知场景搭建仿真环境或实车环境进行测试验证,根据实验结果优化系统设计,例如进行功能改进或限制功能使用,从而将相应的危险场景转移至区域1安全场景。

对于未知危险场景3, SOTIF基于危害分析、开放道路测试、随机输入测试等,发现系统设计不足,并将能检测到的危险场景转移到区域2当中。区域3的场景和相应用例可以通过行业最佳实践或者其他方法制定。最终基于统计数据和测试结果,间接证明区域3的残余风险可接受。

图片

预期功能安全最终目标为评估系统在已知危险场景(区域 2)和未知危险场景(区域3)的残余风险控制在合理可接受范围。

智能汽车操作系统作为智能网联汽车的共性基础软件,所需要支持L2到L4不同的自动驾驶应用功能,因此预期功能安全的考虑也是必不可少。

无论是ISO26262功能安全标准还是ISO21448预期功能安全标准,它们只提供了最基础的方法论,而距离工程化实践还有很大的距离,按照标准开展相应活动也不过仅仅是智能汽车操作系统功能安全路上的一张入场券而已,后面任重而道远。

2020年,我们基于智能汽车操作系统的平台化特性,摸索确定其功能安全目标,由于智能汽车操作系统后续支持的服务及应用广泛,可能涵盖多种场景和自动驾驶等级,在不同的自动驾驶等级下,对智能汽车操作系统可能有不同的功能安全要求,所以最终确定按照ISO26262标准最高功能安全等级ASILD的要求对其进行流程体系构建与落地,全面建立功能安全开发流程、文档模板、检查单和各种功能安全活动指导手册。并在同年加入CAICV中国智能网联汽车产业创新联盟的预期功能安全工作组,对预期功能安全相关技术开展研究与评价。2021年初顺利通过ISO26262-2018标准流程体系认证,标志着我们在智能计算基础平台、智能汽车操作系统的安全之路上迈出了重要的第一步。

在智能汽车操作系统ICVOS产品开发过程中,我们也进行了很长时间功能安全开发模式的探索,前期采用自上而下的开发模式,从应用功能角度出发,以HWA和AEB功能为例,进行HARA分析,识别功能安全需求,基于架构分解技术安全需求,再进一步分解……在这个过程中,我们发现这种方式对于智能汽车操作系统的功能安全有两个弊端:一是对于基础平台化软件,需要支撑各种不同的应用及服务,安全需求如果来源于单纯一种或几种应用及服务并不全面,且这种方式分解出来的特定应用相关需求较多,而基础平台软件安全需求不足;二是这种分解到智能汽车操作系统层面的安全需求颗粒度不够细化。因此转为自下而上的SEooC的分析,从智能汽车操作系统的feature定义入手,进行假设分析,并进一步分解安全需求,这种方式更加聚焦共性基础软件的功能安全细节要求,实践证明这种方式更加适用于智能汽车操作系统的功能安全开发。而从应用角度启动的自上而下的分析与分解可以作为一种辅助形式,用来作为功能安全需求查缺补漏的验证。

智能汽车操作系统的安全挑战探索

智能汽车操作系统作为智能网联汽车时代的新产品,ISO26262功能安全标准无法覆盖它的安全性,即使是ISO21448预期功能安全的加持,也不能完全承载它所面对的安全挑战。

首先,智能汽车操作系统作为一个基础平台软件,需要支持L2到L4级自动驾驶应用,各种应用面临不同的使用场景,多种场景因素组合又会衍生无穷的新场景;新场景带来不可预知的功能、性能的局限性以及特定场景可能触发的失效情况,从而引发安全问题。而软件本身的属性只能对有限的场景或特征输入进行处理,这就要求对海量的场景进行抽丝剥茧,提取各种场景下共性的、与安全相关的特征进行分析,并最终分配至安全要素,而要完成对安全分析结果正确性验证则需要对海量场景进行测试,此过程的难度和工作量无疑是巨大的,需要灵活的软件架构、强大的自动化测试系统做支撑。并且汽车行业里很多标准来源于国际标准,或由国际标准转化的国家标准,而智能网联汽车安全与场景强相关,因此也具有一定的地域性,国外的标准理论固然可以借鉴,但是并不能真正彻底指导和解决中国的自动驾驶问题,中国特色的标准还在构建与规划中,还有待进一步完善。

智能汽车操作系统的软件规模也是空前庞大,随着整车电子电气架构从分布式向集中式的演变,智能计算基础平台承担越来越多原来单个ECU的功能,因此智能汽车操作系统软件代码量巨大,逻辑异常复杂,由此带来很多不确定性因素,系统性失效率可能随着代码量的增加而倍增,因为繁琐的流程和效率在一定程度上会存在冲突,大规模软件的安全性可靠性鲁棒性必然面临巨大挑战。

智能汽车操作系统中可包含算子库,对于AI算法,AI模型属性上存在一定的模糊性,参数在不断变化,没有固定的标准去评估下一次计算结果正确性,也就没有了功能安全上所谓的诊断依据。神经网络的不确定性与错误率是不可避免的,训练数据无法确保其完整性与全面覆盖,实际运行时数据与原始训练数据也会存在分布偏差,训练环境与实际运行环境可能存在差异,都可能导致输出结果偏差,这些问题无法通过功能安全方法论解决,也无法完全靠预期功能安全理论方法就能完美消除。

智能汽车操作系统底层采用linux内核,并且内部含有第三方的库函数和一些开源代码,从传统功能安全的角度,这些都是标准要求所不能接受的,而linux系统本身与智能汽车操作系统特性又高度契合,作为开源操作系统,Linux统治了服务器端75%的市场,在多年的使用、更新迭代的过程中,Linux自身具备了强大的、适应服务软件的稳定性、可靠性和安全性,同理,开源代码一般都是经过不断迭代,千锤百炼沉淀下来的行业智慧,很多时候自研代码性能未必优于开源代码。这些矛盾,就好像是一边是心之所向,一边是道德伦理;又好像一边是理想主义,一边是现实所趋,那么智能汽车操作系统如何面对这些挑战,解决这些矛盾呢。

我们在2021年到2022年的项目实践与探索中,逐渐意识到这些挑战,也逐步开始认知这些挑战背后的本质,对新生事物与理念首先是抱着一种接受的态度而不是本能的拒绝,放下安全相关标准的条条框框,用第一性原理去看待分析每一个问题,也从第一性原理去解决每一个安全问题。智能汽车操作系统作为功能安全路上的孤勇者,谁说站在光里的才是英雄,谁说只有照搬标准才算安全?!

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

😝朋友们如果有需要的话,可以联系领取~

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

2️⃣视频配套工具&国内外网安书籍、文档
① 工具

② 视频

image1

③ 书籍

image2

资源较为敏感,未展示全面,需要的最下面获取

在这里插入图片描述在这里插入图片描述

② 简历模板

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值