CN1971517A - 用于简档形成接口辅助类加载的方法和系统 - Google Patents
用于简档形成接口辅助类加载的方法和系统 Download PDFInfo
- Publication number
- CN1971517A CN1971517A CNA2006101446937A CN200610144693A CN1971517A CN 1971517 A CN1971517 A CN 1971517A CN A2006101446937 A CNA2006101446937 A CN A2006101446937A CN 200610144693 A CN200610144693 A CN 200610144693A CN 1971517 A CN1971517 A CN 1971517A
- Authority
- CN
- China
- Prior art keywords
- class
- profile
- virtual machine
- interface
- expansion
- 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
- 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/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
可以提供用于字节代码装备逻辑的简档形成接口辅助类加载的数据处理系统、方法和计算机程序产品。该系统可以包括为用于在例如Java虚拟机(JVM)的虚拟机中实例化的字节流的字节代码装备配置的开发环境。该系统还可以包括例如与JVM简档形成接口(JVMPI)兼容的简档形成接口代理的简档形成接口代理。最后,该系统可以包括耦合到代理的简档形成辅助类加载逻辑。简档形成辅助类加载逻辑可以包括能够识别由用于字节代码装备的字节流的嵌入类使用所需的扩展类和能够请求简档形成接口代理在虚拟机中加载扩展类的程序代码。
Description
技术领域
本发明涉及字节代码装备,尤其涉及分辨对由字节代码装备逻辑引用的对象的引用。
背景技术
字节代码装备涉及编译对象中现有字节代码的扩张(augmentation),以产生编译对象的修改版本。字节代码装备通常在配置现有应用程序用于性能监视和性能简档形成(profiling)的时候出现。虽然在过去,可以通过修改源代码直接修改应用程序来产生应用程序的装备形式,但这要预先假定可以获得应用程序的源代码。字节代码装备已经变得很普遍,尤其在不能访问应用程序源代码的情况下。在后一情况下,必须在应用程序调用之后但是在应用程序执行之前以编译形式修改应用程序本身。
当类添加到目标字节代码中时,情况通常是这样:不能在运行时定位从目标字节代码的字节代码装备产生的类引用。通常,当还没有在类路径中包括类时,不能定位类。当遇到由目标字节代码的增加逻辑所引用的丢失类时,会发生“没有找到类定义”的异常且这种扩张会失败。
过去,至少建议了两种解决办法来解决不能在目标字节代码的扩张形式中找到类引用的可能性。一种解决办法指示将所引用的类添加到类路径中已经列出的文件夹中。但是,把所引用的类添加到在类路径中已经列出的文件夹中会需要实际终端用户与命令行或处理环境的交互,从而使这种工具的使用成为需干涉的。但是,期望在装备字节代码的操作中争取无缝的外部特征。
第二种解决办法指示把所引用的类添加到扩展文件夹。就象第一种解决办法,第二种解决办法也不是没有缺陷。具体而言,在第二种解决办法中,通过把文件拷贝到可能很难确定并且可能不能由用户修改的虚拟机安装位置,同样需要终端用户介入。而且,重新安装或升级虚拟机会导致扩展文件夹中所引用类的丢失。在存在多个已安装的虚拟机的情况下,这个问题还会复杂。最后,当定制类加载器代替系统类加载器时,定制类加载器可能缺少用于在扩展文件夹中定位所引用类的配置。
发明内容
本发明实施方式解决了本领域中关于为字节代码装备的逻辑定位所引用类的缺陷并且提供了用于字节代码装备逻辑的简档形成接口辅助类加载的新的且不是显而易见的方法、系统与计算机程序产品。在一种实施方式中,用于字节代码装备逻辑的简档形成接口辅助类加载的方法可以包括识别嵌入类使用所需的扩展类并请求简档形成接口代理在虚拟机中加载扩展类。字节流又可以利用所嵌入的类装备并且装备的字节流可以在虚拟机中实例化。
请求简档形成接口代理在虚拟机中加载扩展类可以包括在遥控器中产生加载远程类(LRC)请求、在LRC请求的有效载荷中插入扩展类、通过计算机通信网络将LRC请求发送到互补的遥控器,以及将LRC请求转发到简档形成接口代理。可选地,请求配置接口代理在虚拟机中加载扩展类可以包括产生引用该扩展类的配置文件、产生加载扩展类的请求、直接将请求发送到简档形成接口代理,及允许简档形成接口代理访问配置文件来检索用于在虚拟机中实例化的扩展类。
在另一实施方式中,可以提供用于字节代码装备逻辑的简档形成接口辅助类加载的数据处理系统。该系统可以包括为用于在例如Java虚拟机(JVM)的虚拟机中实例化的字节流的字节代码装备配置的开发环境。该系统还可以包括简档形成接口代理,例如,与JVM简档形成接口(JVMPI)兼容的简档形成接口代理。最后,该系统可以包括耦合到代理的简档形成辅助类加载逻辑。简档形成辅助类加载逻辑可以包括能够识别由用于字节代码装备的字节流的嵌入类的使用所需的扩展类并能够请求简档形成接口代理在虚拟机中加载扩展类的程序代码。
可选地,互补的遥控器可以通过计算机通信网络彼此耦合。互补的遥控器可以使得能在简档形成接口辅助类加载逻辑和简档形成接口代理之间通信。可选地,配置文件可以耦合到简档形成接口代理。配置文件可以指定用于由简档形成接口代理加载的扩展类的位置。
本发明的其它方面将部分地在以下描述中阐述,部分地将从该描述中显而易见或者可以通过本发明的实践学习。本发明的方面将通过在所附权利要求特别指出的元素和组合实现和达到。应当理解前面的总体描述和下面的具体描述都只是示例性和解释性的,而不是象权利要求要求保护地那样对本发明的限制。
附图说明
结合进本说明书并构成其一部分的附图说明了本发明的实施方式,并与说明书一起用于解释本发明的原理。在此所说明的实施方式是目前优选的,但是应当理解本发明不限于所示出的精确布置和工具,其中:
图1是为跨在远程耦合的开发平台用于字节代码装备逻辑的简档形成接口辅助类加载配置的数据处理系统的示意性说明;
图2是为在单个开发平台内用于字节代码装备逻辑的简档形成接口辅助类加载配置的数据处理系统的示意性说明;及
图3是说明用于字节代码装备逻辑的简档形成接口辅助类加载处理的流程图。
具体实施方式
本发明的实施方式提供了用于字节代码装备逻辑的简档形成接口辅助类加载的方法、系统与计算机程序产品。根据本发明的实施方式,可以检查嵌入到用于在虚拟机中实例化的字节流中的类来识别所嵌入的类所依赖的类。每个识别出的类可以提供给简档形成接口用于在虚拟机中加载。随后,字节流可以利用嵌入类装备并在虚拟机中实例化。以这种方式,可以确保所嵌入的类能正确访问所依赖的类,而不需要终端用户方面的命令行技巧或大量文件操作。
值得注意的是,字节流的字节代码装备可以在远程开发平台和字节流主机平台之间远程执行,或在单个主机平台内统一执行。首先考虑远程开发平台实施方式,图1是为跨远程耦合的开发平台用于字节代码装备逻辑的简档形成接口辅助类加载配置的数据处理系统的示意性说明。如图1所示,远程计算平台110可以通过计算机通信网络130通信耦合到主机计算平台120。
远程计算平台110可以包括配置成字节代码装备打算在主机计算平台120中的虚拟机180中执行的字节流150的开发环境140。主机计算平台120又可以包括能够与虚拟机180中例如Java虚拟机简档形成接口(JVMPI)代理的简档形成接口代理160通信的简档形成接口类加载逻辑300。具体而言,可以使开发环境140能够通过互补遥控器170A、170B与简档形成接口代理160通信,其中如本领域众所周知的,170A和170B可以通过计算机通信网络130交换命令。
在操作中,字节流150可以是在开发环境140中通过一个或多个嵌入类的添加而装备的字节代码。开发环境可以将请求转发到遥控器170A,以便在主机平台120的虚拟机180中远程加载字节流150。例如,请求可以是可以包括有效载荷的LOAD_REMOTE_CLASS请求。遥控器170A又可以通过计算机通信网络130向主机计算平台120中的遥控器170B提供请求。遥控器170B可以接收请求并且可以向虚拟机180中的简档形成代理160发出请求。
简档形成代理160可以从遥控器170B接收请求并可以向可以识别装备的字节流150正确操作所需的依赖类的简档形成接口类加载逻辑300发出请求。对于每个依赖类190,配置接口类加载逻辑300可以在虚拟机180的堆(heap)中实例化依赖类190。在Java环境中,简档形成接口类加载逻辑300可以调用Java本地接口(JNI)方法DefineClass。只要NULL自变量作为函数调用的一部分传入到方法中,DefineClass指示(directive)就调用系统类加载器。最后,一旦依赖类190已经利用虚拟机180实例化,简档形成接口类加载逻辑300就能够创建对依赖类190的全局引用,以便保护嵌入类190免于垃圾回收。因此,在由字节代码装备的字节流150表示的程序操作过程中,依赖类190可以看做系统类。
重要的是,在本发明的另一实施方式中,能够提供用于字节流的字节代码装备的单一配置。关于这点,图2是为在单个开发平台内用于字节代码装备逻辑的简档形成接口辅助类加载配置的数据处理系统的示意性说明。如图2所示,开发环境240和虚拟机280可以驻留在同一主机计算平台210中。如上面一样,字节流250可以是在开发环境240中通过一个或多个嵌入类添加而装备的字节代码。可以接收在虚拟机280中实例化字节流250的请求并且可以发出在虚拟机280中加载字节流250的请求。
简档形成接口类加载逻辑300可以接收请求并且可以识别嵌入类正确操作所需的依赖类,并且对于每个依赖类,可以在虚拟机280中加载依赖类。具体而言,简档形成接口类加载逻辑300可以通过参考配置文件220检索每个依赖类的拷贝。随后,简档形成接口类加载逻辑300可以在虚拟机280的堆中实例化依赖类290。最后,一旦依赖类290已经在虚拟机280中实例化,简档形成接口类加载逻辑300就可以创建对依赖类290的全局引用,以便保护依赖类290免受垃圾回收。因此,如上面一样,在由字节代码装备的字节流250表示的程序操作过程中,嵌入类290可以看作系统类。
现在转向图3,示出了说明在图1和2的配置中用于字节代码装备逻辑的简档形成接口辅助类加载的流程图。在块310开始,可以识别在字节代码装备的字节流中嵌入类正确操作所需的第一扩展类。在块320,可以形成用于预加载扩展类的请求,并且在块330,请求可以转发到可以利用用于虚拟机的系统类加载器加载扩展类的简档形成接口。
在决定块340,如果需要附加的扩展类,则可以对每个附加的扩展类重复处理。一旦所有的扩展类都已经在虚拟机中实例化,字节流就可以利用嵌入类装备并且装备的字节流的实例可以加载到虚拟机中。最后,装备的字节流可以在确保所需扩展可以由装备的字节流使用的情况下执行。
本领域技术人员将认识到上述发明性布置的几个优点。首先,该发明性布置不需要虚拟机用于指定所需扩展类位置的附加配置。第二,扩展类可以由系统类加载器加载,从而消除了对可以在扩展类中实现的本机方法的类加载阻抗和类型转换限制。第三,扩展类可以根据需要从开发环境工作平台或其它远程代理控制器客户端远程加载。
重要的是,扩展类可以是完全暂时的。具体而言,扩展类不必存成文件。相反,扩展类可以在存储器中动态创建并在以后部署。最后,因为可以只在虚拟机与所启用的简档形成接口代理合作执行时才加载扩展类,所以能够增强用于字节代码装备的安全性。因此,没有可以被恶意代码利用的永久扩展库。而且,装备的代码不必调用虚拟机中的系统类加载器。这样,就不需要虚拟机的策略改变。
本发明的实施方式可以采取完全硬件形式实施方式、完全软件实施方式或包含硬件和软件元素的实施方式的形式。在优选实施方式中,本发明是在软件中实现的,其中软件包括但不限于固件、驻留软件、微代码等。此外,本发明可以采取可从提供由计算机或任何指令执行系统使用或与其结合使用的程序代码的计算机可用或计算机可读取介质访问的计算机程序产品的形式。
为了本描述,计算机可用或计算机可读介质可以是任何能够包含、存储、传送、传播或传输由指令执行系统、装备或设备使用或与其结合使用的程序的装置。介质可以是电、磁、光、电磁、红外线或半导体系统(或装置或设备)或传播介质。计算机可读介质的例子包括半导体或固态存储器、磁带、可拆卸计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。当前光盘的例子包括只读光盘(CD-ROM)、读写光盘(CD-R/W)和DVD。
适用于存储和/或执行程序代码的数据处理系统将包括至少一个直接或通过系统总线间接耦合到存储器元件的处理器。存储器元件可以包括在程序代码的实际执行中所采用的本地存储器、大容量存储器、及为减少代码在执行期间必须从大容量存储器检索的次数而提供至少某些程序代码的临时存储的高速缓冲存储器。输入/输出或I/O设备(包括但不限于键盘、显示器、定点设备等)可以直接或通过中断I/O控制器耦合到系统中。网络适配器也可以耦合到系统,以便使数据处理系统能够通过之间的私有或公共网络耦合到其它数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡只是一些当前可以得到的网络适配器类型。
Claims (9)
1、一种用于字节代码装备逻辑的简档形成接口辅助类加载的方法,该方法包括:
识别嵌入类使用所需的扩展类;
请求简档形成接口代理在虚拟机中加载该扩展类;
利用该嵌入类装备字节流;及
在虚拟机中实例化装备的字节流。
2、如权利要求1所述的方法,其中所述请求简档形成接口代理在虚拟机中加载扩展类的步骤包括:
在遥控器中产生加载远程类(LRC)请求;
在LRC请求的有效载荷中插入扩展类;
通过计算机通信网络将LRC请求发送到互补的遥控器;及
将LRC请求转发到简档形成接口代理。
3、如权利要求1所述的方法,其中所述请求简档形成接口代理在虚拟机中加载扩展类的步骤包括:
产生引用扩展类的配置文件;
产生加载扩展类的请求;
将请求直接发送到简档形成接口代理;及
允许简档形成接口代理访问配置文件,以便检索用于在虚拟机中实例化的扩展类。
4、如权利要求1所述的方法,还包括利用用于虚拟机的系统类加载器来加载扩展类。
5、如权利要求1所述的方法,还包括创建对虚拟机中扩展类的全局引用,以便保护该扩展类免受垃圾回收。
6、一种用于字节代码装备逻辑的简档形成接口辅助类加载的数据处理系统,该系统包括:
为用于在虚拟机中实例化的字节流的字节代码装备而配置的开发环境;
简档形成接口代理;及
耦合到该代理的简档形成辅助类加载逻辑,该简档形成辅助类加载逻辑包括能够识别由用于字节代码装备的字节流的嵌入类使用所需的扩展类并能够请求简档形成接口代理在虚拟机中加载扩展类的程序代码。
7、如权利要求6所述的系统,其中虚拟机是Java虚拟机(JVM),而且其中简档形成接口代理是与JVM简档形成接口(JVMPI)兼容的简档形成接口代理。
8、如权利要求6所述的系统,还包括通过计算机通信网络彼此耦合并且使得能在简档形成接口辅助类加载逻辑与简档形成接口代理之间通信的互补遥控器。
9、如权利要求6所述的系统,还包括耦合到简档形成接口代理的配置文件,该配置文件指定用于由简档形成接口代理加载的扩展类位置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/283,637 US7765537B2 (en) | 2005-11-21 | 2005-11-21 | Profiling interface assisted class loading for byte code instrumented logic |
US11/283,637 | 2005-11-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1971517A true CN1971517A (zh) | 2007-05-30 |
CN100462921C CN100462921C (zh) | 2009-02-18 |
Family
ID=38112357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101446937A Expired - Fee Related CN100462921C (zh) | 2005-11-21 | 2006-11-14 | 用于简档形成接口辅助类加载的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7765537B2 (zh) |
CN (1) | CN100462921C (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7058936B2 (en) | 2002-11-25 | 2006-06-06 | Microsoft Corporation | Dynamic prefetching of hot data streams |
US7912877B2 (en) * | 2005-05-20 | 2011-03-22 | Microsoft Corporation | Leveraging garbage collection to dynamically infer heap invariants |
US7962901B2 (en) * | 2006-04-17 | 2011-06-14 | Microsoft Corporation | Using dynamic analysis to improve model checking |
US7926043B2 (en) * | 2006-06-20 | 2011-04-12 | Microsoft Corporation | Data structure path profiling |
CA2699362A1 (en) * | 2007-10-20 | 2009-04-23 | Citrix Systems, Inc. | Systems and methods for folder redirection |
US8745598B2 (en) * | 2010-12-14 | 2014-06-03 | Bmc Software, Inc. | Running injected code prior to execution of an application |
CN102855179A (zh) * | 2011-06-30 | 2013-01-02 | 国际商业机器公司 | 虚拟机环境下的程序调试方法和系统 |
US8875096B1 (en) * | 2012-09-25 | 2014-10-28 | Amazon Technologies, Inc. | Dynamic class loading |
JP5884749B2 (ja) * | 2013-03-06 | 2016-03-15 | 富士ゼロックス株式会社 | 記録媒体処理装置、記録媒体処理システム及びプログラム |
US9443192B1 (en) | 2015-08-30 | 2016-09-13 | Jasmin Cosic | Universal artificial intelligence engine for autonomous computing devices and software applications |
US9864933B1 (en) | 2016-08-23 | 2018-01-09 | Jasmin Cosic | Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation |
US10452974B1 (en) | 2016-11-02 | 2019-10-22 | Jasmin Cosic | Artificially intelligent systems, devices, and methods for learning and/or using a device's circumstances for autonomous device operation |
US10607134B1 (en) | 2016-12-19 | 2020-03-31 | Jasmin Cosic | Artificially intelligent systems, devices, and methods for learning and/or using an avatar's circumstances for autonomous avatar operation |
US10102449B1 (en) | 2017-11-21 | 2018-10-16 | Jasmin Cosic | Devices, systems, and methods for use in automation |
US10474934B1 (en) | 2017-11-26 | 2019-11-12 | Jasmin Cosic | Machine learning for computing enabled systems and/or devices |
US10402731B1 (en) | 2017-12-15 | 2019-09-03 | Jasmin Cosic | Machine learning for computer generated objects and/or applications |
CN110381135B (zh) * | 2019-07-18 | 2021-09-28 | 北京奇艺世纪科技有限公司 | 接口创建方法、服务请求方法、装置、计算机设备和介质 |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314558B1 (en) * | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
EP0915419A3 (en) * | 1997-10-06 | 2003-11-12 | Sun Microsystems, Inc. | Remote object access |
US6044467A (en) * | 1997-12-11 | 2000-03-28 | Sun Microsystems, Inc. | Secure class resolution, loading and definition |
US6513155B1 (en) | 1997-12-12 | 2003-01-28 | International Business Machines Corporation | Method and system for merging event-based data and sampled data into postprocessed trace output |
US6560773B1 (en) * | 1997-12-12 | 2003-05-06 | International Business Machines Corporation | Method and system for memory leak detection in an object-oriented environment during real-time trace processing |
US6496871B1 (en) * | 1998-06-30 | 2002-12-17 | Nec Research Institute, Inc. | Distributed agent software system and method having enhanced process mobility and communication in a computer network |
US6430569B1 (en) * | 1998-08-14 | 2002-08-06 | Sun Microsystems, Inc. | Methods and apparatus for type safe, lazy, user-defined class loading |
US20020062334A1 (en) * | 1998-08-19 | 2002-05-23 | Qiming Chen | Dynamic agents for dynamic service provision |
GB2343021A (en) * | 1998-10-19 | 2000-04-26 | Ibm | Class loading model for object oriented programming |
US6430570B1 (en) | 1999-03-01 | 2002-08-06 | Hewlett-Packard Company | Java application manager for embedded device |
US6457142B1 (en) * | 1999-10-29 | 2002-09-24 | Lucent Technologies Inc. | Method and apparatus for target application program supervision |
JP3986721B2 (ja) * | 2000-01-20 | 2007-10-03 | 三菱電機株式会社 | ソフトウェア・モジュール動的交換方法及びソフトウェア・モジュール動的交換プログラム記録媒体 |
US20030023956A1 (en) * | 2000-02-14 | 2003-01-30 | Adi Dulberg | Embedded device monitoring agent |
GB2365554B (en) * | 2000-05-31 | 2004-09-01 | Ibm | Virtual machine support for multiple aplications |
US6742178B1 (en) * | 2000-07-20 | 2004-05-25 | International Business Machines Corporation | System and method for instrumenting application class files with correlation information to the instrumentation |
US6968540B2 (en) * | 2000-10-25 | 2005-11-22 | Opnet Technologies Inc. | Software instrumentation method and apparatus |
CA2350735A1 (en) * | 2001-03-14 | 2002-09-14 | Ibm Canada Limited-Ibm Canada Limitee | A method for providing open access to application profiling data |
US6915511B2 (en) * | 2001-05-22 | 2005-07-05 | Sun Microsystems, Inc. | Dynamic class reloading mechanism |
US7266808B2 (en) * | 2001-08-10 | 2007-09-04 | Parasoft Corporation | Method and system for dynamically invoking and/or checking conditions of a computer test program |
US6842891B2 (en) * | 2001-09-11 | 2005-01-11 | Sun Microsystems, Inc. | Dynamic attributes for distributed test framework |
US6985909B2 (en) * | 2001-12-28 | 2006-01-10 | Sap Ag | Modified class loaders and methods of use |
US20040015600A1 (en) * | 2002-02-21 | 2004-01-22 | Ashutosh Tiwary | Workload post-processing and parameterization for a system for performance testing of N-tiered computer systems using recording and playback of workloads |
CN100375013C (zh) | 2002-04-08 | 2008-03-12 | 国际商业机器公司 | 用于在分布式企业应用中进行问题确定的方法和系统 |
US20040019887A1 (en) * | 2002-07-25 | 2004-01-29 | Sun Microsystems, Inc. | Method, system, and program for loading program components |
US6792460B2 (en) * | 2002-10-02 | 2004-09-14 | Mercury Interactive Corporation | System and methods for monitoring application server performance |
US20040123279A1 (en) * | 2002-12-18 | 2004-06-24 | International Business Machines Corporation | Method and system for auto-instrumenting java applications through probe injection |
US20040153996A1 (en) * | 2003-01-30 | 2004-08-05 | International Business Machines Corporation | Method and system for determining the defining classLoader of a Java class as it is being defined |
US7275239B2 (en) * | 2003-02-10 | 2007-09-25 | International Business Machines Corporation | Run-time wait tracing using byte code insertion |
US7114150B2 (en) * | 2003-02-13 | 2006-09-26 | International Business Machines Corporation | Apparatus and method for dynamic instrumenting of code to minimize system perturbation |
US7337434B2 (en) * | 2003-04-29 | 2008-02-26 | Sony Ericsson Mobile Communications Ab | Off-device class/resource loading methods, systems and computer program products for debugging a Java application in a Java micro device |
US7533389B2 (en) | 2003-06-20 | 2009-05-12 | Sun Microsystems, Inc. | Dynamic loading of remote classes |
US7437734B2 (en) * | 2003-08-12 | 2008-10-14 | Hewlett-Packard Development Company, L.P. | Propagating web transaction context into common object model (COM) business logic components |
US7496903B2 (en) * | 2003-08-12 | 2009-02-24 | Hewlett-Packard Development Company, L.P. | Synthesizing application response measurement (ARM) instrumentation |
US7484209B2 (en) * | 2003-08-12 | 2009-01-27 | Hewlett-Packard Development Company, L.P. | Instrumenting java code by modifying bytecodes |
US7434215B2 (en) * | 2003-09-11 | 2008-10-07 | International Business Machines Corporation | Mechanism for loading plugin classes at an appropriate location in the class loader hierarchy |
US7293260B1 (en) * | 2003-09-26 | 2007-11-06 | Sun Microsystems, Inc. | Configuring methods that are likely to be executed for instrument-based profiling at application run-time |
US7275241B2 (en) * | 2003-11-21 | 2007-09-25 | International Business Machines Corporation | Dynamic instrumentation for a mixed mode virtual machine |
US20060130034A1 (en) * | 2004-12-15 | 2006-06-15 | Michael Beisiegel | Apparatus, system, and method for providing access to a set of resources available directly to a particular class loader |
US7526754B2 (en) * | 2005-02-28 | 2009-04-28 | Sap Portals Israel Ltd. | Memory debugging tool |
US7788644B2 (en) * | 2005-03-24 | 2010-08-31 | Sap Ag | Method and system for monitoring performance on a mobile device |
US20060225051A1 (en) * | 2005-04-05 | 2006-10-05 | Cisco Technology, Inc. | Method and system for code coverage |
US20060230320A1 (en) * | 2005-04-07 | 2006-10-12 | Salvador Roman S | System and method for unit test generation |
US7793304B2 (en) * | 2005-05-04 | 2010-09-07 | Symantec Corporation | System and method for monitoring memory usage |
WO2007002595A2 (en) * | 2005-06-22 | 2007-01-04 | Ektasis, Inc., A Delaware Corporation | Distributed virtual machine architecture |
US20070094675A1 (en) * | 2005-10-25 | 2007-04-26 | Ryan Caspar M | Object mobility |
US8356286B2 (en) * | 2007-03-30 | 2013-01-15 | Sap Ag | Method and system for providing on-demand profiling infrastructure for profiling at virtual machines |
-
2005
- 2005-11-21 US US11/283,637 patent/US7765537B2/en not_active Expired - Fee Related
-
2006
- 2006-11-14 CN CNB2006101446937A patent/CN100462921C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20070169000A1 (en) | 2007-07-19 |
US7765537B2 (en) | 2010-07-27 |
CN100462921C (zh) | 2009-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100462921C (zh) | 用于简档形成接口辅助类加载的方法和系统 | |
CN108960830B (zh) | 智能合约的部署方法、装置、设备及存储介质 | |
CN111095198B (zh) | 用于数据处理的系统和方法 | |
CN100370425C (zh) | 将本机函数内嵌到编译的Java代码中的方法和系统 | |
CN102402427B (zh) | 一种Java应用程序的更新方法及装置 | |
CN111095338A (zh) | 用于执行不同类型区块链合约的系统和方法 | |
CN112905472B (zh) | 内核调试系统及方法 | |
US9460306B1 (en) | System and method for controlling access of machine code to operating system resources | |
CN105612525A (zh) | 针对应用安全性的二进制转换和随机化系统 | |
US8578357B2 (en) | Endian conversion tool | |
US8141042B2 (en) | Extending portability of java code through the use of AOP | |
CN111179086A (zh) | 一种基于WebAssembly的智能合约虚拟机 | |
US20070240120A1 (en) | Adaptive Compiled Code | |
US11893367B2 (en) | Source code conversion from application program interface to policy document | |
US10579366B2 (en) | Data upgrade framework for distributed systems | |
CN112363726A (zh) | 一种内核模块的跨内核版本编译方法及系统 | |
US11036527B2 (en) | Class splitting in object-oriented environments | |
CN107943504A (zh) | 一种嵌入式系统中软件模块的动态升级方法 | |
EP3121750B1 (en) | System and method for antivirus checking of native images of software assemblies | |
US10120777B1 (en) | Remediating serialization incompatibilities | |
US9672014B2 (en) | Transparent network substrate system | |
US20170083298A1 (en) | Resilient format for distribution of ahead-of-time compiled code components | |
EP1136910A2 (en) | A method of compiling code in an object oriented programming language | |
Beuche et al. | JPURE—A Purified Java Execution Environment for Controller Networks | |
CN116266113A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090218 Termination date: 20151114 |
|
EXPY | Termination of patent right or utility model |