[发明专利]控制系统中管理线程的方法和装置有效
申请号: | 201910228811.X | 申请日: | 2019-03-25 |
公开(公告)号: | CN110032435B | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 王新忠;朱爱华;廖亮;邢佳 | 申请(专利权)人: | 北京和利时系统工程有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 郑旭丽;解婷婷 |
地址: | 100176 北京市大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制系统 管理 线程 方法 装置 | ||
本申请公开了一种控制系统中管理线程的方法和装置。所述方法包括:获取控制系统中当前的运行周期T内运行的周期线程;确定每个周期线程在运行周期T内运行的最大超时时刻Tdead,所述最大超时时刻Tdead是确定的时刻;根据所述每个周期线程在运行周期T对应的最大超时时刻Tdead,管理所述运行周期T内运行的周期线程。
技术领域
本申请涉及信息处理领域,尤指一种控制系统中管理线程的方法和装置。
背景技术
在高速铁路和城市轨道交通等列车控制系统中,随着列车控制系统功能的日益庞大,列车控制系统逐步开始基于实时操作系统实现。实时操作系统是基于优先级对线程进行调度的,存在低优先级线程无法及时调度和线程阻塞等问题。由于列车控制系统对安全性和实时性要求高,需采取有效措施及时发现系统中周期线程的调度是否存在问题,以保证周期线程在未及时调度情况下,列车控制系统可采取必要手段保障安全。
基于实时操作系统实现的列车控制系统通常包含多个不同的周期线程,分别用于实现不同功能,每个线程的周期和优先级均不相同。图1为相关技术中列车控制系统中周期线程的示例图。图1所示的线程包括IO线程、通信线程和诊断线程,他们的周期和优先级均不同,其中,IO线程周期小、优先级高;通信线程周期中等、优先级中等;诊断检测线程周期长,优先级最低。
在相关技术中,对于周期线程调度的监控采用的是通过一个普通周期监控线程对所有线程进行点名的方式,只要被周期监控的线程在一定时间内应答,就认为该周期线程调度正常,应答延时每周期都可能引入误差,因此会产生累积误差,长时间运行时系统运行不可靠。且该方法在线程调度故障恢复后可以对故障计数清零,重新监控周期线程调度是否正常。该方法如用使用在实时性要求高的列车控制系统中会存在较大的安全风险。
发明内容
为了解决上述技术问题,本申请提供了一种控制系统中管理线程的方法和装置,能够提高线程管理的安全性。
为了达到本申请目的,本申请提供了一种控制系统中管理线程的方法,包括:
获取控制系统中当前的运行周期T内运行的周期线程;
确定每个周期线程在运行周期T内运行的最大超时时刻Tdead,所述最大超时时刻Tdead是确定的时刻;
根据所述每个周期线程在运行周期T对应的最大超时时刻Tdead,管理所述运行周期T内运行的周期线程。
在一个示例性实施例中,所述获取控制系统中当前的运行周期T内运行的周期线程之前,所述方法还包括:
创建一个周期监控线程,设置所述周期监控线程在整个控制系统中的优先级为最高,执行周期为最小。
在一个示例性实施例中,所述确定每个周期线程在运行周期T内运行的最大超时时刻Tdead,包括:
根据每个周期线程被执行的周期的时长以及被执行的累计次数,确定在运行周期T内所述控制系统中每个周期线程对应的执行时刻Tschedul;
根据所述执行时刻Tschedul以及预先设置的最大超时时长Δt,计算所述每个周期线程在运行周期T对应的最大超时时刻Tdead。
在一个示例性实施例中,所述根据所述每个周期线程在运行周期T对应的最大超时时刻Tdead,管理所述运行周期T内运行的周期线程,包括:
在运行周期T内,将当前时刻Tn与所述运行周期T内运行的每个周期线程的最大超时时刻Tdead进行比较,得到比较结果;
从所述比较结果中,选择当前时刻Tn大于最大超时时刻Tdead的目标周期线程;
对所述目标周期线程进行异常处理。
在一个示例性实施例中,所述获取控制系统中当前的运行周期T内运行的周期线程之前,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京和利时系统工程有限公司,未经北京和利时系统工程有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910228811.X/2.html,转载请声明来源钻瓜专利网。