Task execution system and method for vehicle operating system

By independently executing tasks and setting execution cycles and waiting times, the problem of task synchronization in the adaptive AUTOSAR operating system is solved, achieving synchronization between tasks and reducing system load, thus meeting the synchronization and safety requirements of automotive applications.

CN114637597BActive Publication Date: 2026-05-15HYUNDAI AUTOEVER
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HYUNDAI AUTOEVER
Filing Date
2021-11-30
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing adaptive AUTOSAR operating systems cannot effectively synchronize tasks during task scheduling, especially in multi-threaded environments, leading to unstable operation of automotive applications and failure to meet diagnostic and safety requirements.

Method used

Through the task information extraction unit, execution cycle setting unit, task execution unit, and waiting time provision unit, tasks are executed independently and task execution cycles are set. Synchronization between tasks is achieved by utilizing task priority and execution order, and waiting time is provided to ensure that tasks are executed in sequence.

Benefits of technology

It enables independent synchronization between tasks, reduces system load, ensures the periodic and deterministic execution of tasks, and meets the synchronization requirements of automotive applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114637597B_ABST
    Figure CN114637597B_ABST
Patent Text Reader

Abstract

A task execution system and method of a vehicle operation system according to a preferred embodiment of the present application, wherein the task execution system of the vehicle operation system includes a task information extraction section that extracts task information related to an event signal received from an application from a preset event chain table, a task execution cycle setting section that sets a task execution cycle using the extracted task information, a task execution section that executes one task of a plurality of tasks according to the task execution cycle, and a waiting time providing section that provides a task waiting time to the task execution section to wait for a next task execution if the one task execution is completed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a task execution system and method for a vehicle operating system, for example, to a task execution system and method for an Adaptive Automotive Open Systems Architecture (AUTOSAR) operating system. Background Technology

[0002] Recently, with the emergence of new trends in the automotive industry, such as electric vehicles and autonomous driving, IT (information technology) convergence technologies applicable to the automotive field, including ADAS (Advanced Driver Assistance System) and V2X (Vehicle-to-X), are actively emerging and developing.

[0003] In particular, there is an increasing number of cases where the Linux operating system is used in vehicle controllers, because it makes it easier to implement infotainment, V2X and other applications using various drivers of the Linux operating system.

[0004] This Linux operating system can overcome the limitations of the Classic AUTOSAR operating system, but it has the limitation of not being able to support other diagnostic functions or in-vehicle networks such as CAN communication.

[0005] To address the aforementioned shortcomings, the Adaptive AUTOSAR operating system emerged with the development of technology.

[0006] The adaptive AUTOSAR operating system supports the application of future-developed functions to the high-performance hardware, various audio drivers, various video drivers and external interfaces required by automobiles, and meets the needs of vehicle communication networks and security through technological advancements.

[0007] The adaptive AUTOSAR operating system largely guarantees the periodicity and deterministic nature of task scheduling actions for process units. It does not participate in the scheduling of individual threads within a process.

[0008] When a car application implemented by multiple threads is divided into separate process units, system resources must be reconfigured for each process on the operating system. Since structural changes to previously designed car applications are inevitable, functional operation cannot be guaranteed.

[0009] On the other hand, automotive applications based on high-performance hardware consist of multiple threads within a single process. For automotive applications, synchronization between internal threads is crucial, as synchronization determines the order of thread operations.

[0010] The automotive application runs in an independent thread. This thread runs periodically, and when this periodicity is disrupted, the inherent algorithms implemented in the application may perform incorrect calculations.

[0011] In addition, the requirements for diagnostic and security functions commonly used in automotive applications must also be met.

[0012] Therefore, in order to meet the needs of automotive applications, an adaptive task synchronization method in automotive operating systems is required.

[0013] Prior technical documents

[0014] Patent documents

[0015] Patent document 1: Republic of Korea Patent No. 10-1353065 Summary of the Invention

[0016] The present invention is proposed in view of the above-mentioned problems, and its purpose is to provide a task execution system and method for a vehicle operating system, wherein synchronization between tasks is achieved by independently executing tasks according to the task execution cycle, rather than by performing synchronization through the relationship between multiple tasks.

[0017] To achieve the aforementioned objective, a task execution system for a vehicle operating system according to a preferred embodiment of the present invention includes: a task information extraction unit, which extracts task information related to an event signal from a preset event list if an event signal is received from an application; an execution cycle setting unit, which sets a task execution cycle using the extracted task information; a task execution unit, which executes one of a plurality of tasks according to the task execution cycle; and a waiting time providing unit, which provides a task waiting time to the task execution unit to wait for the next task execution if the execution of one task is completed.

[0018] The task information may include a task list, task cycle, task priority, and task execution order.

[0019] It may also include: a memory allocation unit for allocating the extracted task information to a memory region; and a core setting unit for setting a predetermined core to execute the task.

[0020] The event signal can be a periodic signal.

[0021] The task execution unit can sequentially execute multiple tasks included in the task list based on the task priority and the task execution order.

[0022] When any task in the task list is completed, the task execution unit may wait for the next task to be executed according to the task waiting time.

[0023] The task execution unit repeatedly executes the tasks in the task list as the event signal is generated periodically.

[0024] To achieve the aforementioned objective, a task execution method for a vehicle operating system according to a preferred embodiment of the present invention includes: a task information extraction step, wherein if a task information extraction unit receives an event signal from an application, it extracts task information related to the event signal from a preset event list; a task execution cycle setting step, wherein a task execution cycle is set using the task information extracted by the execution cycle setting unit; a task execution step, wherein a task execution unit executes any one of a plurality of tasks according to the task execution cycle; and a waiting step, wherein if the task execution unit completes the execution of the one task, it waits for a preset task waiting time in order to execute the next task.

[0025] It may also include: an event signal receiving step, wherein the task information extraction unit receives an event signal from the application; and a memory allocation step, wherein the memory allocation unit allocates the task information to memory.

[0026] It may also include: a signal determination step, in which the task execution unit determines whether the periodic generation of the event signal should continue; and an execution termination step, in which the task execution unit terminates task execution when the periodic generation of the event signal ends.

[0027] The task execution step is to execute the next task after waiting for the task waiting time when the periodic generation of the event signal continues.

[0028] The task information may include a task list, task cycle, task priority, and task execution order.

[0029] The task execution steps can sequentially execute multiple tasks included in the task list based on the task priority and the task execution order.

[0030] The task execution steps are repeated as the event signal is generated periodically, executing the tasks in the task list repeatedly.

[0031] Invention Effects

[0032] The task execution system and method for a vehicle operating system according to a preferred embodiment of the present invention have the effect of achieving synchronization between tasks by independently executing tasks according to the task execution cycle, rather than by performing synchronization through the relationship between multiple tasks.

[0033] In addition, it has the effect of synchronizing tasks by providing waiting time between multiple task execution cycles. Attached Figure Description

[0034] Figure 1 This is a schematic block diagram of a task execution system for a vehicle operating system according to a preferred embodiment of the present invention.

[0035] Figure 2 This is a structural diagram of a task execution system for a vehicle operating system according to a preferred embodiment of the present invention.

[0036] Figure 3 This is a flowchart of a task execution method for a vehicle operating system according to a preferred embodiment of the present invention.

[0037] In the picture:

[0038] 1: Electronic control unit; 10: Operating system; 100: Application; 200: Task execution system; 210: Task information extraction unit; 220: Memory allocation unit; 230: Execution cycle setting unit; 240: Core setting unit; 250: Task execution unit; 260: Waiting time provisioning unit. Detailed Implementation

[0039] The preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings. First, it should be noted that when labeling each drawing with reference numerals, the same numerals are used for the same constituent elements, even on different drawings. The preferred embodiments of the present invention will now be described; however, the technical concept of the present invention is not limited thereto, and various modifications can be made by those skilled in the art.

[0040] Figure 1 This is a schematic block diagram of a task execution system for a vehicle operating system according to a preferred embodiment of the present invention.

[0041] Reference Figure 1 The electronic control unit 1 can be configured as a control system for various electronic control systems of the vehicle. The electronic control unit 1 can be equipped with an operating system 10. The operating system 10 can be an adaptive AUTOSAR operating system. The operating system 10 can support applications based on high-performance hardware, memory, audio / video drivers, and external interfaces.

[0042] Application 100 can provide functions for vehicle diagnostics, security, etc. Application 100 can run periodically. When the running cycle of Application 100 is interrupted, the algorithms implemented in Application 100 may perform incorrect calculations. To prevent this, Application 100 can run as an independent thread. Application 100 can consist of multiple threads. Multiple threads can run in a series of sequences. Each of the multiple threads can run periodically.

[0043] When a request is made to execute the function of each of multiple threads, application 100 can generate periodic event signals. The event signals can include a first event signal Event1 and a second event signal Event2. The first event signal Event1 can have a period of 20ms. The second event signal Event2 can have a period of 40ms. The number of event signals can be adjusted based on the number of threads.

[0044] The task execution system 200 can be a software program. It can receive event signals from the application 100 for requesting the execution of thread functions. The task execution system 200 can include an event list containing task information for executing the thread functions of the application 100. The event list can include a task list, task cycle time, task priority, and task execution order. The task execution system 200 can execute tasks based on the event list.

[0045] The detailed structure of the task execution system 200 will be referenced. Figure 2 To elaborate further.

[0046] Figure 2 This is a structural diagram of a task execution system for a vehicle operating system according to a preferred embodiment of the present invention.

[0047] Reference Figure 2 The task execution system 200 includes a task information extraction unit 210, a memory allocation unit 220, an execution cycle setting unit 230, a core setting unit 240, a task execution unit 250, and a waiting time provision unit 260.

[0048] The task information extractor 210 can receive event signals from the application 100. When an event signal is received, the task information extractor 210 can extract task information from a preset event list. In one embodiment, the task information extractor 210 can be a Python tool. The task information extractor 210 can use the extracted task information to generate C source code.

[0049] The memory allocation unit 220 can allocate task information extracted from the event list to memory regions.

[0050] The execution cycle setting unit 230 can use task information extracted from the event chain to set the task execution cycle.

[0051] The core setting unit 240 can set a predetermined core for performing a task among multiple cores in the electronic control unit 1. The core setting unit 240 can set the cores taking into account the workload.

[0052] The task execution unit 250 can execute one of multiple tasks according to a set task execution cycle. The task execution unit 250 can sequentially execute multiple tasks included in the task list based on task priority and execution order. When a task is completed, the task execution unit 250 can wait for the next task to be executed based on the task waiting time. When an event signal is generated periodically, the task execution unit 250 can repeatedly execute multiple tasks in the task list.

[0053] The waiting time providing unit 260 can provide a task waiting time to the task execution unit 250. The task waiting time can be appropriately set according to the user's needs. Thus, the task execution unit 250 can execute the task according to the task cycle input to the event chain after waiting for an amount equivalent to the task waiting time, without needing to monitor the absolute time components of other hardware timers.

[0054] The advantages of this invention over the prior art will be explained below. In one embodiment, when multiple tasks are executed, there is a situation where multiple tasks are assigned to multiple cores. Previously, tasks were executed according to routines in the scheduling table of the main core. To allow tasks to be executed again after the main core's tasks have completed normally, the communication protocol between cores must be considered.

[0055] On the other hand, according to the task execution unit 250 of the present invention, when executing a task arranged in the core during runtime, in order to execute the task again after the task execution is completed, there is no need to consider other cores, and only the task waiting time needs to be waited. Therefore, compared with the prior art, it has the effect of lower system load.

[0056] Figure 3 This is a flowchart of a task execution method for a vehicle operating system according to a preferred embodiment of the present invention.

[0057] Reference Figure 2 and Figure 3 The task execution method of the vehicle operating system includes: an event signal receiving step (S310), a task information extraction step (S320), a memory allocation step (S330), a task execution cycle setting step (S340), a task execution step (S350), a waiting step (S360), a signal judgment step (S370), and an execution end step (380).

[0058] In the event signal receiving step (S310), the task information extraction unit 210 can receive event signals from the application.

[0059] In the task information extraction step (S320), the task information extraction unit 210 can extract task information related to the received event signal from a preset event chain list.

[0060] In the memory allocation step (S330), the memory allocation unit 220 can allocate the extracted task information to memory. Then, the task information can be read from the allocated memory.

[0061] In the task execution cycle setting step (S340), the execution cycle setting unit 230 can use task information to set the task execution cycle. The execution cycle setting unit 230 can set the task execution cycle by taking into account each cycle of the task.

[0062] In the task execution step (S350), the task execution unit 250 can execute any one of the multiple tasks according to the task execution cycle.

[0063] In the waiting step (S360), when the execution of any task is completed, the task execution unit 250 may wait for the task waiting time to execute the next task.

[0064] In the signal determination step (S370), the task execution unit 250 can determine whether the periodic generation of the event signal continues. If the periodic generation of the event signal continues, the task execution unit 250 can execute the next task in the task execution step (S350).

[0065] In the execution termination step (S380), when the periodic generation of the event signal ends, the task execution unit 250 may terminate the task execution.

[0066] The above description is merely an illustration of the technical concept of the present invention. Those skilled in the art can make various modifications, alterations, and substitutions without departing from the essential characteristics of the invention. Therefore, the embodiments and accompanying drawings disclosed in this invention are not intended to limit the technical concept of the invention, but rather to illustrate it. The scope of the technical concept of the invention is not limited to the above-described embodiments and accompanying drawings.

[0067] As will be understood by those skilled in the art, the steps and / or operations according to the invention may be performed simultaneously in other embodiments in other order, or in parallel, or for other epochs, etc.

[0068] According to embodiments, some or all of the steps and / or operations may be implemented or executed using instructions, programs, interactive data structures, driver clients, and / or servers stored on more than one non-transitory computer-readable medium, at least a portion of which may be implemented or executed. One or more non-transitory computer-readable media, as an example, may be software, firmware, hardware, and / or any combination thereof. Furthermore, the functionality of the "modules" discussed herein may be implemented by software, firmware, hardware, and / or any combination thereof.

Claims

1. A task execution system for a vehicle operating system, characterized in that, include: If the task information extraction unit receives a first event signal and a second event signal from the application, it extracts task information related to the first and second event signals from a preset event chain list. The execution cycle setting unit sets the task execution cycle using the extracted task information. The task execution cycle includes a first execution cycle corresponding to the first event signal and a second execution cycle corresponding to the second event signal. The task execution unit executes the first task from among the multiple tasks contained in the event chain, according to the first execution cycle; as well as The waiting time providing unit, if the execution of the first task is completed, provides a task waiting time to the task execution unit to wait for the execution of the second task according to the second execution cycle. The execution cycle setting unit sets the task execution cycle so that the first execution cycle and the second execution cycle have different cycles.

2. The task execution system for a vehicle operating system according to claim 1, characterized in that, The task information includes a task list, task cycle, task priority, and task execution order.

3. The task execution system for a vehicle operating system according to claim 1, characterized in that, Also includes: The memory allocation unit is used to allocate the extracted task information to memory areas; as well as The core setting unit is used to set the predetermined core to perform the task.

4. The task execution system for a vehicle operating system according to claim 2, characterized in that, The task execution unit executes multiple tasks included in the task list sequentially based on the task priority and the task execution order.

5. A task execution method for a vehicle operating system, characterized in that, include: In the task information extraction step, if the task information extraction unit receives a first event signal and a second event signal from the application, it extracts task information related to the first and second event signals from a preset event chain list. The task execution cycle setting step uses the task information extracted by the execution cycle setting unit to set the task execution cycle, wherein the task execution cycle includes a first execution cycle corresponding to the first event signal and a second execution cycle corresponding to the second event signal; The task execution steps are as follows: the task execution unit executes the first task from among the multiple tasks contained in the event chain, which is executed according to the first execution cycle; as well as In the waiting step, if the task execution unit completes the execution of the first task, it waits for a preset task waiting time in order to execute the second task according to the second execution cycle. In the task execution cycle setting step, the task execution cycle is set so that the first execution cycle and the second execution cycle have different cycles.

6. The task execution method for a vehicle operating system according to claim 5, characterized in that, Also includes: In the event signal receiving step, the task information extraction unit receives event signals from the application; as well as In the memory allocation step, the memory allocation unit allocates the task information to memory.

7. The task execution method for a vehicle operating system according to claim 5, characterized in that, Also includes: In the signal determination step, the task execution unit determines whether the periodic generation of the event signal should continue. as well as The execution end step is performed when the periodic generation of the event signal ends, at which point the task execution unit terminates the task execution.

8. The task execution method for a vehicle operating system according to claim 5, characterized in that, The task information includes a task list, task cycle, task priority, and task execution order.

9. The task execution method for a vehicle operating system according to claim 8, characterized in that, The task execution steps execute multiple tasks included in the task list sequentially based on the task priority and the task execution order.