Information processing device for vehicle
The vehicle information processing device addresses the challenge of adding new applications by calculating and managing RAM usage, ensuring that new applications do not hinder existing application execution, thus maintaining device stability and performance.
Patent Information
- Application Number
- JP2023163692
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-26
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2043-09-26
AI Technical Summary
Existing information processing devices for vehicles face challenges when new applications are added without considering the device's specifications, leading to potential hindrances in the execution of existing applications.
The vehicle information processing device includes an execution unit, a first storage unit for applications, and a second storage unit for temporary data. When a new application is requested, the device downloads and stores it, calculates the maximum RAM usage, and if it exceeds a predetermined setting value, the new application is erased to prevent execution issues.
This solution prevents obstacles to the execution of each application by ensuring that new applications do not exceed memory limits, thereby maintaining the stability and performance of the information processing device.
Smart Images

Figure 2025054575000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an information processing device for a vehicle. [Background technology]
[0002] The information processing device disclosed in Patent Document 1 stores a plurality of applications. The information processing device is capable of executing the plurality of applications in parallel. When executing the plurality of applications in parallel, the information processing device monitors memory usage accompanying the execution of each application. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2012-185704 A Summary of the Invention [Problem to be solved by the invention]
[0004] In the technology of Patent Document 1, it is sometimes necessary to add a new application to an information processing device. At this time, it is assumed that the new application is added to the information processing device without considering the specifications required for the information processing device to execute the new application. In this case, after the new application is added, there is a risk that the execution of each application will be hindered. [Means for solving the problem]
[0005] An information processing device for a vehicle to solve the above problem includes an execution unit, a first memory unit that stores applications that can be executed by the execution unit, and a second memory unit that temporarily stores data generated as the execution unit executes the applications, wherein when the execution unit receives a request to store a new application in the first memory unit, the execution unit downloads the new application and stores the new application in the first memory unit, calculates a maximum usage of the second memory unit that will be used as the new application is executed, and if the calculated maximum usage is greater than a predetermined set value, deletes the new application from the first memory unit, while if the calculated maximum usage is equal to or less than the set value, makes the new application executable without deleting it from the first memory unit. Effect of the Invention
[0006] According to the above technical concept, when a new application is added and executed, it is possible to prevent the execution of each application from being hindered. [Brief description of the drawings]
[0007] [Figure 1] FIG. 1 is a schematic diagram of a vehicle. [Diagram 2] FIG. 2 is a flowchart showing the procedure of the addition process. [Diagram 3] FIG. 3 is a flowchart showing the procedure of the stop process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] Hereinafter, an embodiment of an information processing device for a vehicle will be described with reference to the drawings. In this embodiment, the information processing device for a vehicle is applied to an electric vehicle as an example. <Overall vehicle configuration> As shown in FIG. 1, the vehicle 100 includes an information processing device 10. The information processing device 10 includes a CPU 11, a storage 13, a RAM 15, and a communication module 17. The CPU 11 constitutes an execution unit. The storage 13 is an electrically rewritable non-volatile memory. The storage 13 constitutes a first storage unit. The RAM 15 is a volatile memory. The RAM 15 constitutes a second storage unit. The communication module 17 is a communication circuit for wirelessly communicating with the outside via an external communication line network. The CPU 11, the storage 13, the RAM 15, and the communication module 17 can communicate with each other via an internal bus 19.
[0009] The vehicle 100 is equipped with a plurality of specific control devices 90. In FIG. 1, two of the plurality of specific control devices 90 are shown as representatives. Each specific control device 90 is an electronic control device that controls a specific one of the plurality of in-vehicle devices. One of the plurality of in-vehicle devices is a motor 50 for driving the vehicle 100. One of the plurality of in-vehicle devices is a display 80, which will be described later. Other examples of the in-vehicle devices include a brake device, an air conditioning device, a meter display device, and a converter 65, which will be described later. Each specific control device 90 is capable of communicating with the information processing device 10 via an external bus 95.
[0010] The vehicle 100 includes a display 80. The display 80 is located inside the vehicle cabin. The display 80 is controlled by a specific control device 90 that receives a command signal from the information processing device 10. The display 80 can display various information. As described 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, the display 80 and the information processing device 10 may be described as directly transmitting and receiving information. The display 80 is a so-called touch panel type. In other words, the display 80 also functions as an input device that accepts input of information from the outside. The display 80 transmits information input from the outside to the information processing device 10.
[0011] The vehicle 100 includes an electric power supply system. The electric power supply system includes a driving battery 61, an auxiliary battery 63, a converter 65, a connector 67, a first battery sensor 71, and a second battery sensor 73.
[0012] The connector 67 is capable of connecting to an external power source 300 of the vehicle 100. The driving battery 61 is a secondary battery. The driving battery 61 is a high-voltage battery for propelling the vehicle 100. The driving battery 61 is connected to the connector 67. The driving battery 61 receives power from the external power source 300 via the connector 67. The driving battery 61 supplies power to the motor 50 for propulsion.
[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 driving battery 61. The auxiliary battery 63 is connected to the driving battery 61 via a converter 65. The auxiliary battery 63 supplies power to the auxiliary devices of the vehicle 100. The auxiliary devices of the vehicle 100 include the information processing device 10, each specific control device 90, a display 80, various switches, various sensors, and the like.
[0014] The converter 65 steps down the output voltage from the driving 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 driving battery 61.
[0015] The first battery sensor 71 detects first battery information Y1 such as the temperature, voltage, and current of the driving battery 61 at a predetermined control period. Then, the first battery sensor 71 outputs the first battery information Y1 detected by itself to the information processing device 10 every time the first battery sensor 71 detects the first battery information Y1.
[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 period. Then, the second battery sensor 73 outputs the second battery information Y2 detected by itself to the information processing device 10 every time the second battery sensor 73 detects the second battery information Y2.
[0017] The vehicle 100 includes a start switch 40. The start switch 40 is a switch that allows a user to instruct the start of the vehicle 100. The start switch 40 outputs a signal G to the information processing device 10 in response to an on / off operation by the user.
[0018] <Details of the information processing device> Storage 13 prestores a plurality of applications and various data required for executing each application. The applications are, for example, various programs for controlling and managing various parts of vehicle 100. Each application stored in storage 13 is in a state in which activation, which will be described later, has been completed. CPU 11 can execute each application stored in storage 13. RAM 15 temporarily stores data generated as CPU 11 executes an application. CPU 11 appropriately executes each application as necessary. CPU 11 may also execute multiple applications in parallel. When an application is executed, CPU 11 realizes various required processes by outputting a command signal to each specific control device 90.
[0019] Various types of incidental information are attached to an application. The fact that incidental information is attached means that incidental information that is not directly related to the execution of the program is described in addition to the main source code that is essential for the execution of the program. One example of incidental information is an application identification value assigned to each application. Another example of incidental information is the priority level of each application. The incidental information such as the application identification value and the priority level is attached to the application in advance before the application is implemented in the vehicle 100. Note that, as will be described in the additional processing described later, the CPU 11 may additionally attach incidental information to an application stored in the storage 13.
[0020] The priority level is a level indicating the priority of continuing execution of an application when the CPU 11 executes the application. The higher the priority level, the higher the priority of continuing execution of the application. In this embodiment, three priority levels are set. An application at level 3, which is the highest priority level, is an application that controls the running of the vehicle 100, for example, driving the vehicle 100 autonomously. An application at level 2, which is an intermediate level, is an application that provides the user with information on running, for example, operating a navigation system. An application at level 1, which is the lowest priority level, is an application other than the applications at levels 2 and 3, for example, providing entertainment information to the user.
[0021] <Additional processing> The CPU 11 can execute an addition process. The addition process is a process for adding a new application to the storage 13. As will be described later, the CPU 11 stops the execution of all existing applications during the addition process. Therefore, during the addition process, the vehicle 100 cannot be controlled through the execution of the application. In relation to this, when the CPU 11 receives information from the user via the display 80 that the user wishes to add a new application, the CPU 11 displays on the display 80 a message that all existing applications cannot be executed during the addition process. In response to the user's permission operation in response to this display, the display 80 transmits an installation request signal. The installation request signal is a signal that requests that the storage 13 store a new application. When the CPU 11 receives the installation request signal from the display 80, the CPU 11 starts the addition process.
[0022] As shown in FIG. 2, when the CPU 11 starts the addition process, it first executes the process of step S100. In step S100, the CPU 11 downloads a new application and stores the downloaded new application in the storage 13. After this, the CPU 11 advances the process to step S110. Note that when the process of step S100 is completed, the new application has not yet been enabled. Note that "enabling" here means making the application executable. However, even if the application is not enabled, it is possible to execute the application virtually without the operation of the in-vehicle device. Executing the application virtually in this way is hereinafter referred to as test execution.
[0023] In step S110, CPU 11 stops the execution of all existing applications except for the application for executing the additional process. The existing applications are applications stored in storage 13 at the time when CPU 11 receives the installation request signal. The existing applications can also be said to be applications that are currently enabled. Regarding the process of step S110, CPU 11 maintains the state of existing applications that are in a non-executing state at the time when the process proceeds to step S100. After completing the process of step S110, CPU 11 proceeds to the process of step S120.
[0024] In step S120, the CPU 11 performs a test run of the new application. In the test run, the CPU 11 executes the new application for a predetermined time and monitors the usage of the RAM 15 during the execution of the new application. The way in which the new application is executed in the test run is the same as when the application is executed in normal mode. However, the test run differs from the normal execution state in that the usage of the RAM 15 is monitored and the application is executed under virtualization. Specifically, monitoring the usage of the RAM 15 means repeatedly acquiring the usage of the RAM 15 at each timing associated with the execution of the new application. In the test run, when the CPU 11 acquires the usage of the RAM 15, the CPU 11 stores the acquired usage of the RAM 15 in the RAM 15 over time. Hereinafter, the time series of the usage of the RAM 15 acquired in the test run is referred to as a test time series.
[0025] However, when an application is continued to be executed, the amount of RAM 15 used in association with the execution of the application increases or decreases. The above-mentioned predetermined time is determined so as to capture the maximum amount of RAM 15 usage that may occur during such an increase or decrease. Specifically, the predetermined time is determined in advance through experiments or the like as a length of time sufficient to capture a series of fluctuations in the amount of RAM 15 usage when the application is executed, including the maximum and minimum amounts of the amount of RAM 15 usage used in association with the execution of the application. When the CPU 11 finishes the test execution, the process proceeds to step S130.
[0026] In step S130, CPU 11 calculates the maximum usage of RAM 15 that will be used when the new application is executed. Specifically, CPU 11 refers to the test time series obtained in step S120. CPU 11 then identifies the maximum value in the test time series as the maximum usage. After this, CPU 11 advances the process to step S140.
[0027] In step S140, the CPU 11 determines whether the maximum usage calculated in step S130 is equal to or less than a set value. As a specific process of step S140, the CPU 11 first calculates the maximum total usage that is the premise of the set value. The maximum total usage is the usage of the 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 usage of the RAM 15 used in executing one application is called the application usage. The usage list is a list of first data sets, each of which corresponds to one application and the application usage corresponding to the application, arranged for all existing applications. That is, the usage list describes the application usage for each existing application. For example, in the usage list, the existing applications are represented by application identification values. The usage list currently stored in the storage 13 is obtained by adding the above-mentioned first data set every time a new application is added to the initial data of the usage list stored in the storage 13 at the time of shipping the vehicle 100 from the factory. The CPU 11 refers to this usage list and calculates the total of all application usages in the usage list as the maximum total usage. After calculating the maximum total usage, the CPU 11 calculates a set value. The set value is predetermined as a value obtained by subtracting the maximum total usage from the available amount. The available amount is predetermined as a value slightly smaller than the maximum storage capacity that can be used by the RAM 15 without causing the storage area of the RAM 15 to become tight. The storage 13 stores the available amount in advance. After calculating the set value, the CPU 11 compares the maximum usage calculated in step S130 with the set value. If the maximum usage is greater than the set value (step S140: NO), the CPU 11 advances the process 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. Note that, in relation to the process of step S170, the CPU 11 may set the memory cell group into which the new application is 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 this step S170 is not limited to completely erasing the new application. After completing the process of step S170, the CPU 11 ends the series of processes of the addition process. At this time, the CPU 11 may notify the user through the display 80 that it is currently impossible to add the new application to the storage 13.
[0029] On the other hand, in step S140, if the maximum usage is equal to or less than the set value (step S140: YES), CPU 11 advances the process to step S150. In step S150, CPU 11 enables the new application. This enabling process makes the new application executable. In this embodiment, enabling is performed by attaching an enable flag to the new application as additional information. The enable flag indicates that the application has been approved for addition to storage 13 and may be executed by CPU 11 as necessary. In this way, in step S150, CPU 11 makes the new application executable without erasing it. After enabling the new application, CPU 11 advances the process to step S160.
[0030] In step S160, the CPU 11 stores a plurality of pieces of necessary information in the storage 13. One of the pieces of necessary information is the maximum usage of the new application calculated in step S130. When storing the maximum usage of the new application in the storage 13, the CPU 11 performs the following. That is, the CPU 11 adds the maximum usage of the new application to the usage list in association with the new application. One of the pieces 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 in which second data sets, in which one application is associated with a priority level corresponding to the application, are arranged for all existing applications. That is, the priority list describes the priority level for each of all existing applications. For example, in the priority list, the existing applications are represented by application identification values. The priority list currently stored in storage 13 is obtained by adding the above-mentioned second data set to the initial data of the priority list stored in storage 13 at the time of shipping vehicle 100 from the factory, every time a new application is added. When storing the priority level of a new application in storage 13, CPU 11 performs the following. That is, CPU 11 reads out the priority level attached to the new application as incidental information. Then, CPU 11 adds the priority level of the new application to the priority list in association with the new application. When CPU 11 stores the maximum usage amount and priority level of the new application in storage 13, the series of processes of the addition process is terminated. When CPU 11 terminates the addition process through the processes of steps S150 and S160, the new application becomes one of the existing applications.
[0031] <Stop process> The CPU 11 can execute the stop process. As described above, the CPU 11 executes each existing application stored in the storage 13 as necessary. The stop process is a process for stopping an application being executed in relation to the usage amount of the RAM 15 or the charging rate SOC of the auxiliary battery 63. The CPU 11 executes the stop process when a predetermined necessary condition is satisfied. The necessary condition may be that the CPU 11 is executing multiple applications with different priority levels in parallel. While this necessary condition is satisfied, the CPU 11 repeats the stop process described below.
[0032] As a prerequisite for performing the stop process, if a necessary condition is satisfied, the CPU 11 repeatedly acquires the total usage of the RAM 15 at each timing by a plurality of applications currently being executed.
[0033] In addition, as a precondition for performing the stop process, the CPU 11 repeatedly calculates the charging rate SOC of the auxiliary battery 63. The CPU 11 calculating the charging rate SOC of the auxiliary battery 63 corresponds to the CPU 11 acquiring the charging rate SOC of the auxiliary battery 63. The charging rate SOC of the auxiliary battery 63 is a 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 power that the auxiliary battery 63 can store. The CPU 11 calculates the full charge capacity of the auxiliary battery 63, for example, based on the temperature and voltage of the auxiliary battery 63. The CPU 11 calculates the remaining capacity of the auxiliary battery 63, for example, based on the voltage and current of the auxiliary battery 63. The CPU 11 repeatedly calculates the charging rate of the driving battery 61 in a manner similar to that for calculating the charging rate SOC of the auxiliary battery 63. That is, the CPU 11 calculates the charging rate of the driving battery 61, based on the temperature, voltage, and current of the driving battery 61.
[0034] 3, when the CPU 11 starts the stop process, it first performs the process of step S200. In step S200, the CPU 11 determines whether or not the total amount of RAM 15 currently in use is greater than the available amount. If the total amount of RAM 15 in use is greater than the available amount (step S200: YES), the CPU 11 advances the process to step S220. The process of step S220 will be described later.
[0035] On the other hand, if the total usage amount is equal to or less than the available amount (step S200: NO), the CPU 11 advances the process to step S210. Then, in step S210, the CPU 11 determines whether or not the charging rate SOC of the auxiliary battery 63 is equal to or less than a predetermined value. The predetermined value will be described. For example, when the charging rate of the driving battery 61 is low, the CPU 11 controls the power supply system to extend the cruising distance of the vehicle 100 by supplying power from the auxiliary battery 63 to the driving battery 61. In this regard, the predetermined value is previously determined as the following value. That is, the predetermined value is determined by experiments or the like as the charging rate SOC at which it is necessary to start a procedure to reduce the power supply to the auxiliary devices in order to ensure a certain degree of cruising distance. The storage 13 stores the predetermined value in advance. In step S210, if the charging rate SOC of the auxiliary battery 63 is greater than the predetermined value (step S210: NO), the CPU 11 ends the series of processes of the stop process. In this case, the CPU 11 executes the process of step S200 again on condition that the necessary conditions are satisfied.
[0036] On the other hand, if the charging rate SOC of the auxiliary battery 63 is equal to or lower than the predetermined value (step S210: YES), the CPU 11 advances the process 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 being executed. For example, if the multiple applications being executed include an application with level 1, the CPU 11 identifies the application with level 1. For example, if the multiple applications being executed do not include an application with level 1, the CPU 11 identifies an application with level 2. If there are multiple applications with the lowest priority level among the multiple applications being executed, the CPU 11 identifies all of them. When the application with the lowest priority level is identified, the CPU 11 stops the execution of all the identified applications. After this, the CPU 11 ends the series of processes of the stop process. Then, the CPU 11 executes the process of step S200 again on the condition that the necessary conditions are satisfied.
[0037] <Operation of the embodiment> In the addition process, prior to enabling the new application, the CPU 11 grasps the maximum usage of the RAM 15 to be used by the new application (step S130). Then, the CPU 11 determines whether to enable the new application (steps S140, S150, and S170).
[0038] <Effects of the embodiment> (1) As described in the above embodiment, the CPU 11 of the present embodiment checks the maximum usage of a new application before enabling the new application. With this configuration, when the CPU 11 executes the application after the application is enabled, it is possible to prevent problems with the execution of each application, such as the memory area of the RAM 15 becoming full.
[0039] (2) In the addition process, the CPU 11 executes a new application while stopping the execution of the existing application, and calculates the maximum usage of the new application. The advantages of this will be explained. Here, when calculating the maximum usage of a new application, it is assumed that the CPU 11 executes the new application while continuing the execution of the existing application. In this case, the CPU 11 executes multiple applications in parallel. In this case, if the usage of the RAM 15 by these applications executed in parallel increases, the storage area of the RAM 15 may become tight. In addition, the RAM 15 may not be able to store the generated data accompanying the execution of the existing application. In this case, the execution of the existing application may be hindered.
[0040] In this regard, when the CPU 11 of the present embodiment calculates the maximum usage amount of a new application, it executes the new application in a state where the execution of the existing application is stopped, so that there is no effect on the processing related to the execution of the existing application.
[0041] (3) When the CPU 11 of this embodiment enables a new application, it adds the maximum usage of the application to the usage list. In this way, by updating the usage list every time a new application is enabled, the CPU 11 can always grasp the maximum usage of each application currently stored in the storage 13, and further the maximum total usage, which is the total of the applications. Here, in this embodiment, in order to obtain the effect of (2) above, when calculating the maximum usage of the new application, the execution of all existing applications is stopped. Even under a situation in which the execution of all existing applications is stopped, the configuration of this embodiment allows the CPU 11 to reliably grasp the maximum total usage. Then, when the maximum total usage can be grasped, a value obtained by subtracting the maximum total usage from the available amount can be set as a setting value. If the maximum usage of the new application is equal to or less than this setting value, even if a situation arises in which all applications stored in the storage 13 are executed in parallel after the new application is enabled, the total usage of the RAM 15 accompanying the execution of all these applications will be equal to or less than the available amount. Therefore, the CPU 11 can execute all applications in parallel without causing the storage area of the RAM 15 to become tight.
[0042] (4) The amount of RAM 15 used by the execution of a certain application may exceed the maximum amount of RAM used that was confirmed in advance due to some factor. In relation to this, the following may occur. That is, when CPU 11 executes multiple applications in parallel, the total amount of RAM 15 used may exceed the available amount. If CPU 11 continues to execute multiple applications in this situation, the execution of each application may be hindered.
[0043] In this regard, the CPU 11 of this embodiment stops the execution of the application with the lowest priority when the total usage of the RAM 15 due to the execution of multiple applications exceeds the available amount. Therefore, even in the above-mentioned situation, the CPU 11 can secure a memory area of the RAM 15 that can be used by the application with the higher priority. Therefore, in the configuration of this embodiment, the execution of the application with the higher priority 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 being used. If the CPU 11 continues to execute multiple applications in this situation, it may not be possible to ensure the cruising distance in an emergency.
[0045] In this regard, when the charging rate SOC of the auxiliary battery 63 falls below a predetermined value, the CPU 11 of the present embodiment stops the application with the lowest priority among the applications being executed. Therefore, the CPU 11 can continue the execution of the application with the higher priority while ensuring the cruising distance in an emergency.
[0046] <Example of change> The above embodiment can be modified as follows: The above embodiment and the following modifications can be combined with each other to the extent that no technical contradiction occurs.
[0047] Regarding the process of step S220 of the stop process, if there are multiple applications with the lowest priority level among the multiple running applications, it is not essential to stop the execution of all of these applications. The CPU 11 may stop one or more applications with the lowest priority level among the multiple running applications.
[0048] It can be said that the driving battery 61 supplies power to the information processing device 10 via the auxiliary battery 63. In step S210 of the stop processing, the charging rate of the driving battery 61 may be compared with a predetermined value. In this case, the predetermined value may be set to an appropriate value for the driving battery 61. That is, the method of determining the predetermined value is not limited to the example of the above embodiment. In addition, in step S210, the determination may be made taking into account both the charging rate SOC of the auxiliary battery 63 and the charging rate of the driving battery 61.
[0049] It is not essential to determine whether to stop the execution of an application depending on the battery charge rate. It is not essential to determine whether or not an application should be stopped depending on the total amount of RAM 15 used by multiple applications.
[0050] The following manner may be adopted when deciding whether to stop the execution of an application. Suppose that the amount of RAM 15 used by an application during execution exceeds the maximum amount of usage found by test execution. At this time, the execution of the application may be stopped. In other words, the decision to stop the execution of each application may be made in relation to the maximum amount of usage of the application.
[0051] The number of priority levels is not limited to that in the above embodiment, and any number of priority levels may be set as necessary. It is not necessary to define priority levels.
[0052] The set value is not limited to the example in the above embodiment. For example, the storage capacity of the storage 13 to be allocated to each application may be determined in advance, and the value may be used as the set value.
[0053] When the above-described modified example is adopted as the setting value, the maximum usage amount of the new application does not need to be stored in the storage 13 in the addition process. When calculating the maximum usage of a new application in the addition process, it is not necessary to stop the execution of all existing applications. Only some of the existing applications may be stopped, or stopping the execution of existing applications may not be taken into consideration at all.
[0054] The mode of validation is not limited to the above embodiment. For example, the storage 13 is provided with an approval area, which is a dedicated storage area for storing applications approved for addition to the storage 13. 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, the movement of the new application to the dedicated storage area may be considered as validation. Also, for example, an approval list that lists applications approved for addition to the storage 13 is prepared in advance. Then, the addition of the app identification value of the new application to such an approval list may be considered as validation. It is sufficient that the new application can be made executable through validation without being deleted from the storage 13.
[0055] As described in the above embodiment, the new application may not be completely erased in the process of step S170. In this case, the following becomes possible. For example, suppose that an application other than the new application stored in the storage 13 is erased, increasing the free space of the storage 13. Then, suppose that the addition of the new application, the addition of which was postponed, to the storage 13 is requested again. At this time, if the storage 13 still stores 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 of step S100 can be skipped and the process can start from step S110.
[0056] The vehicle to which the information processing device 10 is applied is not limited to an electric vehicle. For example, the vehicle to which the information processing device 10 is applied may be a hybrid vehicle or an engine vehicle. [Explanation of symbols]
[0057] 10...information processing device 11...CPU 13...storage 15...RAM 63...auxiliary battery 100...vehicle
Claims
1. The executive department, a first storage unit that stores an application executable by the execution unit; a second storage unit that temporarily stores data generated as the execution unit executes the application; The execution unit is when a request to store a new application in the first storage unit is received, downloading the new application and storing the new application in the first storage unit; calculating a maximum usage amount of the second storage unit that is used in association with the execution of the new application; When the calculated maximum usage amount is greater than a predetermined set value, the new application is deleted from the first storage unit, whereas when the calculated maximum usage amount is equal to or less than the set value, the new application is made executable without being deleted from the first storage unit. An information processing device for a vehicle.
2. When the application stored in the first storage unit at the time when the execution unit accepts the request is an existing application, When calculating the maximum usage amount of the new application, the execution unit executes the new application in a state where execution of all of the existing applications is stopped, and monitors the usage amount 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, for each of the existing applications, a maximum usage amount of the second storage unit that is used in association with the execution of each of the existing applications; when a usage amount of the second storage unit used in association with the parallel execution of all of the existing applications is defined as a maximum total usage amount, the set value is defined as a value obtained by subtracting the maximum total usage amount from a predetermined usable amount, When the execution unit makes the new application executable without deleting it from the first storage unit, the execution unit 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, a level indicating a priority of continuing the execution of the application is set as a priority level. the first storage unit stores the priority level for each of the existing applications; When the execution unit makes the new application executable without deleting the new application from the first storage unit, the execution unit stores the priority level of the new application in the first storage unit in association with the new application; Furthermore, the execution unit When the plurality of applications having different priority levels are executed in parallel, acquiring a total usage amount of the second storage unit by the plurality of applications being executed; when the total usage amount becomes greater than the available amount, stopping the execution of one or more applications having the lowest priority level among the plurality of applications being executed. The vehicle information processing device according to claim 3 .
5. a priority level is a level indicating a priority of continuing the execution of an application when the execution unit executes the application, and the application stored in the first storage unit at the time when the execution unit accepts the request is an 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 deleting the new application from the first storage unit, the execution unit stores the priority level of the new application in the first storage unit in association with the new application; Furthermore, the execution unit acquiring a charging rate of a battery that supplies power to an information processing device for the vehicle; When a plurality of applications with different priority levels are executed in parallel, when a charging rate of the battery becomes equal to or lower than a predetermined value, the execution of one or more applications having the lowest priority level among the plurality of applications being executed is 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 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
Information processing apparatus, control method, control program, and recording medium
JP2012185704A