CN111880830A - 分布式控制软件源代码的自动化编译链接和加载方法 - Google Patents
分布式控制软件源代码的自动化编译链接和加载方法 Download PDFInfo
- Publication number
- CN111880830A CN111880830A CN202010715383.6A CN202010715383A CN111880830A CN 111880830 A CN111880830 A CN 111880830A CN 202010715383 A CN202010715383 A CN 202010715383A CN 111880830 A CN111880830 A CN 111880830A
- Authority
- CN
- China
- Prior art keywords
- configuration
- downloading
- data
- upper computer
- loading
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Abstract
本发明涉及一种分布式控制软件源代码的自动化编译链接和加载方法。其包括如下步骤:步骤1、由用户执行配置操作;步骤2、采集用户下装按钮的状态信息;步骤3、生成新的可执行文件,并发送下载代码命令至受影响的配置项模块;步骤4、收到上位机的下载代码命令后,进入维护模式;步骤5、将待下载可执行文件下载至所述下位机的Flash存储器;步骤6、在可执行文件下载完成后,BootLoader程序回复上位机已加载完成;步骤7、上位机所述受影响的配置项模块发送下装数据指令,步骤8、与受影响的配置项模块相关的下位机收到上位机的下装数据命令,进入维护模式,接收用户配置数据。本发明能软件目标码加载至对应的目标机,降低配置数据文件漏加载等风险。
Description
技术领域
本发明涉及一种自动化编译链接和加载方法,尤其是一种分布式控制软件源代码的自动化编译链接和加载方法。
背景技术
编译链接和加载被广泛应用于数控系统中,它的作用是将软件源代码进行编译链接成可执行目标文件,通过加载技术完成目标文件的加载,使数控软件得到更新。
然而燃机分布式平台存在多个支持的目标处理器,并有自己的交叉编译工具链,对于开发人员需要多个软件的学习和管理成本;且燃机控制软件在组态开发过程中,会产生大量与项目相关的数据文件,如IO组态数据、通讯组态数据、逻辑组态数据等,无法高效便捷的对多个项目的数据文件进行加载,存在软件目标码加载至非对应的目标机、配置数据文件漏加载等风险。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种分布式控制软件源代码的自动化编译链接和加载方法,其根据待编译目标所使用的处理器和交叉编译工具链,将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,生产新的可执行文件;之后让控制器进入加载维护模式,根据组态平台与下位机程序之间的加载机制,完成可执行文件及数据配置文件的加载。
按照本发明提供的技术方案,一种分布式控制软件源代码的自动化编译链接和加载方法,所述编译链接和加载方法包括如下步骤:
步骤1、在上位机上运行组态软件,并由用户执行配置操作,且在配置操作执行完成后跳转至步骤2;
步骤2、通过组态软件采集用户下装按钮的状态信息,当下装按钮处于置上状态时,跳转至步骤3;
步骤3、将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,以生成新的可执行文件,并发送下载代码命令至受影响的配置项模块;
步骤4、与受影响的配置项模块相关的下位机收到上位机的下载代码命令后,进入维护模式,在NVRAM中设置加载标志为1,且回复上位机已进入下装维护模式;
步骤5、下位机调用CPU软复位指令对CPU进行复位并运行BootLoader程序,BootLoader程序判断NVRAM中的加载标志为1时,进入加载模式与上位机进行交互,将待下载可执行文件下载至所述下位机的Flash存储器;
步骤6、在可执行文件下载完成后,BootLoader程序回复上位机已加载完成,清除NVRAM中的加载标志并复位所述下位机的CPU,重新运行下位机的控制软件;
步骤7、上位机收到受影响的配置项模块回复的完成加载帧,向所述受影响的配置项模块发送下装数据指令,并将用户配置文件发送至受影响的配置项模块;
步骤8、与受影响的配置项模块相关的下位机收到上位机的下装数据命令,进入维护模式,接收用户配置数据,并存入FLASH存储器,完成后回复上位机完成下装数据帧。
所述下位机包括主站以及从站。
本发明的优点:根据编译目标处理器和交叉编译工具链,将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,生产新的可执行文件;之后让控制器进入加载维护模式,根据组态平台与下位机程序之间的加载机制,完成可执行文件及数据配置文件的加载,能软件目标码加载至对应的目标机,降低配置数据文件漏加载等风险。
附图说明
图1为本发明自动化编译及加载的流程图。
图2为本发明主站软件上下装处理流程图。
图3为本发明从站软件上下装处理流程图。
具体实施方式
下面结合具体附图和实施例对本发明作进一步说明。
为了根据待编译所使用的目标处理器和交叉编译工具链,将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,生产新的可执行文件;之后让控制器进入加载维护模式,根据组态平台与下位机之间的加载机制,完成可执行文件及数据配置文件的加载,本发明的编译链接和加载方法包括如下步骤:
步骤1、在上位机上运行组态软件,并由用户执行配置操作,且在配置操作执行完成后跳转至步骤2;
具体地,目标处理器为下位机的处理器,所述下位机包括主站以及从站。下位机通过以太网与上位机连接,以实现上位机与下位机之间的通信,下位机、NVRAM( Non-VolatileRandom Access Memory,非易失性随机访问存储器)以及上位机之间的具体关系过程为本技术领域人员所熟知,此处不再赘述。
上位机上的组态软件即为燃机控制用的组态软件,具体组态软件的类型为本技术领域人员所熟知,此处不再赘述。在上位机内设置交叉编译工具链接,以通过交叉编译工具链来编译用户配置文件作为数据文件与受影响的配置项代码,交叉编译工具链接可以采用现有常用的形式,具体为本技术领域人员所熟知,此处不再赘述。在上位机的组态软件上进行配置操作,具体执行配置操作的过程可以根据实际需要进行选择,此处不再赘述。
步骤2、通过组态软件采集用户下装按钮的状态信息,当下装按钮处于置上状态时,跳转至步骤3;
具体地,用户下装按钮为组态燃机上的一个控制按钮,当触发用户下装按钮时,能向相应的下位机进行下发数据。
步骤3、将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,以生成新的可执行文件,并发送下载代码命令至受影响的配置项模块;
具体地,上位机的组态软件将用户配置文件打包成.a文件,在上位机界面选择受到影响的配置项进行编译链接,选择对应的下位机,从而能将可执行文件能下发至与受影响的配置项模块的下位机内。
步骤4、与受影响的配置项模块相关的下位机收到上位机的下载代码命令后,进入维护模式,在NVRAM中设置加载标志为1,且回复上位机已进入下装维护模式;
步骤5、下位机调用CPU软复位指令对CPU进行复位并运行BootLoader程序,BootLoader程序判断NVRAM中的加载标志为1时,进入加载模式与上位机进行交互,将待下载可执行文件下载至所述下位机的Flash存储器;
具体地,所述CPU为下位机内的处理器,CPU的具体类型与下位机相关,具体为本技术领域人员所熟知,此处不再赘述。在下位机的CPU内,包括BootLoader程序以及FLASH存储器,具体与现有相一致,具体为本技术领域人员所熟知,此处不再赘述。
本发明实施例中,CPU上电或复位后先执行BootLoader程序,BootLoader程序根据NVRAM中的加载标志判断是留在BootLoader中执行程序下载(加载标志为1)还是跳到下位机软件中执行控制任务(加载标志为0)。一般都是跳转到下位机软件中执行任务,此时步骤3、步骤4开始,下位机软件收到收到上位机发送的下载代码命令,在NVRAM中设置加载标志为1,CPU执行复位并重新运行BootLoader,此时加载标志为1,则留在BootLoader中执行后续的下载操作。具体地,之所以选择NVRAM,是因为NVRAM可以保证复位或掉电后数据还可以保存,这样CPU复位后,NVRAM中设置的加载标志1还可以保留。
步骤6、在可执行文件下载完成后,BootLoader程序回复上位机已加载完成,清除NVRAM中的加载标志并复位所述下位机的CPU,重新运行下位机的控制软件;
步骤7、上位机收到受影响的配置项模块回复的完成加载帧,向所述受影响的配置项模块发送下装数据指令,并将用户配置文件发送至受影响的配置项模块;
步骤8、与受影响的配置项模块相关的下位机收到上位机的下装数据命令,进入维护模式,接收用户配置数据,并存入FLASH存储器,完成后回复上位机完成下装数据帧。
下面根据图1、图2和图3,对具体的过程进行详细说明。
如图1所示,具体地,在上位机上运行配置工具,上位机的组态软件判断用户是否完成配置,当用户完成配置后,等待用户下装按钮的信息,当采集到用户下装按钮后,编译受影响的配置项代码,生成新的可执行文件,并发送下装代码命令给CPU模块。
在经过上述操作后,在下位机上运行相对应的控制软件,当下位机的CPU收到上位机的下载代码命令后,下位机的CPU进入维护状态,并在NVRAM中设置加载标志为1,通知其他模块在各自NVRAM中设置加载标志为1。下位机给上位机连续发送5个周期的加载标志为1的指令。在向上位机发送指令后,下位机复位CPU。在复位CPU后,下位机开始允许BootLoader程序,当BootLoader程序检测到NVRAM中的加载标志为1时,进入加载模式。在进入即在模式后,下位机清除NVRAM中的加载标志,并加载软件。
在下位机加载软件时,上位机延迟5个周期开始允许下位机下载受影响配置可执行代码,在下载受影响配置可执行代码后,当下位机下载完成后,下位机向上位机发送加载完成指令,上位机在收到加载完成指令后,延迟5个周期开始发送下装配置数据命令。
下位机在向上位机发送加载完成指令后,自动复位CPU,并判断CPU是否收到上位机的下载配置数据命令,当收到下载配置数据命令后,下位机进入维护状态,并给上位机发送配置数据接收准备好命令。
对于上位机,在收到下位机发送的配置数据接收准备好标志后,上位机向下位机发送配置数据,下位机在收到配置数据后,填充配置数据至所述下位机的FLASH存储器内。在填充后,所述下位机向上位机发送下装配置数据完成标志,上位机在收到下位机的下装配置数据完成标志后,上位机输出用户下装完成提示,至此,上位机与下位机配合,实现源代码的编译链接与加载。
如图2所示,为下位机为主站时,对应下装流程的示意图,具体地,主站接收上位机的数据,对接收的数据,主站判断是否为数据帧,当为数据帧时,则进行数据帧的流程,否则进入命令帧的流程。
对于数据帧的流程,解释数据帧,解析后,判断配置数据区第一个字为主站或从站,当找到第一包后,开始依次解包,否则,循环等待。在解包后,对数据帧校验通过,且数据帧为期望的某一包时,将有效数据拷贝到配置信息中对应的位置中;而某包接收数据和期望不一致或未开始解包,发送分包数据接收失败命令,等待上位机重新发送。当判断当前下位机为主站时,设置主站下载标志为真,否则,设置从站下载标志为真。在设置主站下载标志为真后,将配置信息下载到FLASH存储器中,建立主站下装完成标志。在设置从站标志为真后,设置相对应从站发送的标志,检测到相对应从站发送标志为真后,判断为首包,当是首包时,发送第一包,否则,判断前一包数据从站解包是否正确,不正确时,重复发送所述数据包,解析正确时,发送下一包,直到发送完成,建立从站下装完成标志。判断所有从站下载完成标志为真,当所有从站的下载完成标志为真时,向上位机发送下装完成命令帧,至此,数据帧的流程结束。
对于命令帧的流程,包括配置文件上装的流程以及配置文件下装的流程。对于配置文件上装的流程,具体地,先进行配置文件上装,然后设置主站进入维护状态。当上装主站配置文件时,进行上装主站配置文件的流程,否则,给从站发送配置文件上装命令。
对于上装主站配置文件且检测到开始上装标志为真时,发送主站上装准备好命令。接收到数据包后,判断是否为首包,当为首包时,向上位机发送第一包,并判断前一包数据上位机解包是否正确,当判断为非首包时,直接判断前一包数据上位机解包是否正确。当上位机解包非正确时,重复发送所述数据包,直至判断前一包数据上位机解包正确为止。当前一包数据上位机解包正确时,发送下一包,直至数据发送完成,上装主站配置文件的流程结束。
给从站发送配置文件上装命令后,循环检测是否收到从站上装准备好命令,当收到从站上装准备好命令后,发送从站上装准备好命令。循环判断数据区第一个字是否为从站,当为从站时,找到第一包,开始依次解包。当数据帧校验通过,且数据帧为期望的某一包时,发送所述包从站数据给上位机,否则,某包接收数据和期望不一致或未开始分解包,发送分包数据接收失败命令,等待从站重新发送。在发送所述包从站数据给上位机后,判断前一包数据上位机解包是否正确,不正确时,重复发送该包数据,直至上位机解包正确,此时,发送下一包,直到发送完成。
对于配置文件下装,设置主站进入维护状态,判断是否需要下载主站配置文件,当下载时,向上位机发送主站接收配置文件准备好命令;否则,向从站发送配置文件下装命令。循环检测收到从站接收配置文件准备好命令,当收到从站接收配置文件准备好命令后,向上位机发送从站接收配置文件准备好命令。
如图3所示,为从站软件上装、下装的流程,具体地,从站先接收主站数据,在接收主站数据后,后续包括数据帧流程以及命令帧流程。单位数据帧流程时,解析数据帧,解析后判断数据区第一个字是否为从站,当为从站时,找到第一包,开始依次解包,而当数据区第一个字不是从站时,找不到第一包,循环等待,并解析数据帧。在解包后,当数据帧校验通过,且数据帧为期望的某一包时,将有效数据拷贝到配置信息中对应的位置中,否则,某包接收数据和期望不一致或未开始解包,发送分包数据接收失败命令,等待主站重新发送。在将有效数据拷贝到配置信息中对应的位置中后,设置从站下装标志为真,下装标志为真,将配置信息下载到FLASH中,建立从站下装完成标志。
对于命令帧流程,包括配置文件上装流程以及配置文件下装流程。对于对于配置文件上装流程,先进行配置文件上装,在设置从站进入维护状态,当检测到开始上装标志为真后,发送从站上装准备好命令。当数据包为首包时,向主站发送第一包;向主站发送第一包且数据包不是首包时,均判断前一包数据主站解包是否正确,当解包不正确时,重复发送该包,直至前一包数据主站解包正确,此后,发送下一包,直到发送完成。
对于配置文件下装时,需要设置从站进入维护状态,然后向主站发送从站接收配置文件准备好命令。
Claims (2)
1.一种分布式控制软件源代码的自动化编译链接和加载方法,其特征是,所述编译链接和加载方法包括如下步骤:
步骤1、在上位机上运行组态软件,并由用户执行配置操作,且在配置操作执行完成后跳转至步骤2;
步骤2、通过组态软件采集用户下装按钮的状态信息,当下装按钮处于置上状态时,跳转至步骤3;
步骤3、将用户配置文件作为数据文件与受影响的配置项代码进行编译链接,以生成新的可执行文件,并发送下载代码命令至受影响的配置项模块;
步骤4、与受影响的配置项模块相关的下位机收到上位机的下载代码命令后,进入维护模式,在NVRAM中设置加载标志为1,且回复上位机已进入下装维护模式;
步骤5、下位机调用CPU软复位指令对CPU进行复位并运行BootLoader程序,BootLoader程序判断NVRAM中的加载标志为1时,进入加载模式与上位机进行交互,将待下载可执行文件下载至所述下位机的Flash存储器;
步骤6、在可执行文件下载完成后,BootLoader程序回复上位机已加载完成,清除NVRAM中的加载标志并复位所述下位机的CPU,重新运行下位机的控制软件;
步骤7、上位机收到受影响的配置项模块回复的完成加载帧,向所述受影响的配置项模块发送下装数据指令,并将用户配置文件发送至受影响的配置项模块;
步骤8、与受影响的配置项模块相关的下位机收到上位机的下装数据命令,进入维护模式,接收用户配置数据,并存入FLASH存储器,完成后回复上位机完成下装数据帧。
2.根据权利要求1所述的分布式控制软件源代码的自动化编译链接和加载方法,其特征是:所述下位机包括主站以及从站。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010715383.6A CN111880830B (zh) | 2020-07-23 | 2020-07-23 | 分布式控制软件源代码的自动化编译链接和加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010715383.6A CN111880830B (zh) | 2020-07-23 | 2020-07-23 | 分布式控制软件源代码的自动化编译链接和加载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111880830A true CN111880830A (zh) | 2020-11-03 |
CN111880830B CN111880830B (zh) | 2022-10-11 |
Family
ID=73155825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010715383.6A Active CN111880830B (zh) | 2020-07-23 | 2020-07-23 | 分布式控制软件源代码的自动化编译链接和加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111880830B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282296A (zh) * | 2021-05-31 | 2021-08-20 | 河南信大网御科技有限公司 | 基于数据面编程的数据转发方法及装置 |
CN115185900A (zh) * | 2022-05-20 | 2022-10-14 | 中核武汉核电运行技术股份有限公司 | 一种时序数据实时计算算法下装方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080635A1 (en) * | 2004-10-12 | 2006-04-13 | Majid Anwar | Dynamic linking in constrained environment |
CN104111890A (zh) * | 2014-07-29 | 2014-10-22 | 北京航空航天大学 | 一种实时性能测试方法与系统 |
CN104572237A (zh) * | 2015-01-19 | 2015-04-29 | 上海动联信息技术股份有限公司 | 一种UKey安装包自动快速生成系统及其方法 |
CN105224362A (zh) * | 2015-09-18 | 2016-01-06 | 深圳市新产业生物医学工程股份有限公司 | 上位机对下位机进行程序升级的方法及系统 |
CN106775904A (zh) * | 2017-03-03 | 2017-05-31 | 北京电擎科技股份有限公司 | 一种微控制器嵌入式系统的程序烧写系统及方法 |
CN110457044A (zh) * | 2019-07-04 | 2019-11-15 | 广东三维家信息科技有限公司 | Haxe应用程序的编译方法、装置及电子设备 |
-
2020
- 2020-07-23 CN CN202010715383.6A patent/CN111880830B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080635A1 (en) * | 2004-10-12 | 2006-04-13 | Majid Anwar | Dynamic linking in constrained environment |
CN104111890A (zh) * | 2014-07-29 | 2014-10-22 | 北京航空航天大学 | 一种实时性能测试方法与系统 |
CN104572237A (zh) * | 2015-01-19 | 2015-04-29 | 上海动联信息技术股份有限公司 | 一种UKey安装包自动快速生成系统及其方法 |
CN105224362A (zh) * | 2015-09-18 | 2016-01-06 | 深圳市新产业生物医学工程股份有限公司 | 上位机对下位机进行程序升级的方法及系统 |
CN106775904A (zh) * | 2017-03-03 | 2017-05-31 | 北京电擎科技股份有限公司 | 一种微控制器嵌入式系统的程序烧写系统及方法 |
CN110457044A (zh) * | 2019-07-04 | 2019-11-15 | 广东三维家信息科技有限公司 | Haxe应用程序的编译方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282296A (zh) * | 2021-05-31 | 2021-08-20 | 河南信大网御科技有限公司 | 基于数据面编程的数据转发方法及装置 |
CN113282296B (zh) * | 2021-05-31 | 2022-12-13 | 河南信大网御科技有限公司 | 基于数据面编程的数据转发方法及装置 |
CN115185900A (zh) * | 2022-05-20 | 2022-10-14 | 中核武汉核电运行技术股份有限公司 | 一种时序数据实时计算算法下装方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111880830B (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111880830B (zh) | 分布式控制软件源代码的自动化编译链接和加载方法 | |
CN108399083B (zh) | 一种系统部署方法、装置、电子设备和存储介质 | |
US8572583B2 (en) | Method and system for testing software for industrial machine | |
CN104572206A (zh) | 应用程序自更新和备份恢复的方法 | |
CN111400119A (zh) | 多项目与多平台自适应的芯片设计fpga原型验证方法及系统 | |
US10579513B2 (en) | Test run control method and apparatus | |
CN107329889B (zh) | 一种c编译器自动化测试的方法 | |
CN111078265B (zh) | 一种基于jenkins的web项目更新补丁生成方法 | |
CN111611157B (zh) | Gms持续集成构建自动化测试方法及系统 | |
CN110704113B (zh) | 一种基于fpga平台的启动方法、系统及开发板装置 | |
CN115390809A (zh) | 一种仿真调度方法及系统 | |
CN114546819A (zh) | 代码处理方法、装置、电子设备及可读介质 | |
CN110990833A (zh) | 一种sdk安全检测方法及相关设备 | |
CN115964045A (zh) | 一种跨架构的操作系统快速自动化构建的方法、装置及介质 | |
CN108874405B (zh) | 一种OpenStack环境升级方法 | |
CN110928798A (zh) | 一种代码测试方法、装置及设备 | |
CN111324355A (zh) | 一种调试众核代码的方法及系统 | |
CN114327396A (zh) | 脱离源码编译环境开发Andriod系统应用的方法 | |
CN114780113A (zh) | 更新方法及装置 | |
CN117724964A (zh) | 一种操作系统调试方法及终端 | |
CN116088869A (zh) | 一种面向智能用电终端的操作系统适配方法及系统 | |
JP3903514B2 (ja) | 未定義変数検出の最適化コンパイラ装置 | |
CN111831565A (zh) | 基于软件测试或开发用的模拟服务构建方法和系统 | |
CN115220726A (zh) | 一种微服务应用的开发方法及装置 | |
CN115756476A (zh) | Android系统自动刷机方法、装置、电子设备及存储介质 |
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 | ||
GR01 | Patent grant |