为嵌入式列车控制系统选择操作系统

发布者:平和梦想最新更新时间:2012-11-17 来源: 21IC 关键字:嵌入式列车  控制系统  操作系统 手机看文章 扫描二维码
随时随地手机看文章

为确保安全和效率,铁路和运输系统正在实施各种保护系统,如列车自动保护(ATP)、积极列车控制(PTC)和基于通信的列车控制(CBTC)等。地铁和其他轨道交通系统正在采用自动列车操作(ATO)系统并运行“无人驾驶”列车(没有驾驶员或驾驶员只用来处理紧急情况的列车)。

这些控制系统与安全息息相关。它们必须满足IEC 61508和EN 5012x标准中所设定的严格可靠性要求。本文侧重于介绍操作系统中对系统可靠性带来最直接影响的一些特点:确保实时性的架构特性、故障分离和故障恢复等功能。



图1 新西兰的ONTRACK安装了一个四频道RoIP装置,命名为ORC,作为IP网络和传统的VHF/IHF无线电网络之间的桥梁,用于促进列车安全运行和追踪轨道工人的位置。

标准

二十年前,欧洲电工标准化委员会颁发了铁路应用标准EN 50126,它定义了可靠性、可用性、可维护性和安全性的规范,同时颁布了用于铁路控制和保护系统软件的标准EN50128和用于发送信号的安全相关的电子系统的标准EN 50129。

EN 50128:强调了软件架构的重要性:“软件架构是软件和软件安全完整性等级开发的基本安全策略。”规定如果要求SIL 3 或SIL 4的系统部署COTS(商用现成)软件,“应定义一个策略以检测COTS软件的故障并保护系统免于故障”。

可靠性和隔离性

在一个软件系统中,可靠性是可用性和可靠性的组合。这些品质主要取决于操作系统审计架构。

操作系统架构是整个系统可靠性的基础,它决定了将组件与不同的SIL要求进行分离的难度和成本。

例如,一个ATO系统可能包含了一个显示非关键信息的多媒体组件。该组件只需要达到SIL1或甚至SIL 0(EN标准为非安全相关的软件定义了SIL 0)就可以了,而关键组件(处理与轨旁基础设施相关的通信、管理减速和制动,报警等)则需要SIL 3或更高的认证。一个有利于SIL 0组件分离的架构不能在系统的安全关键部分上妥协:

a) 简化设计,允许以最少的集成工作为SIL 0组件使用COTS软件

b) eli消除了为满足SIL 3要求而产生的设计、构建和验证非关键组件的成本。

c) 由于它减少了安全关键系统的范围,侧重于关键系统组件的开发和验证,使得整体系统更为安全。

架构

支持可靠性保证的操作系统通常被称为实时操作系统(RTOS)。实时操作系统的架构是不同的。最常见的架构是实时执行、单片式和微内核。

实时执行

尽管已有50年历史,实时执行模式依然是许多实时操作系统的基础。在此模式中,所有软件组件—内核、网络协议栈、文件系统、设备驱动程序和应用程序均在单一的内存地址空间里运行。

虽然有效,但该架构有两大弱点。首先,任何模块中的单一指针错误均能破坏内核或任何其它模块所使用的内存,从而可能导致系统范围内的故障。其次,系统崩溃也许没有留下帮助识别错误的诊断信息。

宏内核

宏内核实时操作系统通过使用一个架构解决了内存错误所引起的系统崩溃的问题,在该架构里,用户应用程序作为内存保护进程而运行。

该架构保护了内核免于错误的用户代码,但内核组件仍旧与文件系统、协议栈和驱动程序共享地址空间。因此,这些服务中的任何一个错误都能让系统崩溃。例如,在一个Linux操作系统中,驱动程序组成75%的代码,每一行显示能达到内核的潜在错误。与实时执行操作系统一样,单片式操作系统架构的系统也许难于满足可靠性的要求。

微内核

在一个微内核实时操作系统中,应用程序、设备驱动程序、文件系统和网络协议栈存在于内核之外的一个独立的地址空间;它们即与内核分离而且彼此分离。某一个组件中的故障不会波及系统。此外,由于它同样以可预见的方式运行,因此系统能重启故障组件。



图2 微内核:组件彼此分离,一个组件的故障不会波及整个系统


对于安全相关的系统,内核与其它组件彼此分离是有利的。不是所有的组件都需要实现系统的安全关键部分所需的SIL。所要求的是较低级别的SIL组件能与安全关键组件分离。

这种分离也能通过虚拟机实现(管理程序),但这种策略通常需要更强大的处理器,这限制了合适的处理器的选择并增加了成本。它也增加了系统的复杂程度,并可能影响实时性能。

实时操作系统的关键特点

微内核架构只是实现操作系统可靠性的一个特点。其它关键特点包括:

• 通过抢占低优先级的内核调用来满足实时性的承诺

• 由于优先级反转,防止不可预知的行为和系统故障

• 保证CPU资源调度的可用性以防止关键进程饥饿

• 利用软件看门狗监视进程,并在组件发生故障时采取纠正行动[page]

抢占式内核

抢占式内核是实时操作系统的一个核心特点,在一个没有抢占式内核调用的操作系统中,系统遇到不可预测的延迟会引起关键活动错过截止时间— 使得系统无法满足其可靠性的要求。

这些延迟是由高优先级用户线程等待完整的内核调用来完成所引起的,即使这个调用是系统中最低级别的进程造成的。更为糟糕的是,当驱动程序或其它系统服务(通常在内核调用时执行)代表客户线程执行时,优先级信息通常会丢失。

然而,在一个设计良好的实时操作系统中,抢占不会发生的时间窗极其短暂,通常是在纳秒级,实时操作系统对中断被禁止的时间和抢占关闭上规定了一个上限。该上限允许开发者确定最坏情况的延迟并在其设计中做调整。

为确保可预测性和关键活动的及时完成,实时操作系统必须尽可能简单,以便在通过内核的最长的非抢占式代码路径上有一个明确的上限。通过一个包括只用短执行路径服务的内核和分配给外部进程或线程的密集型操作(例如进程加载)能实现最佳的简易性。

优先级继承

优先级反转是一种低优先级线程阻止高优先级线程完成其工作的情况。表3显示了一个低优先级线程封锁高优先级线程的例子。这也许是通过同步引起(例如,警报和数据记录器共享由锁或信号灯控制的资源,警报等待数据记录器解除锁定的资源),或通过警报要求一项目前由数据记录器使用的服务引起的。

在图3的例子中,一个中等优先级的线程(数据聚合器)抢占低优先级的记录器,但不需要该记录器使用的资源,这使记录器保持了资源控制。当警报尝试运行,它抢占了聚合器并封锁,但不能访问仍被记录器控制的资源。由于警报的封锁,调度程序寻找能运行的优先级别最高的线程,并运行聚合器,颠倒线程优先级。



图3 有了优先级继承,高优先级线程不会被封锁

优先级继承是一个阻止优先级反转的机制。它将高优先级线程的优先级分配给低优先级线程直到线程完成。在上面的这个例子中,数据记录器将继承警报的优先级,因此不能被数据聚合器抢占。它将完成并恢复到原来的优先级,而且警报将解除封锁并不受数据聚合器的影响,该机制在图4中显示。



图4 自适应分区是保护特定线程和线程组的一套规则



时间分区

在与安全相关的系统里,如果一个子系统缺乏CPU周期,它提供的服务也许对其它子系统来说是不可用的。例如,在地铁系统里,如果一个车载ATP系统的通信栈进程在需要时无法响应,该车载ATP系统也许要与轨旁ATP基础设施承担通信中断并开始启动安全程序,减速或停止列车并中断上下线的服务。

时间分区通过硬件或软件的手段强制分配CPU预算,解决资源饥饿。它可以防止进程或线程垄断其它进程或线程需要的CPU周期。可能出现两种类型的分区:静态和自适应。

在静态分区中,任务在区内分组,每个区分配了一定比例的CPU时间。没有一个任务在任何区内能消耗超过分区预先确定的CPU时间。通过确保每个分区都能得到一定的CPU时间,该限制确保所有的关键进程总是能够保持运行。

不幸的是,没有进程能够使用比分配给它分区限定的更多的CPU周期,即使其它分区没有使用所有分配给它们的时间。因此,静态分区白白浪费了CPU周期并降低了系统处理高峰需求的能力。

与静态分区一样,自适应分区为进程或进程组保留了CPU周期。然而,不像静态分区,自适应分区使用动态调度算法,重新分配未使用的CPU周期给需要的分区。只有当CPU运行时,它才执行分区预算。自适应分区从而让系统以100% 的能力运行,仅当一个分区以上的进程竞争周期时,它才执行分区预算。

此外,自适应分区基于预先确定的标准,能在系统运行时调整预算。例如,一个负责制动调整的分区也许在每小时低于20公里的速度时被分配30%的CPU时间,而在更高速度时分配到45%的CPU时间。

软件看门狗

要求可用性保证的系统会实施以硬件为导向的高可用性解决方案和软件看门狗。

软件看门狗是一个监测系统并进行多阶段恢复或清除关闭的一个用户空间进程。看门狗必须自我检测并弹性处理内部故障。它如果意外停止,必须通过将其任务移交给镜像进程从而立即、完全重建其自我状态。

如发生故障,看门狗可以执行多种操作以确保系统安全性并恢复。例如,它能够中止然后重启故障进程,避免系统重启。或者,它也能终止该进程和相关进程,初始化硬件到一个安全状态,然后以协调的方式重新启动终止的进程。或者,如果故障至关重要,看门狗可以执行可控的关闭或重启整个系统并发出报警。

最后,软件看门狗能够监测传统的硬件看门狗不可见的系统事件。例如,硬件看门狗能确保驱动程序正服务于硬件,但可能无法检测到其他程序是否正确的与该驱动程序沟通。而软件看门狗可以弥补这一差距,当它检测到一个内部异常时能够采取行动。
关键字:嵌入式列车  控制系统  操作系统 引用地址:为嵌入式列车控制系统选择操作系统

上一篇:TinyOS移植技术分析及在CC2430平台的应用
下一篇:亚洲公司在大数据浪潮中进入智能系统时代

推荐阅读最新更新时间:2024-05-02 22:26

分时操作系统思想在单片机中的具体应用
随着单片机技术的发展,单片机开发的理念也在不断更新:逐步采用高性能的16/32位单片机,采用C、JAVA等高级语言编程,采用RTOS及其平台进行开发已经成为一种趋势。 分时操作系统概述 分时操作系统把CPU的时间划分成长短基本相同的时间区间,即"时间片",操作系统轮流分配给各个作业使用。某个作业在时间片结束完成,该作业将被挂起,等待下一轮循环再继续做。分时操作系统主要具有以下3个特点:多路性,用户通过各自的终端,可以同时使用一个系统。及时性,用户提出的各种要求,能在较短或可容忍的时间内得到响应和处理。独占性,在分时系统中,虽然允许多个用户同时使用一个 CPU,但用户之间操作独立,互不干涉。 分时操作系统主要是针对小型机以上的
[单片机]
分时<font color='red'>操作系统</font>思想在单片机中的具体应用
更快更流畅,领克公布智能座舱操作系统更新计划
领克一直是大家眼中“别人家的高端品牌”,相比于其他中国高端品牌,背靠吉利和沃尔沃的领克一路走来可谓是顺风顺水。从2016年诞生至今,领克已经度过了7年的时光,在这段时间里,领克为我们奉献了一款又一款的经典座驾,无论是最先发布的领克01,还是全新旗舰产品领克09,均有着让人眼前一亮的魅力。对于领克,每一位消费者有着自己的不同印象,有人喜爱它的性能,有人喜爱颜值,而对我而言,领克的智能化表现无疑更让人心动。近日,领克又发布了智能座舱操作系统的更新计划,那么在新一轮的更新之中,领克又为我们准备了哪些惊喜呢?下面让我们来一一了解一下。 作为一家紧跟时代潮流,注重智能化表现的车企,领克对于旗下产品的智能化升级十分重视。本次领克的智能座舱
[汽车电子]
更快更流畅,领克公布智能座舱<font color='red'>操作系统</font>更新计划
电热水器电话远程控制系统的实现
    摘要: 电热水器电话远程控制系统的工作原理及实现方法;着重描述了该系统的各模块组成、原理及具体的电路;电力载波调制解调器芯片TDA5051在该系统中的应用及软件流程图。     关键词: 电热水器 电力载波 远程控制 TDA5051 随着社会的进步与发展,人们的生活节奏越来越快,时间观念也越来越强,并逐步开始运用新的科技手段改善自己的生活条件和质量,享受高科技给人们带来的及时、舒适的生活环境。本文介绍了一种电话远程控制电热水器的实现方法。该系统适用于具有电脑控制的电热水器的电话远程遥控,用户可通过任意一部双音频电话(包括手机、电话分机)对自己家庭安装的电热水器进行机、停机、设温等操作。    
[传感技术]
基于双模糊控制的温度控制系统研究
0 引言     PID控制是最早发展起来的控制策略之一,以其算法简单,鲁棒性好及可靠性高的优势,被广泛应用于温度、压力、流量等工业过程控制中。但传统PID控制适用于建立精确的数学模型的确定性控制系统。当受控对象的数学模型动态变化时,系统的参数和模型变化,具有非线性时,传统PID控制很难达到理想的控制效果。近年来,智能控制作为一门新兴的理论和技术发展很快,许多学者进行了大量的研究工作。其中,模糊控制不要求被控对象的模型精确,具有较强的鲁棒性且适应性强而被广泛应用。但在一般的模糊控制中,没有考虑常规模糊控制器不同时具备在偏差大时快速跟踪,在偏差小时精确定位的问题,而且这两个要求是相互矛盾的,并发生在不同的时域。另外,也没有考虑常规模糊
[嵌入式]
用于单片机的轻量级菜单
有时要用单片机写一些大点的程序,但又没必要使用一些操作系统的时候,我写出了下面这种轻量级菜单状态机,配备一个显示设备加5个输入(上下左右和按下) 先看看效果图 上面的 ABC, BCD,EFG分别是一个菜单列表的菜单 菜单的结构框图为 对于单个菜单的结构为 对于每个菜单,分别有指向它上面的菜单,下面的菜单,它的子菜单,它的父菜单,它的菜单列表,和这个菜单对应执行的函数的指针 对于一组菜单列表为 使用非常方便,我们来看下对于刚才效果图所展示的菜单的使用 首先定义有几个菜单列表 和一个指向当前状态的菜单 菜单的初始化 首先先给每个菜单列表里添加相应的菜单 然后把各个菜单
[单片机]
2021云栖大会上斑马智行发布微内核,朋友圈再次扩大
2021杭州云栖大会上,斑马智行联席CEO张春晖正式发布自研AliOS智能驾驶系统内核。该内核是微内核架构,融入SOA跨域融合理念,执行最高功能安全ASIL-D产品认证标准。 据介绍,整车智能操作系统内核是斑马推进“AliOS三部曲”策略的重要一步,也是斑马在整车智能上的关键技术储备,将在2022年正式上市并面向国内车企免费开放,这也是业内首个安全认证免费内核。 AliOS智能驾驶系统内核采用微内核架构,驱动和文件系统在用户空间,进程间地址隔离,单模块失效不会影响整个kernel,系统高度模块化,大大增加扩展性;支持多核架构,符合莱茵ISO 26262 ASIL-D最高等级功能安全产品认证。同时,融入SOA设计理念,实现车
[汽车电子]
2021云栖大会上斑马智行发布微内核,朋友圈再次扩大
一种实用的分布式数据采集和控制系统
一、引言 液体的液位测量在工业生产中非常普遍,应用领域也比较广,例如:自来水位的测量和控制,石油管道和储油罐的油位的测量等。高精度的传感器可用于这些测试系统中来感知传递压力、流量、 温度等信号,把这些信号变成电信号,然后经过放大、A/D转换、送入单片机处理后,最后发送到远方的PC机,这样可实现对现场的液位情况进行实时监控,从而向被控单元发出指令,采取相应的动作。整个系统的框图如下: 二、具体的实现过程 1. 放大部分:TLC4502-双路自校准低噪声高速运算放大器的应用。 集成运算放大器种类很多,在各类仪表及控制电路中要求运算放大器必须具有高精度,高共模抑制比和低温漂等性能。目前采用的精密运算放
[工业控制]
基于工控机的水流量计检定控制系统原理及设计
1 引 言 过去的水流量计检定系统主要采用手动和半手动方式进行控制,其缺点是检定精度低、流量波动大、可检定表口径范围小、自动化程度不高、检表效率低。本文根据水流量仪表检定的工艺要求,结合原有检定系统的工作状况,依据石油化工部自动控制系统设计规范,设计了水流量计检定控制系统。该控制系统以计算机和变频器为核心,实现了真正意义上的自动控制,减轻了工人的劳动强度,提高了劳动效率,可完成全系列水表检定任务,大大节省了检定费用,保证生产正常运行。 2 系统组成 本系统核心采用上、下位机集散控制的方式,上位机采用研华高品质IPC工业级计算机并配以21″大屏幕监视器,主要承担系统管理任务,例如各种数据和信号的检测、存储、分析、计算处理
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved