CN103019941A - 程序调试方法和装置 - Google Patents
程序调试方法和装置 Download PDFInfo
- Publication number
- CN103019941A CN103019941A CN2012105869476A CN201210586947A CN103019941A CN 103019941 A CN103019941 A CN 103019941A CN 2012105869476 A CN2012105869476 A CN 2012105869476A CN 201210586947 A CN201210586947 A CN 201210586947A CN 103019941 A CN103019941 A CN 103019941A
- Authority
- CN
- China
- Prior art keywords
- java
- debugging
- program
- virtual machine
- breakpoint
- 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
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明提供了一种程序调试方法和装置。涉及软件工程领域;解决了现有调试方法调试效率和维护便利性较低的问题。该方法包括:创建Java卡虚拟机虚拟线程;创建所述Java卡虚拟机的虚拟字符串对象;在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。本发明提供的技术方案适用于Java语言和C语言的同步调试,实现了Java语言与C语言编写的虚拟机程序共同调试。
Description
技术领域
本发明涉及软件工程领域,尤其涉及一种程序调试方法和装置。
背景技术
Java语言作为一种成熟的编程语言,已经广泛应用到各种应用程序的编程中。现有的Java卡中,虚拟机本身的Java语言编写的程序以及用户Java语言编写的后下载的应用程序,它们的Java代码被编译成相应的字节码,存储在Java卡中,同时Java卡还包括由C语言编写的虚拟机程序,C语言虚拟机程序将根据字节码信息,对Java语言编译成的字节码进行解析并执行。
开发人员在开发Java语言程序时,需要在Windows操作***平台下,在Java语言集成调试环境,如eclipse等,编写Java卡本身的Java语言程序或Java语言应用程序;在C语言集成调试环境,如VC等,用C语言编写虚拟机程序。Java卡本身的Java语言编写的程序,以及用C语言编写的程序一旦出现错误,虚拟机程序会出现异常。因此,编写完毕的Java卡本身的Java语言程序以及用C语言编写的程序组成的Java卡虚拟机程序需要经过调试来发现并对错误的代码进行修改。后下载的用户编写的Java语言应用程序也要经过调试来发现并对错误代码进行修改。目前常用的调试方法有三种:
现有技术1:是在应用程序与虚拟机程序调试时,首先在Windows操作***平台的Java语言调试环境与C语言调试环境中分别运行应用程序和虚拟机程序,虚拟机程序对Java语言编写的程序的字节码进行逐一解析并执行。当虚拟机执行字节码出现异常,虚拟机将显示C语言程序中出现的异常代码,开发人员需要检查出现异常的字节码。
现有技术2:将Java语言程序划分为多个主调函数模块,在C中设置一一对应的被调用函数模块,被调用函数模块用于执行对应的主调函数模块的Java代码,在二者之间建立通信关系,分别在Java语言调试集成模块和C语言调试集成模块中运行所描述的应用程序及虚拟机程序。
现有技术3:是在eclipse上提供插件,在虚拟机上实现程序调试装置与之对应,二者建立通信关系,实现Java语言集成调试环境与C语言调试环境的联合调试。
现有技术1不能直接显示出现错误的Java语言程序的代码,调试方法很不直观,要么要求开发人员对字节码非常熟悉,要么需要开发人员查找字节码对应的Java代码,调试效率低,不利于对Java卡应用进行快速高效地开发。
现有技术2需要将Java语言分为多个主调函数模块,在C中设置一一对应的被调用函数模块,将Java语言程序分块调试,不能描述整个Java程序运行的实时信息。且不适用于后下载的与虚拟机程序无关的用户编写的Java语言程序。
现有技术3需要在eclipse上提供插件,需要大量的开发工作,存在eclipse版本升级带来的兼容维护问题。
综上,现有技术的调试方法的调试效率和维护便利性都较低。
发明内容
本发明提供了一种程序调试方法和装置,解决了现有调试方法调试效率和维护便利性较低的问题。
一种程序调试方法,包括:
创建Java卡虚拟机虚拟线程;
创建所述Java卡虚拟机的虚拟字符串对象;
在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。
优选的,所述创建Java卡虚拟机虚拟线程具体为:
将整个Java卡虚拟机程序作为一个虚拟线程,为所述虚拟线程分配唯一ID、对应的虚拟线程组及以线程组ID。
优选的,所述创建所述Java卡虚拟机的虚拟字符串对象包括:
创建虚拟字符串对象,在所述虚拟字符串对象中保存相关的字符串;
为每个字符串配置唯一ID。
优选的,在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的信息的适配应答的步骤之后,还包括:
解析并保存所述Java卡虚拟机上Java语言字节码的包、类、方法、域信息;
在与Java集成调试环境连接时,根据Java应用接口的要求,提供所述信息,在所述Java集成调试环境和Java卡虚拟机之间建立通信关系。
优选的,上述程序调试方法还包括:
在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息。
优选的,上述程序调试方法还包括:
维护一事件信息表,所述事件信息表包括多个表项,每个表项包括引用ID、虚拟方法ID、事件的描述信息以及虚拟方法对应的行号表。
优选的,在下载应用程序前,设置调试所述应用程序的断点的步骤之后包括:
在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配;
在不匹配时,根据所述断点的安装调试信息,查找出该断点处对应的正确的类的引用、方法和设置。
优选的,在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配的步骤之后,还包括:
在匹配时,将所述断点上报给Java集成调试环境。
本发明还提供了一种程序调试装置,包括:
线程管理模块,用于创建Java卡虚拟机虚拟线程;
字符串管理模块,用于创建所述Java卡虚拟机的虚拟字符串对象;
适配模块,用于在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。
优选的,上述程序调试装置还包括:
断点设置模块,用于在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息。
优选的,上述程序调试装置还包括:
断点检查模块,用于在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配,在不匹配时根据所述断点的安装调试信息,查找出该断点处对应的正确的类的引用、方法和设置,在匹配时将所述断点上报给Java集成调试环境。
本发明提供了一种程序调试方法和装置,创建Java卡虚拟机虚拟线程,创建所述Java卡虚拟机的虚拟字符串对象,然后在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答,建立了Java集成调试环境与Java卡虚拟机之间的通信,实现了Java语言与C语言编写的虚拟机程序共同调试,解决了现有调试方法调试效率和维护便利性较低的问题。
附图说明
图1是本发明的实施例一提供的一种程序调试装置的结构示意图;
图2是本发明的实施例二提供的一种程序调试方法完成Java语言与C语言编写的虚拟机程序共同调试的流程图;
图3是Java卡虚拟机Java语言程序与c语言程序调试结构示意图;
图4是本发明的实施例二提供的一种程序调试方法完成下载程序调试的流程图;
图5是Java卡虚拟机用户Java语言后下载应用调试结构示意图;
图6是本发明的实施例三中的Java卡虚拟机调试流程图;
图7是本发明的实施例三所涉及的未匹配断点事件类的结构示意图;
图8是本发明的实施例三中用户后下载程序调试事件修改流程图。
具体实施方式
现有技术1不能直接显示出现错误的Java语言程序的代码,调试方法很不直观,要么要求开发人员对字节码非常熟悉,要么需要开发人员查找字节码对应的Java代码,调试效率低,不利于对Java卡应用进行快速高效地开发。
现有技术2需要将Java语言分为多个主调函数模块,在C中设置一一对应的被调用函数模块,将Java语言程序分块调试,不能描述整个Java程序运行的实时信息。且不适用于后下载的与虚拟机程序无关的用户编写的Java语言程序。
现有技术3需要在eclipse上提供插件,需要大量的开发工作,存在eclipse版本升级带来的兼容维护问题。
为了解决上述问题,本发明的实施例提供了一种程序调试方法和装置。下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
首先结合附图,对本发明的实施例一进行说明。
本发明实施例提供了一种程序调试装置,利用Java集成调试环境远程Java调试接口技术,在虚拟机上开发了程序调试装置,建立二者之间的通信,实现Java语言与C语言编写的虚拟机程序共同调试及后下载Java应用的调试。
本发明实施例所提供的程序调试装置的结构如图1所示,包括:
线程管理模块101,用于创建Java卡虚拟机虚拟线程;
字符串管理模块102,用于创建所述Java卡虚拟机的虚拟字符串对象;
适配模块103,用于在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。
优选的,该装置还包括:
断点设置模块104,用于在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息。
优选的,该装置还包括:
断点检查模块105,用于在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配,在不匹配时根据所述断点的安装调试信息,查找出该断点处对应的正确的类的引用、方法和设置,在匹配时将所述断点上报给Java集成调试环境。
下面结合附图,对本发明的实施例二进行说明。
本发明实施例提供了一种程序调试方法,结合图1所示的程序调试装置,完成Java语言与C语言编写的虚拟机程序共同调试的流程如图2所示,包括:
步骤201、创建Java卡虚拟机虚拟线程;
本步骤中,创建Java卡虚拟机虚拟线程,Java卡虚拟机没有线程的概念,在程序调试装置中,将整个Java卡虚拟机程序作为一个线程,分配唯一ID、分配对应的虚拟线程组以及线程组ID,解决与Java集成调试环境的适配问题。
步骤202、创建所述Java卡虚拟机的虚拟字符串对象;
本步骤中,由于Java卡虚拟机不支持字符串,程序调试装置中,采用创建虚拟字符串对象的方法,在虚拟字符串对象中保存相关的字符串,给每个字符串分配唯一的ID,保存该ID与字符串的对应关系,并上报至Java集成调试环境。
步骤203、在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答;
本步骤中,解析并保存Java语言字节码的相关的包、类、方法、域等信息,当与Java集成调试环境连接时,会根据Java应用接口的要求,提供相关的信息,在Java卡虚拟机和Java集成调试环境之间就建立了通信关系。Java程序与程序调试装置所在的虚拟机之间的通信是通过Java集成调试环境ecipse的远程Java应用接口和虚拟机调试环境VC之间应用JDWP协议实现的,其中JDWP协议是基于socket通信方式进行数据传输。当虚拟机程序调试装置运行后,由Java调试接口发送jdwp命令,虚拟机调试接口应答信息。Java卡虚拟机Java语言程序与c语言程序调试结构示意图如图3所示。
在完成Java卡虚拟机和Java集成调试环境之间的通信连接后,即可开始调试程序了,具体流程如图4所示,包括:
步骤401、在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息;
本步骤中,当开发人员调试某块Java程序时,在Java集成调试环境设置相关的断点信息,Java卡虚拟机上的程序调试装置收到后,保存并设置相关的断点信息。程序调试装置维护一事件信息表,对要安装的事件的类没有匹配时,创建对应虚拟类信息,分配对应的引用ID和虚拟方法ID,保存相关的描述信息以及虚拟方法对应的的行号表等信息至该事件信息表中。
步骤402、在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配;
本步骤中,当虚拟机执行Java卡本身的Java语言字节码时,检查执行的字节码是否与设置中断的位置一致,一致则上报给Java集成调试环境,开发人员可进行Java语言程序的每一函数,每一条语句的单步跟踪,以及查看,从而有效地查找Java程序中的问题并进行修改。
当进行断点事件安装时,保存要设置的断点信息。当在虚拟机上安装用户Java应用后,搜索未正确匹配设置的断点信息表,根据安装的调试信息,查找出正确的类引用,方法,断点的正确设置。当虚拟机执行用户Java语言程序字节码时,检查到执行的字节码与设置的中断位置一致时,上报给Java集成调试环境,这样用户就可以进行对程序的单步跟踪及查看,从而实现快速有效地查找并修改问题。这样就解决了不论用户在什么时候对Java语言程序设置断点,都可以进行有效直观调试了。Java卡虚拟机用户Java语言后下载应用调试结构示意图如图5所示。
下面结合附图,对本发明的实施例三进行说明。
本发明实施例以Java卡虚拟机本身的Java语言程序和C语言编写的程序调试为例,对一种程序调试方法进行说明,其调试过程如图6所示,如下:
在Windows操作***平台下,Eclipse集成调试环境作为调试客户端,调试虚拟机Java程序,VC集成调试环境作为与Eclipse通信的另一端,调试虚拟机C程序,Java语言程序由虚拟机C语言程序加载解析。Java程序与C语言程序之间的通信是通过Java语言调试环境ecipse的远程Java应用接口和C语言调试环境VC之间应用JDWP协议实现的,其中JDWP协议是基于socket通信方式进行数据传输。虚拟机程序调试装置适配Java集成调试环境需要的接口信息,通过JDWP协议,Java集成调试环境可以获取调试需要的相关信息。当虚拟机解析执行Java字节码时,Java集成调试环境可以获取当前Java程序字节码的执行情况,从而实现在Java环境中对整个Java程序进行调试跟踪。
调试时,运行编写完成的C程序的C语言调试环境VC,调用虚拟机C语言入口函数main,执行C语言编写的相关虚拟机初始化,解析虚拟机Java程序字节码的相关的包、类、方法、域等调试信息(由Java卡虚拟机提供,程序调试装置适配Java集成调试环境需要提供的相关信息),启动带有JDWP协议服务器功能的程序调试装置,等待Java集成调试环境的连接。
当Java集成调试环境连接时,程序调试装置通过进行线程、线程组虚拟构建,创建虚拟字符串对象等,进行一一适配应答(通过虚拟机调试接口,实现Java卡虚拟机对Java集成调试环境需要的远程调试接口进行一一适配),Java集成调试下发开发人员设置的断点信息,VC集成环境的程序调试装置将断点信息安装到C虚拟机,等待虚拟机C程序执行Java字节码。
在完成环境调试后,即可设置断点、下载程序,对程序进行调试,用户后下载程序调试事件修改流程如图8所示。当虚拟机C程序完成必要初始化后,开始执行虚拟机Java字节码,每执行一次,都要进行调试断点检查,当执行到字节码与设置的断点一致时,调用程序调试装置断点上报函数,提取断点信息,上报Java集成调试环境。开发人员就可在Java集成调试环境中的Java程序断点处,对程个Java程序进行单步跟踪调试,察看相关信息,查找程序异常。当执行到字节码与设置的断点不一至时,获取未匹配断点事件类的结构,如图7所示,再根据断点位置重新配置断点的事件信息。
用户后下载Java语言程序的调试与Java卡虚拟机本身的Java语言程序和C语言编写的程序调试类似,不同之处在于虚拟机C和Java程序已经调试完成,运行稳定,在稳定运行的虚拟机上安装用户后下载的程序后,在虚拟机执行后下载应用字节码过程中,用户可通过Java集成调试环境调试用户Java语言程序。
本发明的实施例提供了一种程序调试方法和装置,创建Java卡虚拟机虚拟线程,创建所述Java卡虚拟机的虚拟字符串对象,然后在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答,建立了Java集成调试环境与Java卡虚拟机之间的通信,实现了Java语言与C语言编写的虚拟机程序共同调试,解决了现有调试方法调试效率和维护便利性较低的问题。
程序调试装置直接单步跟踪Java语言程序,不需要将Java程序划分为多个模块,破坏整个Java程序运行的整体信息,可直接在eclipse的Java程序上设置断点就可以进行跟踪);并且在不增加eclipse插件的情况下,通过创建虚拟的字符串对象、线程节省工作量,易于维护。本发明的实施例提供的技术方案在虚拟机调试端增加程序调试装置,适配eclipse;而对eclipse增加插件,除了同样需要一定的程序调试装置,还增加了对eclipse的研究开发,这将会是一个繁重的工作。Eclipse版本升级或许会引起插件进行相应的改动。对事件信息的拷贝以及修改,实现对Eclipse远程调试接口的适配,可以直观地实现对Java卡虚拟机本身的Java代码的调试修改,以及用户Java语言编写的后下载应用的调试修改,从而提高了开发效率。
本发明实施例提供的程序调试装置是基于Java卡虚拟机平台,利用现有的Java集成调试环境eclipse的远程调试接口,来实现对虚拟机c程序以及Java程序的直观调试。这样就需要对现有的Java集成调试环境eclipse的远程调试接口需要的信息进行一一适配,而Java卡虚拟机本身的限制,不满足线程和字符串对象等信息,Java卡虚拟机为了满足与Java集成调试环境的正常通信而虚构了这些。程序调试装置对断点设置改进了对后下载应用的调试支持,在集成调试环境运行时,先保存了断点的相关事件信息,当后下载应用下载后,会根据保存的事件信息,重新设置正确的断点信息,从而保证了对后下载应用的调试。
本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如***、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
Claims (11)
1.一种程序调试方法,其特征在于,包括:
创建Java卡虚拟机虚拟线程;
创建所述Java卡虚拟机的虚拟字符串对象;
在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。
2.根据权利要求1所述的程度调试方法,其特征在于,所述创建Java卡虚拟机虚拟线程具体为:
将整个Java卡虚拟机程序作为一个虚拟线程,为所述虚拟线程分配唯一ID、对应的虚拟线程组及以线程组ID。
3.根据权利要求1所述的程序调试方法,其特征在于,所述创建所述Java卡虚拟机的虚拟字符串对象包括:
创建虚拟字符串对象,在所述虚拟字符串对象中保存相关的字符串;
为每个字符串配置唯一ID。
4.根据权利要求1所述的程序调试方法,其特征在于,在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的信息的适配应答的步骤之后,还包括:
解析并保存所述Java卡虚拟机上Java语言字节码的包、类、方法、域信息;
在与Java集成调试环境连接时,根据Java应用接口的要求,提供所述信息,在所述Java集成调试环境和Java卡虚拟机之间建立通信关系。
5.根据权利要求1所述的程序调试方法,其特征在于,还包括:
在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息。
6.根据权利要求5所述的程序调试方法,其特征在于,该方法还包括:
维护一事件信息表,所述事件信息表包括多个表项,每个表项包括引用ID、虚拟方法ID、事件的描述信息以及虚拟方法对应的行号表。
7.根据权利要求6所述的程序调试方法,其特征在于,在下载应用程序前,设置调试所述应用程序的断点的步骤之后包括:
在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配;
在不匹配时,根据所述断点的安装调试信息,查找出该断点处对应的正确的类的引用、方法和设置。
8.根据权利要求7所述的程序调试方法,其特征在于,在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配的步骤之后,还包括:
在匹配时,将所述断点上报给Java集成调试环境。
9.一种程序调试装置,其特征在于,包括:
线程管理模块,用于创建Java卡虚拟机虚拟线程;
字符串管理模块,用于创建所述Java卡虚拟机的虚拟字符串对象;
适配模块,用于在所述Java卡虚拟机和Java集成调试环境之间进行包含所述虚拟线程和所述虚拟字符串对象的配置信息的适配应答。
10.根据权利要求9所述的程序调试装置,其特征在于,该装置还包括:
断点设置模块,用于在下载应用程序前,设置调试所述应用程序的断点,所述断点包含事件信息。
11.根据权利要求10所述的程序调试装置,其特征在于,该装置还包括:
断点检查模块,用于在下载应用程序后,检查预置的断点处的设置是否与所述应用程序匹配,在不匹配时根据所述断点的安装调试信息,查找出该断点处对应的正确的类的引用、方法和设置,在匹配时将所述断点上报给Java集成调试环境。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210586947.6A CN103019941B (zh) | 2012-12-28 | 2012-12-28 | 程序调试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210586947.6A CN103019941B (zh) | 2012-12-28 | 2012-12-28 | 程序调试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103019941A true CN103019941A (zh) | 2013-04-03 |
CN103019941B CN103019941B (zh) | 2015-09-30 |
Family
ID=47968566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210586947.6A Active CN103019941B (zh) | 2012-12-28 | 2012-12-28 | 程序调试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019941B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593292A (zh) * | 2013-11-19 | 2014-02-19 | 北京深思数盾科技有限公司 | 调试程序的***及方法 |
CN103699485A (zh) * | 2013-12-20 | 2014-04-02 | 金蝶软件(中国)有限公司 | 应用程序调试方法和装置 |
CN105955886A (zh) * | 2016-04-23 | 2016-09-21 | 珠海保税区星汉智能卡股份有限公司 | 一种基于解释型语言的异常断点调试方法 |
CN106201893A (zh) * | 2016-07-21 | 2016-12-07 | 恒宝股份有限公司 | 一种Java字节码调试器及调试方法 |
CN109189591A (zh) * | 2018-08-30 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 用于调用应用组件的方法和装置 |
CN109684795A (zh) * | 2018-12-25 | 2019-04-26 | 成都卫士通信息产业股份有限公司 | 应用程序反调试的方法、装置及电子设备 |
CN110147294A (zh) * | 2019-05-23 | 2019-08-20 | Oppo广东移动通信有限公司 | 调试信息的获取方法、装置、终端及计算机可读存储介质 |
CN112256570A (zh) * | 2020-10-19 | 2021-01-22 | 网易(杭州)网络有限公司 | 远程调试方法、装置、设备及存储介质 |
CN113836046A (zh) * | 2021-11-29 | 2021-12-24 | 武汉天喻信息产业股份有限公司 | Mcu上虚拟机应用程序调试方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050034109A1 (en) * | 2001-06-04 | 2005-02-10 | Microsoft Corporation | Method and system for program editing |
CN101410904A (zh) * | 2006-03-24 | 2009-04-15 | 松下电器产业株式会社 | 再现装置、调试装置、***lsi、程序 |
CN102495802A (zh) * | 2011-12-26 | 2012-06-13 | 华为技术有限公司 | 测试软件***的方法和装置以及计算机*** |
-
2012
- 2012-12-28 CN CN201210586947.6A patent/CN103019941B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050034109A1 (en) * | 2001-06-04 | 2005-02-10 | Microsoft Corporation | Method and system for program editing |
CN101410904A (zh) * | 2006-03-24 | 2009-04-15 | 松下电器产业株式会社 | 再现装置、调试装置、***lsi、程序 |
CN102495802A (zh) * | 2011-12-26 | 2012-06-13 | 华为技术有限公司 | 测试软件***的方法和装置以及计算机*** |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593292A (zh) * | 2013-11-19 | 2014-02-19 | 北京深思数盾科技有限公司 | 调试程序的***及方法 |
CN103699485A (zh) * | 2013-12-20 | 2014-04-02 | 金蝶软件(中国)有限公司 | 应用程序调试方法和装置 |
CN103699485B (zh) * | 2013-12-20 | 2018-04-10 | 金蝶软件(中国)有限公司 | 应用程序调试方法和装置 |
CN105955886A (zh) * | 2016-04-23 | 2016-09-21 | 珠海保税区星汉智能卡股份有限公司 | 一种基于解释型语言的异常断点调试方法 |
CN106201893A (zh) * | 2016-07-21 | 2016-12-07 | 恒宝股份有限公司 | 一种Java字节码调试器及调试方法 |
CN106201893B (zh) * | 2016-07-21 | 2018-11-06 | 恒宝股份有限公司 | 一种Java字节码调试器及调试方法 |
CN109189591B (zh) * | 2018-08-30 | 2022-04-12 | 百度在线网络技术(北京)有限公司 | 用于调用应用组件的方法和装置 |
CN109189591A (zh) * | 2018-08-30 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 用于调用应用组件的方法和装置 |
CN109684795A (zh) * | 2018-12-25 | 2019-04-26 | 成都卫士通信息产业股份有限公司 | 应用程序反调试的方法、装置及电子设备 |
CN109684795B (zh) * | 2018-12-25 | 2023-01-24 | 成都卫士通信息产业股份有限公司 | 应用程序反调试的方法、装置及电子设备 |
CN110147294A (zh) * | 2019-05-23 | 2019-08-20 | Oppo广东移动通信有限公司 | 调试信息的获取方法、装置、终端及计算机可读存储介质 |
CN110147294B (zh) * | 2019-05-23 | 2023-10-03 | Oppo广东移动通信有限公司 | 调试信息的获取方法、装置、终端及计算机可读存储介质 |
CN112256570A (zh) * | 2020-10-19 | 2021-01-22 | 网易(杭州)网络有限公司 | 远程调试方法、装置、设备及存储介质 |
CN112256570B (zh) * | 2020-10-19 | 2023-08-11 | 网易(杭州)网络有限公司 | 远程调试方法、装置、设备及存储介质 |
CN113836046A (zh) * | 2021-11-29 | 2021-12-24 | 武汉天喻信息产业股份有限公司 | Mcu上虚拟机应用程序调试方法及*** |
CN113836046B (zh) * | 2021-11-29 | 2022-02-15 | 武汉天喻信息产业股份有限公司 | Mcu上虚拟机应用程序调试方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN103019941B (zh) | 2015-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103019941A (zh) | 程序调试方法和装置 | |
US9971333B2 (en) | Programming auxiliary system of programmable controller and method thereof | |
CN107171833B (zh) | 一种通过bmc实现服务器bmc和bios批量升级方法 | |
CN106104467B (zh) | 一种自动化部署方法和终端 | |
CN102609281B (zh) | 分布式软件补丁更新方法及*** | |
US20100023602A1 (en) | Method and apparatus for updating information on an embedded system | |
CN101430662B (zh) | Java语言程序与虚拟机程序共同调试的方法 | |
US7827548B1 (en) | Environment-neutral application build | |
CN101192165A (zh) | 主从式多处理器***以及软件版本加载方法 | |
US8087000B2 (en) | Synchronizing codes from multiple software configuration management systems | |
CN104391717B (zh) | 一种调试时代码动态更新方法 | |
US9940224B2 (en) | Automatic remote execution of an application | |
EP3698241A1 (en) | Using semantic annotations to control compatibility behaviors | |
CN104517181A (zh) | 一种核电站企业内容管理***及方法 | |
CN108509215B (zh) | 一种***软件的更换方法、装置、终端设备及存储介质 | |
CN103970659A (zh) | 基于插桩技术的安卓应用软件自动化测试方法 | |
CN102981882B (zh) | 解析方法和装置 | |
CN103970601A (zh) | 执行操作指令方法和装置 | |
CN103019874A (zh) | 基于数据同步实现异常处理的方法及装置 | |
CN104063319A (zh) | 一种嵌入式***的调试方法及其装置 | |
CN104731566A (zh) | 集成开发环境测试装置、方法及*** | |
CN103455346A (zh) | 应用程序部署方法、部署主控机、部署客户端和集群 | |
CN101105757A (zh) | 一种类装载隔离的方法及一种类装载隔离的装置 | |
US8943480B2 (en) | Setting breakpoints in optimized instructions | |
CN103338121A (zh) | 一种***管理服务器、方法及其*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |