#车载软件的核心:操作系统关键技术---健康监控解析

我是穿拖鞋的汉子,魔都中坚持长期主义的工程师。

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:

一直无法对人撒娇的孩子,多数都会成长为过分认真的大人,认为唯有处处认真,他人才可能喜欢自己,这些过于认真的成年人,即使有时想要撒娇,也没办法表现出来,他们往往是客客气气,对人敬而远之。

本文主要分享关于车载操作系统中关键技术——车载软件的核心:操作系统关键技术健康监控解析。

健康监控

在汽车安全车控和智能驾驶应用领域,操作系统内核除了要满足应用的实时性和确定性要求外,功能安全的保证也同等重要的。由于操作系统内核是由软件代码组成,从软件工程的角度来看,缺陷几乎是不可避免的,而这些缺陷在某些特定条件下有可能会引发功能安全故障。因此,为了及时在系统运行过程中发现这些故障,并及时处理以防止故障的扩散,避免引发功能安全事故,采取健康监控是一种必要的解决方案。

健康监控系统用于监视硬件、应用程序和操作系统的状态。当发现故障时,需进行记录故障、识别故障等级、按故障等级进行不同的故障处理分派、提供防止故障蔓延的处置手段的操作。在安全可靠性要求极高的飞行器航空电子领域中,健康监控功能已经成为飞行器安全的重要保障机制。国际航空电子标准中定义的系统层次的健康监控中,将单一 CPU 内的健康监控体系分为三层故障处理级别。与之类似,汽车电子系统虽然没有统一的故障处理级别标准,但也可以参考航空电子标准中的健康监控机制,例如可将故障级别划分为分区级、管理级和核心级三个等级,并可对不同级别的故障设置不同的处理策略。

分区级、管理级和核心级处理的异常是对应ECU核心处理件CPU硬件可捕获的异常。当产生CPU异常时,操作系统底层硬件抽象层的异常处理程序首先会根据异常产生的位置来判定异常处理级别,然后健康监控系统根据异常级别做相应处理。CPU异常处理级别的确定方式如下所述:

1、如果 CPU 异常产生的位置是在操作系统内核态,则该异常属于核心级异常;
2、如果 CPU 异常产生的位置是用户态,则进行以下判断:

-> 如果用户分区产生的异常不是二次异常(用户分区触发异常的处理过程中再次触发的异常被认定为二次异常),则作为分区级异常;

-> 如果用户分区产生的异常是二次异常,且此用户分区的管理分区不是自身,则作为管理级异常;

-> 如果产生二次异常的用户分区对应的管理分区处于休眠态,那么该异常升级为核心级异常。

针对分区级、管理级和核心级的异常,其健康监控处理方式如下描述:

1、分区级

主要处理用户分区运行过程中用户态产生的一些异常,如:进程自身报错、被零除、内存保护、非法系统调用等。分区级异常由用户安装的用户分区异常处理程序处理。

2、管理级

每个用户分区可以配置一个管理分区,用来帮助被管理用户分区处理自身无法处理的异常。被升级到管理分区处理的异常称为管理级异常,如用户分区产生的二次异常。

当用户分区产生的异常升级为管理级时,健康监控就会对产生异常的用户分区进行默认处理(如挂起)及后续一系列预设的异常处理。

3、核心级

主要处理内核态程序运行过程中产生的一些异常和管理分区无法处理的被管理用户分区产生的异常,如:内核态程序产生了非法指令;管理分区是自身的用户分区产生的二次异常。内核态程序运行过程中产生的异常需要执行健康监控中的内核默认异常处理,如记录异常上下文信息,停止整个系统,防止故障的蔓延。

整个健康监控系统的故障分派及处理的架构如图所示,其核心是由操作系统内核所维护的系统健康监控表,该表由系统集成者进行静态配置,作为系统逻辑配置的一部分。当处理器或操作系统内核检测到一个故障时,在系统健康监控表中通过系统状态和故障类型,获取事先定义的故障处理级别。

系统健康监控表根据错误代码和注入时的系统状态指定故障的分派级别(分区级、管理级或核心级)。系统健康监控表是作为健康监控总体故障处理派发的一级表,当故障处理进入对应故障级别的处理流程后,根据各自故障级别的健康监控表(分区健康监控表、管理健康监控表、核心健康监控表)中对应的故障类型调用相应的处理程序(系统默认处理或用户自定义处理)。

分享完毕!

愿你我相信时间的力量,

做一个长期主义者!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
《道路运输车辆卫星定位系统车载终端技术要求》(JT/T794-2019)是国家交通运输部发布的标准性文件,旨在规范道路运输车辆卫星定位系统车载终端的技术要求,以提高路面交通的管理水平和安全性。 该标准涉及到车载终端的功能、性能指标、硬件、接口、软件、测试和验证、安装、使用、维护等方面,对车载终端的设计、生产、安装、检测、验收等环节都作出了规范和说明。 在功能方面,车载终端应该符合传输、处理、记录、报警、显示等方面的功能要求,并应该保障数据安全、稳定性、可靠性和通讯的互通性等方面。在硬件方面,车载终端应该选用优质、稳定的材料和零部件,并应当考虑耐摔、耐振、耐高温、耐寒、抗干扰等情况。在接口方面,车载终端应该支持主流通讯协议,并且可以应对多种数据协议和格式。 在软件方面,车载终端应该具备操作界面友好、易于操作、实时性高、数据记录准确等特点。在测试和验证方面,车载终端应该在各种极端环境、不同情况下进行测试,确保其符合标准的各项参数要求。在安装和维护方面,要确保安全、可靠、互联互通,尤其是对于车载终端的位置、电源、安全保障等方面应该特别注意。 总体来说,《道路运载车辆卫星定位系统车载终端技术要求》是非常具有实用性和可操作性的文件,其对道路运输车辆卫星定位系统的标准性管理有着重要的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载诊断技术

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值