VEHICLE CONTROL DEVICE, VEHICLE DISPLAY SYSTEM AND VEHICLE DISPLAY CONTROL METHOD

By temporarily allocating more virtual processor cores to the first operating system and assigning separate physical cores, the reliability and speed of displaying critical content in vehicle control devices are enhanced, addressing the reliability issues of parallel operating systems.

DE112020002799B4Active Publication Date: 2026-05-21DENSO CORP
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
DENSO CORP
Filing Date
2020-05-12
Publication Date
2026-05-21

AI Technical Summary

Technical Problem

When multiple operating systems share a physical processor core and operate in parallel, the reliability of the system is compromised if one operating system freezes or stops, leading to performance issues with critical applications in vehicle control devices.

Method used

A temporary allocation of virtual processor cores is implemented, allowing a larger allocation to the first operating system upon activation, followed by a separate physical core assignment to each operating system, enhancing reliability and speed in displaying critical content.

Benefits of technology

This approach enables quick display of priority content while improving the reliability of operating systems in vehicle control devices by ensuring each system has dedicated resources, thus addressing the reliability and speed challenges.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Vehicle control device (10) which controls a display (20, 30) arranged in a vehicle interior, wherein the vehicle control device (10) comprises: - a physical processor (101) that runs multiple operating systems (103, 103a, 104) in parallel on virtualization software (102, 102a) via virtualization technology; - a trigger detection unit (110) that detects an activation trigger of the vehicle control device (10); and - an allocation unit (1021), wherein - the physical processor (101) has several physical processor cores (1011, 1012, 1013, 1014), abstracted into virtual processor cores by virtualization technology; - the multiple operating systems (103, 103a, 104) comprise: a first operating system (103, 103a) which is the operating system for running a priority application, which is an application for displaying content that is preferentially displayed when the vehicle control device (10) is activated; and a second operating system (104) as another operating system; and - then, when the trigger detection unit (110) detects the activation trigger to activate the first operating system (103, 103a) and the second operating system (104), the allocation unit (1021) performs a temporary allocation that temporarily assigns the first operating system (103, 103a) to the virtual processor cores with an allocation set of virtual processor cores that is greater than a predefined allocation set of virtual processor cores as an initial allocation set after activation of the first operating system (103, 103a) has been completed.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL AREA

[0001] The present disclosure relates to a vehicle control device, a vehicle display system and a vehicle display control method. STATE OF THE ART

[0002] A known technique allows multiple operating systems (i.e., OS) to run in parallel. For example, JP 2010-277 177 A discloses a technique that enables two operating systems to run in parallel on multiple virtual processors, which are logically implemented by a single physical processor. This technology is called virtualization. Virtualization also allows multiple operating systems to share the same physical processor core.

[0003] When a technology that enables the parallel operation of multiple operating systems is used for a vehicle control device (hereinafter simply referred to as a vehicle control device) for display on a screen in the vehicle interior, the following problems may be considered.

[0004] For example, if multiple operating systems share the same physical processor core (hereinafter referred to as the physical core) and operate in parallel, and if some operating systems freeze or stop, the physical core accessed by the frozen operating systems is not released, and a problem may arise that other operating systems sharing the same physical core cannot operate. In a vehicle control unit, high reliability is required for the operation of an operating system running an application that demands particularly high reliability, such as an application for drawing a counter display. Therefore, it is conceivable to improve reliability by allocating a dedicated physical core to each of the multiple operating systems.

[0005] An operating system used to run an application requiring particularly high reliability must also have activation performance so that the application runs faster when the vehicle's control unit is activated. For example, when the vehicle's control unit is activated, it must run the application for displaying the counter screen faster in order to display the counter screen.

[0006] German Patent Application DE 11 2015 000 216 T5 generally concerns the provisioning of virtual machines to host computer systems and, in particular, the selection of a host for a virtual machine using a hardware multithreading parameter. According to DE 11 2015 000 216 T5, a cloud manager monitors available resources on host computer systems, including the number of hardware threads supported by CPUs on the host computer systems. The cloud manager receives a request to provision a virtual machine (VM) that includes a hardware multithreading parameter specifying the level of hardware multithreading required on the host computer system. The cloud manager then selects a host computer system for the VM, taking the hardware multithreading parameter into account.

[0007] US Patent 2013 / 0253672A1 discloses a development system and a corresponding method for creating a control unit program designed to control an electronic control unit in a vehicle. BRIEF SUMMARY OF THE INVENTION

[0008] The purpose of the present disclosure is to provide a vehicle control device, a vehicle display system, and a vehicle display control method that enable a display content to be shown quickly when the vehicle control device is activated to be displayed more quickly, with the reliability of these operating systems being improved when the technology for running multiple operating systems in parallel for a vehicle control device that displays on a display in the vehicle interior is used.

[0009] The problem is solved by the subject matter of the independent claims. Advantageous further developments are specified in the dependent claims.

[0010] According to the invention, when the activation trigger of the vehicle control device is detected and the first and second operating systems, which are capable of running in parallel on the virtualization software, are activated, a temporary allocation is performed such that the first operating system temporarily assigns resources to the virtual processor core, with the allocation amount of the virtual processor core being larger than the previously defined allocation amount of the virtual processor core as an initial allocation amount after the activation of the first operating system has been completed. Therefore, it is possible to shorten the time required to complete the activation of the first operating system compared to the case where the temporary allocation does not occur.Thus, it is possible to run the priority application, which displays the preferred display content when the vehicle control device is started, more quickly, with the priority application running in the first operating system when the vehicle control device is activated.

[0011] Since the multiple physical processor cores contained within the physical processor are abstracted into virtual processor cores using virtualization technology, the allocation can be temporarily changed. Because this is a temporary allocation, it is possible, during operation, after the activation of the first and second operating systems has been completed, to allocate a separate physical core to each operating system. Therefore, it is possible to improve the reliability of each operating system.

[0012] Consequently, if a technology that allows multiple operating systems to operate in parallel is used for a vehicle control device that displays information on a screen inside the vehicle, it is possible to quickly display the content to be shown when the vehicle control device is activated, while improving the reliability of these operating systems.

[0013] Since the vehicle control device according to the invention is included in the vehicle display system according to the invention, if a technology that enables the parallel operation of several operating systems is used for a vehicle control device that displays on a display in the vehicle interior, it is possible to quickly display the display content to be shown when the vehicle control device is started, while improving the reliability of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] The purpose, features, and advantages of this disclosure are explained in more detail below with reference to the accompanying drawings. The drawings show: Fig. 1. An illustration to demonstrate an example of a schematic configuration of a vehicle display system; Fig. 2 a figure to illustrate an example of a schematic configuration of the integrated ECU 10; Fig. 3 a figure to illustrate an example of a conceptual configuration of a physical processor 101 of the main microcomputer 100 according to the first embodiment; Fig. 4 a figure to illustrate an example of a schematic configuration of a hypervisor 102 with respect to a temporary assignment; Fig. 5 a schematic diagram to illustrate an example of an allocation set at operating time; Fig. 6 a flowchart to illustrate an example of a process for temporary assignment-related processing in Hypervisor 102; Fig. 7 a timing diagram to illustrate an example of the relationship between the operating state of RTOS 103 and the general operating system 104 and the change in the allocation of virtual cores in the hypervisor 102; and Fig. Figure 8 shows an example of a conceptual configuration of a physical processor 101 of the main microcomputer 100 according to the second embodiment. EXECUTIONAL FORMS FOR IMPLEMENTING THE INVENTION

[0015] Several embodiments are described below with reference to the drawings. To simplify the description, parts that have the same functions as the parts shown in the drawings and are used in several embodiments in the description up to this point may be designated with the same reference numerals, and their description may be omitted. For such a section designated with the same reference numeral, reference may be made to the description of another applicable embodiment. (First embodiment)<Umrisskonfiguration von Anzeigesystem 1 für Fahrzeuge>

[0016] A first embodiment of the present disclosure is described below with reference to the accompanying drawings. First, the vehicle display system 1 is described with reference to Fig. 1 described. The vehicle display system 1 is used in a vehicle. The following is an example of a case in which the vehicle display system 1 is used in a motor vehicle. As in Fig. As shown in Figure 1, the vehicle display system 1 has an integrated ECU 10, a central information display (hereinafter referred to as CID) 20 and a counter multi-information display (hereinafter referred to as counter MID) 30.

[0017] The CID 20 is a display integrated into the central instrument cluster in the vehicle's interior. Any display capable of generating an image can be used as the CID 20. This could be a liquid crystal display, an organic EL display, or a similar technology. The CID 20 primarily displays information related to functions that prioritize convenience and comfort over safety and security. For example, the CID 20 primarily displays information related to infotainment functions such as navigation, audio, and climate control. The infotainment function referred to here is one that focuses on convenience and comfort, not safety and security.

[0018] Navigation information refers to information related to the navigation function, such as a route guidance image. Audio information refers to an image or similar content related to the operation of the audio system. Climate control information refers to an image or similar content related to the operation of the air conditioning system. In addition to infotainment function information, the CID 20 also displays information on the home screen. This information includes, for example, an image related to the welcome effect when opening the vehicle door (hereinafter referred to as the "welcome image"), an image related to the opening effect when starting the vehicle (hereinafter referred to as the "opening image"), and similar content. The welcome image is displayed when the vehicle door is opened and is also displayed before the vehicle is activated.The opening screen is an image that is displayed when the vehicle is activated. The welcome screen and the opening screen can be configured to be displayed as an animation, for example, by showing several still images in chronological order. The climate control information is an image or similar content related to the operation of the climate control system.

[0019] The MID 30 counter display is a device installed in the vehicle's interior, in front of the driver's seat. For example, the MID 30 can be configured for mounting on the instrument panel. The MID 30 can be a display capable of generating an image. This could be a liquid crystal display, an organic EL display, or a similar type of display. The MID 30 primarily displays information related to functions that prioritize safety and protection over convenience and comfort. For example, the MID 30 primarily displays information related to safety and protection functions, such as meter readings.

[0020] The counter information is an image or similar display related to the counter reading. In addition to information about the safety and security functions, the counter MID 30 also displays information about the home screen, simplified navigation information, and the like. The home screen information includes, for example, the aforementioned welcome image, the opening image, and similar images. The welcome and opening images displayed on the counter MID 30 may or may not be identical to those displayed on the CID 20. Simplified navigation information is infotainment information that is even more simplified than the navigation information displayed by the CID 20. It includes, for example, a simplified route guidance image, such as an indication of the next direction of travel.

[0021] The integrated ECU 10 is an ECU (Electronic Control Unit) that integrates a function for controlling the CID 20 and a function for controlling the counter-MID 30. The integrated ECU 10 is connected to the CID 20 and the counter-MID 30 and draws and displays various images on the CID 20 and the counter-MID 30.

[0022] The integrated ECU 10 is also connected to the in-vehicle LAN, and information is input from a sensor, another ECU, or similar device connected to the in-vehicle LAN. The image displayed by the integrated ECU 10 on the CID 20 and the counter MID 30 corresponds to the output information of the integrated ECU 10. The information input to the integrated ECU 10 via the in-vehicle LAN corresponds to the input information of the integrated ECU 10. The input information includes vehicle information such as vehicle speed and mileage, digital TV image information, information linked to a smartphone for smartphone cooperation, and the like. The integrated ECU 10 has a configuration in which input and output information are managed together, and the input source and output destination of various information can be freely rearranged.

[0023] The integrated ECU 10 primarily comprises, for example, a microcomputer (hereinafter referred to as the microcomputer) with a processor, memory, I / O, and a bus connecting these components. The processor referred to here is a physical processor (hereinafter referred to as the physical processor) with an arithmetic unit, registers, and the like. The integrated ECU 10 performs various processes related to displaying an image on the CID 20 and the counter MID 30 by executing a control program stored in non-volatile memory. In particular, in the present embodiment, the integrated ECU 10 allows multiple operating systems to operate in parallel on the virtualization software, and enables each of the multiple operating systems to perform processing related to image display. The integrated ECU 10 corresponds to a vehicle control unit.Furthermore, the execution of the process in the integrated ECU 10 corresponds to the execution of the vehicle display control procedure. The memory referred to here is a non-volatile, physical storage medium for storing programs and data that can be read by a computer in a non-volatile manner. The non-volatile, physical storage medium is implemented by a semiconductor memory, a magnetic disk, or the like. The integrated ECU 10 is described in more detail below. <Umrisskonfiguration von integrierter ECU 10>

[0024] Below is an example of the schematic configuration of the integrated ECU 10 with reference to Fig. 2 described. Fig. Figure 2 shows, for simplicity, an example of a configuration for displaying an image on the CID 20 and the counter MID 30. The integrated ECU 10 contains a main microcomputer 100, a secondary or sub-microcomputer 110, a first image output unit 120, and a second image output unit 130. Furthermore, some or all of the functions performed by the integrated ECU 10 can be configured as hardware, such as one or more ICs or the like.

[0025] The main microcomputer 100 controls the image displayed on the CID 20 and the image displayed on the counter MID 30. For example, the main microcomputer 100 displays a content image (hereinafter referred to as the priority image) that is given preference when the integrated ECU 10 is activated. Priority here means, for example, that the information is displayed before the information of the infotainment function. An example of priority display content is the display of information about safety and security functions, which is displayed before other displays, such as the counter display. An application for displaying the priority display content is hereinafter referred to as a priority application. Examples of the priority image include an image taken by a rear-view camera and the like, and it is described below using the counter display as an example.

[0026] The sub-microcomputer 110 has a function for controlling the main microcomputer 100 on / off, and the like. When the sub-microcomputer 110 detects the activation trigger of the integrated ECU 10, the sub-microcomputer 110 activates the main microcomputer 100. This sub-microcomputer 110 corresponds to the trigger detection unit. Examples of the activation trigger include a rise in the power supply voltage above a certain value, detection of a wake-up signal from the in-vehicle LAN, and the like. The activation trigger occurs when the user begins to use the vehicle. The time at which the user begins to use the vehicle includes the time at which the vehicle is activated by turning on the switch (hereinafter referred to as the power switch) to start the vehicle's internal combustion engine or motor generator, the time at which the vehicle door is opened, and so on.

[0027] The first image output unit 120 outputs an image generated by the main microcomputer 100, intended for display on the CID 20, to the CID 20 and records this image on the CID 20. An integrated circuit (IC) can be used as the first image output unit 120. The second image output unit 130 outputs an image generated by the main microcomputer 100, intended for display on the counter MID 30, to the counter MID 30 and records this image on the counter MID 30. An integrated circuit (IC) can be used as the second image output unit 130.

[0028] Furthermore, the integrated ECU 10 abstracts the hardware resources of the main microcomputer 100 using virtualization technology, enabling a single main microcomputer 100 to run multiple operating systems (hereinafter also referred to as OS) in parallel. The integrated ECU 10 abstracts the physical processor of the main microcomputer 100 by executing the control program of the virtualization software stored in non-volatile memory, thus allowing multiple operating systems to operate on the virtualization software in parallel.

[0029] More precisely, the integrated ECU 10 runs each operating system by abstracting the physical processor into multiple virtual processor cores using virtualization technology and assigning different virtual processor cores (hereinafter referred to as virtual cores) to each operating system. Virtualization software utilizes the resources of the physical processor in a time-division multiplexing manner on a clock-by-clock basis to operate as if multiple cores (i.e., virtual cores) existed virtually, allowing the operating system to be run by different virtual cores. The physical processor can have multiple physical processor cores (hereinafter referred to as physical cores). The number of physical cores in the physical processor can be multiple, and in the following description, it is assumed that the number of physical cores in the present embodiment is four.

[0030] The virtualization software can manage the virtual core by associating it with a thread (hereinafter referred to as a logical core), which represents the smallest processing unit executed by the physical core. For example, if the physical core of the present embodiment uses Simultaneous Multithreading Technology (SMT) to execute two threads in parallel on one physical core, the number of logical cores is eight. Conversely, if the physical cores of the present embodiment do not execute two threads in parallel on one physical core, the number of logical cores is four, which is equal to the number of physical cores.

[0031] The link between the virtual kernel and the logical kernel need not be restricted to a 1:1 ratio, and multiple virtual kernels can be linked to a single logical kernel. For the sake of simplicity, the present embodiment describes below, by way of example, a case in which multiple logical kernels are not linked to a single virtual kernel. Furthermore, the total number of virtual kernels that the virtualization software can allocate to the operating system (hereinafter referred to as the allowable total) is not identical to the total number of resources available on the physical processor. For example, the allowable total number of virtual kernels does not include the resources required for the operation of the virtualization software.And even if the number of logical cores that an operating system can access equals the total number of logical cores, so that the total allowed number of virtual cores is allocated, the resource utilization rate of all logical cores does not reach 100%.

[0032] The virtualization software is designed for virtualization, managing the operational state of the virtual processor core and implementing virtualization. The following example describes a case where a hypervisor is used as the virtualization software. The following example describes a case where two operating systems can run in parallel on a hypervisor using virtualization technology. <Konzeptionelle Konfiguration des physischen Prozessors 101 des Haupt-Mikrocomputers 100>

[0033] Below is an example of the conceptual configuration of the physical processor 101 of the main microcomputer 100 according to the first embodiment with reference to Fig. 3 described. As an example, a case is described here in which a real-time operating system (hereinafter RTOS) 103 with real-time capabilities and a general-purpose or universal operating system (hereinafter Universal OS) 104 are used as the two operating systems. The RTOS 103 can, for example, be QNX ® Universal OS 104 can, for example, run Linux. ® be.

[0034] The main microcomputer 100 mounts a hypervisor 102 on a physical processor 101 with four physical cores 1011, 1012, 1013, and 1014. The following is an example of a case where the physical cores 1011 to 1014 of the present embodiment do not execute two threads in parallel on a single physical core. Therefore, the physical cores 1011 to 1014 are each logical cores. That is, there are four logical cores.

[0035] Hypervisor 102 can run RTOS 103 and Universal OS 104 in parallel on the virtual kernel from which the physical processor 101 is extracted. Here, Hypervisor 102 and RTOS 103 share a common microkernel (hereinafter referred to as the kernel). RTOS 103 corresponds to the first operating system, and Universal OS 104 corresponds to the second.

[0036] Since RTOS 103 has real-time capabilities, it executes the aforementioned security / protection application. The priority application mentioned above can be included within the security / protection application. On the other hand, Universal OS 104 executes an application related to the infotainment function mentioned above. RTOS 103 generates an image related to the security / protection function when the security / protection application is executed. RTOS 103 generates a priority image, such as a counter display, when a priority application is executed. Universal OS 104 generates an image related to the infotainment function when the infotainment application is executed. <Betrieb bei Aktivierung des Haupt-Mikrocomputers 100>

[0037] The following describes the operation at the time of starting the main microcomputer 100, with reference to the one in Fig. The time diagram shown in section 4 is described. Below is an example of a case where an image is displayed on the counter MID 30.

[0038] The activation of the main microcomputer 100 is initiated by the sub-microcomputer 110, which has detected the activation trigger. When the main microcomputer 100 is activated, the construction or setup of the hypervisor 102 begins. Since the kernel of RTOS 103 is the same as that of hypervisor 102, preparations for activating RTOS 103 begin concurrently with the setup of hypervisor 102. Subsequently, when the setup of hypervisor 102 progresses to the stage where preparations for activating Universal OS 104 can begin, these preparations are initiated. Because preparations for activating Universal OS 104 can only begin once the construction or setup of hypervisor 102 has progressed, they begin later than preparations for activating RTOS 103.

[0039] As the setup of Hypervisor 102 progresses and the preparation for activating RTOS 103 reaches the stage where the priority application can be run, RTOS 103 executes the priority application on Hypervisor 102. The setup of Hypervisor 102 is completed by booting the kernel and completing the activation of several drivers. The priority application can be run even before the setup of Hypervisor 102 is complete.

[0040] For example, RTOS 103 can run multiple applications, including the priority application, when booting is complete, and can run the priority application before booting is complete. The characteristic that the priority application can be run is defined below as the completion of the priority application's activation. If RTOS 103 is an operating system that runs nothing other than the priority application, then the completion of the priority application's activation can be considered the completion of RTOS 103's activation.

[0041] When RTOS 103 executes the priority application, RTOS 103 generates a priority image. For example, if RTOS 103 generates an image for the counter display as a priority image, the second image output unit 130 outputs this image to the counter MID 30 and draws an image for the counter display on the counter MID 30.

[0042] Because the preparation for activating Universal OS 104 begins later than the preparation for activating RTOS 103, the application on Universal OS 104 can run later than RTOS 103 generates the priority screen. Universal OS 104 runs an application to display information on the infotainment system and generates a screen to display the information on the infotainment system (hereinafter referred to as the infotainment screen).

[0043] For example, when Universal OS 104 generates an infotainment image, the first image output unit 120 outputs the infotainment image to CID 20 and records the infotainment image on CID 20. With respect to the infotainment image to be displayed on counter MID 30, RTOS 103, for example, synthesizes the image generated by RTOS 103 and the infotainment image generated by Universal OS 104 and outputs the synthesized image to the second image output unit 130. <Umrisskonfiguration von Hypervisor 102>

[0044] In the main microcomputer 100, when RTOS 103 and Universal OS 104 are activated, Hypervisor 102 temporarily increases the number of virtual cores allocated to RTOS 103 to perform the temporary allocation, thereby accelerating the preparation process for activating RTOS 103. The configuration of Hypervisor 102 with respect to this temporary allocation is described below. Fig. 4 described. As in Fig. As shown in Figure 4, the hypervisor 102 has an assignment unit 1021 and an activation instruction unit 1022 as functional blocks.

[0045] Allocation unit 1021 performs temporary allocation to temporarily assign more virtual cores to RTOS 103 than the virtual core allocation set previously defined, after RTOS 103 activation is complete. This reduces the time required to complete RTOS 103 activation compared to when temporary allocation is omitted. Consequently, the priority screen displayed by the priority application running RTOS 103 can be shown more quickly. This allows the display content, which should be shown quickly upon activation of the integrated ECU 10, to be displayed more rapidly. For example, allocation unit 1021 can be configured to modify the virtual core allocation to the operating system by changing the link between the operating system and the virtual core.In this embodiment, since the kernels of the hypervisor 102 and the RTOS 103 are common, the RTOS 103 can control the allocation unit 1021.

[0046] The allocation set after the activation of RTOS 103 and Universal OS 104 (hereinafter referred to as the allocation set during operation) can be predetermined and set so that one or more different physical cores 1011 to 1014 are each assigned to RTOS 103 and Universal OS 104. In the example of the present embodiment, the virtual core assigned to RTOS 103 can be predetermined and set to a virtual core that is linked to the logical core corresponding to physical cores 1011 and 1012, but not to the logical core corresponding to physical cores 1013 and 1014.On the other hand, the virtual kernel assigned to Universal OS 104 can be predetermined and set to a virtual kernel that is linked to the logical kernel corresponding to the physical kernels 1013 and 1014, but not to the logical kernel corresponding to the physical kernels 1011 and 1012.

[0047] Accordingly, if RTOS 103 and Universal OS 104 are operated after activation, their reliability can be improved by assigning each a separate physical core. This makes it possible to display the content to be shown when the integrated ECU 10 is activated more quickly, while simultaneously improving the reliability of both RTOS 103 and Universal OS 104.

[0048] Furthermore, the allocation quantity can be predefined and configured during operation so that one or more different physical cores 1011 to 1014 are allocated to RTOS 103 and Universal OS 104 respectively, and the physical cores sharing the cache are allocated to the same operating system. This is because if the physical cores sharing the cache are allocated to different operating systems, the physical cores accessed by the frozen operating system are not released, and other operating systems assigned to those physical cores sharing the cache with that core might not be able to function.

[0049] For example, in the example of the present embodiment, if physical core 1011 and physical core 1012 share the cache, and physical core 1013 and physical core 1014 share the cache, the following can be done. The virtual core associated with the logical core corresponding to physical core 1011 and the virtual core associated with the logical core corresponding to physical core 1012 must not be assigned to different operating systems. Furthermore, the virtual core associated with the logical core corresponding to physical core 1013 and the virtual core associated with the logical core corresponding to physical core 1014 must not be assigned to different operating systems.

[0050] This makes it possible to further improve the reliability of RTOS 103 and Universal OS 104. This also makes it possible to display the content that is to be shown when the integrated ECU 10 is activated more quickly, while simultaneously improving the reliability of RTOS 103 and Universal OS 104.

[0051] Below is an example of the allocation quantity during operation with reference to Fig. 5 described. In Fig. 5 is a case where a logical kernel L1 to L4 corresponds to one of the physical kernels 1011 to 1014, as an example. Fig. Figure 5 illustrates a case where two virtual cores, V1 to V8, correspond to each of the logical cores, L1 to L4. Logical core L1 corresponds to physical core 1011, and virtual cores V1 and V2 are linked to logical core L1. Logical core L2 corresponds to physical core 1012, and virtual cores V3 and V4 are linked to logical core L2. Logical core L3 corresponds to physical core 1013, and virtual cores V5 and V6 are linked to logical core L3. Logical core L4 corresponds to physical core 1014, and virtual cores V7 and V8 are linked to logical core L4. Fig. 5. The cache is shared (used jointly) between physical core 1011 and physical core 1012 and between physical core 1013 and physical core 1014.

[0052] In the example of Fig. 5. The virtual cores are in the same combination, such as the combination of virtual cores V1 and V2, the combination of virtual cores V3 and V4, the combination of virtual cores V5 and V6, and the combination of virtual cores V7 and V8, and are not assigned to different operating systems, so that one or more different physical cores 1011 to 1014 are assigned to each of RTOS 103 or Universal OS 104. Furthermore, in the example of Fig. 5 the allocation in which the virtual cores in the same combination, such as the combination of virtual cores V1 to V4 and the combination of virtual cores V5 to V8, are not assigned to different operating systems, is the same as the allocation of virtual cores in which one or more different physical cores 1011 to 1014 are assigned to each of RTOS 103 or Universal OS 104, and the physical cores that share the cache are assigned to the same operating system.

[0053] Preferably, the allocation unit 1021 can allocate the total set of virtual cores that can be allocated to RTOS 103 and Universal OS 104 to RTOS 103 at the time of temporary allocation. The allocation of the total set of virtual cores that can be allocated to RTOS 103 and Universal OS 104, as used herein, does not always mean that the total set of resources of the physical processor 101 is allocated. It means that the resources of the physical processor 101 are allocated, with the exception of those resources required besides RTOS 103 and Universal OS 104, such as the resources for running the hypervisor 102.

[0054] For example, the virtual cores are allocated in such a way that RTOS 103 can be configured to use all logical cores, while Universal OS 104 can be configured to use none. Even when RTOS 103 is configured to use all logical cores, the resource utilization rate of all logical cores does not reach 100%.

[0055] Accordingly, the resources of the physical processor 101, which can be allocated to the operating system running on the hypervisor 102, can be assigned to the activation preparation of the RTOS 103. This further reduces the time until the RTOS 103 is fully activated. Therefore, the priority image to be displayed by the priority application executed by the RTOS 103 can be displayed more quickly. This allows the display content, which needs to be shown quickly when the integrated ECU 10 is activated, to be displayed more rapidly.

[0056] Preferably, the allocation unit 1021 can begin the temporary allocation before the preparation for activating the Universal OS 104 is started. In this way, the resources of the physical processor 101 that can be allocated to the operating system running on the hypervisor 102 can be concentrated on preparing the activation of the RTOS 103 without wasting resources. This further reduces the time until the RTOS 103 is fully activated.

[0057] Preferably, the allocation unit 1021 can terminate the temporary allocation at the latest when the activation of the RTOS 103 is complete. Accordingly, after the display content, which is displayed more quickly when the integrated ECU 10 is activated, the temporary allocation is terminated, thus increasing the resources of the physical processor 101 to be allocated to the Universal OS 104 and reducing the time required to complete the activation of the Universal OS 104.

[0058] The allocation unit 1021 can preferably terminate the temporary allocation once the activation of the priority application is complete. Accordingly, after displaying the display content, which is displayed more quickly when the integrated ECU 10 is activated, the temporary allocation is terminated more quickly, thus increasing the resources of the physical processor 101 available for allocation to the Universal OS 104 and further reducing the time required to complete the activation of the Universal OS 104.

[0059] After the activation of RTOS 103 and Universal OS 104 is complete, the allocation unit 1021 can preferably allocate the aforementioned operational allocation quantity, which is predetermined and set in advance as the allocation quantity after the activation of RTOS 103 and Universal OS 104 is complete, to RTOS 103 and Universal OS 104, respectively. Accordingly, when RTOS 103 and Universal OS 104 are operated after activation, the reliability of RTOS 103 and Universal OS 104 can be improved by allocating a separate physical core to each.

[0060] After the activation of the priority application is complete, the allocation unit 1021 can preferably allocate the aforementioned operational allocation quantity, which is predetermined and set as the allocation quantity after the activation of RTOS 103 and Universal OS 104, to RTOS 103 and Universal OS 104, respectively. Accordingly, after the activation of the application running on RTOS 103 is complete, the reliability of the application execution by RTOS 103 can be improved by allocating a separate physical core to RTOS 103 and Universal OS 104. The activation command unit 1023 starts the activation preparation of Universal OS 104 based on the progress of the hypervisor 102 setup and the release to begin the activation preparation of Universal OS 104.Preferably, the activation instruction unit 1023 can begin the activation preparation of the universal OS 104 only when the activation preparation of the RTOS 103 reaches a predetermined stage. This predetermined stage could, for example, be a stage at which the priority application can run on the RTOS 103. This allows the hardware resources of the physical processor 101 to be concentrated on preparing to activate the RTOS 103 until the activation preparation reaches a predetermined stage, and the priority application on the RTOS 103 can then run more quickly. <Temporärzuweisungsbezogene Verarbeitung in Hypervisor 102>

[0061] Below is an example of a processing flow relating to a temporary assignment in Hypervisor 102 (hereinafter referred to as temporary assignment-related processing) with reference to the in Fig. The flowchart shown in Figure 6 describes the relationship between the operating state of RTOS 103 and Universal OS 104 and the change in the allocation of virtual cores in Hypervisor 102. Furthermore, the relationship between the operating state of RTOS 103 and Universal OS 104 and the change in the allocation of virtual cores in Hypervisor 102 is described based on the diagram shown in Figure 6. Fig. The time diagram shown in section 7 is described. Fig. The flowchart shown in step 6 can be configured to start when the activation of the main microcomputer 100 is initiated by the sub-microcomputer 110, which has detected the start trigger.

[0062] First, in step S1, the setup of the hypervisor 102 and the preparation for activating RTOS 103 are started. In step S2, the allocation unit 1021 assigns the total number of virtual cores that can be allocated to RTOS 103 and Universal OS 104 to RTOS 103. In this embodiment, the temporary allocation of virtual cores is started such that RTOS 103 is controlled to use all four logical cores, while Universal OS 104 is controlled to use none. That is, the virtual core is allocated with a ratio of RTOS 103 : Universal OS 104 = 4 : 0.

[0063] As in Fig. As shown in Figure 7, preparations for activating RTOS 103 are started simultaneously with the setup of Hypervisor 102. Subsequently, when the preparation for activating RTOS 103 begins, the temporary allocation is initiated.

[0064] In step S3, if the activation of the priority application in RTOS 103 is complete (YES in S3), the process proceeds to step S4. If the activation of the priority application in RTOS 103 is not complete (NO in S3), the process is repeated from step S3.

[0065] As in Fig. As shown in Figure 7, the activation of the priority application in RTOS 103 is completed after the preparation to activate RTOS 103 has started and before the activation of RTOS 103 is complete. Fig. Section 7 describes a configuration where multiple applications, including a priority application, can run once RTOS 103 activation is complete. If RTOS 103 is an operating system that runs nothing other than the priority application, then completing the activation of the priority application can also complete the activation of RTOS 103.

[0066] In step S4, the allocation unit 1021 terminates the temporary allocation. In step S5, the allocation unit 1021 starts the uptime allocation, which assigns the uptime allocation quantity—the allocation quantity of virtual cores after activation of RTOS 103 and Universal OS 104—to RTOS 103 and Universal OS 104, respectively. In this embodiment, the virtual cores are allocated such that RTOS 103 uses two logical cores, while Universal OS 104 uses two logical cores that RTOS 103 does not use. That is, the virtual core is allocated with a ratio of RTOS 103 : Universal OS 104 = 2 : 2.

[0067] In step S6, the activation command unit 1022 starts the activation preparation of the Universal OS 104. In step S7, the activation of both the RTOS 103 and the Universal OS 104 is completed, and the temporary assignment-related processing is terminated.

[0068] As in Fig. As shown in Figure 7, after the priority application is activated, preparations for activating Universal OS 104 are started. When the priority application is activated, the temporary allocation ends and the operating-time allocation begins. For example, preparations for activating Universal OS 104 can be configured to start after the operating-time allocation has started. Furthermore, when the priority application is activated and the priority application first displays the priority screen on the counter MID 30 at the time the integrated ECU 10 is activated, the temporary allocation can be terminated. For example, the temporary allocation can be completed by the time the priority screen is displayed.

[0069] After RTOS 103 activation is complete, Universal OS 104 activation will be completed with a delay. The activated Universal OS 104 will display infotainment-type images. The uptime allocation amount does not change even after both RTOS 103 and Universal OS 104 activation is complete, following the completion of the temporary allocation. The uptime allocation amount is pre-set and maintained at the predetermined allocation amount during the operation of both RTOS 103 and Universal OS 104. Consequently, the reliability of both RTOS 103 and Universal OS 104 is improved by ensuring that each continues to be allocated a unique physical core even while both are running.To improve the reliability of RTOS 103 and Universal OS 104 during the operation of RTOS 103 and Universal OS 104, it may not be desirable to continue the temporary allocation until both RTOS 103 and Universal OS 104 are operational.

[0070] In the present embodiment, the odometer display and the image captured by the rear-view camera are used as an example of the priority image. Alternatively, the configuration can include an activation screen, such as an opening image, which is displayed on the CID 20 and the odometer MID 30 at the start of vehicle use. <Erste Ausführungsform>

[0071] According to the configuration of the first embodiment, as described above, it is possible to shorten the time required to complete the activation of RTOS 103 compared to the case where the temporary allocation does not occur. Consequently, when the integrated ECU 10 is activated, the priority application executed by RTOS 103 can be run more quickly. This allows the display content, which should be shown quickly when the integrated ECU 10 is activated, to be displayed more rapidly.

[0072] Furthermore, since the multiple physical cores 1011 to 1014 contained in the physical processor 101 are abstracted into virtual cores by the virtualization technology, the resources of the physical processor 101 are temporarily concentrated on the RTOS 103 by means of temporary allocation. According to the configuration of the first embodiment, after completion of the temporary allocation, the virtual core allocation is changed to assign the unique physical core to both the RTOS 103 and the Universal OS 104, thus improving the reliability of each operating system.

[0073] Consequently, if a technology that allows multiple operating systems to operate in parallel is used for a vehicle control device that displays information on a screen inside the vehicle, it is possible to quickly display the content to be shown when the vehicle control device is activated, while improving the reliability of these operating systems. (Second embodiment)

[0074] The first embodiment shows a configuration in which the kernel used by the hypervisor 102, which is virtualization software, and the RTOS 103 running on the hypervisor 102 are common; however, the present embodiment is not necessarily limited to this. For example, the operating system used by the virtualization software may have a configuration that is not common to the kernel used by any operating system running on the virtualization software (hereinafter referred to as the second embodiment). The vehicle display system 1 of the second embodiment is similar to the vehicle display system 1 of the first embodiment, except that the conceptual configuration of the physical processor 101 is partially different.

[0075] Below is an example of the conceptual configuration of the physical processor 101 according to the second embodiment with reference to Fig. Section 8 describes a case where a hypervisor is used as the virtualization software and RTOS 103a and Universal OS 104 are used as the two operating systems. The kernel of Hypervisor 102a is not common to both RTOS 103a and Universal OS 104. Hypervisor 102a and RTOS 103a are similar to Hypervisor 102 and RTOS 103 of the first embodiment, except that the kernels are not common to each other.

[0076] The RTOS 103a can be, for example, QNX. The universal OS 104 can be, for example, Linux. A hypervisor 102a is mounted on a physical processor 101 with four physical cores 1011, 1012, 1013, and 1014 on the main microcomputer 100. The following is an example of the case where the physical cores 1011 to 1014 of the present embodiment do not execute two threads in parallel on a single physical core. Therefore, the physical cores 1011 to 1014 are each logical cores.

[0077] Hypervisor 102a can run RTOS 103a and Universal OS 104 in parallel on the virtual kernel from which the physical processor 101 is extracted. Here, as described above, Hypervisor 102a and RTOS 103a do not share a common kernel. This RTOS 103a is identical to the first operating system.

[0078] In the first embodiment, the hypervisor 102 and the RTOS 103 share a common kernel, while the hypervisor 102 and the universal OS 104 do not. Consequently, when the integrated ECU 10 is activated, the preparation for activating the RTOS 103 begins before the preparation for activating the universal OS 104. In contrast, in the second embodiment, since neither the RTOS 103a nor the universal OS 104 share the same kernel as the hypervisor 102a, it is necessary to start the preparation for activating the RTOS 103a before the preparation for activating the universal OS 104 when the integrated ECU 10 is activated.

[0079] Therefore, in the second embodiment, the activation instruction unit 1022 of the hypervisor 102a starts the activation preparation of the RTOS 103a when the setup of the hypervisor 102a progresses and the activation preparation of the RTOS 103a can be started. Furthermore, the activation instruction unit 1022 of the hypervisor 102a prevents the universal OS 104 from starting its activation preparation before the activation preparation of the RTOS 103 begins. The RTOS 103a is similar to the RTOS 103 of the first embodiment, except that the virtualization software for running the RTOS 103a and the RTOS 103a do not share the same kernel. Furthermore, since the kernel of the hypervisor 102a and the kernel of the RTOS 103a are not common, the allocation unit 1021 of the hypervisor 102a can perform the function without being dependent on the control of the RTOS 103a.

[0080] According to the configuration of the second embodiment, the resource of the physical processor 101 is temporarily concentrated on the RTOS 103a by temporary allocation when the integrated ECU 10 is activated, which corresponds to the configuration of the first embodiment. Similar to the first embodiment, if a technology that allows multiple operating systems to operate in parallel is used for a vehicle control device that displays information on a screen in the vehicle interior, it is possible to quickly display the desired content when the vehicle control device is activated, while improving the reliability of these operating systems. (Third embodiment)

[0081] In the embodiment described above, the configuration shown is one in which the vehicle display system 1 has two displays, the CID 20 and the MID 30, although the present embodiment is not necessarily limited to this. For example, a display other than the CID 20 and the counter MID 30 may be included in the vehicle display system 1. For instance, a head-up display may be used instead of the counter MID 30. (Fourth embodiment)

[0082] The embodiment described above illustrates an example of running two operating systems in parallel on virtualization software; alternatively, the present embodiment is not necessarily limited to this. Three or more operating systems can be present and running in parallel.

[0083] The control device, control unit, and control method described in this disclosure can be implemented by a special computer containing a processor programmed to perform one or more functions executed by computer programs. Alternatively, the control unit and control method described in this disclosure can be implemented by a special hardware logic circuit. Alternatively, the control device and control method described in this disclosure can be implemented by one or more special computers configured with a combination of a processor executing a computer program and one or more hardware logic circuits.Furthermore, the computer program can be stored on a computer-readable, non-volatile, physical storage medium as instructions executed by a computer.

[0084] Here, the process flowchart or flow diagram described in this application comprises several sections (or steps), and each section is, for example, denoted as S1. Furthermore, each section may be divided into several subsections, while several sections may be combined into a single section. Additionally, each section configured in this way may also be referred to as a device, a module, and a means.

[0085] Although the present disclosure has been set forth above with reference to exemplary embodiments, it should be noted that it is not limited to such exemplary embodiments and structures. The present disclosure includes various modifications and variations within the scope of equivalents. Furthermore, various combinations and forms, as well as other combinations and forms that include only one element, more than that, or less than that, are likewise within the meaning and scope of the present disclosure.

Claims

[1] Vehicle control device (10) which controls a display (20, 30) arranged in a vehicle interior, wherein the vehicle control device (10) comprises: - a physical processor (101) that runs multiple operating systems (103, 103a, 104) in parallel on virtualization software (102, 102a) via virtualization technology; - a trigger detection unit (110) that detects an activation trigger of the vehicle control device (10); and - an allocation unit (1021), wherein - the physical processor (101) has several physical processor cores (1011, 1012, 1013, 1014), abstracted into virtual processor cores by virtualization technology; - the multiple operating systems (103, 103a, 104) comprise: a first operating system (103, 103a) which is the operating system for running a priority application, which is an application for displaying content that is preferentially displayed when the vehicle control device (10) is activated; and a second operating system (104) as another operating system; and - then, when the trigger detection unit (110) detects the activation trigger to activate the first operating system (103, 103a) and the second operating system (104), the allocation unit (1021) performs a temporary allocation that temporarily assigns the first operating system (103, 103a) to the virtual processor cores with an allocation set of virtual processor cores that is greater than a predefined allocation set of virtual processor cores as an initial allocation set after activation of the first operating system (103, 103a) has been completed. [2] Vehicle control device (10) according to claim 1, wherein the allocation unit (1021) terminates the temporary allocation at the latest when the activation of the first operating system (103, 103a) is completed. [3] Vehicle control device (10) according to claim 2, wherein the allocation unit (1021) terminates the temporary allocation when an activation of the priority application is completed. [4] Vehicle control device (10) according to claim 2 or 3, wherein - the allocation unit (1021) assigns operating time allocation quantities to the first operating system (103, 103a) and the second operating system (104) respectively, after the activation of the first operating system (103, 103a) and the second operating system (104) is complete; and - the uptime allocation quantities are allocation quantities of the virtual processor cores that are predetermined and set as allocation quantities after the activation of the first operating system (103, 103a) or the second operating system (104) is complete. [5] Vehicle control device (10) according to claim 3, wherein - the allocation unit (1021) assigns uptime allocation quantities to the first operating system (103, 103a) and the second operating system (104) respectively, after the activation of the priority application is complete; and - the uptime allocation quantities are allocation quantities of the virtual processor cores that are predetermined and set as allocation quantities after the activation of the first operating system (103, 103a) or the second operating system (104) is complete. [6] Vehicle control device (10) according to claim 4 or 5, wherein, when the allocation unit (1021) allocates the operating time allocation quantity to the first operating system (103, 103a) and the second operating system (104), the allocation unit (1021) allocates the operating time allocation quantity in such a way that one or more different physical processor cores (1011, 1012, 1013, 1014) are allocated to the first operating system (103, 103a) and the second operating system (104). [7] Vehicle control device (10) according to claim 6, wherein, when the allocation unit (1021) allocates the uptime allocation quantity to the first operating system (103, 103a) and the second operating system (104), the allocation unit (1021) allocates the uptime allocation quantity such that one or more different physical processor cores (1011, 1012, 1013, 1014) are allocated to the first operating system (103, 103a) and the second operating system (104), and physical processor cores (1011, 1012, 1013, 1014) that share a cache are allocated to the same operating system. [8] Vehicle control device (10) according to any one of claims 1 to 7, wherein the allocation unit (1021) starts the temporary allocation before a preparation to activate the second operating system (104) is started. [9] Vehicle control device (10) according to claim 8, wherein - the first operating system (103) uses a common kernel with the virtualization software (102); - the second operating system (104) does not use a common kernel with the virtualization software (102); and - when the trigger detection unit (110) detects the activation trigger, a preparation to activate the first operating system (103) is started before the preparation to activate the second operating system (104) is started. [10] Vehicle control device (10) according to any one of claims 1 to 9, wherein the allocation unit (1021) allocates a total set of virtual processor cores that can be allocated to the first operating system (103, 103a) and the second operating system (104) to the first operating system (103, 103a) at a time of temporary allocation. [11] Vehicle display system comprising: - a display (20, 30) located in a vehicle interior; and - the vehicle control device (10) according to one of claims 1 to 10, which controls the display (20, 30) for displaying. [12] Vehicle display control method for controlling a display (20, 30) arranged in a vehicle interior by a vehicle control device (10), wherein the vehicle display control method comprises the following steps: - Detection of an activation trigger of the vehicle control device (10); - Abstracting multiple physical processor cores (1011, 1012, 1013, 1014) contained in a physical processor (101) to run multiple operating systems (103, 103a, 104) in parallel on virtualization software (102, 102a) through virtualization technology into virtual processor cores; and - then, when the activation trigger is detected to activate a first operating system (103, 103a) and a second operating system (104), execute a temporary allocation that temporarily assigns the first operating system (103, 103a) to the virtual processor cores with an allocation set of virtual processor cores that is greater than a predefined allocation set of virtual processor cores as an initial allocation set, after activation of the first operating system (103, 103a) has been completed, wherein - the multiple operating systems (103, 103a, 104) comprise: the first operating system (103, 103a), which is the operating system for running a priority application, which is an application for displaying a display content that is preferentially to be displayed when the vehicle control device (10) is activated; and a second operating system (104) as another operating system.