CN115828231A - App running method, device, vehicle and storage medium - Google Patents
App running method, device, vehicle and storage medium Download PDFInfo
- Publication number
- CN115828231A CN115828231A CN202211337557.5A CN202211337557A CN115828231A CN 115828231 A CN115828231 A CN 115828231A CN 202211337557 A CN202211337557 A CN 202211337557A CN 115828231 A CN115828231 A CN 115828231A
- Authority
- CN
- China
- Prior art keywords
- target
- container
- application
- file
- package
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 230000006870 function Effects 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims description 35
- 125000000524 functional group Chemical group 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 abstract description 3
- 238000004806 packaging method and process Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 28
- 238000011161 development Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000002955 isolation Methods 0.000 description 6
- 230000006837 decompression Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种应用程序运行方法、装置、车辆及存储介质,该方法包括:获取目标容器的容器部署包;其中,目标容器对应有目标功能组和目标软件集群,目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态;基于容器模板包启动目标容器;基于目标应用程序的执行程序文件和目标应用程序的配置文件,在目标容器中运行目标应用程序。本申请实施例提供的技术方案,可以实现将功能关联的多个应用程序打包到一个容器内执行,各个容器彼此隔离互不影响,减小某个应用程序异常对整个AP平台带来的影响。
The present application discloses an application program running method, device, vehicle and storage medium. The method includes: obtaining a container deployment package of a target container; wherein, the target container corresponds to a target function group and a target software cluster, and the target application program is the target software An application in the cluster, and the target application depends on the target state in the target function group; start the target container based on the container template package; run the target application in the target container based on the target application's executor file and the target application's configuration file program. The technical solution provided by the embodiment of the present application can realize the packaging of multiple application programs related to functions into one container for execution, each container is isolated from each other and does not affect each other, reducing the impact of an abnormal application program on the entire AP platform.
Description
技术领域technical field
本申请涉及汽车技术领域,尤其涉及一种应用程序运行方法、装置、车辆以及存储介质。The present application relates to the technical field of automobiles, and in particular to an application program running method, device, vehicle and storage medium.
背景技术Background technique
有适应能力的汽车开放系统架构(Adaptive AUTomotive Open SystemArchitecture,Adaptive AUTOSAR),简称AP架构,被广泛应用于汽车领域,以实现车辆中日益复杂的各项功能。Adaptive AUTomotive Open System Architecture (Adaptive AUTOSAR), referred to as AP architecture, is widely used in the automotive field to realize increasingly complex functions in vehicles.
相关技术中,在AP架构下,应用程序的执行程序文件以及配置文件以独立且指定格式的文件夹放置在指定目录下,执行管理服务基于状态管理服务确定待启动的应用程序,然后在指定目录遍历以查找上述待启动的应用程序,最后启动上述应用程序。In related technologies, under the AP framework, the execution program file and configuration file of the application program are placed in a specified directory in an independent folder with a specified format, and the execution management service determines the application program to be started based on the state management service, and then in the specified directory Traverse to find the above-mentioned applications to be started, and finally start the above-mentioned applications.
相关技术中,由于执行管理服务不会对应用程序的资源分配和权限控制进行限制,某个应用程序运行异常,会导致整个AP平台停止工作。In related technologies, since the execution management service does not restrict the resource allocation and authority control of the application program, if an application program runs abnormally, the entire AP platform will stop working.
发明内容Contents of the invention
本申请提出了一种应用程序运行方法、装置、车辆以及存储介质。The present application proposes an application program running method, device, vehicle and storage medium.
第一方面,本申请实施例提供一种应用程序运行方法,该方法包括:获取目标应用程序的容器部署包,容器部署包是指对目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件进行压缩得到的文件;其中,目标容器对应有目标功能组和目标软件集群,目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态;基于目标容器的容器模板包启动目标容器;基于目标应用程序的执行程序文件和目标应用程序的配置文件,在目标容器中运行目标应用程序。In the first aspect, the embodiment of the present application provides a method for running an application program. The method includes: obtaining the container deployment package of the target application program. The container deployment package refers to the container template package of the target container, the execution program file of the target application program, and The file obtained by compressing the configuration file of the target application; wherein, the target container corresponds to the target functional group and the target software cluster, the target application is an application in the target software cluster, and the target application depends on the target state in the target functional group ;Start the target container based on the target container's container template package; based on the target application's executor file and the target application's configuration file, run the target application in the target container.
第二方面,本申请实施例提供一种应用程序运行装置,包括:获取模块,用于获取目标应用程序的容器部署包,容器部署包是指对目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件进行压缩得到的文件;其中,目标容器对应有目标功能组和目标软件集群,目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态;容器启动模块,用于基于容器模板包启动目标容器;应用运行模块,用于基于目标应用程序的执行程序文件和目标应用程序的配置文件,在目标容器中运行目标应用程序。In the second aspect, the embodiment of the present application provides an application program running device, including: an acquisition module, used to acquire the container deployment package of the target application program. The container deployment package refers to the execution of the container template package of the target container and the target application program. The file obtained by compressing the program file and the configuration file of the target application; wherein, the target container corresponds to the target function group and the target software cluster, the target application is an application in the target software cluster, and the target application depends on the target function group The target status of the target application; the container start module is used to start the target container based on the container template package; the application running module is used to run the target application in the target container based on the target application execution program file and the target application configuration file.
第三方面,本申请实施例提供一种车辆,包括:一个或多个处理器;存储器;一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个应用程序配置用于执行如第一方面所述的应用程序运行方法。In a third aspect, the embodiment of the present application provides a vehicle, including: one or more processors; memory; one or more application programs, wherein one or more application programs are stored in the memory and configured to be run by one or more Executed by multiple processors, one or more application programs are configured to execute the application program running method as described in the first aspect.
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序指令,计算机程序指令可被处理器调用执行如第一方面的应用程序运行方法。In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer program instructions are stored, and the computer program instructions can be invoked by a processor to execute the application program running method in the first aspect.
第五方面,本申请实施例提供一种计算机程序产品,当该计算机程序产品被执行时,器用于实现如第一方面所述的应用程序运行方法。In a fifth aspect, an embodiment of the present application provides a computer program product. When the computer program product is executed, the device is used to implement the application program running method as described in the first aspect.
相较于现有技术,本申请实施例提供的应用程序运行方法,通过在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上(也即保证容器-功能组-软件集群-应用程序的一一对应关系)引入容器技术,得到封装有目标容器的容器模板包的容器部署包,在应用程序存在运行需求时,可以先基于目标容器的容器模板包启动目标容器,然后在目标容器中运行目标应用程序,由于容器可以进行资源隔离,因此每个容器所运行的应用程序彼此隔离,互不影响,某一应用程序运行异常时,其他应用程序仍可以正常运行,减小单个应用程序异常给AP平台整体带来的影响。Compared with the prior art, the application program running method provided by the embodiment of the present application, through the development process of the application program, on the basis of keeping the function points of the basic modules of the AP architecture unchanged (that is, to ensure that the container-function group- One-to-one correspondence between software clusters and applications) container technology is introduced to obtain a container deployment package that encapsulates the container template package of the target container. When the application has running requirements, the target container can be started based on the container template package of the target container. Then run the target application in the target container. Since the container can perform resource isolation, the applications running in each container are isolated from each other and do not affect each other. When an application runs abnormally, other applications can still run normally, reducing The impact of a small single application exception on the AP platform as a whole.
附图说明Description of drawings
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings that need to be used in the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application. For those skilled in the art, other drawings can also be obtained based on these drawings without any creative effort.
图1是本申请一个实施例提供的实施环境的示意图。Fig. 1 is a schematic diagram of an implementation environment provided by an embodiment of the present application.
图2是本申请一个实施例提供的应用程序运行方法的流程图。Fig. 2 is a flowchart of an application running method provided by an embodiment of the present application.
图3是本申请另一个实施例提供的应用程序运行方法的流程图。Fig. 3 is a flowchart of an application running method provided by another embodiment of the present application.
图4是本申请一个实施例提供的应用程序开发方法的流程图。Fig. 4 is a flowchart of an application development method provided by an embodiment of the present application.
图5是本申请一个实施例提供的应用程序开发装置的结构框图。Fig. 5 is a structural block diagram of an application program development device provided by an embodiment of the present application.
图6是本申请一个实施例提供的车辆的结构框图。Fig. 6 is a structural block diagram of a vehicle provided by an embodiment of the present application.
图7是本申请一个实施例提供的计算机可读存储介质的结构框图。Fig. 7 is a structural block diagram of a computer-readable storage medium provided by an embodiment of the present application.
具体实施方式Detailed ways
下面详细描述本申请的实施方式,实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性地,仅用于解释本申请,而不能理解为对本申请的限制。Embodiments of the present application are described in detail below, and examples of the embodiments are shown in the drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the drawings are exemplary only for explaining the present application and should not be construed as limiting the present application.
为了使本技术领域的人员更好地理解本申请的方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。In order to enable those skilled in the art to better understand the solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Apparently, the described embodiments are only some of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without making creative efforts belong to the scope of protection of this application.
首先,对本申请实施例涉及的技术名词进行介绍。First, technical terms involved in the embodiments of the present application are introduced.
AP架构:一种异构的软件平台,用于统一管理下属操作系统以及周边资源,使得系统运行时的一切调度、状态和资源消耗都处在一个可控的范围内,以满足车载安全性、确定性的要求,具备软实时(毫秒级别)、满足功能安全要求(ASIL-B以上)、更适合于多核的高资源消耗环境、支持动态部署等特点。AP架构包括硬件层、基础服务层、运行层和组件层。其中,基础服务层包括执行管理服务和状态管理服务。AP Architecture: A heterogeneous software platform used for unified management of subordinate operating systems and surrounding resources, so that all scheduling, status and resource consumption during system operation are within a controllable range to meet vehicle safety, Deterministic requirements, with soft real-time (millisecond level), meeting functional safety requirements (above ASIL-B), more suitable for multi-core high resource consumption environments, and supporting dynamic deployment. AP architecture includes hardware layer, basic service layer, operation layer and component layer. Among them, the basic service layer includes execution management service and state management service.
执行管理服务(Execution Management,EM):负责AP平台执行管理的所有方面,包括:AP平台的生命周期管理(比如AP平台的启动、关闭、初始化等)、应用程序的生命周期管理(比如应用程序的启动和关闭)。Execution Management (EM): Responsible for all aspects of AP platform execution management, including: AP platform life cycle management (such as AP platform startup, shutdown, initialization, etc.), application life cycle management (such as application startup and shutdown).
状态管理服务(State Management,SM):定义了AP平台的操作状态,包括:执行状态、进程状态、机器状态、功能组状态。执行状态是指每个启动的进程的内部状态。进程状态是进程的状态。机器状态代表机器的全局状态,用来控制机器和平台级别的应用的生命周期(启动/停止/重启)。每个功能组有着它自己的进程集和状态集(功能组状态),每个功能组状态定义了当SM请求激活哪个状态时,哪些进程将会被EM启动,每个功能组至少有一个进程,最多由实现限制。State Management Service (State Management, SM): defines the operating state of the AP platform, including: execution state, process state, machine state, and function group state. Execution state refers to the internal state of each started process. process state is the state of the process. The machine state represents the global state of the machine and is used to control the lifecycle (start/stop/restart) of applications at the machine and platform level. Each functional group has its own process set and state set (functional group state). Each functional group state defines which processes will be started by EM when SM requests which state to activate. Each functional group has at least one process , at most limited by the implementation.
容器技术:一种虚拟化技术,可以实现进程隔离,有效的将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求。Container technology: A virtualization technology that can realize process isolation and effectively divide the resources of a single operating system into isolated groups, so as to better balance conflicting resource usage requirements among isolated groups.
请参考图1,其示出本申请一个实施例提供的实施环境的示意图。该实施环境包括车辆100,该车辆100为应用程序的运行环境。车辆100包含电子控制器,电子控制器中设有基于AP架构开发的AP平台,AP平台包含状态管理组件、执行管理组件、功能组、软件集群、每个软件集群包括一个或多个应用程序。状态管理组件、执行管理组件、功能组的相关介绍可以参见上文实施例,在此不作赘述。其中,上述应用程序的运行过程如下:执行管理组件在确定满足目标应用程序的运行条件的情况下,先启动目标应用程序对应的目标容器,之后在目标容器中运行上述目标应用程序。Please refer to FIG. 1 , which shows a schematic diagram of an implementation environment provided by an embodiment of the present application. The implementation environment includes a
在一些实施例中,该实施环境还包括电子设备200,电子设备200为应用程序的开发环境,该电子设备200可以是个人计算机,也可以是服务器。开发人员在电子设备200上完成应用程序的开发后,通过电子设备200向车辆100分发上述应用程序。在本申请实施例中,电子设备200包括基于AP框架的配置工具、编译软件开发工具包(Software DevelopmentKit,SDK)以及容器部署脚本。In some embodiments, the implementation environment further includes an
配置工具是指基于AP架构开发的上位机界面软件工具链,由供应商提供,用于供开发人员创建功能组、软件集群、应用程序(包括配置文件和代码文件)。编译SDK是指基于AP架构开发的编译工具链,由供应商提供,用于将应用程序的代码文件和配置文件进行编译处理,得到应用程序的软件包(包括容器模板包、执行文件以及配置文件)。容器部署脚本用于将应用程序的软件包转换成指定格式的容器部署包。The configuration tool refers to the upper computer interface software tool chain developed based on the AP architecture, provided by the supplier, for developers to create functional groups, software clusters, and applications (including configuration files and code files). The compilation SDK refers to the compilation tool chain developed based on the AP architecture, which is provided by the supplier, and is used to compile and process the code files and configuration files of the application program to obtain the software package of the application program (including the container template package, execution file and configuration file ). The container deployment script is used to convert the application software package into a container deployment package in a specified format.
需要说明的是,在创建功能组和软件集群之前,需要在电子设备200中预先创建容器模板包,在创建功能组和软件集群的过程中,基于容器模板包来确保容器-功能组-软件集群之间的一一对应关系,之后在软件集群这一节点下开发应用程序,从而实现了容器-功能组-软件集群-应用程序之间的一一对应关系,并且使得容器模板包也被封装在应用程序的软件包中,后续应用程序运行时,可以基于容器模板包新建容器,然后在容器中运行应用程序。It should be noted that before creating the functional group and software cluster, the container template package needs to be pre-created in the
在本申请实施例中,在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上引入容器技术,通过保证容器-功能组-软件集群-应用程序的一一对应关系,使得AP平台中的应用程序的运行过程可以在容器中完成,各个容器彼此隔离互不影响,减小某个应用程序异常给AP平台整体带来的影响。In the embodiment of this application, during the development process of the application program, the container technology is introduced on the basis of keeping the function points of the basic modules of the AP architecture unchanged, by ensuring the one-to-one correspondence between the container-functional group-software cluster-application program , so that the running process of the application program in the AP platform can be completed in the container, each container is isolated from each other and does not affect each other, reducing the impact of an abnormal application program on the entire AP platform.
请参考图2,其示出本申请一个实施例提供的应用程序运行方法的流程图。该应用程序运行方法可以由图1实施例中的车辆100或者电子设备200执行。该方法包括如下过程。Please refer to FIG. 2 , which shows a flow chart of an application running method provided by an embodiment of the present application. The application running method can be executed by the
S201,获取目标应用程序的容器部署包。S201. Obtain a container deployment package of a target application.
目标应用程序的容器部署包包括目标容器启动、以及目标应用程序在目标容器中正确运行所需的资源。在本申请实施例中,目标容器的容器部署包是对目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件进行压缩得到的文件。目标容器的容器部署包的获取流程将在下文实施例进行阐述。A container deployment package for a target application includes the resources required for the target container to start and for the target application to run correctly in the target container. In this embodiment of the present application, the container deployment package of the target container is a file obtained by compressing the container template package of the target container, the execution program file of the target application program, and the configuration file of the target application program. The acquisition process of the container deployment package of the target container will be described in the following embodiments.
目标容器是用于运行目标应用程序的容器。在本申请实施例中,目标容器对应有目标功能组和目标软件集群。目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态。目标应用程序依赖目标功能组中的目标状态,是指目标功能组的目标状态被激活时,目标应用程序应当启动运行。在本申请实施例中,在应用程序的开发过程中引入容器技术,并保持了容器-功能组-软件集群-应用程序的软件包的一一对应关系,以实现将功能关联的多个应用程序打包到一个容器内执行,各个容器彼此隔离互不影响,减小某个应用程序异常对整个AP平台带来的影响。The target container is the container used to run the target application. In the embodiment of the present application, the target container corresponds to a target function group and a target software cluster. The target application is an application in the target software cluster, and the target application depends on the target state in the target functional group. The target application program depends on the target state in the target function group, which means that when the target state of the target function group is activated, the target application program should start running. In the embodiment of this application, the container technology is introduced in the development process of the application program, and the one-to-one correspondence between the container-functional group-software cluster-application software package is maintained, so as to realize multiple application programs that associate functions Packaged into a container for execution, each container is isolated from each other and does not affect each other, reducing the impact of an abnormal application on the entire AP platform.
在上文实施例中提到,在AP架构下,每个功能组有着它自己的进程集和状态集,每个功能组状态定义了当SM请求激活哪个状态时,哪些进程将会被EM启动。执行管理组件基于功能组的当前激活状态以及上述功能组状态确定目标应用程序,然后将用于运行目标应用程序的容器确定为目标容器。As mentioned in the above embodiment, under the AP architecture, each functional group has its own process set and state set, and each functional group state defines which processes will be activated by the EM when the SM requests which state to activate . The execution management component determines the target application program based on the current activation status of the function group and the status of the function group, and then determines the container used to run the target application program as the target container.
示例性地,功能组状态如下表-1所示。Exemplarily, the status of the function group is shown in Table-1 below.
表-1Table 1
结合上述表-1,执行管理组件确定功能组的当前激活状态为状态1,则应用程序A需要启动运行,则将应用程序A对应的容器确定为目标容器。Combining with the above Table-1, the execution management component determines that the current activation state of the function group is state 1, then the application A needs to start running, and then determines the container corresponding to the application A as the target container.
S202,基于目标容器的容器模板包启动目标容器。S202. Start the target container based on the container template package of the target container.
目标容器的容器模板包包括启动目标容器所需的资源文件,其是对目标容器的根文件系统目录(rootfs)、容器配置模板文件(config.json)以及容器服务文件(container.service)进行压缩得到的文件。容器服务文件是系统守护进程(systemd)读取的服务单元配置文件,内容包括启动和停止执行命令,以及依赖的前置/后置依赖的应用服务单元配置。容器配置模板文件包括基于容器运行的应用相关的特定信息,如安全权限、环境变量和参数等。容器服务文件是系统守护进程读取的服务单元配置文件,内容包括启动和停止执行命令,以及依赖的前置/后置依赖的应用服务单元配置。根文件系统目录包含了容器执行所需的必要环境依赖,如/bin、/var、/lib、/dev、/usr等目录及相应文件。The container template package of the target container includes the resource files required to start the target container, which compresses the root file system directory (rootfs), container configuration template file (config.json) and container service file (container.service) of the target container get the file. The container service file is a service unit configuration file read by the system daemon (systemd), and its content includes start and stop execution commands, as well as dependent pre/post dependent application service unit configurations. The container configuration template file includes specific information related to the application running based on the container, such as security permissions, environment variables and parameters, and so on. The container service file is a service unit configuration file read by the system daemon, and its content includes start and stop execution commands, as well as dependent pre/post dependent application service unit configurations. The root file system directory contains the necessary environment dependencies required for container execution, such as /bin, /var, /lib, /dev, /usr and other directories and corresponding files.
在本申请实施例中,车辆从目标应用程序的容器部署包中获取目标容器的容器模板包,然后基于目标容器的容器模板包来启动目标容器。在一些实施例中,S202可以包括如下过程。In the embodiment of the present application, the vehicle obtains the container template package of the target container from the container deployment package of the target application program, and then starts the target container based on the container template package of the target container. In some embodiments, S202 may include the following process.
S2021,将目标应用程序的容器部署包解压至运行环境的指定目录中,得到目标容器的容器模板包、目标应用的执行程序文件以及目标应用程序的配置文件。S2021. Decompress the container deployment package of the target application into a specified directory of the running environment to obtain a container template package of the target container, an execution program file of the target application, and a configuration file of the target application.
电子控制器可以选择与容器部署包的格式相匹配的第一解压缩工具,然后通过上述第一解压缩工具将目标应用程序的容器部署包解压至运行环境的指定目录中,得到目标容器的容器模板包、目标应用的执行程序文件以及目标应用程序的配置文件。The electronic controller can select the first decompression tool that matches the format of the container deployment package, and then use the above-mentioned first decompression tool to decompress the container deployment package of the target application program into the specified directory of the operating environment to obtain the container of the target container The template package, the target application's executor file, and the target application's configuration file.
S2022,从容器模板包获取目标容器的容器服务文件。S2022. Obtain the container service file of the target container from the container template package.
电子控制器可以选择与容器模板包的格式相匹配的第二解压缩工具,然后通过第二解压缩工具对容器模板包进行解压缩处理,解压后得到的文件包括容器服务文件。The electronic controller can select a second decompression tool that matches the format of the container template package, and then use the second decompression tool to decompress the container template package, and the files obtained after decompression include container service files.
S2023,将容器服务文件创建软链接到系统守护进程。S2023. Create a soft link from the container service file to the system daemon process.
软链接(soft link),也称符号链接(symbolic link)。符号链接是短文件,这些文件包含友另一个文件的任意一个路径名。路径名可以指向位于任意一个文件系统的任意文件和目录,甚至于可以指向一个不存在的文件。在本申请实施例中,将容器服务文件创建软链接到系统守护进程,目的是为了系统守护进程能便捷访问容器服务文件。Soft link (soft link), also known as symbolic link (symbolic link). Symbolic links are short files that contain an arbitrary pathname to another file. A pathname can point to any file or directory on any filesystem, even a file that doesn't exist. In the embodiment of this application, a soft link is created for the container service file to the system daemon process, so that the system daemon process can conveniently access the container service file.
S2024,通过系统守护进程启动目标容器。S2024, start the target container through the system daemon process.
系统守护进程通过上述软链接访问容器服务文件,并通过容器控制工具来启动目标容器。可选地,容器控制工具为runc工具,runc工具是基于OCI标准的轻量级容器管理工具。具体地,系统守护进程通过runc工具启动目标容器,runc工具启动目标容器前会读取容器配置模板文件,将有关开发板文件目录挂载到系统根文件目录下独立运行,使得目标容器拥有自己的根文件系统和分配资源。The system daemon accesses the container service file through the above soft link, and starts the target container through the container control tool. Optionally, the container control tool is a runc tool, which is a lightweight container management tool based on the OCI standard. Specifically, the system daemon starts the target container through the runc tool. Before the runc tool starts the target container, it reads the container configuration template file, mounts the relevant development board file directory to the system root file directory, and runs independently, so that the target container has its own Root file system and allocation resources.
S203,基于目标应用程序的执行程序和目标应用程序的配置信息,在目标容器中运行目标应用程序。S203. Run the target application program in the target container based on the execution program of the target application program and the configuration information of the target application program.
目标应用程序的执行程序文件用于实现目标应用程序的各项逻辑功能。目标应用程序的配置文件用于定义目标应用程序依赖于功能组的目标状态,也即功能组的目标状态被激活时,目标应用程序应当启动运行。The execution program file of the target application program is used to realize various logic functions of the target application program. The configuration file of the target application is used to define that the target application depends on the target state of the function group, that is, when the target state of the function group is activated, the target application should start running.
在本申请实施例中,目标容器被启动后,目标应用程序可以在目标容器中运行,该目标应用程序的运行过程可以与其他应用程序的运行过程隔离开来,当目标应用程序运行异常时,其他应用程序可以在其他容器中正常运行,其他应用程序运行异常时,目标应用程序也可以在目标容器中继续运行,二者互不影响,从而降低单个应用程序异常对整个AP平台的影响。In the embodiment of the present application, after the target container is started, the target application program can run in the target container, and the running process of the target application program can be isolated from the running process of other application programs. When the target application program runs abnormally, Other applications can run normally in other containers. When other applications run abnormally, the target application can also continue to run in the target container. The two do not affect each other, thereby reducing the impact of a single application exception on the entire AP platform.
综上所述,本申请实施例提供的技术方案,通过在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上(也即保证容器-功能组-软件集群-应用程序的一一对应关系)引入容器技术,得到封装有目标容器的容器模板包的容器部署包,在应用程序存在运行需求时,可以先基于目标容器的容器模板包启动目标容器,然后在目标容器中运行目标应用程序,由于容器可以进行资源隔离,因此每个容器所运行的应用程序彼此隔离,互不影响,某一应用程序运行异常时,其他应用程序仍可以正常运行,减小单个应用程序异常给AP平台整体带来的影响。To sum up, the technical solution provided by the embodiment of this application is based on keeping the function points of the basic modules of the AP architecture unchanged during the development process of the application program (that is, ensuring that the container-function group-software cluster-application One-to-one correspondence between programs) introduce container technology to obtain the container deployment package that encapsulates the container template package of the target container. When the application has running requirements, the target container can be started based on the container template package of the target container, and then Because the container can perform resource isolation, the applications run by each container are isolated from each other and do not affect each other. When an application runs abnormally, other applications can still run normally, reducing the size of a single application. The impact of the exception on the AP platform as a whole.
请参考图3,其示出本申请一个实施例提供的应用程序运行方法的流程图,该应用程序运行方法可以由图1实施例中的车辆100或者电子设备200执行。该应用程序运行方法包括如下过程。在图3实施例中,S203被替换实现为S303-S306。Please refer to FIG. 3 , which shows a flowchart of an application program running method provided by an embodiment of the present application. The application program running method may be executed by the
S301,获取目标应用程序的容器部署包。S301. Obtain a container deployment package of a target application.
目标应用程序的容器部署包是指对目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件进行压缩得到的文件。目标容器对应有目标功能组和目标软件集群,目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态。The container deployment package of the target application refers to the file obtained by compressing the container template package of the target container, the executable program file of the target application, and the configuration file of the target application. The target container corresponds to a target functional group and a target software cluster, the target application program is an application program in the target software cluster, and the target application program depends on the target state in the target functional group.
S302,基于目标容器的容器模板包启动目标容器。S302. Start the target container based on the container template package of the target container.
S303,获取执行管理服务在确定满足目标应用程序的运行条件下发出的应用启动指令。S303. Obtain an application start instruction issued by the execution management service after it is determined that the running condition of the target application is met.
满足目标应用程序的运行条件是指目标功能组中的激活状态与目标应用程序所依赖的目标状态匹配。具体地,执行管理服务在确定出目标功能组的激活状态为目标应用程序所依赖的目标状态的情况下,确定满足目标应用程序的运行条件,之后向容器控制工具下发应用启动指令。一些实施例中,应用启动指令为runc.exec命令。Satisfying the operating conditions of the target application means that the activation state in the target functional group matches the target state on which the target application depends. Specifically, when the execution management service determines that the activation state of the target function group is the target state on which the target application program depends, it determines that the running conditions of the target application program are met, and then sends an application start instruction to the container control tool. In some embodiments, the application start instruction is a runc.exec command.
S304,通过容器控制工具,基于目标应用的执行程序文件和目标应用程序的配置文件,在目标容器中启动目标应用程序。S304. Start the target application program in the target container based on the executable program file of the target application program and the configuration file of the target application program through the container control tool.
容器控制工具在接收到应用启动指令后,在目标容器中启动目标应用程序。容器控制工具为上文的runc工具。The container control tool starts the target application program in the target container after receiving the application start instruction. The container control tool is the above runc tool.
S305,获取执行管理服务在确定不满足目标应用程序的运行条件下发出的应用结束指令。S305. Obtain an application end instruction issued by the execution management service when it is determined that the running condition of the target application program is not met.
不满足目标应用程序的运行条件是指目标功能组中的激活状态与目标应用程序所依赖的目标状态不匹配。具体地,执行管理服务在确定出目标功能组的激活状态不为目标应用程序所依赖的目标状态的情况下,确定不满足目标应用程序的运行条件,之后向目标容器下发应用结束指令。一些实施例中,应用结束指令也为runc.exec命令。A target application's run condition is not met when the activation state in the target functional group does not match the target state on which the target application depends. Specifically, when the execution management service determines that the activation state of the target function group is not the target state on which the target application program depends, it determines that the running conditions of the target application program are not satisfied, and then sends an application termination instruction to the target container. In some embodiments, the application end instruction is also a runc.exec command.
S306,通过容器控制工具,在目标容器中结束运行目标应用程序。S306. Stop running the target application program in the target container through the container control tool.
容器控制工具在接收到应用结束指令后,在目标容器中结束运行上述目标应用程序。After receiving the application termination instruction, the container control tool terminates running the above target application program in the target container.
可选地,容器控制工具在结束目标应用程序后,还可以检测目标容器中是否存在其他正在运行的应用程序,若不存在,则可以销毁容器。Optionally, after the target application is terminated, the container control tool may also detect whether there are other running applications in the target container, and if not, the container may be destroyed.
综上所述,本申请实施例提供的技术方案,通过在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上(也即保证容器-功能组-软件集群-应用程序的一一对应关系)引入容器技术,得到封装有目标容器的容器模板包的容器部署包,在应用程序存在运行需求时,可以先基于目标容器的容器模板包启动目标容器,然后在目标容器中运行目标应用程序,由于容器可以进行资源隔离,因此每个容器所运行的应用程序彼此隔离,互不影响,某一应用程序运行异常时,其他应用程序仍可以正常运行,减小单个应用程序异常给AP平台整体带来的影响。To sum up, the technical solution provided by the embodiment of this application is based on keeping the function points of the basic modules of the AP architecture unchanged during the development process of the application program (that is, ensuring that the container-function group-software cluster-application One-to-one correspondence between programs) introduce container technology to obtain the container deployment package that encapsulates the container template package of the target container. When the application has running requirements, the target container can be started based on the container template package of the target container, and then Because the container can perform resource isolation, the applications run by each container are isolated from each other and do not affect each other. When an application runs abnormally, other applications can still run normally, reducing the size of a single application. The impact of the exception on the AP platform as a whole.
下面对应用程序的开发过程进行阐述。请参考图4,其示出本申请一个实施例提供的应用程序开发方法的流程图。该应用程序运行方法可以由图1实施例中的电子设备200执行。该应用程序开发方法包括如下过程。The following describes the development process of the application program. Please refer to FIG. 4 , which shows a flowchart of an application program development method provided by an embodiment of the present application. The method for running an application program may be executed by the
S401,获取目标容器的容器模板包。S401. Acquire a container template package of a target container.
目标容器的容器模板包是对目标容器的容器配置模板文件、容器服务文件以及根文件系统目录进行压缩得到的。The container template package of the target container is obtained by compressing the container configuration template file, container service file, and root file system directory of the target container.
在一些实施例中,S401具体实现为:获取目标容器的根文件系统目录、容器配置模板文件以及容器服务文件;对目标容器的根文件系统目录、容器配置模板文件以及容器服务文件进行压缩处理,得到目标容器的容器模板包。In some embodiments, S401 is specifically implemented as: obtaining the root file system directory, container configuration template file, and container service file of the target container; compressing the root file system directory, container configuration template file, and container service file of the target container, Get the container template package for the target container.
目标容器的根文件系统目录、容器配置模板文件以及容器服务文件由开发人员基于OCI容器标准创建的。OCI容器标准目前包含两部分内容:容器运行时规范以及容器镜像规范。容器运行时规范定义了如何根据相应的配置构建容器运行时。容器镜像规范定义了容器运行时使用的镜像的打包规范。电子设备获取上述目标容器的根文件系统目录、容器配置模板文件以及容器服务文件之后,通过指定压缩工具对上述根文件系统目录、容器配置模板文件以及容器服务文件进行压缩处理,得到指定格式的容器模板包。可选地,上述格式为tgz格式。The root file system directory of the target container, the container configuration template file, and the container service file are created by the developer based on the OCI container standard. The OCI container standard currently consists of two parts: the container runtime specification and the container image specification. The container runtime specification defines how to build a container runtime based on the corresponding configuration. The container image specification defines the packaging specification for the image used by the container runtime. After the electronic device obtains the root file system directory, container configuration template file, and container service file of the above-mentioned target container, it compresses the above-mentioned root file system directory, container configuration template file, and container service file through a designated compression tool to obtain a container in a specified format template pack. Optionally, the above format is tgz format.
在一些实施例中,电子设备在获得目标容器的容器模板文件后,将其存储在指定存储位置。该指定存储位置是指配置工程所在目录的容器文件夹下的指定文件夹,该指定文件夹的名称为目标容器的唯一标识。In some embodiments, after obtaining the container template file of the target container, the electronic device stores it in a designated storage location. The specified storage location refers to the specified folder under the container folder of the directory where the configuration project is located, and the name of the specified folder is the unique identifier of the target container.
S402,通过配置工具创建目标功能组、与目标功能组对应的目标软件集群。S402. Create a target function group and a target software cluster corresponding to the target function group by using a configuration tool.
电子设备显示配置工具的用户界面,之后开发人员可以在该用户界面创建目标容器对应的目标功能组、与目标容器对应的目标软件集群。在一些实施例中,目标功能组的名称和目标软件集群的名称均为目标容器的唯一标识,从而确保容器-功能组-软件集群之间的一一对应关系。The electronic device displays the user interface of the configuration tool, and then the developer can create a target function group corresponding to the target container and a target software cluster corresponding to the target container on the user interface. In some embodiments, both the name of the target functional group and the name of the target software cluster are unique identifiers of the target container, thereby ensuring a one-to-one correspondence between the container-functional group-software cluster.
S403,基于容器模板包在目标软件集群下生成目标应用程序的软件包。S403. Generate a software package of the target application under the target software cluster based on the container template package.
目标应用程序依赖目标功能组中的目标状态,也即目标状态被激活时,目标应用程序应当处于运行状态。目标状态可以是一个或多个。The target application program depends on the target state in the target function group, that is, when the target state is activated, the target application program should be in the running state. There can be one or more target states.
首先,电子设备先通过配置工具进行应用配置开发,得到目标应用程序的配置文件,将上述目标应用程序的配置文件添加至S402中的目标软件集群。其中,配置文件定义了目标应用程序所依赖的目标状态。First, the electronic device performs application configuration development through a configuration tool to obtain the configuration file of the target application program, and adds the configuration file of the target application program to the target software cluster in S402. Among them, the configuration file defines the target state that the target application depends on.
然后,电子设备在目标软件集群下新建软件包,该软件包的名称也为目标容器的唯一标识,从而确保容器-功能组-软件集群-软件包之间的一一对应关系,之后通过配置工具生成代码框架,开发人员可以在该代码框架下完成对目标应用程序的业务逻辑的编码工作。Then, the electronic device creates a new software package under the target software cluster, and the name of the software package is also the unique identifier of the target container, thereby ensuring a one-to-one correspondence between the container-functional group-software cluster-software package, and then through the configuration tool Generate a code framework under which the developer can complete the coding work of the business logic of the target application.
最后,电子设备通过编译SDK对上述容器模板包、目标应用程序的配置文件、目标应用程序的执行代码文件进行编译处理,在指定目录下生成软件包,该软件包包括目标容器的容器模板包的相关内容、目标应用程序的执行程序文件、目标应用程序的配置文件。Finally, the electronic device compiles the above-mentioned container template package, the configuration file of the target application program, and the execution code file of the target application program by compiling the SDK, and generates a software package in a specified directory, which includes the container template package of the target container. Dependent content, target application's executable program file, target application's configuration file.
在一些实施例中,在获取目标应用程序的软件包之前,可以先检测电子设备中是否存在目标容器-目标功能组-目标软件集群这一对应关系,在存在上述对应关系的情况下,执行S403。In some embodiments, before obtaining the software package of the target application program, it may first be detected whether there is a corresponding relationship between the target container-target function group-target software cluster in the electronic device, and if the above-mentioned corresponding relationship exists, perform S403 .
S404,基于目标应用程序的软件包生成目标应用程序的容器部署包。S404. Generate a container deployment package of the target application based on the software package of the target application.
在一些实施例中,电子设备通过容器部署脚本对目标应用程序地软件包进行调整,得到指定格式的容器部署包。In some embodiments, the electronic device adjusts the software package of the target application program through the container deployment script to obtain a container deployment package in a specified format.
容器部署脚本是将目标应用程序的软件包调整成指定格式的容器部署包的自定义脚本程序,可以由开发人员开发得到。具体地,电子设备将目标容器的唯一标识、目标应用程序的软件包的路径、生成容器部署包的目录等三个参数传递至容器部署脚本,容器部署脚本基于上述三个参数将目标应用程序的软件包改造成符合UCM要求的目录结构,并创建后相关链接,最终将容器部署包输出至指定路径。The container deployment script is a custom script program that adjusts the software package of the target application into a container deployment package in a specified format, which can be developed by developers. Specifically, the electronic device passes three parameters, including the unique identifier of the target container, the path of the software package of the target application, and the directory where the container deployment package is generated, to the container deployment script, and the container deployment script transfers the target application's The software package is transformed into a directory structure that meets the requirements of UCM, and related links are created, and finally the container deployment package is output to the specified path.
综上所述,本申请实施例提供的技术方案,通过在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上(也即保证容器-功能组-软件集群-应用程序的一一对应关系)引入容器技术,得到封装有目标容器的容器模板包的容器部署包,在应用程序存在运行需求时,可以先基于目标容器的容器模板包启动目标容器,然后在目标容器中运行目标应用程序,由于容器可以进行资源隔离,因此每个容器所运行的应用程序彼此隔离,互不影响,某一应用程序运行异常时,其他应用程序仍可以正常运行,减小单个应用程序异常给AP平台整体带来的影响。To sum up, the technical solution provided by the embodiment of this application is based on keeping the function points of the basic modules of the AP architecture unchanged during the development process of the application program (that is, ensuring that the container-function group-software cluster-application One-to-one correspondence between programs) introduce container technology to obtain the container deployment package that encapsulates the container template package of the target container. When the application has running requirements, the target container can be started based on the container template package of the target container, and then Because the container can perform resource isolation, the applications run by each container are isolated from each other and do not affect each other. When an application runs abnormally, other applications can still run normally, reducing the size of a single application. The impact of the exception on the AP platform as a whole.
请参考图5,其示出本申请一个实施例提供的应用程序运行装置的框图。该装置包括:获取模块510、容器启动模块520和应用运行模块530。Please refer to FIG. 5 , which shows a block diagram of an application running device provided by an embodiment of the present application. The device includes: an obtaining
获取模块510,用于获取目标应用程序的容器部署包,容器部署包是指对目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件进行压缩得到的文件;其中,目标容器对应有目标功能组和目标软件集群,目标应用程序是目标软件集群中的应用程序,且目标应用程序依赖目标功能组中的目标状态。The acquiring
容器启动模块520,用于基于容器模板包启动目标容器。The
应用运行模块530,用于基于目标应用程序的执行程序文件和目标应用程序的配置文件,在目标容器中运行目标应用程序。The
综上所述,本申请实施例提供的技术方案,通过在应用程序的开发过程中,在保持AP架构基础模块的功能点不变更的基础上(也即保证容器-功能组-软件集群-应用程序的一一对应关系)引入容器技术,得到封装有目标容器的容器模板包的容器部署包,在应用程序存在运行需求时,可以先基于目标容器的容器模板包启动目标容器,然后在目标容器中运行目标应用程序,由于容器可以进行资源隔离,因此每个容器所运行的应用程序彼此隔离,互不影响,某一应用程序运行异常时,其他应用程序仍可以正常运行,减小单个应用程序异常给AP平台整体带来的影响。To sum up, the technical solution provided by the embodiment of this application is based on keeping the function points of the basic modules of the AP architecture unchanged during the development process of the application program (that is, ensuring that the container-function group-software cluster-application One-to-one correspondence between programs) introduce container technology to obtain the container deployment package that encapsulates the container template package of the target container. When the application has running requirements, the target container can be started based on the container template package of the target container, and then Because the container can perform resource isolation, the applications run by each container are isolated from each other and do not affect each other. When an application runs abnormally, other applications can still run normally, reducing the size of a single application. The impact of the exception on the AP platform as a whole.
在一些实施例中,应用运行模块530,用于:获取执行管理服务在确定满足目标应用程序的运行条件下发出的应用启动指令,其中,满足目标应用程序的运行条件是指目标功能组中的激活状态与目标应用程序所依赖的目标状态匹配;通过容器控制工具,基于目标应用的执行程序文件和目标应用程序的配置文件,在目标容器中启动目标应用程序。In some embodiments, the
在一些实施例中,应用运行模块530,用于:获取执行管理服务在确定不满足目标应用程序的运行条件下发出的应用结束指令;通过容器控制工具,在目标容器中结束目标应用程序。In some embodiments, the
在一些实施例中,容器启动模块520,用于:将容器部署包解压至运行环境的指定目录中,得到目标容器的容器模板包、目标应用程序的执行程序文件以及目标应用程序的配置文件;从容器模板包获取目标容器的容器服务文件;将容器服务文件创建软链接到系统守护进程;通过系统守护进程启动目标容器。In some embodiments, the
在一些实施例中,目标应用程序的容器部署包的获取步骤包括如下步骤:获取目标容器的容器模板包;通过配置工具创建目标功能组、与目标功能组对应的目标软件集群;基于容器模板包在目标软件集群下生成目标应用程序的软件包,目标应用程序依赖目标功能组中的目标状态;基于目标应用程序的软件包生成目标应用程序的容器部署包。In some embodiments, the step of obtaining the container deployment package of the target application includes the following steps: obtaining the container template package of the target container; creating a target function group and a target software cluster corresponding to the target function group through a configuration tool; A software package of the target application is generated under the target software cluster, and the target application depends on the target state in the target function group; a container deployment package of the target application is generated based on the software package of the target application.
在一些实施例中,基于目标应用程序的软件包生成目标应用程序的容器部署包,包括:将目标容器的名称、目标应用程序的软件包的路径、生成容器部署包的目录传递至容器部署脚本;通过容器部署脚本生成目标应用程序的容器部署包。In some embodiments, generating the container deployment package of the target application based on the software package of the target application includes: passing the name of the target container, the path of the software package of the target application, and the directory where the container deployment package is generated to the container deployment script ; Generate a container deployment package for the target application via a container deployment script.
在一些实施例中,获取目标容器的容器模板包,包括:获取目标容器的根文件系统目录、容器配置模板文件以及容器服务文件;对目标容器的根文件系统目录、容器配置模板文件以及容器服务文件进行压缩处理,得到目标容器的容器模板包。In some embodiments, obtaining the container template package of the target container includes: obtaining the root file system directory, the container configuration template file, and the container service file of the target container; The file is compressed to obtain the container template package of the target container.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that for the convenience and brevity of the description, the specific working process of the devices and modules described above can refer to the corresponding process in the foregoing method embodiments, which will not be repeated here.
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。In several embodiments provided in the present application, the coupling between the modules may be electrical, mechanical or other forms of coupling.
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。In addition, each functional module in each embodiment of the present application may be integrated into one processing module, each module may exist separately physically, or two or more modules may be integrated into one module. The above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules.
请参阅图6,其示出了本申请实施例还提供一种车辆600,该车辆600包括:一个或多个处理器610、存储器620以及一个或多个应用程序。其中,一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个应用程序配置用于执行上述实施例中所描述的方法。Please refer to FIG. 6 , which shows that the embodiment of the present application further provides a
处理器610可以包括一个或者多个处理核。处理器610利用各种接口和线路连接整个电池管理系统内的各种部分,通过运行或执行存储在存储器620内的指令、程序、代码集或指令集,以及调用存储在存储器620内的数据,执行电池管理系统的各种功能和处理数据。可选地,处理器610可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogic Array,PLA)中的至少一种硬件形式来实现。处理器610可集成中央处理器610(Central Processing Unit,CPU)、图像处理器610(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器610中,单独通过一块通信芯片进行实现。
存储器620可以包括随机存储器620(Random Access Memory,RAM),也可以包括只读存储器620(Read-Only Memory,ROM)。存储器620可用于存储指令、程序、代码、代码集或指令集。存储器620可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(例如,触控功能、声音播放功能、图像播放功能等)、用于实现上述各种方法实施例的指令等。存储数据区还可以存储车辆图在使用中所创建的数据(例如,电话本、音视频数据、聊天记录数据)等。The
请参阅图7,其示出了本申请实施例还提供一种计算机可读存储介质700,该计算机可读存储介质700中存储有计算机程序指令710,计算机程序指令710可被处理器调用以执行上述实施例中所描述的方法。Please refer to FIG. 7 , which shows that the embodiment of the present application also provides a computer-
计算机可读存储介质700可以是诸如闪存、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、电动程控只读存储器(Electrical Programmable Read Only Memory,EPROM)、硬盘或者只读存储器(Read-Only Memory,ROM)。可选地,计算机可读存储介质包括非易失性计算机可读存储介质(Non-transitory Computer-readable Storage Medium)。计算机可读存储介质700具有执行上述方法中的任何方法步骤的计算机程序指令710的存储空间。这些计算机程序指令710可以从一个或者多个计算机程序产品中读出或者可以写入到这一个或者多个计算机程序产品中。The computer-
以上,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制,虽然本申请已以较佳实施例揭示如上,然而并非用以限定本申请,任何本领域技术人员,在不脱离本申请技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本申请技术方案内容,依据本申请的技术实质对以上实施例所作的任何简介修改、等同变化与修饰,均仍属于本申请技术方案的范围内。The above are only the preferred embodiments of the application, and do not limit the application in any form. Although the application has been disclosed as above with the preferred embodiments, it is not intended to limit the application. Anyone skilled in the art, Without departing from the scope of the technical solution of the present application, when the technical content disclosed above can be used to make some changes or be modified into equivalent embodiments with equivalent changes, but if it does not deviate from the technical solution of the application, the technical essence of the application will Any brief modifications, equivalent changes and modifications made in the above embodiments still fall within the scope of the technical solutions of the present application.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211337557.5A CN115828231B (en) | 2022-10-28 | 2022-10-28 | Application program running method, device, vehicle and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211337557.5A CN115828231B (en) | 2022-10-28 | 2022-10-28 | Application program running method, device, vehicle and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115828231A true CN115828231A (en) | 2023-03-21 |
CN115828231B CN115828231B (en) | 2024-07-02 |
Family
ID=85525777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211337557.5A Active CN115828231B (en) | 2022-10-28 | 2022-10-28 | Application program running method, device, vehicle and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115828231B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541104A (en) * | 2023-07-04 | 2023-08-04 | 宁德时代新能源科技股份有限公司 | Program management method, control device, platform, device, and storage medium |
Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060722A1 (en) * | 2003-09-15 | 2005-03-17 | Trigence Corp. | System for containerization of application sets |
CN105490860A (en) * | 2015-12-24 | 2016-04-13 | 北京奇虎科技有限公司 | Method, device and system for deploying application program operation environment |
CN106020930A (en) * | 2016-05-13 | 2016-10-12 | 深圳市中润四方信息技术有限公司 | Application container based application management method and system |
CN106648741A (en) * | 2016-10-18 | 2017-05-10 | 广州视睿电子科技有限公司 | Application system deployment method and device |
CN106802807A (en) * | 2017-02-20 | 2017-06-06 | 深圳市冬泉谷信息技术有限公司 | Application delivery method, container platform and application delivery system based on container platform |
CN107885547A (en) * | 2017-11-08 | 2018-04-06 | 江苏国泰新点软件有限公司 | A kind of collocation method of application program, device, configuration equipment and storage medium |
CN108415795A (en) * | 2018-02-12 | 2018-08-17 | 人和未来生物科技(长沙)有限公司 | A kind of container Dockerfile, container mirror image rapid generation and system |
CN108920250A (en) * | 2018-06-05 | 2018-11-30 | 麒麟合盛网络技术股份有限公司 | The method and device of Application Container |
CN108958927A (en) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | Dispositions method, device, computer equipment and the storage medium of container application |
CN110058863A (en) * | 2019-03-16 | 2019-07-26 | 平安城市建设科技(深圳)有限公司 | Construction method, device, equipment and the storage medium of Docker container |
CN110795162A (en) * | 2019-09-26 | 2020-02-14 | 北京浪潮数据技术有限公司 | Method and device for generating container mirror image file |
CN111209087A (en) * | 2020-01-15 | 2020-05-29 | 南京中新赛克科技有限责任公司 | Docker-based big data learning platform building method |
CN111752635A (en) * | 2020-06-23 | 2020-10-09 | 北京三快在线科技有限公司 | Application program running method and device, computer equipment and storage medium |
CN111949276A (en) * | 2020-08-17 | 2020-11-17 | 浪潮云信息技术股份公司 | System and method for automatically deploying application program based on container mode |
CN112181588A (en) * | 2020-09-18 | 2021-01-05 | 济南浪潮数据技术有限公司 | Application containerization method and device, electronic equipment and storage medium |
CN112256287A (en) * | 2020-10-21 | 2021-01-22 | 武汉悦学帮网络技术有限公司 | Application deployment method and device |
CN112346818A (en) * | 2020-11-02 | 2021-02-09 | 北京新媒传信科技有限公司 | Container application deployment method and device, electronic equipment and storage medium |
CN113238763A (en) * | 2021-05-17 | 2021-08-10 | 京东数字科技控股股份有限公司 | Application deployment method, device, storage medium and program product |
CN114035890A (en) * | 2021-10-22 | 2022-02-11 | 广州三七网络科技有限公司 | Container technology-based CI/CD service deployment method, device, equipment and medium |
CN114217956A (en) * | 2021-11-19 | 2022-03-22 | 中国建设银行股份有限公司 | Container cluster deployment method and device and computer equipment |
CN114217908A (en) * | 2022-02-23 | 2022-03-22 | 广州趣丸网络科技有限公司 | Container starting method, system, device and equipment |
WO2022105589A1 (en) * | 2020-11-20 | 2022-05-27 | 上海连尚网络科技有限公司 | Resource scheduling method and apparatus, electronic device and computer readable medium |
CN114721783A (en) * | 2022-05-16 | 2022-07-08 | 龙芯中科技术股份有限公司 | Resource file extraction method and device, electronic equipment and storage medium |
CN114860344A (en) * | 2022-05-26 | 2022-08-05 | 中国工商银行股份有限公司 | Container starting method and device, computer equipment and storage medium |
US20220255941A1 (en) * | 2021-02-08 | 2022-08-11 | Veaa Inc. | Method and System for Secure Container Application Framework |
-
2022
- 2022-10-28 CN CN202211337557.5A patent/CN115828231B/en active Active
Patent Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060722A1 (en) * | 2003-09-15 | 2005-03-17 | Trigence Corp. | System for containerization of application sets |
CN105490860A (en) * | 2015-12-24 | 2016-04-13 | 北京奇虎科技有限公司 | Method, device and system for deploying application program operation environment |
CN106020930A (en) * | 2016-05-13 | 2016-10-12 | 深圳市中润四方信息技术有限公司 | Application container based application management method and system |
CN106648741A (en) * | 2016-10-18 | 2017-05-10 | 广州视睿电子科技有限公司 | Application system deployment method and device |
CN106802807A (en) * | 2017-02-20 | 2017-06-06 | 深圳市冬泉谷信息技术有限公司 | Application delivery method, container platform and application delivery system based on container platform |
CN107885547A (en) * | 2017-11-08 | 2018-04-06 | 江苏国泰新点软件有限公司 | A kind of collocation method of application program, device, configuration equipment and storage medium |
CN108415795A (en) * | 2018-02-12 | 2018-08-17 | 人和未来生物科技(长沙)有限公司 | A kind of container Dockerfile, container mirror image rapid generation and system |
CN108958927A (en) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | Dispositions method, device, computer equipment and the storage medium of container application |
CN108920250A (en) * | 2018-06-05 | 2018-11-30 | 麒麟合盛网络技术股份有限公司 | The method and device of Application Container |
CN110058863A (en) * | 2019-03-16 | 2019-07-26 | 平安城市建设科技(深圳)有限公司 | Construction method, device, equipment and the storage medium of Docker container |
CN110795162A (en) * | 2019-09-26 | 2020-02-14 | 北京浪潮数据技术有限公司 | Method and device for generating container mirror image file |
CN111209087A (en) * | 2020-01-15 | 2020-05-29 | 南京中新赛克科技有限责任公司 | Docker-based big data learning platform building method |
CN111752635A (en) * | 2020-06-23 | 2020-10-09 | 北京三快在线科技有限公司 | Application program running method and device, computer equipment and storage medium |
CN111949276A (en) * | 2020-08-17 | 2020-11-17 | 浪潮云信息技术股份公司 | System and method for automatically deploying application program based on container mode |
CN112181588A (en) * | 2020-09-18 | 2021-01-05 | 济南浪潮数据技术有限公司 | Application containerization method and device, electronic equipment and storage medium |
CN112256287A (en) * | 2020-10-21 | 2021-01-22 | 武汉悦学帮网络技术有限公司 | Application deployment method and device |
CN112346818A (en) * | 2020-11-02 | 2021-02-09 | 北京新媒传信科技有限公司 | Container application deployment method and device, electronic equipment and storage medium |
WO2022105589A1 (en) * | 2020-11-20 | 2022-05-27 | 上海连尚网络科技有限公司 | Resource scheduling method and apparatus, electronic device and computer readable medium |
US20220255941A1 (en) * | 2021-02-08 | 2022-08-11 | Veaa Inc. | Method and System for Secure Container Application Framework |
CN113238763A (en) * | 2021-05-17 | 2021-08-10 | 京东数字科技控股股份有限公司 | Application deployment method, device, storage medium and program product |
CN114035890A (en) * | 2021-10-22 | 2022-02-11 | 广州三七网络科技有限公司 | Container technology-based CI/CD service deployment method, device, equipment and medium |
CN114217956A (en) * | 2021-11-19 | 2022-03-22 | 中国建设银行股份有限公司 | Container cluster deployment method and device and computer equipment |
CN114217908A (en) * | 2022-02-23 | 2022-03-22 | 广州趣丸网络科技有限公司 | Container starting method, system, device and equipment |
CN114721783A (en) * | 2022-05-16 | 2022-07-08 | 龙芯中科技术股份有限公司 | Resource file extraction method and device, electronic equipment and storage medium |
CN114860344A (en) * | 2022-05-26 | 2022-08-05 | 中国工商银行股份有限公司 | Container starting method and device, computer equipment and storage medium |
Non-Patent Citations (1)
Title |
---|
许莉;: "一种基于软件容器的抗内部网络攻击涉密信息系统设计", 信息与电脑(理论版), no. 10, 23 May 2016 (2016-05-23) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541104A (en) * | 2023-07-04 | 2023-08-04 | 宁德时代新能源科技股份有限公司 | Program management method, control device, platform, device, and storage medium |
CN116541104B (en) * | 2023-07-04 | 2023-09-29 | 宁德时代新能源科技股份有限公司 | Program management method, control device, platform, device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN115828231B (en) | 2024-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006525575A (en) | Off-device class / resource loading method, system, and computer program product for debugging Java applications in Java microdevices | |
CN105159732B (en) | In mobile terminal installation or the method and mobile terminal of more new application | |
US20230153158A1 (en) | Method, apparatus, system, and storage medium for performing eda task | |
WO2021164367A1 (en) | Container mirror image providing method, container mirror image loading method, and related device and system | |
WO2012142798A1 (en) | Method and apparatus for loading application program | |
CN109445845B (en) | Interface calling method and device, computer equipment and storage medium | |
CN114168255A (en) | Method and device for running heterogeneous instruction set container in container cloud platform | |
CN111008132B (en) | Application debugging method and device for Android system, computer equipment and storage medium | |
CN114721719B (en) | Method and system for containerized deployment of heterogeneous applications in cluster | |
CN108829406B (en) | Installation package packaging method and device, electronic equipment and storage medium | |
CN116795647A (en) | A database heterogeneous resource management and scheduling method, device, equipment and medium | |
CN115828231B (en) | Application program running method, device, vehicle and storage medium | |
KR102372644B1 (en) | Operation method of operating system and electronic device supporting the same | |
CN106775916B (en) | Method and device for reducing application installation packages and electronic equipment | |
TW202403541A (en) | System, method and device for introducing applet into third-party APP and medium | |
CN106775608B (en) | Method and device for realizing independent system process | |
CN110825373B (en) | A mobile terminal dynamic method and device | |
JP2008269094A (en) | Information processing apparatus, information processing apparatus optimization method, and program | |
CN118092950A (en) | Heterogeneous supercomputing-oriented application software packaging method and system | |
WO2019157891A1 (en) | Application installation method and application installer generating method | |
WO2022179101A1 (en) | Software storage method under storage architecture | |
CN112596751B (en) | Compiling method, terminal, server and storage medium of application program installation package | |
Liu et al. | A concurrent approach for improving the efficiency of Android CTS testing | |
CN113590166B (en) | Application program updating method and device and computer readable storage medium | |
CN112306844A (en) | Interface testing method, device, equipment and storage medium of software development system |
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 | ||
GR01 | Patent grant |