CN115145605A - Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium - Google Patents

Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium Download PDF

Info

Publication number
CN115145605A
CN115145605A CN202210861699.5A CN202210861699A CN115145605A CN 115145605 A CN115145605 A CN 115145605A CN 202210861699 A CN202210861699 A CN 202210861699A CN 115145605 A CN115145605 A CN 115145605A
Authority
CN
China
Prior art keywords
software
task
upgrading
software upgrading
vehicle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210861699.5A
Other languages
Chinese (zh)
Inventor
潘毅
文勇
刘平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Changan Automobile Co Ltd
Original Assignee
Chongqing Changan Automobile Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing Changan Automobile Co Ltd filed Critical Chongqing Changan Automobile Co Ltd
Priority to CN202210861699.5A priority Critical patent/CN115145605A/en
Publication of CN115145605A publication Critical patent/CN115145605A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The application provides a vehicle-mounted application software upgrading method, a system, electronic equipment and a storage medium, wherein the method comprises the following steps: acquiring a task file; analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises at least one software upgrading task; the software upgrading task is to upgrade the appointed application software, or upgrade the appointed component of any application software; pre-dependence checking is carried out on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependence checking is used for judging whether the plurality of software to be upgraded meet a preset dependence relationship after being upgraded; if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed; and executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule. The method of the invention can better improve the granularity of the application software upgrading and avoid the abnormity of the dependency relationship among different software in the software upgrading process.

Description

Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium
Technical Field
The application relates to the technical field of vehicle-mounted systems, in particular to a method and a system for upgrading vehicle-mounted application software, electronic equipment and a storage medium.
Background
With the development of the intelligent automobile technology, the vehicle-mounted system is also continuously upgraded and iterated. Currently, a common vehicle-mounted system includes: a QNX (Blackberry QNX Neutrino, microkernel operating system) system, and the like. The QNX system is widely applied to the fields of automobile electronics and the like based on the characteristics of quick response and high stability.
For software upgrade of the QNX system, currently, a method of individually upgrading application software in the system is generally adopted, however, each application software in such an upgrade method is not detachable, which results in poor granularity of application software upgrade, for example: the requirement for individual upgrading of a certain component of the application software cannot be well met. Moreover, because the dependency relationship usually exists between the application software of the vehicle-mounted system, the above manner fails to take the dependency relationship between the application software into account well, which may cause the dependency relationship of multiple application software under different versions to have problems, resulting in potential safety hazards.
Disclosure of Invention
In view of the above drawbacks of the prior art, the present invention provides a method, a system, an electronic device and a storage medium for upgrading vehicle-mounted application software, so as to solve the above technical problems.
The invention provides a vehicle-mounted application software upgrading method, which comprises the following steps:
acquiring a task file;
analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task comprises the following steps: upgrading the designated application software, or upgrading the designated components of any application software;
performing pre-dependency check on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependency check is used for judging whether the plurality of software to be upgraded meet a preset dependency relationship after being upgraded;
if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed;
and according to a preset task execution rule, executing the software upgrading tasks in the task queue to be executed, and finishing the upgrading of the vehicle-mounted application software.
In an embodiment of the present invention, the step of obtaining the task file includes:
receiving a version query instruction sent by an external module;
feeding back current software version information according to the version query instruction, wherein the current software version information is used as the external module to determine the software information to be upgraded and generate a task file; and further acquiring the task file.
In an embodiment of the present invention, the step of parsing the task file according to a preset parsing rule includes:
acquiring a software upgrading package, wherein the software upgrading package is associated with the task file;
according to a preset verification rule, verifying the task file and the software upgrading package to obtain a verification result;
if the verification result is that the verification is passed, performing upgrade condition detection on the current software system, wherein the upgrade condition detection comprises the following steps: detecting the working state of the system and the storage space of the system, wherein the software system is a vehicle-mounted system;
and if the upgrade condition is detected to be passed, analyzing the task file according to the analysis rule to obtain a task list.
In an embodiment of the present invention, the step of determining whether the plurality of pieces of software to be upgraded satisfy the preset dependency relationship after being upgraded includes:
extracting dependency configuration information from the task file;
and judging whether the plurality of pieces of software to be upgraded meet the dependency relationship after upgrading according to the dependency relationship configuration information and the version information of the plurality of pieces of software to be upgraded.
In an embodiment of the present invention, the step of executing the software upgrade task in the to-be-executed task queue according to a preset task execution rule includes:
sequentially adding the software upgrading tasks in the task queue to be executed into a preset execution task queue, wherein the execution task queue comprises: at least one task execution process, the at least one task execution process running in parallel;
processing the software upgrading tasks in the execution task queue according to the acquired software upgrading packet corresponding to the software upgrading task;
wherein, the step of processing the software upgrading task in the execution task queue at least comprises one of the following steps: software update, software installation, and software uninstallation.
In an embodiment of the present invention, after the step of executing the software upgrading task in the task queue to be executed according to a preset task execution rule, the step includes:
when the updating operation, the installing operation or the uninstalling operation in the software upgrading task is finished, updating the version information of the corresponding software to be upgraded and judging whether the software upgrading task is finished or not;
if the software upgrading task is finished, putting the software upgrading task into a preset task finishing queue;
judging whether all software upgrading tasks in the task list are finished or not according to the software upgrading tasks in the task completion queue;
if all software upgrading tasks in the task list are finished, judging whether the current software starting item configuration needs to be modified according to a preset software starting configuration modification rule, and obtaining a judgment result;
modifying the current software startup item configuration according to the judgment result;
and restarting the current software system, or pulling up the upgraded application software to finish the vehicle-mounted application software upgrade.
In an embodiment of the present invention, the step of determining whether the current software startup item configuration needs to be modified according to a preset software startup configuration modification rule includes:
judging whether a software upgrading object of the software upgrading task is appointed application software or an appointed component of the application software;
if the software upgrading object is the appointed component of the application software, the configuration of the software starting item is not modified;
if the software upgrading object is the designated application software, judging that the upgrading operation attribute of the corresponding software upgrading task is software updating, software installation or software unloading;
if the upgrade operation attribute is software update, the configuration of the software startup item is not modified, and if the upgrade operation attribute is software installation or software uninstallation, the configuration of the corresponding software startup item is modified.
The invention also provides a vehicle-mounted application software upgrading system, which comprises:
the service management module is used for acquiring the task file;
the task management module is used for analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task comprises the following steps: upgrading the designated application software, or upgrading the designated components of any application software;
the condition detection module is used for carrying out pre-dependence check on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependence check is used for judging whether a plurality of pieces of software to be upgraded meet a preset dependence relationship after being upgraded; if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed;
and the task execution module is used for executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule so as to finish the upgrading of the vehicle-mounted application software.
The present invention also provides an electronic device, including:
one or more processors;
a storage device for storing one or more programs which, when executed by the one or more processors, cause the electronic device to implement the in-vehicle application software upgrade method as claimed in any one of the above.
The present invention also provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor of a computer, causes the computer to execute the in-vehicle application software upgrade method as set forth in any one of the above.
The invention has the beneficial effects that: the vehicle-mounted application software upgrading method, the vehicle-mounted application software upgrading system, the electronic equipment and the storage medium are used for upgrading the vehicle-mounted application software by acquiring the task file; analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task is as follows: the method and the device have the advantages that the specific application software is upgraded, or specific components of any application software are upgraded, so that the granularity of upgrading the application software is improved, the whole software upgrading is supported, a certain component of the software is also independently upgraded, and the efficiency of upgrading the vehicle-mounted application software is improved. Moreover, pre-dependence check is carried out on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependence check is used for judging whether the plurality of pieces of software to be upgraded meet a preset dependence relationship after being upgraded; if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed; and executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule, so that the abnormity of the dependence relationship among different software in the software upgrading process is avoided, the upgrading safety of the vehicle-mounted application software is improved, and the flexibility is higher.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and, together with the description, serve to explain the principles of the application. It is obvious that the drawings in the following description are only some embodiments of the application, and that for a person skilled in the art, other drawings can be derived from them without inventive effort. In the drawings:
FIG. 1 is a schematic diagram illustrating information interaction during an in-vehicle software upgrade process according to an exemplary embodiment of the present application;
FIG. 2 is a flowchart illustrating a method for upgrading in-vehicle application software according to an exemplary embodiment of the present application;
fig. 3 is a schematic flowchart illustrating a task file acquisition process in a vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application;
FIG. 4 is a flowchart illustrating a verification and condition detection step in a vehicle application software upgrading method according to an exemplary embodiment of the present application;
FIG. 5 is a schematic flow chart illustrating pre-dependency checking in a vehicle application software upgrade method according to an exemplary embodiment of the present application;
FIG. 6 is a flowchart illustrating a software upgrading task to be executed in the vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application;
FIG. 7 is a flowchart illustrating a vehicle-mounted application software upgrading method after completing a software upgrading task according to an exemplary embodiment of the present application;
FIG. 8 is a flowchart illustrating a method for upgrading application software in a vehicle according to an exemplary embodiment of the present application, where the method determines whether a current configuration of a software launching item needs to be modified;
FIG. 9 is a block diagram illustrating an in-vehicle application software upgrade system according to an exemplary embodiment of the present application;
FIG. 10 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present application.
Detailed Description
Other advantages and effects of the present invention will become apparent to those skilled in the art from the disclosure of the present specification, wherein the following description is made for the embodiments of the present invention with reference to the accompanying drawings and the preferred embodiments. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. It should be understood that the preferred embodiments are illustrative of the invention only and are not limiting upon the scope of the invention.
It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present invention, and the components related to the present invention are only shown in the drawings rather than drawn according to the number, shape and size of the components in actual implementation, and the type, quantity and proportion of the components in actual implementation may be changed freely, and the layout of the components may be more complicated.
In the following description, numerous details are set forth to provide a more thorough explanation of embodiments of the present invention, however, it will be apparent to one skilled in the art that embodiments of the present invention may be practiced without these specific details, and in other embodiments, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring embodiments of the present invention.
It should be noted that, in 1981, the QNX system was developed by Blackberry (canada) as a real-time embedded operating system. The system adopts a micro-kernel structure, and the address space is isolated, so that the error of any one part can not affect other parts and kernels, and the recovery can be automatically restarted; moreover, the QNX system kernel is simplified, the operation is extremely fast, and the QNX system kernel can be arbitrarily cut into a minimum scheme suitable for the QNX system kernel; moreover, the QNX system can call the system module immediately according to the user instruction, and the characteristics of multitasking and real-time performance are not lost, so that the high-priority task can be always completed on time no matter what the system load is. Therefore, the QNX system is widely used in the fields of communications, medical care, automotive electronics, and the like. The final QNX system adopted by the vehicle-mounted terminal is not developed iteratively, so that the system does not have a function of newly adding, updating or uninstalling application software, and if the application software needs to be changed, the whole system needs to be upgraded at the same time, and the system expansion performance is poor. At present, for software upgrading of a QNX system, a mode of independently upgrading application software in the system is generally adopted, however, each application software in the upgrading mode cannot be split, so that the granularity of upgrading the application software is poor, and the dependency relationship among the application software cannot be well considered, so that the problem of the dependency relationship of vehicle-mounted application software under different versions is likely to be caused, and potential safety hazards and the like are generated. Based on the above, the application provides a vehicle-mounted application software upgrading method, a vehicle-mounted application software upgrading system, an electronic device and a storage medium, and the granularity and the efficiency of application software upgrading are improved by upgrading the specified application software in the vehicle-mounted system or upgrading the specified component of any application software. Moreover, the pre-dependency check is carried out on the software to be upgraded corresponding to the software upgrading task, so that the abnormal dependency among different software in the software upgrading process is avoided, and the upgrading safety of the vehicle-mounted application software is effectively improved.
Fig. 1 is a schematic diagram of information interaction in a vehicle-mounted software upgrading process shown in an exemplary embodiment of the present application, as can be seen from fig. 1, an external module 101 is connected to a vehicle-mounted application software upgrading system 102 (a vehicle-mounted system), the vehicle-mounted application software upgrading system 102 receives a version query instruction sent by the external module 101, and feeds back current software version information, that is, local software version information to the external module 101 according to the version query instruction, the external module 101 can generate a task file according to the current software version information, and sends the task file and a corresponding software upgrading package to the vehicle-mounted application software upgrading system 102, and the vehicle-mounted application software upgrading system 102 receives the task file, and performs task file parsing and execution. By using the external module 101 and the vehicle-mounted application software upgrading system 102, the vehicle-mounted application software can be upgraded well, and the flexibility is high.
The external module 101 shown in fig. 1 may be a terminal device such as a tablet computer, a notebook computer, a smart phone, etc., but is not limited thereto. The external module 101 may communicate with the in-vehicle application software upgrade system 102 through a wireless network such as 3G (third generation mobile information technology), 4G (fourth generation mobile information technology), 5G (fifth generation mobile information technology), and the like, which is not limited herein.
Referring to fig. 2, fig. 2 is a schematic flowchart illustrating a vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application. The method can be applied to the implementation environment of the vehicle-mounted software upgrade shown in fig. 1, and is specifically executed by the vehicle-mounted application software upgrade system 102 in the implementation environment. It should be understood that the method may be applied to other exemplary implementation environments and is specifically executed by devices in other implementation environments, and the embodiment does not limit the implementation environment to which the method is applied.
For example, the vehicle-mounted application software upgrading system 102 to which the vehicle-mounted application software upgrading method disclosed in this embodiment is applied may be a QNX system, and by implementing the vehicle-mounted application software upgrading method, the software upgrading granularity of the QNX system can be better improved, and meanwhile, the problem of the dependency relationship between vehicle-mounted application software is avoided, and the safety of vehicle-mounted software upgrading is improved.
As shown in fig. 2, in an exemplary embodiment, the method for upgrading the in-vehicle application software includes steps S201 to S205:
s201: and acquiring the task file. The task file is provided by an external module. The task file specifies all tasks involved in a single upgrade and identifies whether the software upgrade object type is application software or a component of application software, and if so, the application software to which it belongs. The task file sent by the external module is acquired, so that the subsequent analysis and execution of the task file are facilitated, and all tasks included in a single upgrade are specified in the task file and the software upgrade type is marked, so that the software upgrade granularity can be well improved in the subsequent software upgrade process.
S202: analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task comprises the following steps: and upgrading the specified application software, or upgrading the specified component of any application software.
It should be noted that, in the process of parsing the task file, the tasks that are not updated by the software are already filtered, so that the response speed of the subsequent software update is improved. The analysis rule can be set according to actual conditions, and is not described herein again. The task file is analyzed to obtain the task list, so that the corresponding execution of the software upgrading task in the task list can be conveniently performed subsequently.
It should be noted that, in a scenario where the meaning of the operation is not specifically described, the three operations of software updating, installing and uninstalling are collectively referred to as software upgrading in the present application.
S203: and performing pre-dependency check on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependency check is used for judging whether a plurality of pieces of software to be upgraded meet a preset dependency relationship after being upgraded.
It should be mentioned that the current vehicle-mounted system application software is numerous and loaded, and there are many dependencies between different application software, for example: some software functions need to be implemented by calling API (Application Programming Interface) of other software libraries. The automobile is used as a common vehicle for daily travel of people, and safety is the primary factor of the vehicle-mounted system to be considered, so that the dependency relationship among different software in the vehicle-mounted system must be considered for upgrading the vehicle-mounted application software, and unnecessary potential safety hazards caused by the problem of the dependency relationship in the upgrading process of the vehicle-mounted application software are avoided.
By means of pre-dependency check of the software to be upgraded, the stability of the dependency relationship between the software in the upgrading process of the vehicle-mounted application software is guaranteed, the safety of vehicle-mounted software upgrading is improved, and the flexibility is high.
S204: and if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed. The task queue to be executed refers to an upgrading task queue for upgrading the application software, and tasks which are not the application software are filtered during task analysis. All software upgrading tasks are required to be put into a task queue to be executed and then are executed subsequently by adopting a first-in first-out principle, the task execution is parallel, and the parallelism is related to the number of preset task execution processes.
In some embodiments, if any of the software to be upgraded does not satisfy the dependency relationship, the external module is notified and the specific reason for this is notified or sent.
S205: and according to a preset task execution rule, executing the software upgrading tasks in the task queue to be executed, and finishing the upgrading of the vehicle-mounted application software. Through the steps, the upgrading of the vehicle-mounted application software can be well realized, the granularity is high, namely the whole upgrading of the vehicle-mounted application software can be realized, the upgrading of the specified components of the vehicle-mounted application software can also be realized, the safety in the upgrading process of the vehicle-mounted application software can be improved, the software dependence is prevented from being broken down, the flexibility is high, and the cost is low.
Fig. 3 is a schematic flowchart illustrating a task file obtaining process in a vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application. As shown in fig. 3, the step of acquiring the task file includes:
s301: and receiving a version query instruction sent by an external module.
S302: feeding back current software version information according to the version query instruction, wherein the current software version information is used as the external module to determine the software information to be upgraded and generate a task file; and further acquiring the task file. It can be understood that the external module determines which application software needs to be upgraded and which software upgrade packages need to be deployed according to the current software version information, and then generates corresponding task files. The current software version information refers to the current software version information of the vehicle-mounted local.
Fig. 4 is a flowchart illustrating a checking and condition detecting step in a vehicle application software upgrading method according to an exemplary embodiment of the present application. Referring to fig. 4, in an exemplary embodiment, the step of parsing the task file according to a preset parsing rule includes:
s401: and acquiring a software upgrading package, wherein the software upgrading package is associated with the task file. The software upgrade package is sent by an external module.
S402: and verifying the task file and the software upgrading package according to a preset verification rule to obtain a verification result. In the above steps, the task file and the software upgrade package are verified, so that the file source can be ensured, and the integrity of the content can be ensured. The check rule may be set according to actual conditions, for example: the integrity of the file source and the content is checked, etc., and will not be described herein.
S403: if the verification result is that the verification is passed, performing upgrade condition detection on the current software system, wherein the upgrade condition detection comprises the following steps: detecting the working state of the system and the storage space of the system, wherein the software system is a vehicle-mounted system; and if the upgrade condition is detected to be passed, analyzing the task file according to the analysis rule to obtain a task list. And if the upgrade condition detection is not passed, continuing to perform the upgrade condition detection after a specified time interval. It is understood that the vehicle as a vehicle has different operating states, such as: the software upgrading is carried out under the appropriate conditions in the driving state, the dormant state, the fault state and the like, otherwise, certain potential safety hazards may be generated, so that the safety of software upgrading can be ensured and accidents are avoided by detecting the system working state of the current vehicle-mounted system. By detecting the system storage space of the current vehicle-mounted system, the software upgrading can be ensured to have enough storage space. It should be noted that the upgrade condition detection includes, but is not limited to, the above two detection contents, and the specific condition detection contents may be set according to actual situations, and are not limited herein.
Fig. 5 is a schematic flowchart illustrating pre-dependency checking in an in-vehicle application software upgrading method according to an exemplary embodiment of the present application. As shown in fig. 5, in an exemplary embodiment, the step of determining whether the plurality of pieces of software to be upgraded satisfy the preset dependency relationship after being upgraded includes:
s501: and extracting the dependency configuration information from the task file. Specifically, the dependency configuration information is preset in the task file, so that the follow-up pre-dependency check is facilitated.
S502: and judging whether the plurality of pieces of software to be upgraded meet the dependency relationship after upgrading according to the dependency relationship configuration information and the version information of the plurality of pieces of software to be upgraded. The method comprises the steps of assuming that software to be upgraded is upgraded, checking and verifying upgraded software version information and dependency configuration information, judging whether the dependency in the dependency configuration information is met, completing pre-dependency check of the software to be upgraded, and improving the safety of vehicle-mounted software upgrading.
Fig. 6 is a schematic flowchart illustrating a task of performing a software upgrade to be executed in the vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application. Referring to fig. 6, in an exemplary embodiment, the step of executing the software upgrade task in the to-be-executed task queue according to a preset task execution rule includes:
s601: sequentially adding the software upgrading tasks in the task queue to be executed into a preset execution task queue, wherein the execution task queue comprises: at least one task execution process, the at least one task execution process running in parallel. It should be noted that the to-be-executed tasks in the execution task queue are being executed by a certain task execution process, and the to-be-executed tasks in the execution task queue are executed in parallel, so that the efficiency of task execution is improved. Different operations in the same task execution process are executed in series.
S602: processing the software upgrading tasks in the execution task queue according to the acquired software upgrading packet corresponding to the software upgrading task; wherein, the step of processing the software upgrading task in the execution task queue at least comprises one of the following steps: software update, software installation, and software uninstallation.
Fig. 7 is a flowchart illustrating a software upgrading task in a vehicle-mounted application software upgrading method according to an exemplary embodiment of the present application. As shown in fig. 7, in an exemplary embodiment, after the step of executing the software upgrade task in the task queue to be executed according to a preset task execution rule, the step includes:
s701: when the updating operation, the installing operation or the uninstalling operation in the software upgrading task is finished, updating the version information of the corresponding software to be upgraded, and judging whether the software upgrading task is finished, namely judging whether the software upgrading task has software to be installed or uninstalled. If yes, the software upgrading task is continuously executed, and if not, the software upgrading task is completed.
S702: and if the software upgrading task is finished, putting the software upgrading task into a preset task finishing queue. Therefore, the software upgrading tasks in the task completion queue are already executed, and in the software upgrading process, after one software upgrading task is executed, the software upgrading task should be moved into the task completion queue, so that the subsequent statistics on the executed software execution tasks is facilitated, and the situation that the software upgrading tasks in the task list are not completely completed is avoided.
S703: and judging whether all the software upgrading tasks in the task list are finished or not according to the software upgrading tasks in the task completion queue.
S704: if all software upgrading tasks in the task list are finished, judging whether the current software starting item configuration needs to be modified according to a preset software starting configuration modification rule, and obtaining a judgment result.
S705: and modifying the current software starting item configuration according to the judgment result. It can be understood that whether the current software starting item configuration needs to be modified is judged according to the preset software starting configuration modification rule, and then the current software starting item configuration is modified, which is beneficial to improving the user experience.
S706: and restarting the current software system, or pulling up the upgraded application software to finish the upgrading of the vehicle-mounted application software. Wherein, pulling refers to starting the application software or jumping to the interface of the application software.
Fig. 8 is a flowchart illustrating a method for upgrading an in-vehicle application software according to an exemplary embodiment of the present application, where it is determined whether a current configuration of a software startup item needs to be modified. As shown in fig. 8, in an exemplary embodiment, the step of determining whether the current configuration of the software start item needs to be modified according to the preset software start configuration modification rule includes:
s801: and judging whether the software upgrading object of the software upgrading task is the designated application software or the designated component of the application software. Specified components of the application software such as dynamic libraries, etc.
S802: if the software upgrading object is the appointed component of the application software, the configuration of the software starting item is not modified; and if the software upgrading object is the specified application software, judging that the upgrading operation attribute of the corresponding software upgrading task is software updating, software installation or software unloading.
S803: if the upgrade operation attribute is software update, the configuration of the software startup item is not modified, and if the upgrade operation attribute is software installation or software uninstallation, the configuration of the corresponding software startup item is modified. In the above steps, the software upgrading object and the upgrading operation attribute are determined, so that the modification of the starting item of the upgraded software can be accurately realized, and the user experience is effectively improved.
Fig. 9 is a schematic structural diagram of an in-vehicle application software upgrading system according to an exemplary embodiment of the present application. Referring to FIG. 9, in an exemplary embodiment, the in-vehicle application software upgrade system includes:
a service management module 901, configured to obtain a task file;
the task management module 902 is configured to parse the task file according to a preset parsing rule to obtain a task list, where the task list includes: at least one software upgrade task; the software upgrading task comprises the following steps: upgrading the designated application software, or upgrading the designated components of any application software;
a condition detection module 903, configured to perform pre-dependency check on the software to be upgraded corresponding to the software upgrade task, where the pre-dependency check is to determine whether a plurality of pieces of software to be upgraded meet a preset dependency relationship after being upgraded; if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed;
and the task execution module 904 is configured to execute the software upgrading task in the task queue to be executed according to a preset task execution rule, so as to complete vehicle-mounted application software upgrading. The task execution module comprises at least one task execution unit, and the task execution units correspond to the task execution processes one by one. The system analyzes the task file according to a preset analysis rule by acquiring the task file to acquire a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task is as follows: the method and the device have the advantages that the specific application software is upgraded, or the specific component of any application software is upgraded, so that the upgrading granularity of the application software is improved, and the upgrading efficiency of the vehicle-mounted application software is improved. And the software upgrading tasks passing the pre-dependency check are put into a preset task queue to be executed by performing the pre-dependency check on the software to be upgraded corresponding to the software upgrading tasks, and the software upgrading tasks in the task queue to be executed are executed according to a preset task execution rule, so that the abnormal dependency relationship among different software in the software upgrading process is avoided, the upgrading safety of the vehicle-mounted application software is improved, the stability is high, the practicability is high, and the cost is low.
In another exemplary embodiment, the in-vehicle application software upgrade system further includes:
the version management module 905 is used for providing operation interfaces for querying, deleting, adding and updating the software version. The version management module is respectively connected with the service management module and the task execution module. For example: the service management module sends a version query instruction to the version management module, and the version management module responds according to the version query instruction, or the task execution module sends a version information update request to the version management module, and the version management module responds to the task execution module according to the version information update request.
In another exemplary embodiment, the service management module 901 is further configured to query the version management module for a local software version file, form software version information, and store the software version information. The service management module has two triggering conditions for inquiring the local software version, namely restarting the operating system and finishing upgrading the software.
In another exemplary embodiment, the step of the service management module 901 obtaining the task file includes:
receiving a version query instruction sent by an external module;
feeding back current software version information according to the version query instruction, wherein the current software version information is used as the external module to determine the software information to be upgraded and generate a task file; and further acquiring the task file.
In another exemplary embodiment, the condition detecting module 903 is further configured to verify the task file and the acquired software upgrade package before the step of parsing the task file according to a preset parsing rule, where the step includes:
acquiring a software upgrading package, wherein the software upgrading package is associated with the task file;
according to a preset verification rule, verifying the task file and the software upgrading package to obtain a verification result;
if the verification result is that the verification is passed, performing upgrade condition detection on the current software system, wherein the upgrade condition detection comprises the following steps: detecting the working state of the system and the storage space of the system, wherein the software system is a vehicle-mounted system;
and if the upgrade condition is detected to be passed, analyzing the task file according to the analysis rule to obtain a task list.
In another exemplary embodiment, the step of determining, by the condition detecting module 903, whether the plurality of pieces of software to be upgraded meet the preset dependency relationship after being upgraded includes:
extracting dependency configuration information from the task file;
and judging whether the plurality of pieces of software to be upgraded meet the dependency relationship after upgrading according to the dependency relationship configuration information and the version information of the plurality of pieces of software to be upgraded.
In another exemplary embodiment, the step of executing, by the task execution module, the software upgrade task in the task queue to be executed according to a preset task execution rule includes:
sequentially adding the software upgrading tasks in the task queue to be executed into a preset execution task queue, wherein the execution task queue comprises: at least one task execution process, the at least one task execution process running in parallel;
processing the software upgrading tasks in the execution task queue according to the acquired software upgrading packet corresponding to the software upgrading task;
wherein, the step of processing the software upgrading task in the execution task queue at least comprises one of the following steps: software update, software installation, and software uninstallation.
In another exemplary embodiment, after the step of executing the software upgrade task in the task queue to be executed by the task execution module 904 according to a preset task execution rule, the step includes:
when the updating operation, the installing operation or the uninstalling operation in the software upgrading task is finished, calling the version management module to update the version information of the corresponding software to be upgraded and judging whether the software upgrading task is finished or not;
if the software upgrading task is finished, putting the software upgrading task into a preset task finishing queue;
the task management module 902 determines whether all software upgrading tasks in the task list are completed according to the software upgrading tasks in the task completion queue;
if all software upgrading tasks in the task list are finished, judging whether the current software starting item configuration needs to be modified according to a preset software starting configuration modification rule, and acquiring a judgment result;
modifying the current software startup item configuration according to the judgment result;
and finally, restarting the current software system, or pulling up the upgraded application software to finish the upgrading of the vehicle-mounted application software.
In another exemplary embodiment, the step of the task management module 902 determining whether to modify the current configuration of the software startup item according to the preset software startup configuration modification rule includes:
judging whether a software upgrading object of the software upgrading task is appointed application software or an appointed component of the application software;
if the software upgrading object is the appointed component of the application software, the configuration of the software starting item is not modified;
if the software upgrading object is the designated application software, judging that the upgrading operation attribute of the corresponding software upgrading task is software updating, software installation or software unloading;
if the upgrade operation attribute is software update, the configuration of the software startup item is not modified, and if the upgrade operation attribute is software installation or software uninstallation, the configuration of the corresponding software startup item is modified.
It should be noted that the vehicle-mounted application software upgrading system provided by the foregoing embodiment and the vehicle-mounted application software upgrading method provided by the foregoing embodiment belong to the same concept, wherein specific ways for each module and unit to perform operations have been described in detail in the method embodiment, and are not described herein again. In practical applications, the road condition refreshing apparatus provided in the above embodiment may distribute the above functions through different functional modules according to needs, that is, divide the internal structure of the apparatus into different functional modules to complete all or part of the above described functions, which is not limited herein.
An embodiment of the present application further provides an electronic device, including: one or more processors; the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the electronic equipment is enabled to realize the vehicle-mounted application software upgrading method provided in each embodiment.
FIG. 10 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present application. It should be noted that the computer system 1000 of the electronic device shown in fig. 10 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 10, the computer system 1000 includes a Central Processing Unit (CPU) 1001, which can perform various appropriate actions and processes, such as executing the method described in the above embodiment, according to a program stored in a Read-Only Memory (ROM) 1002 or a program loaded from a storage portion 1008 into a Random Access Memory (RAM) 1003. In the RAM1003, various programs and data necessary for system operation are also stored. The CPU 1001, ROM 1002, and RAM1003 are connected to each other via a bus 1004. An Input/Output (I/O) interface 1005 is also connected to the bus 1004.
The following components are connected to the I/O interface 1005: an input section 1006 including a keyboard, a mouse, and the like; an output section 1007 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and a speaker; a storage portion 1008 including a hard disk and the like; and a communication section 1009 including a Network interface card such as a LAN (Local Area Network) card, a modem, or the like. The communication section 1009 performs communication processing via a network such as the internet. The driver 1010 is also connected to the I/O interface 1005 as necessary. A removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1010 as necessary, so that a computer program read out therefrom is mounted into the storage section 1008 as necessary.
In particular, according to embodiments of the application, the processes described above with reference to the flow diagrams may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising a computer program for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from the network through the communication part 1009 and/or installed from the removable medium 1011. When the computer program is executed by a Central Processing Unit (CPU) 1001, various functions defined in the system of the present application are executed.
It should be noted that the computer readable media shown in the embodiments of the present application may be computer readable signal media or computer readable storage media or any combination of the two. The computer readable storage medium may be, for example, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM), a flash Memory, an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer-readable signal medium may include a propagated data signal with a computer program embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. The computer program embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. Each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software, or may be implemented by hardware, and the described units may also be disposed in a processor. Wherein the names of the elements do not in some way constitute a limitation on the elements themselves.
Another aspect of the present application also provides a computer-readable storage medium, on which a computer program is stored, which, when executed by a processor of a computer, causes the computer to execute the in-vehicle application software upgrading method as described above. The computer-readable storage medium may be included in the electronic device described in the above embodiment, or may exist separately without being incorporated in the electronic device.
Another aspect of the application also provides a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions, so that the computer device executes the vehicle-mounted application software upgrading method provided in the above embodiments.
The foregoing embodiments are merely illustrative of the principles of the present invention and its efficacy, and are not to be construed as limiting the invention. Any person skilled in the art can modify or change the above-mentioned embodiments without departing from the spirit and scope of the present invention. Accordingly, it is intended that all equivalent modifications or changes which can be made by those skilled in the art without departing from the spirit and technical spirit of the present invention are covered by the claims of the present invention.

Claims (10)

1. A vehicle-mounted application software upgrading method is characterized by comprising the following steps:
acquiring a task file;
analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises at least one software upgrading task; the software upgrading task is to upgrade the appointed application software, or to upgrade the appointed component of any application software;
performing pre-dependency check on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependency check is used for judging whether the plurality of software to be upgraded meet a preset dependency relationship after being upgraded;
if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed;
and executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule, and finishing the upgrading of the vehicle-mounted application software.
2. The vehicle-mounted application software upgrading method according to claim 1, characterized in that the step of obtaining the task file comprises:
receiving a version query instruction sent by an external module;
feeding back current software version information according to the version query instruction, wherein the current software version information is used as the external module to determine the software information to be upgraded and generate a task file; and then acquiring the task file.
3. The vehicle-mounted application software upgrading method according to claim 1, wherein the step of parsing the task file according to a preset parsing rule comprises:
acquiring a software upgrading package, wherein the software upgrading package is associated with the task file;
according to a preset verification rule, verifying the task file and the software upgrading package to obtain a verification result;
if the verification result is that the verification is passed, performing upgrade condition detection on the current software system, wherein the upgrade condition detection comprises the following steps: detecting the working state of the system and the storage space of the system, wherein the software system is a vehicle-mounted system;
and if the upgrade condition is detected to be passed, analyzing the task file according to the analysis rule to obtain a task list.
4. The vehicle-mounted application software upgrading method according to claim 1, wherein the step of judging whether the plurality of pieces of software to be upgraded meet the preset dependency relationship after being upgraded comprises the steps of:
extracting dependency configuration information from the task file;
and judging whether the plurality of pieces of software to be upgraded meet the dependency relationship after upgrading according to the dependency relationship configuration information and the version information of the plurality of pieces of software to be upgraded.
5. The vehicle-mounted application software upgrading method according to claim 1, wherein the step of executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule comprises:
sequentially adding the software upgrading tasks in the task queue to be executed into a preset execution task queue, wherein the execution task queue comprises at least one task execution process, and the at least one task execution process runs in parallel;
processing the software upgrading tasks in the execution task queue according to the acquired software upgrading packet corresponding to the software upgrading task;
wherein the step of processing the software upgrade task in the execution task queue includes at least one of software update, software installation, and software uninstallation.
6. The vehicle-mounted application software upgrading method according to claim 1, wherein the step of executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule comprises the following steps:
when the updating operation, the installing operation or the uninstalling operation in the software upgrading task is finished, updating the version information of the corresponding software to be upgraded and judging whether the software upgrading task is finished or not;
if the software upgrading task is finished, putting the software upgrading task into a preset task finishing queue;
judging whether all software upgrading tasks in the task list are finished or not according to the software upgrading tasks in the task completion queue;
if all software upgrading tasks in the task list are finished, judging whether the current software starting item configuration needs to be modified according to a preset software starting configuration modification rule, and acquiring a judgment result;
modifying the current software startup item configuration according to the judgment result;
and restarting the current software system, or pulling up the upgraded application software to finish the upgrading of the vehicle-mounted application software.
7. The upgrading method of the vehicular application software according to claim 6, wherein the step of judging whether the current configuration of the software starting item needs to be modified according to the preset modification rule of the software starting configuration comprises the following steps:
judging whether a software upgrading object of the software upgrading task is appointed application software or an appointed component of the application software;
if the software upgrading object is the appointed component of the application software, the configuration of the software starting item is not modified;
if the software upgrading object is the designated application software, judging that the upgrading operation attribute of the corresponding software upgrading task is software updating, software installation or software unloading;
if the upgrade operation attribute is software update, the configuration of the software startup item is not modified, and if the upgrade operation attribute is software installation or software uninstallation, the configuration of the corresponding software startup item is modified.
8. An in-vehicle application software upgrade system, the system comprising:
the service management module is used for acquiring the task file;
the task management module is used for analyzing the task file according to a preset analysis rule to obtain a task list, wherein the task list comprises: at least one software upgrade task; the software upgrading task comprises the following steps: upgrading the designated application software, or upgrading the designated components of any application software;
the condition detection module is used for carrying out pre-dependence check on the software to be upgraded corresponding to the software upgrading task, wherein the pre-dependence check is used for judging whether a plurality of pieces of software to be upgraded meet a preset dependence relationship after being upgraded; if the pre-dependency check is passed, putting the corresponding software upgrading task into a preset task queue to be executed;
and the task execution module is used for executing the software upgrading tasks in the task queue to be executed according to a preset task execution rule so as to finish the upgrading of the vehicle-mounted application software.
9. An electronic device, characterized in that the electronic device comprises:
one or more processors;
storage means for storing one or more programs that, when executed by the one or more processors, cause the electronic device to implement the in-vehicle application software upgrade method according to any one of claims 1 to 7.
10. A computer-readable storage medium, having stored thereon a computer program which, when executed by a processor of a computer, causes the computer to execute the in-vehicle application software upgrade method according to any one of claims 1 to 7.
CN202210861699.5A 2022-07-20 2022-07-20 Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium Pending CN115145605A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210861699.5A CN115145605A (en) 2022-07-20 2022-07-20 Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210861699.5A CN115145605A (en) 2022-07-20 2022-07-20 Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115145605A true CN115145605A (en) 2022-10-04

Family

ID=83413306

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210861699.5A Pending CN115145605A (en) 2022-07-20 2022-07-20 Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115145605A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116431408A (en) * 2023-03-29 2023-07-14 镁佳(北京)科技有限公司 Screen debugging method and device, electronic equipment and storage medium
CN116909609A (en) * 2023-09-12 2023-10-20 英纳法智联科技(北京)有限公司 Software upgrading method and device of vehicle-mounted intelligent equipment and vehicle-mounted intelligent equipment

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116431408A (en) * 2023-03-29 2023-07-14 镁佳(北京)科技有限公司 Screen debugging method and device, electronic equipment and storage medium
CN116431408B (en) * 2023-03-29 2024-03-01 镁佳(北京)科技有限公司 Screen debugging method and device, electronic equipment and storage medium
CN116909609A (en) * 2023-09-12 2023-10-20 英纳法智联科技(北京)有限公司 Software upgrading method and device of vehicle-mounted intelligent equipment and vehicle-mounted intelligent equipment
CN116909609B (en) * 2023-09-12 2023-12-22 英纳法智联科技(北京)有限公司 Software upgrading method and device of vehicle-mounted intelligent equipment and vehicle-mounted intelligent equipment

Similar Documents

Publication Publication Date Title
EP3333704B1 (en) Method and apparatus for repairing kernel vulnerability
US20160162272A1 (en) Method and apparatus for loading a rendering engine
CN115145605A (en) Vehicle-mounted application software upgrading method and system, electronic equipment and storage medium
CN107291481B (en) Component updating method, device and system
CN111427579A (en) Plug-in, application program implementing method and system, computer system and storage medium
CN111240766B (en) Application starting method and device, electronic equipment and computer readable storage medium
CN110262825B (en) Thermal updating method, thermal updating device, electronic equipment and readable storage medium
US10467027B1 (en) Dynamic script loading resource files
CN111338944B (en) Remote Procedure Call (RPC) interface testing method, device, medium and equipment
CN115114071A (en) Memory analysis method, device, equipment and medium
CN110515671A (en) Initial method, apparatus for initializing, terminal device and readable storage medium storing program for executing
WO2019237239A1 (en) Data test method and apparatus, device/terminal/server and computer readable storage medium
CN111506904B (en) Method and device for online bug repair
CN113010178A (en) Application program operation control method, device, equipment and medium
CN106033364B (en) Web application program upgrading method and system
CN111625326B (en) Task pipeline execution method and device and electronic equipment
CN114510334A (en) Class instance calling method and device, electronic equipment and automatic driving vehicle
CN108595335B (en) Test environment deployment method, deployment device and storage medium
CN113515299A (en) Software development kit SDK hot upgrading method, device, equipment and storage medium
CN112559131A (en) Method, device and equipment for updating container mirror image and computer readable storage medium
CN111796865A (en) Byte code file modification method and device, terminal equipment and medium
WO2024055343A1 (en) Data update method and apparatus, and electronic device and computer storage medium
CN111274082B (en) Memory performance analysis method, device, medium and electronic equipment
CN110134456B (en) Method, apparatus, device and storage medium for managing operating system
CN116501634A (en) Test case management method, device, medium and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination