Vehicle, information processing method, and information processing program

JP7632319B2Active Publication Date: 2025-02-19TOYOTA JIDOSHA KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2022003708
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-01-13
Publication Date
2025-02-19
Estimated Expiration
2042-01-13

AI Technical Summary

Benefits of technology

【0019】 以上説明したように本発明によれば、適切な起動条件で個々の仮想マシンを起動させることができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007632319000001
    Figure 0007632319000001
  • Figure 0007632319000002
    Figure 0007632319000002
  • Figure 0007632319000003
    Figure 0007632319000003
Patent Text Reader

Abstract

To start an individual virtual machine under an appropriate start condition.SOLUTION: An information processing device includes a storage part for storing, for each of a plurality of the virtual machines, start condition information which determines a start condition about a result obtained by confirming a processing situation of a processing execution part for performing processing about the virtual machine or a start condition about a start situation of another virtual machine, and a control part for starting the virtual machine satisfying the start condition on the basis of the start condition information.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing device, a vehicle, an information processing method, and an information processing program that can be applied to an in-vehicle system. [Background technology]

[0002] Patent Document 1 proposes a method for starting applications of multiple virtual machines. In detail, the method includes receiving a start command for starting an application of a second virtual machine by a first virtual machine, acquiring start information corresponding to the start command, the start information including information of the second virtual machine and information of the application of the second virtual machine, starting the second virtual machine by the information of the second virtual machine, and starting the application in the second virtual machine by the information of the application of the second virtual machine. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Special Publication No. 2018-517948 Summary of the Invention [Problem to be solved by the invention]

[0004] In a system having multiple virtual machines, such as an in-vehicle system, there is room for improvement because the virtual machines must be started according to their individual start-up conditions.

[0005] The present invention has been made in consideration of the above-mentioned circumstances, and aims to provide an information processing device, a vehicle, an information processing method, and an information processing program that are capable of starting individual virtual machines under appropriate startup conditions. [Means for solving the problem]

[0006] In order to achieve the above object, the information processing device described in claim 1 includes: a memory unit that stores, for each of a plurality of virtual machines, startup condition information that defines startup conditions related to the results of checking a processing status of a processing execution unit that performs processing related to the virtual machine, or startup conditions related to the startup statuses of other virtual machines; and a control unit that starts up the virtual machine that satisfies the startup conditions based on the startup condition information.

[0007] According to the information processing device of claim 1, the control unit starts the virtual machine that satisfies the start condition based on the start condition information. Here, the start condition information defines, for each of the multiple virtual machines, a start condition related to a result of checking a processing status of a processing execution unit that performs processing related to the virtual machine, or a start condition related to the start status of other virtual machines. In addition, the "start condition related to the result of checking the processing status of the processing execution unit" is, for example, confirmation that the processing of the processing execution unit has been completed. In addition, the "start condition related to the start status of other virtual machines" is, for example, start of other virtual machines that have a dependency relationship with the virtual machine. In this way, start conditions can be set according to the processing execution unit and other virtual machines that are defined for each virtual machine. Therefore, each virtual machine can be started under an appropriate start condition.

[0008] The information processing device of claim 2 is the information processing device of claim 1, wherein the startup condition information defines, for each of the virtual machines, at least one startup condition out of a startup condition related to an external interrupt, a startup condition related to a result of checking the processing status, and a startup condition related to the startup status of the other virtual machines, and the control unit starts up the virtual machine that satisfies all of the at least one startup condition.

[0009] According to the information processing device of claim 2, the start condition information defines at least one start condition for each of the virtual machines, among a start condition related to an external interrupt, a start condition related to a result of checking the processing status, and a start condition related to the start status of the other virtual machines. The control unit starts the virtual machine that satisfies all of the at least one start condition. Here, the "start condition related to an external interrupt" is, for example, that the power state has changed to ON. Therefore, at least one combination of start conditions can be set for each virtual machine.

[0010] An information processing device according to a third aspect of the present invention is the information processing device according to the first or second aspect, wherein the other virtual machine is a virtual machine that manages the virtual machine.

[0011] According to the information processing device of claim 3, it is possible to set a startup condition related to the startup status of a virtual machine that manages the virtual machines.

[0012] An information processing device according to a fourth aspect of the present invention is the information processing device according to any one of the first to third aspects, wherein the update of the start condition information stored in the storage unit is performed before processing by the processing execution unit.

[0013] A vehicle according to a fifth aspect of the present invention includes the information processing device according to any one of the first to fourth aspects of the present invention.

[0014] According to the vehicle described in claim 5, the control unit starts the virtual machine that satisfies the start-up condition based on the start-up condition information. Therefore, in the information processing device mounted on the vehicle, various virtual machines are generated, and the various virtual machines can be started with appropriate start-up conditions for each of them.

[0015] The information processing method described in claim 6 is an information processing device including a memory unit that stores startup condition information that defines startup conditions related to the results of checking a processing status of a processing execution unit that performs processing related to each of a plurality of virtual machines, or startup conditions related to startup statuses of other virtual machines, and starts up the virtual machines that satisfy the startup conditions based on the startup condition information.

[0016] According to the information processing method of claim 6, the information processing device starts up the virtual machines that satisfy the start-up conditions based on the start-up condition information, so that each virtual machine can be started up under an appropriate start-up condition.

[0017] The program described in claim 7 is a program for causing a computer including a memory unit that stores startup condition information that defines startup conditions related to the results of checking the processing status of a processing execution unit that performs processing related to each of a plurality of virtual machines, or startup conditions related to the startup status of other virtual machines, to execute a process to start up the virtual machine that satisfies the startup conditions based on the startup condition information.

[0018] According to the program of claim 7, the computer starts up the virtual machines that satisfy the start-up conditions based on the start-up condition information, so that each virtual machine can be started up under an appropriate start-up condition. Effect of the Invention

[0019] As described above, according to the present invention, it is possible to start up each virtual machine under an appropriate start-up condition. [Brief description of the drawings]

[0020] [Figure 1] 1 is a diagram showing a vehicle equipped with a central ECU according to an embodiment of the present invention. [Diagram 2] 1 is a block diagram showing a hardware configuration of a central ECU according to an embodiment of the present invention; [Diagram 3]2 is a block diagram showing a schematic configuration of a central ECU according to the present embodiment. FIG. [Figure 4] FIG. 2 is a functional block diagram showing the functions of a Hypervisor. [Diagram 5] FIG. 11 illustrates an example of activation condition information. [Figure 6] 10 is a flowchart showing an example of a flow of a process performed by the central ECU when starting up each VM according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0021] An example of an embodiment of the present invention will be described in detail below with reference to the drawings. In this embodiment, a central ECU mounted on a vehicle will be described as an example of an information processing device. In this embodiment, Fig. 1 is a diagram showing a vehicle equipped with a central ECU (Electronic Control Unit) according to this embodiment.

[0022] The central ECU 12 according to this embodiment is mounted on the vehicle 10 and controls various ECUs provided in the vehicle 10 in an integrated manner.

[0023] 2, the central ECU 12 includes a CPU (Central Processing Unit) 50, a ROM (Read Only Memory) 52, a RAM (Random Access Memory) 54, a storage 56, and an input / output I / F (Interface) 58. The CPU 50, the ROM 52, the RAM 54, the storage 56, and the input / output I / F 58 are connected to each other so as to be able to communicate with each other via an internal bus (not shown).

[0024] The CPU 50 is a central processing unit that executes various programs and controls each part. That is, the CPU 50 reads a program from the ROM 52 or the storage 56, and executes the program using the RAM 54 as a working area.

[0025] In this embodiment, as an example, as shown in FIG. 3, there are a plurality of CPU COREs (two CPU COREs, CPU CORE0 and CPU CORE1, in the example of FIG. 3) 14.

[0026] The ROM 52 stores various programs and various data. The RAM 54 serves as a working area for temporarily storing programs or data.

[0027] The storage 56 stores various programs and various data. In the present embodiment, an information processing program 60 is stored in the storage 56.

[0028] This storage 56 is configured, for example, by a hard disk drive (HDD) or a solid state drive (SSD).

[0029] The input / output I / F 58 is an interface for communicating with each of the other ECUs (not shown).

[0030] FIG. 3 is a block diagram showing a schematic configuration of the central ECU 12 according to this embodiment.

[0031] In this embodiment, a plurality of CPU COREs 14 are virtualized by a Hypervisor 16, which is software for virtualizing a computer, and VMs (Virtual Machines) 18 are generated as virtual machines. In this embodiment, a plurality of VMs 18 are generated by the Hypervisor 16. FIG. 3 shows an example in which four VMs 18, VM0 to VM3, are generated as the plurality of VMs 18. For example, the plurality of VMs 18 include a multimedia VM, a body control VM, an engine control VM, and an automatic driving control VM.

[0032] The central ECU 12 also includes a process execution unit 20 that performs processes related to the VMs 18. The process execution unit 20 performs, for example, an inspection process related to the security of each VM 18.

[0033] In general systems using hypervisors, conditions for starting VMs are often not set. However, when a hypervisor is introduced into an in-vehicle system having multiple VMs such as the present embodiment, various start-up conditions, such as various start-up factors and start-up dependencies between VMs, are considered. For this reason, it is necessary to design the system so that VMs can be started according to various start-up conditions.

[0034] Therefore, in the central ECU 12 of this embodiment, for each VM 18, at least one of a startup condition related to an external interrupt, a startup condition related to the result of checking the processing status of the processing execution unit 20, and a startup condition related to the startup status of other VMs 18 is defined, and a VM 18 that satisfies the startup condition is started.

[0035] Here, a description will be given of the functional configuration of the hypervisor 16. FIG.

[0036] As shown in FIG. 4, the hypervisor 16 has the functions of a generation unit 22, a storage unit 24, and a control unit 26.

[0037] The generation unit 22 generates a plurality of VMs 18 by virtualizing the CPU CORE 14. In this embodiment, as described above, four VMs 18, VM0 to VM3, are generated.

[0038] The storage unit 24 stores activation condition information that defines activation conditions for each of the multiple VMs 18.

[0039] The startup condition information defines, for each VM 18, at least one of startup conditions related to an external interrupt, startup conditions related to the results of checking the processing status of the process execution unit 20, and startup conditions related to the startup status of other VMs 18 (Figure 5).

[0040] 5 shows an example in which a startup condition for an external interrupt and a startup condition for a result of checking the processing status of the process execution unit 20 are defined for VM0. Also, an example in which a startup condition for an external interrupt and a startup condition for the startup status of other VMs 18 are defined for VM1. Also, an example in which a startup condition for an external interrupt and a startup condition for the startup status of other VMs 18 are defined for VM2 and 3 is shown.

[0041] Moreover, the condition for starting an external interrupt is, for example, that an ignition switch (not shown) is turned on and the power supply state of the vehicle changes.

[0042] Moreover, the start condition related to the result of checking the processing status of the process execution unit 20 is, for example, that the process execution unit 20 checks that the inspection process related to the security of the target VM 18 has been completed. In this embodiment, since the process execution unit 20 cannot issue an interrupt, the hypervisor 16 checks the processing status of the process execution unit 20 by polling.

[0043] Furthermore, the start-up condition regarding the start-up status of the other VM 18 is, for example, that there has been an initialization completion notification of the VM 18 having a dependency relationship with the target VM 18. In this embodiment, if the start-up of VM0, which is a management VM that manages VM 18, has not been completed, the other VM 18 cannot be initialized, so that the start-up condition for the other VM 18 is that there has been an initialization completion notification of the VM0 having a dependency relationship.

[0044] Furthermore, when updating the start condition information stored in the storage unit 24, the start condition information is updated before the inspection process by the process execution unit 20.

[0045] The control unit 26 activates VMs 18 that satisfy all of the defined activation conditions among the VMs 18. Specifically, the control unit 26 determines whether or not each VM 18 satisfies all of the defined activation conditions based on the activation condition information, and activates the VMs 18 that satisfy all of the defined activation conditions.

[0046] Next, a specific process performed by the central ECU 12 according to the present embodiment configured as described above will be described. Fig. 6 is a flowchart showing an example of a process flow when starting each VM 18 performed by the central ECU 12 according to the present embodiment. The process in Fig. 6 starts, for example, when the door (not shown) of the vehicle 10 is unlocked.

[0047] In step S100, the CPU 22 sets, as the hypervisor 16, a VM 18 to be started among the VMs 18 that have not been started.

[0048] In step S102, the CPU 22 as the hypervisor 16 acquires the start-up condition of the VM 18 to be started from the start-up condition information.

[0049] In step S104, the CPU 22 determines whether or not all of the start conditions acquired in step S102 are satisfied as the hypervisor 16. If all of the start conditions of the VM 18 to be started are satisfied, the CPU 22 proceeds to step S106. If the start conditions of the VM 18 to be started are not satisfied, the CPU 22 proceeds to step S108.

[0050] In step S106, the CPU 22 functions as the hypervisor 16 to start up the VM 18 to be started up.

[0051] In step S108, the CPU 22 determines whether or not there is an unactivated VM 18 as the hypervisor 16. If there is an unactivated VM 18, the process returns to step S100, and the VM 18 is set as the VM 18 to be activated. On the other hand, if there is no unactivated VM 18, the process ends.

[0052] By performing the processing in this manner, it is possible to set startup conditions for each virtual machine according to the processing execution unit and other virtual machines, and start each virtual machine under the appropriate startup conditions. Also, it is possible to set at least one combination of startup conditions for each virtual machine.

[0053] In addition, since various VMs are generated in the central ECU installed in the vehicle, appropriate startup conditions can be set for each of the various VMs.

[0054] In the above embodiment, an example is described in which two CPU cores 14 are provided, but the present invention is not limited to this. For example, a single CPU core 14 may be provided, or three or more CPU cores may be provided.

[0055] In the above embodiment, the hypervisor 16 generates four VMs 18. However, the present invention is not limited to this. For example, the hypervisor 16 may generate three or less VMs 18, or may generate five or more VMs 18.

[0056] In the above embodiment, the vehicle 10 is a vehicle that is driven by operating an engine powered by gasoline, but the present invention is not limited to this. The vehicle 10 may be an electric vehicle such as a hybrid electric vehicle (HEV), a plug-in hybrid electric vehicle (PHEV), a fuel cell electric vehicle (FCEV), or a battery electric vehicle (BEV).

[0057] In addition, various processes that the CPU 22 reads and executes software (programs) in the above embodiment may be executed by various processors other than the CPU. Examples of processors in this case include PLDs (Programmable Logic Devices) whose circuit configuration can be changed after manufacture, such as FPGAs (Field-Programmable Gate Arrays), and dedicated electric circuits that are processors having circuit configurations designed exclusively for executing specific processes, such as ASICs (Application Specific Integrated Circuits). The above-mentioned processes may be executed by one of these various processors, or may be executed by a combination of two or more processors of the same or different types (for example, multiple FPGAs, and a combination of a CPU and an FPGA). The hardware structure of these various processors is, more specifically, an electric circuit that combines circuit elements such as semiconductor elements.

[0058] In the above embodiment, the program has been described as being pre-stored (installed) in a non-transitory recording medium that can be read by a computer. For example, the information processing program 60 is pre-stored in the ROM 24. However, the information processing program 60 may be provided in a form recorded in a non-transitory recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disc Read Only Memory), or a USB (Universal Serial Bus) memory. The information processing program 60 may be downloaded from an external device via a network.

[0059] The process flow described in the above embodiment is merely an example, and unnecessary steps may be deleted, new steps may be added, or the process order may be changed without departing from the spirit of the invention. [Explanation of symbols]

[0060] 10 Vehicles 12 Central ECU (information processing unit) 14 CPU CORE 16 Hypervisor 18 VMs (Virtual Machines) 20 Processing Execution Unit 22 Generation part 24 Memory section 26 Control Unit 50 CPU 56 Storage 60 Information Processing Program (Program)

Claims

1. A vehicle equipped with an information processing device, The information processing device includes: a storage unit that stores, for each of a plurality of virtual machines, at least one of a first startup condition that a power supply state of the vehicle has changed to ON, a second startup condition that a process execution unit that performs a security inspection process has confirmed that an inspection process related to the security of the virtual machine has been completed, and a third startup condition that another virtual machine that manages the virtual machine has been notified of initialization completion; a control unit that starts the virtual machine that satisfies all of the at least one startup condition based on the startup condition information; Including, A vehicle in which the activation condition information stored in the storage unit is updated before the inspection process is performed by the process execution unit.

2. The startup condition information stored in the storage unit defines, for each of the plurality of virtual machines, at least two startup conditions among the first startup condition, the second startup condition, and the third startup condition; The vehicle according to claim 1 , wherein the control unit starts the virtual machine that satisfies both of the at least two start conditions based on the start condition information.

3. A vehicle as described in claim 1 or 2, wherein the multiple virtual machines include a VM that controls the body of the vehicle, a virtual machine that controls the engine of the vehicle, and a virtual machine that performs autonomous driving control.

4. An information processing method in an information processing device provided in a vehicle, comprising: an information processing device including a storage unit that stores startup condition information that defines at least one of a first startup condition that a power supply state of the vehicle has changed to ON for each of a plurality of virtual machines, a second startup condition that a process execution unit that performs a security inspection process has confirmed that the inspection process for the virtual machine has been completed, and a third startup condition that another virtual machine that manages the virtual machine has been notified of initialization completion, The virtual machine that satisfies all of the at least one startup condition is started based on the startup condition information. Including, An information processing method in which the start condition information stored in the storage unit is updated before the inspection process by the process execution unit.

5. A computer installed in a vehicle, a first startup condition that a power supply state of the vehicle has changed to ON, a second startup condition that a process execution unit that performs a security inspection process has confirmed that an inspection process related to the security of the virtual machine has been completed, and a third startup condition that a notification of initialization completion has been received from another virtual machine that manages the virtual machine, the computer including a storage unit that stores startup condition information that defines at least one startup condition for each of a plurality of virtual machines; The virtual machine that satisfies all of the at least one startup condition is started based on the startup condition information. A program for executing a process, A program in which the update of the start condition information stored in the storage unit is performed before the inspection process by the process execution unit.

Citation Information

Patent Citations

  • Application activation method and device

    JP2018517948A

  • Cloud system and virtual machine management method

    JP2020091601A

  • Vehicle control device, vehicle control method and control program

    JP2021039611A