Method and apparatus for activating tasks in an operating system
By freezing inputs in highly automated driving and robotic systems and synchronizing activation modes, complexity and safety issues caused by data unpredictability are solved, and deterministic development and efficient system design are achieved.
Patent Information
- Application Number
- CN201910375463.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-05-08
- Filing Date
- 2019-05-07
- Publication Date
- 2024-12-31
- Estimated Expiration
- 2039-05-07
AI Technical Summary
In driver assistance systems and robotic systems with highly automated driving, unpredictable transmission of data leads to complexity and safety issues, making it difficult to achieve determinism and post-simulation.
By freezing all applications' inputs within the time slice and making the output visible at the start of the next time slice, multiple task systems are employed based on common activation modes and synchronized according to the event source, the activation mode is allocated to independent partitions to ensure that Dynamic and static independence.
Deterministic development and post-simulation are achieved, reducing time complexity and development costs, and improving system security and efficiency.
Smart Images

Figure CN110457071B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a method for activating tasks in an operating system. The invention also relates to a corresponding device, a corresponding computer program and a corresponding storage medium. Background Art
[0002] In computer science, any combination of computer science, software technology components with mechanical or electronic components is called a cyber-physical system (CPS), which communicates via a data infrastructure, such as a fieldbus or other computer networks. The construction of a cyber-physical system results from the networking of embedded systems via wired or wireless communication networks. Cyber-physical systems according to the prior art are characterized by a high degree of complexity.
[0003] Typical application areas of CPS include: medical devices and systems with the highest reliability, age-appropriate assistance systems, IT traffic control and traffic logistics systems, networked safety systems and driver assistance systems for motor vehicles, industrial process control and automation systems, sustainable environmental impact and observation systems, energy supply management systems, military system networking systems (Systemvernetzungssystem) and infrastructure systems for communication and culture.
[0004] For example, WO2016023767A1 discloses a driver assistance system for a vehicle, which is configured to assume vehicle guidance (Fahrzeugführung) through partial automation and cooperation with the driver. The driver assistance system here includes: at least one operating element, which must be operated by the driver when a certain driving situation occurs, thereby ensuring the driver's alertness and attention during the execution of semi-automated driving. Depending on the operation of the operating element, the currently executed semi-automated driving maneuver (Fahrmanöver) or semi-automated driving and the semi-automated driving maneuver executed when or after the operating element is operated are continued, adapted or terminated during implementation. Summary of the invention
[0005] The invention provides a method for activating tasks in an operating system, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.
[0006] The proposed approach is based on the recognition that driver assistance systems for highly automated driving are currently in the development phase. The complexity of such software is sometimes several orders of magnitude higher than that of current automotive systems.
[0007] The method proposed below is also based on the following recognition: Systems for highly automated driving are technically complex. The same applies to future robot systems. These require high computing power and large memories and must meet high safety requirements. Consideration of functional safety requirements additionally increases system complexity.
[0008] Current systems in the automotive sector are often designed as applications or components that communicate directly. Data is made available to other applications as soon as it is available. The exact temporal relationship of the individual applications cannot be precisely predetermined here for technical reasons, for example because there are far fewer available independent computer cores than applications that are to be run on independent computing cores. It is therefore difficult to predict when exactly the data will be sent. From the perspective of the receiving application, this results in an unpredictable data age that is related to the actual runtime.
[0009] A proposed solution to this problem provides that the outputs of all applications or components of a time slice or task become visible only at the start of the next time slice and that the inputs of all applications or components within a time slice or task are frozen to a certain extent at the start of the task.
[0010] The determinism that can thus be achieved facilitates development in a deterministic manner, since the output data and their recipients are now clearly determined for given input data, even within the scope of complex time-slice systems.
[0011] In addition to simplified development, this also makes a final, unambiguous post-simulation possible. In this case, any desired task structures can be presented, wherein the consistency of the data is always ensured.
[0012] The solution described below also takes into account the situation in which, for post-simulation and to reduce the timing complexity, it is useful to combine a plurality of tasks based on a common activation scheme to form a task system based on the mechanism described above.
[0013] The advantage of the solution according to the invention is that it opens up the possibility of using external events as a basis for activation. This is possible according to the method presented below, despite a common activation mode, while retaining post-simulation capabilities and reducing time complexity.
[0014] The basic idea of the concept is to use multiple activation modes. This is achieved by synchronizing the activation modes or activating them based on the event source, and this is independent and separate for all the activation modes used. The event source can be, for example, the arrival of data (via bus, Ethernet, CAN, Flexray, LVDS, etc.), hardware or software signals.
[0015] Within an activation mode, determinism and thus in particular post-simulatability are thus maintained. Nevertheless, synchronization can be carried out flexibly according to different events by using a plurality of activation modes.
[0016] Advantageous expansions and improvements to the basic idea described in the independent claim are possible through the measures mentioned in the dependent claims. It can therefore be provided that each activation mode is assigned to its own partition. As partitioning, a person skilled in the art describes a separation possibility (Separationsmöglichkeit) provided by an operating system or an infrastructure (e.g. a so-called hypervisor). In this case, the freedom from interference (freedom from interference) of the individual partitions with respect to dynamic influences (runtime protection) or static influences (memory protection) is ensured. The use of static partitioning is particularly advantageous here. In this case, the partitioning is achieved by a one-to-one assignment of physical computing units. This increases the dynamic separation.
[0017] The unambiguous assignment of the individual activation modes to the subregions results in clearly separated activation modes which are largely independent with regard to their own dynamic and static behavior. This additionally increases determinism.
[0018] One embodiment of the invention allows, for example, the integration of software components of different relevance (criticality) for operational safety. It can also be advantageous to implement the approach independently of the synchronization according to the source of the event. In a corresponding embodiment, a plurality of activation modes can be applied synchronously with one another. Thus, a post-simulation combination of activation modes separated for operational safety is possible.
[0019] Overall, this results in a solution for meeting safety requirements and also for reducing development effort or for increasing efficiency in state reconstruction, for example, given the hardware conditions. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] Embodiments of the present invention are shown in the drawings and are further explained in the following description.
[0021] Figure 1 A flow chart showing a method according to a first embodiment;
[0022] Figure 2 Showing deterministic activation and communication;
[0023] Figure 3 An application showing multiple activation modes;
[0024] Figure 4 A control device according to a second specific embodiment is shown schematically. DETAILED DESCRIPTION
[0025] Figure 1 The basic flow of the method (10) according to the invention is illustrated. The tasks to be performed are thus respectively assigned to one of a plurality of activation modes (process 11), and the triggering events are in turn assigned to the activation modes (process 12). As soon as one of these events occurs (eintretten), the task assigned to the corresponding activation mode is activated according to this activation mode (process 13).
[0026] exist Figure 2, a system is shown by way of example, which consists of applications or components that are organized within time slices and tasks (21). These applications or components output data and can receive just this data. The data output is shown on the right side of the respective component, the data input is shown on its left side, the input data being "frozen" (24) as it were when the task (21) is activated. Time progresses from left to right according to the diagram.
[0027] Figure 3 The use of multiple activation modes is illustrated. This allows the activation modes to be synchronized or activated based on the event source. It is also possible to trigger multiple activation modes synchronously, for example, by means of a suitable timer. Therefore, for the depicted partitions 26, 27, for example, a cycle length of 200 ms is considered. In the case of the partition 28 at the bottom according to the figure, an individual trigger 23 should be seen.
[0028] The described one-to-one assignment of the zones (26, 27, 28) to the activation modes expands the scope of application by the possibility of deterministic integration of activation modes of different safety relevance. For example, the first zone (26, 27, 28) can correspond to the automotive safety integrity level (ASIL) ASIL-D, the second zone (26, 27, 28) can correspond to ASIL-C, and the third zone (26, 27, 28) can again correspond to ASIL-D.
[0029] The method (10) can be implemented, for example, in software or hardware or in a hybrid form of software and hardware, for example in a control device (40), such as Figure 4 As illustrated by the schematic diagram.
Claims
1. A method (10) for activating a task (21) in an operating system, characterized by the following features: - the tasks (21) are respectively assigned (11) to one of a plurality of activation modes (20), - a triggering event (22, 23) is assigned (12) to the activation mode (20); and If a triggering event occurs, wherein the event is assigned to an activation mode (20) below the activation mode (20), the task (21) assigned to the activation mode (20) is activated (13) accordingly according to the activation mode (20).
2. The method (10) according to claim 1, characterized by at least one of the following features: - signalling the occurrence of said event (22, 23) by means of a hardware signal or a software signal; or - said events (22, 23) comprise the arrival of data.
3. The method (10) according to claim 1 or 2, It is characterized by the following features: - said operating system manages a plurality of partitions (26, 27, 28) and The active modes (20) are respectively assigned to one of the partitions (26, 27, 28).
4. The method (10) according to claim 3, It is characterized by the following features: - The partition (26, 27, 28) is statically assigned to one of a plurality of computing units.
5. The method (10) according to claim 4, It is characterized by the following features: - The partitions (26, 27, 28) have different security levels.
6. The method (10) according to claim 1 or 2, Features The following features: The tasks (21) assigned to a plurality of activation modes (20) are at least partially synchronized with one another.
7. The method (10) according to claim 1 or 2, It is characterized by the following features: - The activation mode (20) defines the data flow (25) between the tasks (21).
8. A computer program product comprising a computer program, wherein the computer program is designed to carry out the method (10) according to claim 1 when the computer program is executed on a computing unit.
9. A machine-readable storage medium on which the computer program product according to claim 8 is stored.
10. A device (40) for activating a task (21) in an operating system, the device being designed to carry out the method (10) according to any one of claims 1 to 7.