The invention relates to a method for shortening the response time in a node computer of a distributed time-controlled real-time computer system.
Moreover, the invention relates to a node computer of a distributed time-controlled real-time computer system, on which node computer an operating system is executed, and on which node computer application software is executed.
Furthermore, the invention relates to a distributed time-controlled real-time computer system having one or more node computers according to the invention.
The field of the invention is computer technology. The invention relates to a method for reducing the response time in a time-controlled computer system.
Developments in sensor technology and computer technology have allowed largely autonomous control of technical objects such as machines which operate autonomously, or vehicles which autonomously proceed toward a destination. There is a particular requirement for a rapid response by the computer system in these real-time computer applications.
In the following discussion, the totality of all programs that encompass the operating system in particular of a node computer is referred to as operating system software.
The totality of all programs encompassed by an application system, in particular on a node computer, is referred to herein as application software.
The term software, in particular of a node computer, is understood to mean the totality of the operating system software and the application software.
The execution of a program (i.e., a software process), in particular on a machine, for example on a node computer or in a communication network, is referred to herein as a task.
A task of the operating system software or of the operating system is also referred to as an operating system task, and a task of the application software or of the application system is also referred to as an application task.
The behavior of a task (regardless of whether it involves an operating system task or an application task) is modeled using a finite-state machine, and a task that computes a new result and a new state from provided input data and an old state is referred to as a computation task.
A communication task is a task that transmits a message or messages from a sender to a receiver. For example, this involves a task of a communication system that connects a sender and a receiver to one another.
According to the prior art, control systems (systems for the real-time control and/or regulation of a controlled object, for example the technical objects and vehicles mentioned above) periodically run on a distributed computer system, in particular a real-time computer system [1, p. 7]. Such a distributed computer system comprises a number of node computers that exchange data via a communication system.
The controlled object is observed at periodic observation times (sampling points). The detected data form the basis for the fastest possible computation of new setpoint values for actuators, which influence the behavior of the controlled object.
The periodically repeating execution of a sequence of computation tasks and communication tasks, which must be carried out after each observation, is referred to as a frame.
One or more real-time transactions (RT transactions, see [1, p. 24]) may run in a frame.
Two time parameters are associated with each frame:
It is an object of the present invention to reduce the execution time of a frame in a time-controlled distributed computer system.
This object is achieved by a method and a node computer mentioned at the outset, in that according to the invention, an operating system task of the node computer computes the contents of control registers of the node computer, which characterize the properties of a runtime environment of the application task in the node computer, prior to a start time, known a priori, of an application task of the node computer, and writes these contents into the control registers of the node computer.
Advantageous embodiments of the method, node computer, and computer system according to the invention are described below:
The invention is described below with reference to one exemplary embodiment illustrated in the drawings, which show the following:
For the sake of simplicity, reference is made to “a sensor” and “an actuator” below, since the number of these elements is immaterial for an understanding of the invention. However, it is understood by those skilled in the art that two or more sensors and/or two or more actuators may also be provided, even if this is not explicitly mentioned.
According to the current prior art, in the majority of cases a real-time transaction corresponding to the principle of event control is processed. In these systems, a node computer 110, as shown in
Once again with reference to
Returning once more to an event-controlled computer system,
When, as a result of the arrived message 115, an operating system of a node computer has to perform a context switch between a running application task and a new application task, in particular between computation tasks of the application software, an operating system task must specify the contents of the control registers of the computer (node computer), which characterize the properties of the runtime environment of the new application task, prior to the start time of the new application task.
The properties of the runtime environment of the new application task determine at least the following properties (regardless of whether an event-controlled or a time-controlled computer system is involved):
After the operating system task 205 concludes at point in time 202, an application-specific initialization task 206 in the interval between points in time 202 and 203 may validate the contents of the control registers of the computer (node computer) set by the operating system task 205, and may initialize the data structures of the application task.
The control registers of the computer are validated when at least the following conditions are met:
After this initialization task 206 is completed at point in time 203, the application task 207 accesses the data of this real-time transaction that are transported in the message 115, and computes the new setpoint values.
At a point in time 204, the application task 207 has completed its computations and transfers the computations to the node 130 via the message 125 (
Returning once more to the above description of a time-controlled computer system with reference to
At a point in time 214, the application task 207 has concluded its computations, and transfers the computations to the node 130 via the message 125 (
Provided that the worst case execution time (WCET) of the operating system task 205 and of the initialization task 206 are known a priori, point in time 211 results as follows:
point in time 211=point in time 213 known a priori−WCET operating system task 205−WCET initialization task 206
At the computed point in time 211, the operating system begins the context switch, and at point in time 213, known a priori, the application task 207 begins reading the input data delivered from the time-controlled communication system.
As a result of the present invention, the execution time (also referred to as response time) of a frame in each time-controlled computer node is shortened by the WCETs of the operating system task 205 and the initialization task 206. This shortening results in an improvement in the quality of the regulation.
Cited literature:
[1] Kopetz, H. Real-Time Systems, Design Principles for Distributed Embedded Applications. Springer Verlag. 2011.
Number | Date | Country | Kind |
---|---|---|---|
17166583.9 | Apr 2017 | EP | regional |