一种跨线列车中VOBC配置文件的热加载方法及装置与流程

文档序号:12063417阅读:250来源:国知局
一种跨线列车中VOBC配置文件的热加载方法及装置与流程

本发明涉及数据处理领域,具体涉及一种跨线列车中VOBC配置文件的热加载方法及装置。



背景技术:

在现有城市轨道交通信号系统中,VOBC(车载控制器)需要预先存储运行线路的电子地图等配置文件,列车只能在已存储有相应配置文件的线路上运行。

在城市轨道交通互联互通的大趋势下,越来越多的信号系统可以支持列车跨线运行。“列车只能在已存储有相应配置文件的线路上运行”将成为制约信号系统互联互通的主要因素,

目前,列车必须在投入运营前下载所有可能运行的线路的配置文件,并且在系统上电初始化阶段初始化所有配置文件。

特别地,列车必须在运营前下载数据,限制了列车跨线的灵活性;在上电初始化阶段初始化全部配置文件消耗了大量系统资源。



技术实现要素:

鉴于上述问题,本发明提出了克服上述问题或者至少部分地解决上述问题的一种跨线列车中VOBC配置文件的热加载方法及装置。

为此目的,第一方面,本发明提出一种跨线列车中VOBC配置文件的热加载方法,包括:

当前列车在运行过程中确定需要跨线运行时,查看待运行线路的配置文件是否已经下载完成;

在所述配置文件未下载时,在当前列车VOBC的每一个运行周期内,根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件;以及

在所述配置文件下载完成之后,在所述VOBC的每个运行周期内分步初始化所述配置文件,以完成配置文件的热加载;

其中,所述VOBC运行所占用的内存区域和下载所述配置文件所占用的内存区域相互独立。

可选地,根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件的步骤,包括:

根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数,向所述存储单元发送下载请求,该下载请求包括:配置文件的线路标识和待下载的字节数的信息;

接收所述存储单元返回的所述下载请求的响应信息后,在每一运行周期内下载所述配置文件的部分数据,其中,该部分数据的字节数小于等于所述每一运行周期内预下载的字节数。

可选地,在每一运行周期内下载所述配置文件的部分数据的步骤,包括:

在所述VOBC程序的每一个运行周期,向所述存储单元发送部分数据的下载请求;

接收所述存储单元发送的部分数据及该存储单元中已发送的部分数据的第一校验和;

在部分数据下载完成时,获取已下载的部分数据的第二校验和,

将所述第一校验和与所述第二校验和进行比较,确定已下载部分数据是否正确;

在第一校验和与所述第二校验和相同时,确定所述配置文件的部分数据已下载完成;

否则,在下一个运行周期内,重新向所述存储单元发送部分数据的下载请求。

可选地,所述根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数,包括:

在下载所述配置文件独占CPU时,根据VOBC所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数和,与该待下载字节数对应的下载时间。

可选地,根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数的步骤,包括:

根据运行VOBC程序所占用的内存信息,CPU运算资源和/或接口资源,确定所述下载字节数。

可选地,在所述VOBC的每个运行周期内分步初始化所述配置文件的步骤,包括:

根据系统的内存信息、CPU运算资源、接口资源、运行VOBC程序所占用的内存信息,CPU运算资源和/或接口资源,获取限制每一运行周期内初始化所述配置文件的执行时间;

在每一运行周期内,根据所述执行时间初始化所述配置文件,直至所述配置文件初始化完成。

可选地,所述方法还包括:

在接收到跨线运行指令时,将访问配置文件的指针调整为指向初始化完成的配置文件的内存区域。

可选地,同一时刻所述VOBC程序所在的内存中存在两条线路的配置文件。

第二方面,本发明提供一种跨线列车中VOBC配置文件的热加载装置,包括:

查看单元,用于当前列车在运行过程中确定需要跨线运行时,查看待运行线路的配置文件是否已经下载完成;

分步下载单元,用于在所述配置文件未下载时,在当前列车VOBC的每一个运行周期内,根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件;

分步初始化单元,用于在所述配置文件下载完成之后,在所述VOBC的每个运行周期内分步初始化所述配置文件,以完成配置文件的热加载;

其中,所述VOBC运行所占用的内存区域和下载所述配置文件所占用的内存区域相互独立。

第三方面,本发明提供一种车载设备,包括:上述的跨线列车中VOBC配置文件的热加载装置。

由上述技术方案可知,本发明提出的一种跨线列车中VOBC配置文件的热加载方法及装置,通过分步下载,分步初始化的方式在不影响VOBC正常功能的情况下实现对配置文件的热加载,以及热加载的配置文件被存储在独立的系统内存中,与VOBC程序正在使用的配置文件的存储内存不同,从而保证热加载过程不影响VOBC程序对当前配置文件的读取,使得系统的可扩展性更强,使得VOBC可以再任意多的线路上跨线运行。

附图说明

图1为本发明一实施例提供的跨线列车中VOBC配置文件的热加载方法的流程示意图;

图2为本发明另一实施例提供的VOBC与存储单元的关系图;

图3为本发明一实施例提供的跨线列车中VOBC配置文件的热加载装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

图1示出了本发明一实施例提供的跨线列车VOBC配置文件的热加载方法的流程示意图,如图1所示,本实施例的方法包括如下步骤:

101、当前列车在运行过程中确定需要跨线运行时,查看待运行线路的配置文件是否已经下载完成。

102、在所述配置文件未下载时,在当前列车VOBC的每一个运行周期内,根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件。

本实施例中VOBC和所述存储单元的关系如图2所示。VOBC和存储单元均位于车载设备中,且通过车地通信网络交互。

需要说明的是,该步骤中的系统资源指的是车载设备中操作系统的系统资源,该操作系统中运行有VOBC程序,且需要在内存中加载待切换运行的线路的配置文件。

进一步地,当前车载设备中的VOBC程序具有固定的运行周期,例如200ms一周期等,为此,本实施例中的加载需要在多个运行周期中完成,因为称为分步下载配置文件。

103、在所述配置文件下载完成之后,在所述VOBC的每个运行周期内分步初始化所述配置文件,以完成配置文件的热加载。

本实施例中,由于完全初始化配置文件的时长大于VOBC程序的运行周期,故,本实施例中,在多个运行周期的每一个运行周期内分步实现配置文件的初始化,进而上述描述为在所述VOBC的每个运行周期内分步初始化所述配置文件。

本实施例中,所述VOBC运行所占用的内存区域和下载所述配置文件所占用的内存区域相互独立。

另外,需要说明的是,本实施例中的加载可理解为热加载,即在内存中运行有VOBC程序的情况下,再进一步加载其他线路的配置文件,且相互不干扰。

本实施例通过分步下载,分步初始化的方式在不影响VOBC正常功能的情况下实现对配置文件的热加载,且本实施例中热加载的配置文件被存储在独立的系统内存中,与VOBC程序正在使用的配置文件的存储内存不同,从而保证热加载过程不影响VOBC程序对当前配置文件的读取。由此,无需在VOBC所在的系统内存中存储所有线路的配置数据,使得系统的可扩展性更强,使得VOBC可以再任意多的线路上跨线运行。

在一种可选的实现方案中,上述图1所示的方法还可包括下述的图中未示出的步骤104:

104、在接收到跨线运行指令时,将访问配置文件的指针调整为指向初始化完成的配置文件的内存区域。

可理解的是,跨线运行指令可为控制中心或者区域控制器发送的,本实施例不对其进行限定。

可理解的是,步骤104说明的是配置文件切换过程,即VOBC程序当前使用的配置数据和热加载得到的配置数据被分别存储在两块不同的内存区域中,VOBC程序对配置数据的访问都基于一个指向配置数据内存地址的指针,所以通过修改该指针的指向就可以变更VOBC软件当前使用的配置数据。在配置数据(上述的配置文件)热加载完成后,通过将当前配置数据指针指向变更到待热加载的配置数据的内存区,就可以实现配置文件的切换。

进一步地,为提高系统的扩展性,通常,在同一时刻所述VOBC程序所在的内存中存在两条线路的配置文件。也就是说,无需在系统内存中存储所有线路的配置文件,本实施例中仅存储当前运行线路的配置文件和待跨线运行的下一线路的配置文件即可,进而使得系统的可扩展性增强。

举例来说,上述步骤102中的根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件的步骤,包括下述的图中未示出的子步骤1021和子步骤1022:

1021、根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数,向所述存储单元发送下载请求,该下载请求包括:配置文件的线路标识和待下载的字节数的信息。

在本实施例中,系统的下载功能不独占CPU时,可根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数即可;

如果系统的下载功能独占CPU,即下载所述配置文件独占CPU时,根据VOBC所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数和,与该待下载字节数对应的下载时间。

该下载时间不需要发送存储单元,仅是运行周期内计时的时间段信息。

上述提及的系统为车载设备的系统,且系统资源为车载设备的系统资源。

进一步地,本实施例中,根据运行VOBC程序所占用的内存信息,CPU运算资源和/或接口资源,确定所述下载字节数。

1022、接收所述存储单元返回的所述下载请求的响应信息后,在每一运行周期内下载所述配置文件的部分数据,其中,该部分数据的字节数小于等于所述每一运行周期内预下载的字节数。

针对子步骤1022,举例说明如下:

第一步、在VOBC程序的每一个运行周期,向所述存储单元发送部分数据的下载请求;

第二步、接收所述存储单元发送的部分数据及该存储单元中已发送的部分数据的第一校验和;

第三步、在部分数据下载完成时,获取已下载的部分数据的第二校验和,

第四步、将所述第一校验和与所述第二校验和进行比较,确定已下载部分数据是否正确;

在第一校验和与所述第二校验和相同时,确定所述配置文件的部分数据已下载完成;

否则,在下一个运行周期内,重新向所述存储单元发送部分数据的下载请求。

另外,在另一可选的实现方式中,举例来说上述步骤102中的分步下载配置文件。

目前,VOBC程序具有固定的运行周期,在需要下载新的配置文件时,VOBC程序每个运行周期执行一次分步下载过程,通过限制分步下载过程的执行时间或下载字节数来限制其对系统资源的占用。

每次分步下载完成时应计算已下载数据的校验和(如上的第一校验和、第二校验和),整个配置文件下载完毕时得到整个配置文件的校验和,从而获知已下载文件内容的正确性。检测到校验和错误时应认为下载失败,重新下载该配置文件。

特别说明的是,配置文件的下载功能不独占CPU时(非阻塞),只需限制下载字节数来限制其对系统资源的占用;下载功能独占CPU时,还应限制其执行时间。

本实施例中,评估车载设备的系统每个运行周期可以用于热加载的系统资源,如可根据可用内存大小、CPU运算资源、接口资源等信息,从该些信息中取各限制条件中的最小值用于计算分步下载功能的下载字节数和下载时间等限制条件。

进一步地,举例来说,上述步骤103中的在所述VOBC的每个运行周期内分步初始化所述配置文件的步骤,具体说明如下:

根据系统的内存信息、CPU运算资源、接口资源、运行VOBC所占用的内存信息,CPU运算资源和/或接口资源,获取限制每一运行周期内初始化所述配置文件的执行时间;

在每一运行周期内,根据所述执行时间初始化所述配置文件,直至所述配置文件初始化完成。

也就是说,通过分步下载的方法将整个配置文件下载到内存中后,VOBC程序每个运行周期执行一次分步初始化过程,通过限制分步初始化过程的执行时间来限制其对系统资源的占用。

特别地,本实施例中,评估车载设备的系统每个运行周期可以用于热加载的系统资源如可用内存大小、CPU运算资源、接口资源等信息,从该些信息中取各限制条件中的最小值用于计算分步初始化功能的最大执行时间。

图3示出了本发明一实施例提供的跨线列车VOBC配置文件的热加载装置的结构示意图,如图3所示,本实施例的装置包括:查看单元31、分步下载单元32、分步初始化单元33;

其中,查看单元31用于当前列车在运行过程中确定需要跨线运行时,查看待运行线路的配置文件是否已经下载完成;

分步下载单元32用于在所述配置文件未下载时,在当前列车VOBC的每一个运行周期内,根据运行VOBC程序所占用的系统资源,从列车的存储单元中分步下载所述配置文件;

分步初始化单元33用于在所述配置文件下载完成之后,在所述VOBC的每个运行周期内分步初始化所述配置文件,以完成配置文件的热加载;

其中,所述VOBC运行所占用的内存区域和下载所述配置文件所占用的内存区域相互独立。

在一种可选的实现方式中,所述分步下载单元32具体用于

根据运行VOBC程序所占用的系统资源,确定每个运行周期内下载所述配置文件的待下载字节数,向所述存储单元发送下载请求,该下载请求包括:配置文件的线路标识和待下载的字节数的信息;

接收所述存储单元返回的所述下载请求的响应信息后,在每一运行周期内下载所述配置文件的部分数据,其中,该部分数据的字节数小于等于所述每一运行周期内预下载的字节数。

本实施例的装置可执行前述任意实施例所述的方法,详见上述记载,该处不再赘述。

本实施例的装置通过分步下载、分步初始化的方式在不影响VOBC程序正常功能的情况下实现对配置文件的热加载。热加载中的配置文件被存储在独立的系统内存中,与VOBC程序正在使用的配置文件的存储内存不同,从而保证热加载过程不影响VOBC软件对当前配置文件的读取。

本实施例中,VOBC程序无需在运营前下载多条线路的配置数据,而是只需在即将进入下一线路时通过热加载方法加载该线路的数据,并且热加载过程对系统资源的消耗是可控的,不会影响既有软件/程序运行。

在跨线运行中,VOBC程序不再受配置文件制约,可以运行在所有支持互联互通功能的线路上。

优选地,为实现对系统资源的可控,通常可在同一时刻系统内存中至多存在两条线路的配置数据。由此,VOBC程序只需在进入下一线路前通过热加载方法将下一线路的配置数据热加载到内存中,同一时刻只有“当前线路”、和“下一线路”的配置数据驻留内存,其他线路的配置数据无需驻留内存。

无需在系统内存中存储所有线路的配置数据,使系统的可扩展性更强,VOBC可以在任意多的线路上跨线运行。

本发明实施例还提供一种车载设备,包括:上述任意所述的跨线列车中VOBC配置文件的热加载装置。

本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。

本领域技术人员可以理解,实施例中的各步骤可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。

虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1