Software update of non-critical components in dual safety-critical distributed systems

Information

  • Patent Grant
  • 10229036
  • Patent Number
    10,229,036
  • Date Filed
    Thursday, September 4, 2014
    10 years ago
  • Date Issued
    Tuesday, March 12, 2019
    5 years ago
  • Inventors
  • Original Assignees
    • Siemens Mobility GmbH
  • Examiners
    • Nguyen; Mongbao
    Agents
    • Greenberg; Laurence
    • Stemer; Werner
    • Locher; Ralph
Abstract
A method operates a safety-critical system, which system contains at least one first data device having approved, safety-relevant software and at least one reference data device having the same approved, safety-relevant software. In the method, after a type check of the system, the at least one first data device is equipped with at least one piece of non-safety-relevant additional software and the at least one reference data device is blocked from software modifications. Before safety-related data information is output, output information of the at least one first data device and of the at least one reference data device are checked for a match with regard to the safety-relevant software by a comparison device, and the safety-related data information is output in the case of a match.
Description
BACKGROUND OF THE INVENTION
Field of the Invention

It has proved very difficult or practically impossible to operate data devices such as personal computers, for instance, in such a way that they can be operated without identifiable vulnerabilities. This causes particular problems when data devices are part of a safety-critical system which is provided with safety-related and non safety-related software and which, before being used, must be type-tested and, for example for a train protection system or for an operating device in an interlocking system, must be approved in a laborious procedure. Afterwards, it is no longer permitted to modify the software. According to the prior art, this is even monitored automatically and such systems switch themselves off automatically after changes are identified. If after the testing and approval of such a system the need arises to introduce non safety-related software into such a system by means of an update or patches, then either recourse must be made to approved, uniquely identifiable software or approval testing must be carried out again.


BRIEF SUMMARY OF THE INVENTION

The object of the invention is to define a method for operating a safety-critical system, which method can be used to update the system with relatively little effort.


This object is suitably achieved according to the invention by a method for operating a safety-critical system comprising at least one first data device containing approved, safety-related software and comprising at least one reference data device containing the same approved, safety-related software, in which method


after the system has been type-tested, the at least one first data device is provided with at least one piece of non safety-related add-on software, and the at least one reference data device is blocked to software modifications; before an item of safety data information is output, a comparator is used to check the output information from the at least one first data device and from the at least one reference data device for a match with regard to the safety-related software, and the safety data information is output only if there is a match.


An essential advantage of the method according to the invention is that it provides the facility in the safety-critical system to update or to add non safety-related software subsequently, i.e. after approval, without the need afterwards to carry out type-testing again together with re-approval.


To guarantee safety, in a system comprising a plurality of first data devices and a plurality of reference data devices it is particularly advantageous to output safety data information only once a check of the output information from the first data devices and from the reference data devices with regard to the safety-related software has given the result that there is a match for each of a qualified majority of the first data devices and of the reference data devices.


The method according to the invention provides the advantageous facility to use data-protection software as the add-on software, which may be virus-protection software in particular or malware-protection software in general.


In addition, the method according to the invention advantageously allows external software to be used as the add-on software, where external software shall be understood to include, for example, commercial software, software not developed personally by the designer of the safety-critical system, or untested software.


Thus the method according to the invention is not subject to any restrictions on the type of the non safety-related software.


In a particularly advantageous embodiment of the method according to the invention, prior to type-testing, the at least one first data device is provided with at least one non safety-related add-on software in the manner that program and data are separate from each other, wherein test data containing a code is used as the data; after type-testing, the at least one first data device is provided in the same program with up-to-date data using the code after checking the validity of the up-to-date data. The code may be a signature. This embodiment of the method according to the invention is characterized in that faults in the safety-critical system by updating the add-on software are avoided with a high degree of certainty.


This embodiment of the method according to the invention can also be used independently of a safety-critical system comprising at least one first data device containing approved, safety-related software and comprising at least one reference data device containing the same approved, safety-related software, i.e. can also be used in a safety-critical system comprising one data device in the sense of the first data device mentioned above or comprising a plurality of data devices.


For fault-free updating of the add-on software, it is also advantageous if,


when data-protection software is the add-on software, it is ensured that the functionality of the program cannot be affected by the data.


In the same context, it is advantageous when the add-on software is used, to check the validity of the code of the data of this add-on software by means of the safety-related software.


The safety-critical system can refer to systems of very different types, including train protection systems or operating systems for interlocking systems. It appears particularly advantageous if a train protection system is used as the safety-critical system, an operating computer is used as the at least one first data device, and an interlocking system is used as the comparator.





BRIEF DESCRIPTION OF THE DRAWING

To provide further details of the invention, the FIGURE shows schematically an arrangement comprising a first data device and a reference data device.





DESCRIPTION OF THE INVENTION

The FIGURE shows a first data device 1, which may be an operating computer of a train protection system. The first data device 1 contains approved, safety-related software 2. Connected to the one first data device 1 via a data connection 3 is a reference data device 4, which is likewise provided with the approved, safety-related software 2.


The one first data device 1 is connected via a data channel 5, and the reference data device 4 via a further data channel 6, to a comparator 7, the function of which in a train protection system is performed by an interlocking system (not shown) or another safety-oriented comparator.


For the purpose of describing further the method according to the invention, it is assumed that the arrangement just described has been subject to type-testing and approval in this condition. If subsequently this arrangement is provided, for example, with an add-on software 8 in the form of a virus-protection program, then the reference data device 4 is simultaneously blocked to software modifications; it is still equipped solely with the safety-related software 2.


If an item of safety data information D is meant to be output by the comparator 7, then prior to this, said comparator 7 acquires output information Al and Ar from a first data device and from the reference data device 4; said output information Al and Ar is checked with regard to the safety-related software 2, and the safety data information D is output if the safety-related software 2 matches.


Apart from the non-related add-on software 8, the one first data device can also be provided with further non safety-related add-on software 9, which in the case of a train protection system may be, for example, any software for video surveillance of a station facility, or with an additional add-on software 10, which may constitute software for a railroad-crossing monitoring system.


In this case, the first data device 1 can be provided with the various pieces of add-on software 8, 9 and 10 in the manner (not shown) that for each piece of software the program and the associated data are separate. Prior to type-testing and/or approval, each of the programs are stored with test data and a code in the one first data device 1. Obviously the same applies correspondingly to the safety-related software 2 as regards the one first data device 1 and the reference data device 4.


If after type-testing the one first data device is meant to be updated in terms of the add-on software 8, for instance, then the one first data device 1 is provided with up-to-date data for this software. In this process, the code is used in a way that is independent of the transfer of the up-to-date data and is checked for a match. The validity of the up-to-date data is also checked. It is ensured here that the data in the add-on software cannot modify the functionality of the program in the add-on software.


The add-on software can also be updated in this process provided it is ensured that the update cannot remove the safety mechanisms described above, especially if an effect on the reference device 4 via the data connection 3 can be ruled out.

Claims
  • 1. A method for operating a safety-critical system executed by a hardware processor, the method comprises the steps of: providing a safety-critical system including at least one first data device having approved, safety-related software and at least one reference data device also having the approved, safety-related software, wherein the approved, safety-related software of the at least one first data device is identical to the approved, safety-related software of the at least one reference data device;type-testing and approving the safety-critical system;providing the at least one first data device with at least one piece of non-safety-related add-on software;after performing the type-testing and approving step, blocking the at least one reference data device from any software modifications;performing, via a comparator, a comparison check on output information from the at least one first data device and from the at least one reference data device for matching with regard to at least one piece of safety-related software, before an item of safety data information is output; andoutputting the safety data information if there is a match and without performing an additional type-testing of the safety-critical system;wherein prior to performing the type-testing providing the at least one piece of non-safety-related add-on software to the at least one first data device in a manner that program and data are separate from each other, wherein test data containing code is used as the data, and after performing the type-testing, providing the at least one first data device with a same program with up-to-date data using the code after checking a validity of the up-to-date data; andwherein the at least one piece of non-safety-related add-on software is data-protection software, and it is ensured that a functionality of the program cannot be affected by the data.
  • 2. The method according to claim 1, which further comprises: providing a plurality of first data devices and a plurality of reference data devices; andoutputting the safety data information if the comparison check of the output information from the first data devices and from the reference data devices with regard to the at least one piece of safety-related software has given a result that there is a match for each of a qualified majority of the first data devices and of the reference data devices.
  • 3. The method according to claim 1, which further comprises providing external software as the at least one piece of non-safety-related add-on software.
  • 4. The method according to claim 1, wherein when the at least one piece of non-safety-related add-on software is used, checking a validity of the code of the data of the at least one piece of non-safety-related add-on software by the approved and safety-related software.
  • 5. The method according to claim 1, wherein in order to update the at least one piece of non-safety-related add-on software, providing the at least one first data device with the up-to-date data for the at least one piece of non-safety-related add-on software using the code in a way that is independent of a transfer of the up-to-date data.
  • 6. The method according to claim 1, which further comprises: providing a train protection system as the safety-critical system;providing an operating computer as the at least one first data device; andproviding an interlocking system as the comparator.
Priority Claims (1)
Number Date Country Kind
10 2013 218 814 Sep 2013 DE national
PCT Information
Filing Document Filing Date Country Kind
PCT/EP2014/068843 9/4/2014 WO 00
Publishing Document Publishing Date Country Kind
WO2015/039878 3/26/2015 WO A
US Referenced Citations (30)
Number Name Date Kind
7117119 Van Dyk Oct 2006 B2
7209811 Goericke et al. Apr 2007 B1
7818103 Johansen Oct 2010 B2
8341738 Fazunenko Dec 2012 B2
8666835 Minnis Mar 2014 B2
8693610 Hess Apr 2014 B2
8910131 Moosmann et al. Dec 2014 B2
9164860 Manz Oct 2015 B2
9460077 Casey Oct 2016 B1
20040153269 Kalas, Jr. Aug 2004 A1
20070277023 Weiberle et al. Nov 2007 A1
20080010638 Klopfer Jan 2008 A1
20080140962 Pattabiraman Jun 2008 A1
20090300179 Srinivasan Dec 2009 A1
20100313075 Liakos Dec 2010 A1
20110078790 Fazunenko Mar 2011 A1
20110125302 Sethuraman May 2011 A1
20110126188 Bernstein May 2011 A1
20120054729 Sobel Mar 2012 A1
20120096428 Moosmann et al. Apr 2012 A1
20120174087 Bentzien Jul 2012 A1
20120221191 Bell Aug 2012 A1
20120304024 Rohleder Nov 2012 A1
20130024721 Kabulepa Jan 2013 A1
20130145429 Mendel Jun 2013 A1
20130185564 Jaber Jul 2013 A1
20130268798 Schade Oct 2013 A1
20130332926 Jakoljevic Dec 2013 A1
20140129001 Staudenmaier May 2014 A1
20140365102 Fries Dec 2014 A1
Foreign Referenced Citations (13)
Number Date Country
1558848 Dec 2004 CN
1842763 Oct 2006 CN
101176070 May 2008 CN
102460397 May 2012 CN
103262045 Aug 2013 CN
3938501 May 1991 DE
10332700 Jan 2005 DE
102005023296 Nov 2006 DE
102009019089 Nov 2010 DE
102011086530 May 2012 DE
0428934 May 1991 EP
03047937 Jun 2003 WO
2006120165 Nov 2006 WO
Non-Patent Literature Citations (6)
Entry
B. Umamaheswararao, Study of Methods for Analyzing and Building Software on Safety Critical Systems, International Journal of Engineering Research & Technology (IJERT) ISSN: 2278-0181 vol. 1 Issue 8, Oct. 2012, pp. 1-10.
Mustafa S. Durmus, Safety-Critical Interlocking Software Development Process for Fixed-Block Signalization Systems, 2012, pp. 165-168. https://www.sciencedirect.com/science/article/pii/S1474667015347649 (Year: 2012).
Bruce Douglass, Agile analysis practices for safety-critical software development, 2013, pp. 1-14. https://www.ibm.com/developerworks/rational/library/agile-analysis-practices-safety-critical-development/agile-analysis-practices-safety-critical-development-pdf.pdf (Year: 2013).
Leanna K. Rierson, A Systematic Process for Changing Safety-critical software, 2004, pp. 1-7. https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=arnumber=886878 (Year: 2004).
M. Ben Swarup, A Software Safety Model for Safety Critical Applications, 2009, pp. 1-12. https://pds.semanticsholar.org/3845/661e15c6d469f833bb8cc5eb9fad97feafb2.pdf (Year: 2009).
A. Drozd, Checkability of the Digital Components in Safety-Critical Systems: Problems and Solutions, 2011, pp. 1-6. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6116606 (Year: 2011).
Related Publications (1)
Number Date Country
20160232076 A1 Aug 2016 US