Real time control system and method for replacing software in a controlled system
First Claim
Patent Images
1. A real time control system comprising:
- at least one control processor having a main memory;
a software system that is subdivided into an operating system and into a plurality of software units which have a hierarchical configuration and which are separately loadable into the main memory of the control processor and that communicate with one another via the operating system for the implementation of control jobs on the basis of messages;
version identifiers and system wide unique identifiers for respective software units of said plurality of software units, each of said messages containing a version identifier and a system wide unique designation of a respective addressed software unit, said version identifier indicating a version of the addressed software unit to the operating system; and
an expansion manager within the software system that supplies the software units of the plurality of software units with a respective version identifier to be employed in a respective message.
1 Assignment
0 Petitions
Accused Products
Abstract
In order to save development costs, a real time control system should offer the possibility of being upgraded or of growing by replacing software during operation. This ability is achieved in that every message for communication contains a version identifier in addition to containing a designation of the addressed software unit that is unambiguous system-wide. This version identifier indicates the version of the addressed software unit to the operating system.
229 Citations
13 Claims
-
1. A real time control system comprising:
-
at least one control processor having a main memory; a software system that is subdivided into an operating system and into a plurality of software units which have a hierarchical configuration and which are separately loadable into the main memory of the control processor and that communicate with one another via the operating system for the implementation of control jobs on the basis of messages; version identifiers and system wide unique identifiers for respective software units of said plurality of software units, each of said messages containing a version identifier and a system wide unique designation of a respective addressed software unit, said version identifier indicating a version of the addressed software unit to the operating system; and an expansion manager within the software system that supplies the software units of the plurality of software units with a respective version identifier to be employed in a respective message.
-
-
2. A method for replacing software in a control system having at least one control processor, having a software system that is subdivided into an operating system and into a plurality of software units which have a hierarchical configuration and which are separately loadable into a main memory of the control processor and that communicate with one another via the operating system for the implementation of control jobs on the basis of messages, each message containing a version identifier and a system wide unique designation of a respective addressed software unit said version identifier indicating a version of the addressed software unit to the operating system, and having an expansion manager within the software system that supplies the software units of the plurality of software units with a respective version identifier to be employed in a respective message, comprising the steps of:
-
loading a respective software unit of a new version into a memory area of the main memory of the control processor and activating the respective software unit; switching messages from an old software unit of the plurality of software units to the newly loaded software unit, that replaces the old software unit, without interruption of the software system in that the version identifier of the newly loaded software unit is communicated to the other software units of the software system; deactivating the old software unit and releasing by the operating system a memory area in the main memory associated with the old software unit. - View Dependent Claims (3, 4, 5, 6, 7, 8)
-
-
9. A method for replacing software in a control system having at least one control processor having a software system that is subdivided into an operating system and into a plurality of software units which have a hierarchical configuration and which are separately loadable into a main memory of the control processor and that communicate with one another via the operating system for the implementation of control jobs on the basis of messages, each message containing a version identifier and a system wide unique designation of a respective addressed software unit said version identifier indicating a version of the addressed software unit to the operating system, and having an expansion manager within the software system that supplies the software units of the plurality of software units with a respective version identifier to be employed in a respective message, comprising the steps of:
-
loading a respective software unit of a new version into a memory area of the main memory of the control processor and activating the respective software unit; switching messages from an old software unit of the plurality of software units to the newly loaded software unit without interruption of the software system in that the version identifier of the newly loaded software unit is communicated to specific software units of the plurality of software units that are event sources which trigger actions of the control system as a consequence of an event in that the event sources send source messages to other software units of the plurality of software units, the version identifier for a sequential message being transferred into the sequential message from a message triggering the sequential message; carrying out a check to determine if the new software unit functions faultlessly; given an identified fault of the new software unit, resetting the version identifier to be employed to an old value on the basis of renewed messages to the remaining software units and deactivating the new software unit and releasing the memory area relating thereto by the operating system, or given a faultlessly functioning new software unit, deactivating the old software unit and releasing by the operating system a memory area in the main memory associated with the old software unit. - View Dependent Claims (10, 11, 12, 13)
-
Specification