Information processing equipment for vehicles

The information processing device calculates and manages memory usage to prevent disruptions by deleting new applications exceeding limits, ensuring smooth operation of existing applications.

JP7852601B2Active Publication Date: 2026-04-28TOYOTA JIDOSHA KK
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2023-09-26
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

Existing information processing devices face disruptions when adding new applications without considering the required specifications, potentially hindering the execution of existing applications.

Method used

An information processing device that calculates the maximum memory usage of a new application before execution, deleting it if exceeding a predetermined value, and making it executable if within the limit, while updating usage lists and priority levels.

Benefits of technology

Prevents disruptions to existing applications by ensuring memory and power resources are not overwhelmed, allowing seamless integration of new applications without impacting ongoing processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007852601000001
    Figure 0007852601000001
  • Figure 0007852601000002
    Figure 0007852601000002
  • Figure 0007852601000003
    Figure 0007852601000003
Patent Text Reader

Abstract

To prevent the addition and execution of a new application from interfering with the execution of each of existing applications.SOLUTION: An information processing device for vehicle executes the steps to: download a new application and store the same in a first storage section when a first storage section receives a request to store the new application (Step S100); calculate maximum usage of a second storage section used when the new application is executed (Step S130); when the calculated maximum usage is larger than a set value (No in Step S140), erase the new application from the first storage section (Step S170); and when the calculated maximum usage is equal to or lower than the set value (Yes in Step S140), put the new application in an executable state without erasing the same from the first storage section (Step S150).SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an information processing device for a vehicle.

Background Art

[0002] The information processing device disclosed in Patent Document 1 stores a plurality of applications. The information processing device can execute the plurality of applications in parallel. When executing the plurality of applications in parallel, the information processing device monitors the memory usage amount associated with executing each application.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In a technology such as Patent Document 1, there may be a request to add a new application to the information processing device. At this time, assume that the application is added to the information processing device without considering the specifications required for the information processing device to execute this new application. In this case, after adding the new application, there is a possibility of hindering the execution of each application.

Means for Solving the Problems

[0005] An information processing device for a vehicle to solve the above problems comprises an execution unit, a first storage unit that stores an application that the execution unit can execute, and a second storage unit that temporarily stores data generated when the execution unit executes the application. When the execution unit receives a request to store a new application in the first storage unit, it downloads the new application and stores the new application in the first storage unit, calculates the maximum usage of the second storage unit that will be used when the new application is executed, and if the calculated maximum usage is greater than a predetermined set value, it deletes the new application from the first storage unit, while if the calculated maximum usage is less than or equal to the set value, it does not delete the new application from the first storage unit and makes it executable. [Effects of the Invention]

[0006] The above technical concept prevents disruptions to the execution of other applications when a new application is added and executed. [Brief explanation of the drawing]

[0007] [Figure 1] Figure 1 is a schematic diagram of the vehicle's configuration. [Figure 2] Figure 2 is a flowchart illustrating the processing steps for the additional processing. [Figure 3] Figure 3 is a flowchart illustrating the processing steps for the shutdown process. [Modes for carrying out the invention]

[0008] Hereinafter, one embodiment of an information processing device for vehicles will be described with reference to the drawings. In this embodiment, the case in which the information processing device for vehicles is applied to an electric vehicle will be used as an example. <Overall vehicle configuration> As shown in Figure 1, the vehicle 100 is equipped with an information processing device 10. The information processing device 10 comprises a CPU 11, storage 13, RAM 15, and a communication module 17. The CPU 11 constitutes the execution unit. The storage 13 is an electrically rewritable non-volatile memory. The storage 13 constitutes the first storage unit. The RAM 15 is a volatile memory. The RAM 15 constitutes the second storage unit. The communication module 17 is a communication circuit for wireless communication with the outside via an external communication network. The CPU 11, storage 13, RAM 15, and communication module 17 can communicate with each other via an internal bus 19.

[0009] The vehicle 100 is equipped with multiple specific control devices 90. In Figure 1, two of the multiple specific control devices 90 are shown as representative examples. Each specific control device 90 is an electronic control device that controls a specific of the multiple on-board devices. One of the multiple on-board devices is the motor 50 for driving the vehicle 100. Another of the multiple on-board devices is the display 80, which will be described later. Other on-board devices include a brake system, an air conditioning system, a meter display device, and the converter 65, which will be described later. Each specific control device 90 can communicate with the information processing device 10 via an external bus 95.

[0010] Vehicle 100 is equipped with a display 80. The display 80 is located inside the vehicle. The display 80 is controlled by a specific control device 90 that receives command signals from the information processing device 10. The display 80 can display various types of information. As mentioned above, the specific control device 90 is interposed between the display 80 and the information processing device 10, but a detailed explanation of this point will be omitted. In other words, it may be described as if the display 80 and the information processing device 10 are directly sending and receiving information. The display 80 is a so-called touch panel. That is, the display 80 also functions as an input device that accepts information input from the outside. The display 80 transmits the information input from the outside to the information processing device 10.

[0011] Vehicle 100 is equipped with a power supply system. The power supply system includes a drive battery 61, an auxiliary battery 63, a converter 65, a connector 67, a first battery sensor 71, and a second battery sensor 73.

[0012] Connector 67 can be connected to an external power supply 300 for the vehicle 100. The drive battery 61 is a secondary battery. The drive battery 61 is a high-voltage battery for driving the vehicle 100. The drive battery 61 is connected to connector 67. The drive battery 61 receives power from the external power supply 300 via connector 67. The drive battery 61 supplies power to the drive motor 50.

[0013] The auxiliary battery 63 is a secondary battery. The auxiliary battery 63 is a low-voltage battery with a lower rated voltage than the drive battery 61. The auxiliary battery 63 is connected to the drive battery 61 via a converter 65. The auxiliary battery 63 supplies power to the auxiliary equipment of the vehicle 100. The auxiliary equipment of the vehicle 100 includes an information processing device 10, various specific control devices 90, a display 80, various switches, various sensors, and the like.

[0014] The converter 65 steps down the output voltage from the drive battery 61 and outputs it to the auxiliary battery 63. The converter 65 also steps up the output voltage from the auxiliary battery 63 and outputs it to the drive battery 61.

[0015] The first battery sensor 71 detects first battery information Y1, such as the temperature, voltage, and current of the drive battery 61, at a predetermined control cycle. Each time the first battery sensor 71 detects the first battery information Y1, it outputs the detected first battery information Y1 to the information processing device 10.

[0016] The second battery sensor 73 detects second battery information Y2, such as the temperature, voltage, and current of the auxiliary battery 63, at a predetermined control cycle. Each time the second battery sensor 73 detects the second battery information Y2, it outputs the detected second battery information Y2 to the information processing device 10.

[0017] Vehicle 100 includes a start switch 40. The start switch 40 is a switch for the user to instruct the startup of the vehicle 100. The start switch 40 outputs a signal G according to the on / off operation of the user to the information processing device 10.

[0018] <Details of the information processing device> The storage 13 stores in advance a plurality of applications and various data necessary for the execution of each application. The application is, for example, various programs for controlling and managing various parts of the vehicle 100. Each application stored in the storage 13 is in a state where the later-described activation is completed. The CPU 11 can execute each application stored in the storage 13. The RAM 15 temporarily stores data generated as the CPU 11 executes the application. The CPU 11 appropriately executes each application as necessary. The CPU 11 may execute a plurality of applications in parallel. When an application is executed, the CPU 11 outputs a command signal to each specific control device 90 to realize various necessary processes.

[0019] Various additional information is attached to the application. Attaching additional information means that, in addition to the main source code essential for the execution of the program, additional information that is not directly involved in the execution of the program is described. An example of the additional information is the application identification value assigned to each application. Another example of the additional information is the priority level of each application. Such additional information as these application identification values and priority levels is attached to the application in advance before the application is installed in the vehicle 100. Note that, as will be described in the later-described additional process, the CPU 11 may additionally attach additional information to the application stored in the storage 13.

[0020] The priority level indicates the priority of continuing the execution of an application when the CPU 11 executes the application. The higher the priority level, the higher the priority of continuing the execution of the application. In this embodiment, three levels of priority are set. The application at level 3, which is the highest priority level, is an application that is responsible for controlling the running of the vehicle 100, such as autonomously driving the vehicle 100. The application at level 2, which is the intermediate level, is an application that provides driving information to the user, such as making the navigation system function. The application at level 1, which is the lowest priority level, is an application other than the applications at level 2 and level 3, such as providing entertainment information to the user.

[0021] <Additional process> The CPU 11 is capable of executing an additional process. The additional process is a process for adding a new application to the storage 13. As will be described later, while the CPU 11 is executing the additional process, it stops the execution of all existing applications. Therefore, while the additional process is being executed, the vehicle 100 cannot be controlled through the execution of applications. In connection with this, when the CPU 11 receives information from the user via the display 80 indicating that the user wants to add a new application, it displays on the display 80 that all existing applications cannot be executed while the additional process is being executed. In response to the user's permission operation for this display, the display 80 transmits an installation request signal. The installation request signal is a signal that requests the storage 13 to store a new application. When the CPU 11 receives the installation request signal from the display 80, it starts the additional process.

[0022] As shown in Figure 2, when the CPU 11 starts additional processing, it first executes the process in step S100. In step S100, the CPU 11 downloads the new application and stores the downloaded new application in the storage 13. After this, the CPU 11 proceeds to step S110. Note that at the end of step S100, the new application is not yet activated. Here, "activation" means making the application executable. However, even if the application is not activated, it is possible to run the application virtually without the operation of the in-vehicle device. Running the application virtually in this way will be referred to as test execution below.

[0023] In step S110, the CPU 11 stops the execution of all existing applications except for applications that perform additional processing. Existing applications are those that the storage 13 has stored when the CPU 11 receives the installation request signal. Existing applications can also be said to be applications that are currently enabled. Regarding the processing in step S110, the CPU 11 maintains the state of existing applications that are not running when the process proceeds to step S100. After the CPU 11 has finished executing the processing in step S110, the process proceeds to step S120.

[0024] In step S120, the CPU 11 performs a test execution of a new application. During the test execution, the CPU 11 runs the new application for a predetermined time and monitors the usage of RAM 15 during the execution of the new application. The way the new application is executed during the test execution is the same as when the application is normally executed. However, the test execution differs from the normal execution state in that it monitors the usage of RAM 15 and runs in a virtual environment. Specifically, monitoring the usage of RAM 15 involves repeatedly acquiring the amount of RAM 15 used at each timing associated with the execution of the new application. During the test execution, once the CPU 11 acquires the amount of RAM 15 used, it stores the acquired amount of RAM 15 used in RAM 15 over time. Hereinafter, the time series of RAM 15 usage acquired during the test execution will be referred to as the test time series.

[0025] Incidentally, as an application continues to run, the amount of RAM 15 used in conjunction with the execution of this application increases and decreases. The predetermined time mentioned above is set so that the maximum value of RAM 15 usage that may occur during these increases and decreases can be captured. Specifically, the predetermined time is determined in advance through experiments, etc., as a length of time sufficient to capture a series of fluctuations in RAM 15 usage when the application is running, including the maximum and minimum values ​​of RAM 15 usage used in conjunction with the execution of the application. After the test execution is complete, the CPU 11 proceeds to step S130.

[0026] In step S130, the CPU 11 calculates the maximum amount of RAM 15 used when running the new application. Specifically, the CPU 11 refers to the test time series obtained in step S120. The CPU 11 then identifies the maximum value in the test time series as the maximum usage. After this, the CPU 11 proceeds to step S140.

[0027] In step S140, the CPU 11 determines whether the maximum usage calculated in step S130 is less than or equal to the set value. Specifically, in step S140, the CPU 11 first calculates the maximum total usage, which is the premise for the set value. The maximum total usage is the amount of RAM 15 used when all existing applications are executed in parallel. The CPU 11 calculates the maximum total usage by referring to the usage list stored in the storage 13. The maximum amount of RAM 15 used when executing a single application is called the application usage. The usage list is a list of first data sets that associate a single application with the application usage corresponding to that application, arranged for all existing applications. In other words, the usage list describes the application usage for each of all existing applications. For example, in the usage list, existing applications are represented by application identification values. The usage list currently stored in storage 13 is created by adding the above-mentioned first data set each time a new application is added to the initial usage list stored in storage 13 at the time of factory shipment of vehicle 100. The CPU 11 refers to this usage list and calculates the sum of all application usage in the usage list as the maximum total usage. After calculating the maximum total usage, the CPU 11 calculates the setting value. The setting value is predetermined as the usable amount minus the maximum total usage. The usable amount is predetermined as a value slightly smaller than the maximum storage capacity that can be used with RAM 15 without straining the RAM 15's storage area. Storage 13 stores the usable amount in advance. After calculating the setting value, the CPU 11 compares the maximum usage calculated in step S130 with the setting value. Then, if the maximum usage is greater than the setting value (step S140: NO), the CPU 11 proceeds to step S170.

[0028] In step S170, the CPU 11 erases the new application from the storage 13. For example, the CPU 11 completely erases the new application from the storage 13. However, regarding the process in step S170, the CPU 11 may configure the memory cells on which the new application was written to be treated as an overwritable free area, rather than completely erasing the new application. In other words, erasing the new application from the storage 13 in step S170 is not limited to completely erasing the new application. After the CPU 11 has finished executing the process in step S170, it terminates the series of additional processing steps. At this time, the CPU 11 may notify the user via the display 80 that it is currently not possible to add a new application to the storage 13.

[0029] On the other hand, in step S140, if the maximum usage is less than or equal to the set value (step S140: YES), the CPU 11 proceeds to step S150. In step S150, the CPU 11 activates the new application. This activation process makes the new application executable. Activation in this embodiment involves attaching an activation flag as supplementary information to the new application. The activation flag indicates that the application has been approved for addition to storage 13 and that the CPU 11 may execute it as needed. In this way, in step S150, the CPU 11 makes the new application executable without erasing it. After activating the new application, the CPU 11 proceeds to step S160.

[0030] In step S160, the CPU 11 stores several pieces of necessary information in the storage 13. One of these pieces of necessary information is the maximum usage of the new application calculated in step S130. When the CPU 11 stores the maximum usage of the new application in the storage 13, it does the following: the CPU 11 adds the maximum usage of the new application to the usage list, associating it with the new application. Another piece of necessary information is the priority level of the new application. As a prerequisite for the CPU 11 to store the priority level in the storage 13, the storage 13 stores a priority list. The priority list is a list of all existing applications, each consisting of a second data set associating an application with its corresponding priority level. In other words, the priority list describes the priority level for each of all existing applications. For example, in the priority list, existing applications are represented by an application identification value. The priority list currently stored in storage 13 is the initial priority list data stored in storage 13 at the time of factory shipment of vehicle 100, with the above second data set added each time a new application is added. When the CPU 11 stores the priority level of a new application in storage 13, it does the following: The CPU 11 reads the priority level attached as supplementary information to the new application. Then, the CPU 11 adds the priority level of the new application to the priority list, associating it with the new application. Once the CPU 11 stores the maximum usage and priority level of the new application in storage 13, it terminates the series of processes for adding the application. When the CPU 11 has completed the adding process after going through steps S150 and S160, the new application becomes one of the existing applications.

[0031] <Stopping process> The CPU 11 is capable of performing a shutdown process. As described above, the CPU 11 executes each existing application stored in the storage 13 as needed. The shutdown process is a process to stop running applications in relation to the amount of RAM 15 used or the charge level of the auxiliary battery 63 (SOC). The CPU 11 performs the shutdown process when certain requirements are met. One of these requirements is that the CPU 11 is running multiple applications with different priority levels in parallel. As long as these requirements are met, the CPU 11 repeats the shutdown process described below.

[0032] Assuming that a shutdown process is to be performed, the CPU 11 repeatedly obtains the total RAM usage of multiple running applications at each timing, provided that the necessary conditions are met.

[0033] Furthermore, as a prerequisite for performing the stop process, the CPU 11 repeatedly calculates the state of charge (SOC) of the auxiliary battery 63. The CPU 11 calculating the SOC of the auxiliary battery 63 is equivalent to the CPU 11 obtaining the SOC of the auxiliary battery 63. The SOC of the auxiliary battery 63 is the value obtained by dividing the remaining capacity of the auxiliary battery 63 by the full charge capacity of the auxiliary battery 63. The full charge capacity of the auxiliary battery 63 is the maximum amount of energy that the auxiliary battery 63 can store. For example, the CPU 11 calculates the full charge capacity of the auxiliary battery 63 based on the temperature and voltage of the auxiliary battery 63. For example, the CPU 11 calculates the remaining capacity of the auxiliary battery 63 based on the voltage and current of the auxiliary battery 63. In addition, the CPU 11 repeatedly calculates the charge rate of the drive battery 61 in a similar manner to calculating the SOC of the auxiliary battery 63. That is, the CPU 11 calculates the charge rate of the drive battery 61 based on the temperature, voltage, and current of the drive battery 61.

[0034] As shown in Figure 3, when the CPU 11 starts the shutdown process, it first performs the process in step S200. In step S200, the CPU 11 determines whether the current total usage of RAM 15 is greater than the available amount. If the total usage is greater than the available amount (step S200: YES), the CPU 11 proceeds to step S220. The details of the process in step S220 will be described later.

[0035] On the other hand, if the total usage is less than or equal to the available amount (step S200: NO), the CPU 11 proceeds to step S210. In step S210, the CPU 11 determines whether the state of charge (SOC) of the auxiliary battery 63 is less than or equal to a predetermined value. The predetermined value is explained below. For example, if the charge level of the drive battery 61 decreases, the CPU 11 controls the power supply system to extend the driving range of the vehicle 100 by supplying power from the auxiliary battery 63 to the drive battery 61. In this regard, the predetermined value is predetermined as follows. That is, the predetermined value is determined through experiments and other means as the state of charge (SOC) at which it is necessary to start reducing the power supply to the auxiliary equipment in order to secure a certain driving range. The storage 13 stores the predetermined value in advance. In step S210, if the charge level (SOC) of the auxiliary battery 63 is greater than the predetermined value (step S210: NO), the CPU 11 terminates the series of processes for stopping the system. In this case, CPU 11 executes the process of step S200 again, provided that the necessary conditions are met.

[0036] On the other hand, if the charge level (SOC) of the auxiliary battery 63 is below a predetermined value (step S210: YES), the CPU 11 proceeds to step S220. In step S220, the CPU 11 refers to the priority list to identify the application with the lowest priority level among the multiple applications currently running. For example, if the multiple applications currently running include a level 1 application, the CPU 11 identifies the level 1 application. For example, if the multiple applications currently running do not include a level 1 application, the CPU 11 identifies a level 2 application. If there are multiple applications with the lowest priority level among the multiple applications currently running, the CPU 11 identifies all of them. Once the CPU 11 has identified the application with the lowest priority level, it stops the execution of all identified applications. After this, the CPU 11 finishes the series of processes for stopping applications. Then, provided that the necessary conditions are met, the CPU 11 executes the process in step S200 again.

[0037] <Operation of the Embodiment> In the additional processing, CPU 11 determines the maximum amount of RAM 15 used by the new application before enabling the new application (step S130). Based on this, CPU 11 decides whether or not to enable the new application (steps S140, S150, S170).

[0038] <Effects of the Embodiment> (1) As described in the above embodiment, the CPU 11 of this embodiment checks the maximum usage of a new application in advance and then enables the new application. With this configuration, when the CPU 11 runs the application after it has been enabled, it is possible to prevent problems from occurring in the execution of each application, such as the memory area of ​​RAM 15 becoming congested.

[0039] (2) In the additional processing, the CPU 11 stops the execution of the existing application, executes the new application, and calculates the maximum usage of the new application. The advantages of this will be explained. Now, let's assume that when calculating the maximum usage of the new application, the CPU 11 continues to execute the existing application while executing the new application. In this case, the CPU 11 will be running multiple applications in parallel. In this case, if the RAM 15 usage by these concurrently running applications increases, the memory area of ​​RAM 15 may become strained. At the same time, there is a risk that the data generated by the execution of the existing application may not be able to be stored in RAM 15. In this case, the execution of the existing application may be hindered.

[0040] In this regard, the CPU 11 of this embodiment calculates the maximum usage of a new application by stopping the execution of the existing application before running the new application. Therefore, there is no impact on the processing related to the execution of the existing application.

[0041] (3) When a new application is enabled, the CPU 11 adds the maximum usage of that application to the usage list. By updating the usage list each time a new application is enabled in this way, the CPU 11 can always know the maximum usage of each application currently stored in the storage 13, and consequently the total maximum usage. In this embodiment, in order to obtain the effect of (2) above, the execution of all existing applications is stopped when calculating the maximum usage of a new application. Even when the execution of all existing applications is stopped, the CPU 11 can reliably know the total maximum usage with the configuration of this embodiment. Once the total maximum usage is known, a value obtained by subtracting the total maximum usage from the available amount can be set as the setting value. If the maximum usage of a new application is less than or equal to this setting value, even if all applications stored in the storage 13 are executed in parallel after the new application is enabled, the total usage of RAM 15 associated with the execution of all these applications will be less than or equal to the available amount. Therefore, the CPU 11 can execute all applications in parallel without straining the memory area of ​​RAM 15.

[0042] (4) The amount of RAM 15 used in the execution of a certain application may, for some reason, exceed the maximum amount of RAM 15 that was confirmed in advance. In connection with this, the following may occur: When the CPU 11 runs multiple applications in parallel, the total amount of RAM 15 used may exceed the amount of RAM available. If the CPU 11 continues to run multiple applications in this situation, it may cause problems in the execution of each application.

[0043] In this regard, the CPU 11 of this embodiment stops the execution of the lowest-priority application if the total usage of RAM 15 due to the execution of multiple applications exceeds the available amount. Therefore, even in the situation described above, the CPU 11 can secure memory area of ​​RAM 15 that can be used by high-priority applications. Thus, in the configuration of this embodiment, the execution of high-priority applications is not hindered.

[0044] (5) A situation may occur in which the State of Charge (SOC) of the auxiliary battery 63 decreases while the vehicle 100 is in use. If the CPU 11 continues to run multiple applications in this situation, it may not be possible to secure the emergency driving range.

[0045] In this regard, the CPU 11 of this embodiment stops the application with the lowest priority among the running applications when the State of Charge (SOC) of the auxiliary battery 63 falls below a predetermined value. Therefore, the CPU 11 can continue running high-priority applications while ensuring the cruising range in emergencies.

[0046] <Example of changes> The above embodiment can be implemented with the following modifications. The above embodiment and the following modifications can be combined with each other to the extent that they do not contradict each other technically.

[0047] Regarding the processing in step S220 of the termination process, if there are multiple applications with the lowest priority level among the multiple applications currently running, it is not necessary to stop the execution of all of these applications. The CPU 11 only needs to stop one or more applications with the lowest priority level among the multiple applications currently running.

[0048] The drive battery 61 can be said to be supplying power to the information processing device 10 via the auxiliary battery 63. In step S210 of the stop process, the charge level of the drive battery 61 may be compared with a predetermined value. In this case, the predetermined value may be set to an appropriate value for the drive battery 61. In other words, the method of determining the predetermined value is not limited to the example of the above embodiment. Also, in step S210, the determination may be made considering both the charge level (SOC) of the auxiliary battery 63 and the charge level of the drive battery 61.

[0049] It is not essential to determine whether to stop application execution based on the battery charge level. It is not mandatory to determine whether to stop an application based on the total RAM usage of 15GB by multiple applications.

[0050] When deciding whether to stop an application from running, the following approach may be adopted: Suppose that during the execution of an application, the amount of RAM15 used by this application exceeds the maximum usage determined during test execution. At this point, the execution of this application may be stopped. In other words, the decision to stop execution may be made for each application in relation to its maximum usage.

[0051] The number of priority levels is not limited to the examples of the above embodiments. Any number of priority levels may be set as needed. Establishing priority levels is not mandatory.

[0052] The setting values ​​are not limited to the examples of the above embodiment. For example, the storage capacity allocated to each application from the storage 13 may be predetermined, and these values ​​may be used as the setting values.

[0053] • When adopting the above example of changes as a setting value, it is not necessary to store the maximum usage of the new application in storage 13 during additional processing. • When calculating the maximum usage of a new application during the additional processing, it is not mandatory to stop the execution of all existing applications. You may stop the execution of only some existing applications, or you may not consider stopping any existing applications at all.

[0054] The mode of activation is not limited to the examples of the above embodiment. For example, an approval area, which is a dedicated storage area for storing applications that have been approved for addition to the storage 13, may be provided in the storage 13 in advance. Then, when a new application is downloaded in step S100, the downloaded new application is stored in a storage area other than the approval area in the storage 13. Then, in step S150, the new application stored in the storage area other than the approval area in step S100 is moved to the approval area. In this way, moving the new application to a dedicated storage area may be considered activation. Alternatively, for example, an approval list, which lists applications that have been approved for addition to the storage 13, may be prepared in advance. Then, adding the application identification value of the new application to this approval list may be considered activation. The goal is to make the new application executable without deleting it from the storage 13 through activation.

[0055] As described in the above embodiment, the process in step S170 may not completely erase the new application. In this case, the following becomes possible. For example, suppose that the free space on storage 13 increases because an application other than the new application stored on storage 13 is erased. Then, suppose that the addition of the new application, which was initially postponed, is requested again. At this time, if storage 13 still remembers the new application, it is not necessary to download the new application in step S100 when performing the addition process again. In other words, the process in step S100 can be skipped, and processing can start from step S110.

[0056] The vehicle to which the information processing device 10 is applied is not limited to electric vehicles. For example, the vehicle to which the information processing device 10 is applied may be a hybrid vehicle or a gasoline-powered vehicle. [Explanation of Symbols]

[0057] 10...Information processing unit 11...CPU 13...Storage 15...RAM 63...Auxiliary battery 100...Vehicle

Claims

1. The execution unit, The execution unit includes a first storage unit that stores an executable application, The execution unit comprises a second storage unit that temporarily stores data generated when the execution unit executes an application, The execution unit is, When a request is received to store a new application in the first storage unit, the new application is downloaded and stored in the first storage unit. To calculate the maximum usage of the second storage unit used in conjunction with executing the new application, If the calculated maximum usage is greater than a predetermined setting value, the new application is deleted from the first storage unit. On the other hand, if the calculated maximum usage is less than or equal to the setting value, the new application is made executable without being deleted from the first storage unit. Information processing device for vehicles.

2. When the execution unit receives the request, if the application stored in the first storage unit is considered an existing application, When the execution unit calculates the maximum usage of the new application, it stops the execution of all existing applications, executes the new application, and monitors the usage of the second storage unit during the execution of the new application. The vehicle information processing device according to claim 1.

3. The first storage unit stores the maximum amount of the second storage unit used when each of the existing applications is executed. When the amount of the second storage unit used as a result of all the existing applications running in parallel is defined as the maximum total usage, the setting value is determined as the value obtained by subtracting the maximum total usage from a predetermined available amount. When the execution unit makes the new application executable without erasing it from the first storage unit, it stores the maximum usage amount for the new application in the first storage unit in association with the new application. The vehicle information processing device according to claim 2.

4. When the execution unit executes an application, the priority level is set to indicate the priority of continuing the execution of the application, The first storage unit stores the priority level for each of the existing applications. When the execution unit makes the new application executable without erasing it from the first storage unit, it stores the priority level of the new application in the first storage unit in association with the new application. Furthermore, the execution unit, When running multiple applications with different priority levels in parallel, the total usage of the second storage unit by the multiple applications running is obtained, When the total usage exceeds the available amount, the execution of one or more applications with the lowest priority level among the multiple applications currently running is stopped. The vehicle information processing device according to claim 3.

5. When the execution unit executes an application, the priority level is defined as the level indicating the priority of continuing the execution of the application, and when the execution unit receives the request, the application stored in the first storage unit is defined as the existing application. The first storage unit stores the priority level for each of the existing applications. When the execution unit makes the new application executable without erasing it from the first storage unit, it stores the priority level of the new application in the first storage unit in association with the new application. Furthermore, the execution unit, To obtain the charge level of the battery that supplies power to the information processing device for the vehicle, When multiple applications with different priority levels are running in parallel, if the battery charge level falls below a predetermined value, the execution of one or more applications with the lowest priority level among the running applications will be stopped. The vehicle information processing device according to claim 1.

Citation Information

Patent Citations

  • On-vehicle system and method for managing resource in the system

    JP2007058412A

  • Information processing apparatus, control method, control program, and recording medium

    JP2012185704A

  • Information processing device, server device, application program management method, and program

    JP2015026120A

  • Computer device, control method, and program

    JP2017090969A

  • System and method for a communication terminal to manage memory and maintain a current application version for multiple applications

    US20020104097A1