CN107577609A - 一种基于主机端动态链接的嵌入式系统动态模块调试方法 - Google Patents
一种基于主机端动态链接的嵌入式系统动态模块调试方法 Download PDFInfo
- Publication number
- CN107577609A CN107577609A CN201710893864.4A CN201710893864A CN107577609A CN 107577609 A CN107577609 A CN 107577609A CN 201710893864 A CN201710893864 A CN 201710893864A CN 107577609 A CN107577609 A CN 107577609A
- Authority
- CN
- China
- Prior art keywords
- dynamic
- module
- host
- linker
- target machine
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于主机端动态链接的嵌入式系统动态模块调试系统,其中,包括:宿主机与目标机;宿主机包括:工程管理模块,用于在新建工程时,指定工程编译后生成可重定位的目标文件;动态链接器,用于宿主机根据可重定位文件、链接脚本与目标机反馈的符号实际地址生成可绝对定位的目标文件;GDB调试器,用于用户通过命令或者图形化的方式发送调试命令;宿主机支撑平台,用于作为宿主机与目标机的通信接口;目标机包括:动态加载器,用于管理目标机上所有的符号;动态链接器代理模块,用于与宿主机动态链接器的交互,为动态链接器完成动态链接提供服务;调试代理模块,用于通过接收GDB调试器的调试命令,控制被调试程序的运行;目标机支撑平台,用于作为目标机与主机的通信接口为网络。
Description
技术领域
本发明属于计算机嵌入式软件领域,具体涉及一种基于主机端动态链接的嵌入式系统动态模块调试方法。
背景技术
动态链接是相对于静态链接而言的一种技术。动态链接在编译阶段不对组成程序的目标文件链接,而是将链接过程推迟到了运行时再进行。对于资源有限的嵌入式系统,动态链接技术可以有效解决共享的目标文件多个副本浪费磁盘和内存空间的问题,还可以减少物理页面的换入换出,增加CPU缓存的命中率,同时还可以使程序升级变得更加容易。
动态链接的基本思想决定了动态模块对应目标文件中的函数和变量的地址是相对地址,其真实地址在动态模块运行时才能产生,这就为动态模块的在线调试带来了问题,因为调试过程要求获悉被调试目标文件内函数和变量的真实地址。桌面系统常用的解决方法是在调试之前首先将动态模块与应用模块链接,使动态模块各符号具有绝对地址,这样调试器就可以访问和控制被调试的动态模块。与桌面系统不同的是,嵌入式系统采用远程交叉调试的方式,即调试器运行于宿主机的通用桌面系统,被调试程序运行于目标机的嵌入式系统,调试器通过目标机的调试代理远程控制和访问运行在目标机系统上的被调试程序。
目前在对嵌入式系统动态模块进行调试时,通常的方案是主机端在遇到目标文件中的未定义符号时,向目标机获取符号的绝对定位地址,目标机则将符号及符号绝对定位地址返回给主机端,从而完成一次未定义符号的调试过程。
主机端通过在调试过程中查询未定义符号运行时地址,完成调试的手段,需要在调试时反复多次进行主机端与目标机的信息交互。这种方式无疑提高了调试阶段宿主机与目标机信息交互频次,降低了调试的性能,影响用户体验。此外,主机端实现调试过程依赖于目标机文件系统和动态加载器的实现,降低了主机端调试功能的通用性和可移植性。
发明内容
本发明的目的在于提供一种基于主机端动态链接的嵌入式系统动态模块调试系统,用于解决上述现有技术的问题。
本发明一种基于主机端动态链接的嵌入式系统动态模块调试系统,其中,包括:宿主机与目标机;宿主机包括:工程管理模块,用于在新建工程时,指定工程编译后生成可重定位的目标文件;动态链接器,用于宿主机根据可重定位文件、链接脚本与目标机反馈的符号实际地址生成可绝对定位的目标文件;GDB调试器,用于用户通过命令或者图形化的方式发送调试命令;宿主机支撑平台,用于作为宿主机与目标机的通信接口;目标机包括:动态加载器,用于管理目标机上所有的符号;动态链接器代理模块,用于与宿主机动态链接器的交互,为动态链接器完成动态链接提供服务;调试代理模块,用于通过接收GDB调试器的调试命令,控制被调试程序的运行;目标机支撑平台,用于作为目标机与主机的通信接口为网络。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,在CCS开发环境中创建一个可重定位的文件,在工程管理模块中添加-r选项,告知编译器在编译阶段遇到未定义符号时不报错;然后运行动态链接器,动态链接器的输入为可重定位文件、与目标机有关的链接脚本文件,输出为一个绝对定位的二进制文件。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,目标机运行的嵌入式操作系统为tyche3.7。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,动态链接器将可重定位的文件中所有外部符号的地址使用目标机相同符号实际地址进行替换,生成可绝对定位的文件。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,动态链接器代理的组件包括:初始化模块以及命令处理模块;初始化模块调用网络的初始化操作完成通信路径的初始化,开始接收宿主机的动态链接器发送的指令;初始化模块结束之后,目标机接收动态链接器发送的指令,命令处理模块将根据一条完整指令的首字母判断当前指令的类型。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,动态链接器代理申请目标机的一段内存,作为动态模块目标文件在目标机存储的位置;动态链接器获取目标机管理的所有符号的信息后,动态链接器通过解析动态模块生成的可重定位文件,将可重定位文件内的未定义符号的地址使用获取的符号实际地址进行替换;动态链接器发送下载文件的指令,动态链接器代理将动态链接器生成的文件的数据段下载到目标机申请的内存中;动态链接器向动态链接器代理发送调试指令。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,命令处理模块将根据一条完整指令的首字母判断当前指令的类型。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,命令处理模块将根据一条完整指令的首字母判断当前指令的类型包括:首字母为m,动态链接器代理接收到该指令后,使用内存分配函数获取一段内存,成功分配后,返回“ok:地址”字符串;首字母为S,动态链接器代理接收到该指令后,获取内存中动态加载器管理的符号信息,包括符号名称和地址,获取成功后,返回“ok:[<符号名称,地址>]$”字符串;首字母为X,动态链接器代理接收到该指令后,将文件内容下载到指定的地址中;首字母为r,动态链接器代理接收到该指令后,将根据调试类型启动对应的调试模块;首字母为f,动态链接器代理接收到该指令后,释放对应的内存地址。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,动态加载器,运行于嵌入式操作系统之上,通过解析ELF文件,获取与管理目标机所有的符号。
根据本发明的基于主机端动态链接的嵌入式系统动态模块调试系统的一实施例,其中,宿主机通过解析动态模块生成的可重定位文件,将可重定位文件内的未定义符号的地址使用获取的符号实际地址进行替换;宿主机的动态链接器生成一个绝对定位的二进制ELF文件。
本发明的基于主机端动态链接的嵌入式系统动态模块调试系统,通过搭建交叉调试系统,在用户调试前为动态模块建立一个与运行时完全一致的符号绝对定位的ELF文件,省略了调试阶段的获取未定义符号信息的交互环节,为基于嵌入式系统进行动态模块开发的用户提供一种高效的调试方案。
附图说明
图1是本发明基于主机端动态链接的嵌入式系统动态模块调试系统的总体层次结构图;
图2所示为动态链接器的工作流程图;
图3所示为动态链接器代理的工作流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1是本发明基于主机端动态链接的嵌入式系统动态模块调试系统的总体层次结构图,如图1所示,本发明提出基于主机端动态链接的嵌入式系统动态模块调试方法,实现本方法需要宿主机1和目标机2协同工作,共同完成。
如图1所示,宿主机1的模块包括:工程管理模块11,通过在新建工程时在工程属性中添加编译选项-r,指定工程编译后生成可重定位的目标文件。动态链接器12,用于宿主机1通过动态链接器12,根据可重定位文件、链接脚本与目标机反馈的符号实际地址生成可绝对定位的目标文件。GDB调试器13,用于用户通过命令或者图形化的方式发送调试命令。宿主机支撑平台14,用于宿主机运行操作系统为Windows xp,宿主机1与目标机2的通信接口为网络。
如图1所示,首先由用户在CCS开发环境中创建一个可重定位的文件,在编译选项中添加-r选项,告知编译器该文件在编译阶段遇到未定义符号时不报错。然后运行动态链接器12,动态链接器12的输入为可重定位文件、与目标机2有关的链接脚本文件,输出为一个绝对定位的二进制文件。最后用户通过动态链接器12中进行动态模块调试。
如图1所示,目标机2包括:动态加载器21,该模块管理目标机上所有的符号,具体包括符号的名称和符号实际地址。动态链接器代理模块22,该模块完成与宿主机动态链接器12的交互,为动态链接器12完成动态链接提供服务。基于嵌入式操作系统实现的调试代理模块23该模块通过接收宿主机1的GDB调试器13调试命令,控制被调试程序的运行。目标机支撑平台24目标机运行的嵌入式操作系统为tyche3.7,目标机2与主机1的通信接口为网络。
目标机2运行的嵌入式操作系统为tyche3.7,该版本的操作系统集成了调试代理23、动态链接器代理22与动态加载器21。在宿主机1动态链接器12开始运行前,启动目标机2下载并且运行tyche操作系统。Tyche操作系统启动后,启动动态加载器21,将tyche操作系统的所有内核符号获取并且管理,之后启动动态链接器代理模块22,该模块将等待宿主机1的动态链接器12的链接与信息交互。最后启动调试代理23,等待接受用户对动态模块的调试。
如图1所示,宿主机1的动态链接器12将可重定位的文件中所有外部符号的地址使用目标机2相同符号实际地址进行替换,生成可绝对定位的文件。。
图2所示为动态链接器的工作流程图,如图2所示,本实施例的动态链接器的工作流程为:
(1)申请目标机2的一段内存。上位机(上位机是宿主机么)首先获取可重定位文件的大小,然后发送“m:length”指令给目标机2。在目标机2申请一段内存,作为动态模块目标文件在目标机2存储的位置。
(2)获取目标机2管理的所有符号的信息。这些信息包含当前动态模块需要的外部符号名称和实际地址。该步骤是通过宿主机1向目标机2发送“S”命令完成。该过程成功执行后,宿主机1可以获取所有符号的实际地址;该过程发生异常时,需要向目标机2发送“f:地址”命令,释放目标机2内存。
(3)生成绝对定位文件。宿主机1获取到目标机2管理的所有符号后,通过解析动态模块生成的可重定位文件,将可重定位文件内的未定义符号的地址使用获取的符号实际地址进行替换。该过程成功后宿主机1的动态链接器12生成一个绝对定位的二进制ELF文件;该过程发生异常时,需要向目标机发送“f:地址”命令,释放目标机2内存。
(4)宿主机1发送下载文件的指令,“X:地址:长度:文件内容”。该过程将动态链接器12生成的ELF文件的数据段下载到步骤(1)申请的内存中。
(5)宿主机1发送调试指令“r:地址:调试类型”。
通过以上步骤,一个动态模块生成的可重定位文件就已经下载到目标机2内存。
本实施例中,由于所使用的与底层进行信息交互的协议与具体的平台无关,即使更换一种硬件平台,也不需要修改动态链接器12的实现。
如图1所示,目标机2与宿主机1的动态链接器12进行信息交互的为动态链接器代理22,该模块为宿主机1完成动态链接提供服务功能。
图3所示为动态链接器代理的工作流程图,如图1以及图3所示,动态链接器代理22的组件包括以下模块:初始化模块、命令处理模块。
(1)初始化模块首先调用网络的初始化操作完成通信路径的初始化。开始接收宿主机1的动态链接器12发送的指令。
(2)初始化模块结束之后,目标机2可以接收动态链接器12发送的指令。命令处理模块将根据一条完整指令的首字母判断当前指令的类型。
首字母为m。该指令的完整指令为“m:长度”。动态链接器代理22接收到该指令后,使用内存分配函数获取一段内存。成功分配后,返回“ok:地址”字符串。
首字母为S。该指令为获取符号信息指令。动态链接器代理22接收到该指令后,获取内存中动态加载器管理的符号信息,包括符号名称和地址。获取成功后,返回“ok:[<符号名称,地址>]$”字符串。
首字母为X。该指令的完整形式为“X:地址:长度:文件内容”。动态链接器代理22接收到该指令后,将文件内容下载到指定的地址中。
首字母为r。该指令的完整形式为“r:地址:调试类型”。动态链接器代理22接收到该指令后,将根据调试类型启动对应的调试模块。调试的类型可以为任务级调试和系统级调试。
首字母为f。该指令的完整形式为“f:地址”。动态链接器代理22接收到该指令后,释放对应的内存地址。
嵌入式系统远程调试,需要在目标机2实现调试代理组件。GDB调试器13运行于宿主机1上,由用户启动运行并发送调试命令。GDB调试器13通过与目标机2的调试代理组件交互,达到远程控制嵌入式应用的状态跟踪的效果。
如图1所示,进一步的,宿主机1的组件包括:工程管理模块11,用于创建与管理动态模块工程,并生成动态模块的可重定位目标文件,该文件内引用的外部符号地址为空;动态链接器模块12,获取外部符号地址,并将可重定位文件内的外部符号地址修改成可绝对定位的地址;GDB调试器13,用户通过GDB调试器13向目标机2调试代理发送调试命令,控制动态模块的调试和运行;宿主机支撑平台14,是宿主机其他模块运行的支撑平台,提供与目标机2通信的物理接口。
如图1所示,目标机2的组件包括:嵌入式操作系统,为动态模块运行时的系统支撑软件;调试代理23,完成和宿主机调试器的通信;动态链接器代理模块,接收宿主机的命令,并反馈宿主机的动态链接器模块所需的符号及其地址信息,配合宿主机完成动态模块的动态链接;动态加载器21,运行于嵌入式操作系统之上,通过解析ELF文件,获取与管理目标机所有的符号。
本发明实例所用的目标机硬件平台是Texas公司的TMS320C6678数字信号处理器,运行其上的嵌入式操作系统为天熠嵌入式操作系统—tyche3.7。主机端运行软件为CCS6.1与基于主机端动态链接器12(以下简称动态链接器12),调试器为支持DSP指令的GDB调试器13,该调试器13已经集成到动态链接器12的软件,用户可以使用界面上提供的调试按钮进行动态模块的调试。
本发明在调试动态模块之前将获取所有动态模块中未定义符号在目标机实际地址,通过重新生成绝对定位的二进制文件,达到目标机与主机端被调试动态模块的一致性效果,本发明中的方案降低了动态模块调试过程中高频次信息交互操作对调试效率的影响。
与现有技术相比,本发明的有益效果在于:
(1)本发明为嵌入式动态模块提供一种高效的调试方案,可以节省调试时资源的占用,加快调试效率。
(2)本发明提供的方案涉及的动态链接器12并未限定特定的目标机操作系统和平台,方便进行移植。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,包括:宿主机与目标机;
宿主机包括:工程管理模块,用于在新建工程时,指定工程编译后生成可重定位的目标文件;动态链接器,用于宿主机根据可重定位文件、链接脚本与目标机反馈的符号实际地址生成可绝对定位的目标文件;GDB调试器,用于用户通过命令或者图形化的方式发送调试命令;宿主机支撑平台,用于作为宿主机与目标机的通信接口;
目标机包括:动态加载器,用于管理目标机上所有的符号;动态链接器代理模块,用于与宿主机动态链接器的交互,为动态链接器完成动态链接提供服务;调试代理模块,用于通过接收GDB调试器的调试命令,控制被调试程序的运行;目标机支撑平台,用于作为目标机与主机的通信接口为网络。
2.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,
在CCS开发环境中创建一个可重定位的文件,在工程管理模块中添加-r选项,告知编译器在编译阶段遇到未定义符号时不报错;然后运行动态链接器,动态链接器的输入为可重定位文件、与目标机有关的链接脚本文件,输出为一个绝对定位的二进制文件。
3.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,目标机运行的嵌入式操作系统为tyche3.7。
4.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,动态链接器将可重定位的文件中所有外部符号的地址使用目标机相同符号实际地址进行替换,生成可绝对定位的文件。
5.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,动态链接器代理的组件包括:初始化模块以及命令处理模块;
初始化模块调用网络的初始化操作完成通信路径的初始化,开始接收宿主机的动态链接器发送的指令;
初始化模块结束之后,目标机接收动态链接器发送的指令,命令处理模块将根据一条完整指令的首字母判断当前指令的类型。
6.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,动态链接器代理申请目标机的一段内存,作为动态模块目标文件在目标机存储的位置;动态链接器获取目标机管理的所有符号的信息后,动态链接器通过解析动态模块生成的可重定位文件,将可重定位文件内的未定义符号的地址使用获取的符号实际地址进行替换;动态链接器发送下载文件的指令,动态链接器代理将动态链接器生成的文件的数据段下载到目标机申请的内存中;动态链接器向动态链接器代理发送调试指令。
7.如权利要求5所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,命令处理模块将根据一条完整指令的首字母判断当前指令的类型。
8.如权利要求7所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,命令处理模块将根据一条完整指令的首字母判断当前指令的类型包括:
首字母为m,动态链接器代理接收到该指令后,使用内存分配函数获取一段内存,成功分配后,返回“ok:地址”字符串;
首字母为S,动态链接器代理接收到该指令后,获取内存中动态加载器管理的符号信息,包括符号名称和地址,获取成功后,返回“ok:[<符号名称,地址>]$”字符串;
首字母为X,动态链接器代理接收到该指令后,将文件内容下载到指定的地址中;
首字母为r,动态链接器代理接收到该指令后,将根据调试类型启动对应的调试模块;
首字母为f,动态链接器代理接收到该指令后,释放对应的内存地址。
9.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,动态加载器,运行于嵌入式操作系统之上,通过解析ELF文件,获取与管理目标机所有的符号。
10.如权利要求1所述的基于主机端动态链接的嵌入式系统动态模块调试系统,其特征在于,宿主机通过解析动态模块生成的可重定位文件,将可重定位文件内的未定义符号的地址使用获取的符号实际地址进行替换;宿主机的动态链接器生成一个绝对定位的二进制ELF文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710893864.4A CN107577609B (zh) | 2017-09-28 | 2017-09-28 | 一种基于主机端动态链接的嵌入式系统动态模块调试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710893864.4A CN107577609B (zh) | 2017-09-28 | 2017-09-28 | 一种基于主机端动态链接的嵌入式系统动态模块调试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107577609A true CN107577609A (zh) | 2018-01-12 |
CN107577609B CN107577609B (zh) | 2021-06-04 |
Family
ID=61038849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710893864.4A Active CN107577609B (zh) | 2017-09-28 | 2017-09-28 | 一种基于主机端动态链接的嵌入式系统动态模块调试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107577609B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108519924A (zh) * | 2018-03-06 | 2018-09-11 | 许继集团有限公司 | 一种嵌入式测控装置的在线故障定位方法、系统及装置 |
CN111352842A (zh) * | 2020-02-28 | 2020-06-30 | 成都金诺信高科技有限公司 | 基于嵌入式的软件调试方法 |
CN112650501A (zh) * | 2020-12-31 | 2021-04-13 | 重庆芯讯通无线科技有限公司 | 编译、终端设备及其客户应用程序的编译链接和加载方法 |
CN114064152A (zh) * | 2021-11-26 | 2022-02-18 | 中船重工(武汉)凌久电子有限责任公司 | 基于动态加载的嵌入式多核调试系统及其调试方法 |
CN114124772A (zh) * | 2021-11-05 | 2022-03-01 | 中国航空工业集团公司雷华电子技术研究所 | 一种基于VxWorks操作系统的网络调试方法 |
TWI802163B (zh) * | 2021-12-22 | 2023-05-11 | 竹陞科技股份有限公司 | 基於腳本的控制系統和控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026304A1 (en) * | 2000-08-08 | 2002-02-28 | Douglas Deao | Multiprocessor emulation support using dynamic linking |
CN101706725A (zh) * | 2009-11-20 | 2010-05-12 | 中兴通讯股份有限公司 | 一种可重定位程序的加载及调试方法及系统 |
CN102279789A (zh) * | 2010-06-13 | 2011-12-14 | 三星电子(中国)研发中心 | 生产阶段嵌入式系统的调试系统及其调试方法 |
CN102945202A (zh) * | 2012-10-15 | 2013-02-27 | 中国科学院软件研究所 | 一种基于代理的rtems系统调试方法 |
-
2017
- 2017-09-28 CN CN201710893864.4A patent/CN107577609B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026304A1 (en) * | 2000-08-08 | 2002-02-28 | Douglas Deao | Multiprocessor emulation support using dynamic linking |
CN101706725A (zh) * | 2009-11-20 | 2010-05-12 | 中兴通讯股份有限公司 | 一种可重定位程序的加载及调试方法及系统 |
CN102279789A (zh) * | 2010-06-13 | 2011-12-14 | 三星电子(中国)研发中心 | 生产阶段嵌入式系统的调试系统及其调试方法 |
CN102945202A (zh) * | 2012-10-15 | 2013-02-27 | 中国科学院软件研究所 | 一种基于代理的rtems系统调试方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108519924A (zh) * | 2018-03-06 | 2018-09-11 | 许继集团有限公司 | 一种嵌入式测控装置的在线故障定位方法、系统及装置 |
CN108519924B (zh) * | 2018-03-06 | 2021-02-05 | 许继集团有限公司 | 一种嵌入式测控装置的在线故障定位方法、系统及装置 |
CN111352842A (zh) * | 2020-02-28 | 2020-06-30 | 成都金诺信高科技有限公司 | 基于嵌入式的软件调试方法 |
CN112650501A (zh) * | 2020-12-31 | 2021-04-13 | 重庆芯讯通无线科技有限公司 | 编译、终端设备及其客户应用程序的编译链接和加载方法 |
CN114124772A (zh) * | 2021-11-05 | 2022-03-01 | 中国航空工业集团公司雷华电子技术研究所 | 一种基于VxWorks操作系统的网络调试方法 |
CN114064152A (zh) * | 2021-11-26 | 2022-02-18 | 中船重工(武汉)凌久电子有限责任公司 | 基于动态加载的嵌入式多核调试系统及其调试方法 |
CN114064152B (zh) * | 2021-11-26 | 2023-05-23 | 中船重工(武汉)凌久电子有限责任公司 | 基于动态加载的嵌入式多核调试系统及其调试方法 |
TWI802163B (zh) * | 2021-12-22 | 2023-05-11 | 竹陞科技股份有限公司 | 基於腳本的控制系統和控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107577609B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577609A (zh) | 一种基于主机端动态链接的嵌入式系统动态模块调试方法 | |
Li et al. | Automated energy optimization of http requests for mobile applications | |
CN102279765B (zh) | 预编译托存托管代码 | |
TWI705336B (zh) | 用於支援線上升級的設備和方法 | |
US9766867B2 (en) | Systems and methods for improving performance of mobile applications | |
US7669186B2 (en) | Debugging applications at resource constrained virtual machines using dynamically installable lightweight agents | |
US20120272223A1 (en) | Technique for Run-Time Provision of Executable Code using Off-Device Services | |
CN110300082B (zh) | 一种接口生成方法、装置及存储介质 | |
CN106325847B (zh) | 基于iOS平台获取应用程序功能的方法和装置 | |
WO2020061533A1 (en) | Platform-integrated ide | |
US8910190B2 (en) | Analytics data collection with low integration cost for dynamic message passing systems | |
CN114064152B (zh) | 基于动态加载的嵌入式多核调试系统及其调试方法 | |
KR100546742B1 (ko) | 타겟 시스템 기반 소스 프로그램 개발장치 및 방법 | |
CN113805882A (zh) | 应用程序开发的方法、装置、电子设备及存储介质 | |
CN111880987A (zh) | 应用程序的动态监测方法、装置、存储介质以及电子装置 | |
Li et al. | Code offload with least context migration in the mobile cloud | |
CN111209010A (zh) | 一种平台及其实现方法 | |
CN111880804A (zh) | 应用程序代码的处理方法及装置 | |
Tang et al. | Xdebloat: Towards automated feature-oriented app debloating | |
CN112052007A (zh) | 源码调试方法、装置、服务器及存储介质 | |
JP3757235B2 (ja) | ネイティブコンパイル方法、ネイティブコンパイル前処理方法、コンピュータプログラム、サーバ、通信システム、および移動体通信端末装置 | |
KR100803290B1 (ko) | 무선 센서 네트워크 환경에서 프로그램을 변경하기 위한확장 가능한 가상 머신 및 이를 이용한 리프로그래밍 방법 | |
KR20130020135A (ko) | 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법 | |
CN114721709A (zh) | 程序包生成方法、装置、存储介质及计算机设备 | |
Zhou et al. | MCAF: Developing an Annotation‐Based Offloading Framework for Mobile Cloud Computing |
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 |