安全计算机平台文件系统的组件、运行方法及信息处理装置
技术领域
本发明涉及一种计算机文件系统,尤其涉及为解决表决装置输出不同信息而设计的安全计算机平台文件系统的实现技术。
背景技术
在高速铁路等交通控制系统中,有一种保证列车安全运行的被称为安全计算机的核心设备。安全计算机具体实现列车运行的实时控制和安全防护,确保列车按照设计路线和期望速度在允许的范围内运行。为实现这一目标,安全计算机需要实时监控列车的运行速度、当前位置、列车运行指令、系统内部状态等运行参数。操作人员或系统维护调试人员通过这些运行参数,能够及时了解系统运行状态和设备状况,并以此给出后续的操控命令。
安全计算机平台是建立在计算机技术、通信技术、控制技术之上,符合IEC62425安全完整性SIL4级的分布式网络控制系统,具有高可靠性、高安全性、开放性、灵活性等特点,主要包含以下关键技术:
1.系统安全架构
目前主流的系统安全架构有三取二、二乘二取二、二者的混合结构及派生结构。安全架构包括为同步与表决技术、故障-安全技术等。
2.安全I/O技术
安全I/O技术实现方式较多,但其核心思想表现为:具有高覆盖率的动态检测(诊断),故障后导向并保持在安全状态。
3.总线技术
这部分主要体现系统的灵活性、扩展能力、响应能力,也体现了系统的可靠性与可维护性。主要包括若干种实时以太网技术与现场总线技术。
4.安全通信协议
传输协议需满足IEC62280标准,但实现方法可能多种多样。
5.软件安全技术
软件安全技术需采用IEC62279相关规定,可能会采用不同的编码技术与加密技术。
6.轨道信号解码技术。
图1示出了“二乘二取二架构”的安全计算机,左右两边的表决装置各自接收两个信息处理装置的输出,通过外部输入输出插件输出数据。图2示出了“三取二架构”的安全计算机,表决装置接收三个信息处理装置的输出,通过外部输入输出插件来输出数据。
图1和图2仅是举例,安全计算机存在多个表决装置,各个信息处理装置中通过文件系统操作存储设备。安全计算机有多个信息处理装置向外输出数据,系统会就这些信息处理装置输出的数据进行表决。一般来说,所有信息处理装置都应该向外输出完全一致的数据,表决装置获取与其相连接的信息处理装置的输出数据。如果数据一致,则认为表决通过,系统会将这些数据向外输出。如果表决装置发现信息处理装置向外输出的数据不一致则表示表决错误,表决装置对表决错误的数据进行故障处理。
每个信息处理装置都维护一个存储设备,而由于存储设备执行文件操作的速度不完全一致或者存储设备上的文件可能不一致,传统的文件系统并不能保证所有表决装置都能得到相同的结果,进而可能导致表决装置输出不同的信息。
因此,平台需要向用户提供一致的数据以保证平台用户通过相同的计算能够得到相同的输出。
发明内容
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
本发明的目的在于解决上述问题,提供了一种安全计算机平台文件系统的组件、运行方法及信息处理装置,能够实现在不同硬件和不同文件中也能使所有模块得到相同的信息,构造出相同的结果,解决了表决装置输出不一致的问题。
本发明的技术方案为:本发明揭示了一种安全计算机平台文件系统的组件,运行于各个信息处理装置中,组件包括:
快照产生模块,生成本地文件系统的快照;
快照传输模块,将属于信息处理装置自身的本地文件系统的快照传输至其他的信息处理装置;
快照接收模块,接收来自于其他的信息处理装置的快照;
快照提交模块,将属于信息处理装置自身的本地生成的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照一起传输给平台用户;
异常检测模块,基于所有的信息处理装置在同一时刻向平台用户提交的文件系统的快照,检测平台文件系统是否异常。
根据本发明的安全计算机平台文件系统的组件的一实施例,异常检测模块基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。
根据本发明的安全计算机平台文件系统的组件的一实施例,组件还包括:
初始化模块,进行平台文件系统的初始化操作。
本发明还揭示了一种安全计算机平台文件系统的组件的运行方法,包括:
步骤1:各个信息处理装置中的安全计算机平台文件系统的组件在第一时刻同时生成本地文件系统的快照;
步骤2:各个信息处理装置将属于自身的本地文件系统的快照传输至其他的信息处理装置加以存储;
步骤3:各个信息处理装置将属于自身的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照在第二时刻同时传输给平台用户;
步骤4:基于所有的信息处理装置向平台用户提交的文件系统的快照,检测平台文件系统是否异常。
根据本发明的安全计算机平台文件系统的组件的运行方法的一实施例,在步骤4中,是基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。
根据本发明的安全计算机平台文件系统的组件的运行方法的一实施例,在步骤1之前还包括:
各个信息处理装置中的安全计算机平台文件系统的组件进行初始化操作。
本发明还揭示了一种信息处理装置,包括:
平台用户接口;
信息输出接口,用于将信息输出至外部设备;
存储设备;
安全计算机平台文件系统的组件,分别与平台用户接口、信息输出接口以及存储设备建立数据连接,所述组件进一步包括:
快照产生模块,生成本地文件系统的快照;
快照传输模块,将属于信息处理装置自身的本地文件系统的快照传输至其他的信息处理装置;
快照接收模块,接收来自于其他的信息处理装置的快照;
快照提交模块,将属于信息处理装置自身的本地生成的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照一起传输给平台用户;
异常检测模块,基于所有的信息处理装置在同一时刻向平台用户提交的文件系统的快照,检测平台文件系统是否异常。
根据本发明的信息处理装置的一实施例,异常检测模块基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。
根据本发明的信息处理装置的一实施例,安全计算机平台文件系统的组件还包括:
初始化模块,进行平台文件系统的初始化操作。
本发明对比现有技术有如下的有益效果:本发明在传统的平台文件系统中引入了文件系统快照的功能,所有信息处理装置在某一时刻生成本地文件系统快照,并将快照发送至其余的信息处理装置,然后在生成快照之后的另一时刻开始平台文件系统同步向用户提供所有快照。一直循环往复这一过程,构成了本发明的平台文件系统的核心思路。相较于现有技术,本发明能够基于这些快照信息,实现在所有表决装置上生成一致的信息。
附图说明
图1示出了“二乘二取二架构”的安全计算机的原理图。
图2示出了“三取二架构”的安全计算机的原理图。
图3示出了本发明的安全计算机平台文件系统的组件的较佳实施例的原理图。
图4示出了本发明的安全计算机平台文件系统的组件的运行方法的较佳实施例的流程图。
图5示出了本发明的信息处理装置的较佳实施例的原理图。
具体实施方式
在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本发明的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。
安全计算机平台文件系统的组件的实施例
图3示出了本发明的安全计算机平台文件系统的组件的较佳实施例的原理。请参见图3,本实施例的安全计算机平台文件系统的组件运行于各个信息处理装置中,每个信息处理装置中的安全计算机平台文件系统的组件均包括:快照产生模块11、快照传输模块12、快照接收模块13、快照提交模块14以及异常检测模块15。
快照产生模块11生成本地文件系统的快照。即,所有信息处理装置中的安全计算机平台文件系统的组件在同一时刻生成本地文件系统的快照。
快照传输模块12将属于信息处理装置自身的本地文件系统的快照传输至其他的信息处理装置。
快照接收模块13接收来自于其他的信息处理装置的快照。
快照提交模块14将属于信息处理装置自身的本地生成的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照一起传输给平台用户。即,所有信息处理装置中的安全计算机平台文件系统的组件在同一时刻向平台用户提交文件系统的快照。
异常检测模块15基于所有的信息处理装置在同一时刻向平台用户提交的文件系统的快照,检测平台文件系统是否异常。即,异常检测模块15是基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。由于不同信息处理装置中的用户都获取了一份相同的快照数据,因此在使用中,用户根据相同的快照信息可以得到相同的输出。
举例来说,例如用户向外输出更“差”的结果。以三取二架构安全计算机为例,图2所示的三个信息处理装置都在向存储设备中写入一个文件,用户需要向外输出写入状态及写入数据量。若三个信息处理装置写操作都在正常执行,只是速度有差别,用户应该向外输出三个信息处理装置中速度最慢的、写入最少的装置所写入的数据量;如果三个信息处理装置中有一个信息处理装置写入失败,用户应该向外输出写入失败。
另一个例子中,用户从文件系统中获取的数据,必须是经过校验的。以图1所示的二乘二取二架构安全计算机为例,假设两个信息处理装置中存储了同名但是内容不相同的文件。用户直接使用从本地文件系统获取的数据,而非通过文件快照获取数据,则可能造成这两个信息处理装置的输入不同,从而生成不同的输出数据。有了平台文件系统,通过快照可以得知文件内容不相同,从而进行错误或者故障处理。
较佳的,在组件中还包括初始化模块16,用于进行平台文件系统的初始化操作。
安全计算机平台文件系统的组件的运行方法的实施例
图4示出了本发明的安全计算机平台文件系统的组件的运行方法的实施例的详细步骤。请参见图4,下面是对本实施例的运行方法的各个步骤的详细描述。
步骤S1:各个信息处理装置中的安全计算机平台文件系统的组件在第一时刻同时生成本地文件系统的快照。
较佳的,在步骤S1之前还可以对各个信息处理装置中的安全计算机平台文件系统的组件进行初始化操作。
步骤S2:各个信息处理装置将属于自身的本地文件系统的快照传输至其他的信息处理装置加以存储。
步骤S3:各个信息处理装置将属于自身的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照在第二时刻同时传输给平台用户。
步骤S4:基于所有的信息处理装置向平台用户提交的文件系统的快照,检测平台文件系统是否异常。
在本步骤中,是基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。
由于不同信息处理装置中的用户都获取了一份相同的快照数据,因此在使用中,用户根据相同的快照信息可以得到相同的输出。
举例来说,例如用户向外输出更“差”的结果。以三取二架构安全计算机为例,图2所示的三个信息处理装置都在向存储设备中写入一个文件,用户需要向外输出写入状态及写入数据量。若三个信息处理装置写操作都在正常执行,只是速度有差别,用户应该向外输出三个信息处理装置中速度最慢的、写入最少的装置所写入的数据量;如果三个信息处理装置中有一个信息处理装置写入失败,用户应该向外输出写入失败。
另一个例子中,用户从文件系统中获取的数据,必须是经过校验的。以图1所示的二乘二取二架构安全计算机为例,假设两个信息处理装置中存储了同名但是内容不相同的文件。用户直接使用从本地文件系统获取的数据,而非通过文件快照获取数据,则可能造成这两个信息处理装置的输入不同,从而生成不同的输出数据。有了平台文件系统,通过快照可以得知文件内容不相同,从而进行错误或者故障处理。
信息处理装置的实施例
图5示出了本发明的信息处理装置的实施例的结构。请参见图5,本实施例的信息处理装置包括:安全计算机平台文件系统的组件1、平台用户接口2、信息输出接口3以及存储设备4。
安全计算机平台文件系统的组件1分别与平台用户接口2、用于将信息输出至表决装置的信息输出接口3以及存储设备4建立数据连接。
安全计算机平台文件系统的组件1的具体结构如图3所示,每个信息处理装置中的安全计算机平台文件系统的组件均包括:快照产生模块11、快照传输模块12、快照接收模块13、快照提交模块14以及异常检测模块15。
快照产生模块11生成本地文件系统的快照。即,所有信息处理装置中的安全计算机平台文件系统的组件在同一时刻生成本地文件系统的快照。
快照传输模块12将属于信息处理装置自身的本地文件系统的快照传输至其他的信息处理装置。
快照接收模块13接收来自于其他的信息处理装置的快照。
快照提交模块14将属于信息处理装置自身的本地生成的本地文件系统的快照以及自其他信息处理装置接收来的文件系统的快照一起传输给平台用户。即,所有信息处理装置中的安全计算机平台文件系统的组件在同一时刻向平台用户提交文件系统的快照。
异常检测模块15基于所有的信息处理装置在同一时刻向平台用户提交的文件系统的快照,检测平台文件系统是否异常。即,异常检测模块15是基于各个信息处理装置提交的文件系统的快照的内容是否相同来检测平台文件系统是否异常。由于不同信息处理装置中的用户都获取了一份相同的快照数据,因此在使用中,用户根据相同的快照信息可以得到相同的输出。
举例来说,例如用户向外输出更“差”的结果。以三取二架构安全计算机为例,图2所示的三个信息处理装置都在向存储设备中写入一个文件,用户需要向外输出写入状态及写入数据量。若三个信息处理装置写操作都在正常执行,只是速度有差别,用户应该向外输出三个信息处理装置中速度最慢的、写入最少的装置所写入的数据量;如果三个信息处理装置中有一个信息处理装置写入失败,用户应该向外输出写入失败。
另一个例子中,用户从文件系统中获取的数据,必须是经过校验的。以图1所示的二乘二取二架构安全计算机为例,假设两个信息处理装置中存储了同名但是内容不相同的文件。用户直接使用从本地文件系统获取的数据,而非通过文件快照获取数据,则可能造成这两个信息处理装置的输入不同,从而生成不同的输出数据。有了平台文件系统,通过快照可以得知文件内容不相同,从而进行错误或者故障处理。
较佳的,在组件中还包括初始化模块16,用于进行平台文件系统的初始化操作。
尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。
本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。
在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。