首页> 外文会议>Perspectives of systems informatics >Multi-level Virtual Machine Debugging Using the Java Platform Debugger Architecture
【24h】

Multi-level Virtual Machine Debugging Using the Java Platform Debugger Architecture

机译:使用Java平台调试器体系结构进行多级虚拟机调试

获取原文
获取原文并翻译 | 示例

摘要

Debugging virtual machines (VMs) presents unique challenges, especially meta-circular VMs, which are written in the same language they implement. Making sense of runtime state for such VMs requires insight and interaction at multiple levels of abstraction simultaneously. For example, debugging a Java VM written in Java requires understanding execution state at the source code, bytecode and machine code levels. However, the standard debugging interface for Java, which has a platform-independent execution model, is itself platform-independent. By definition, such an interface provides no access to platform-specific details such as machine code state, stack and register values. Debuggers for low-level languages such as C and C++, on the other hand, have direct access only to low-level information from which they must synthesize higher-level views of execution state. An ideal debugger for a meta-circular VM would be a hybrid: one that uses standard platform-independent debugger interfaces but which also interacts with the execution environment in terms of low-level, platform-dependent state. This paper presents such a hybrid architecture for the meta-circular Maxine VM. This architecture adopts unchanged a standard debugging interface, the Java Platform Debugger Architecture (JPDA), in combination with the highly extensible NetBeans Integrated Development Environment. Using an extension point within the interface, additional machine-level information can be exchanged between a specialized server associated with the VM and plug-in extensions within NetBeans.
机译:调试虚拟机(VM)带来了独特的挑战,尤其是元循环VM,它们以与实现相同的语言编写。要了解此类VM的运行时状态,需要同时在多个抽象级别进行洞察和交互。例如,调试用Java编写的Java VM需要了解源代码,字节码和机器代码级别的执行状态。但是,Java的标准调试接口具有独立于平台的执行模型,它本身也独立于平台。根据定义,此类接口无法访问特定于平台的详细信息,例如机器代码状态,堆栈和寄存器值。另一方面,用于C和C ++等低级语言的调试器只能直接访问低级信息,而它们必须从中综合执行状态的高级视图。对于元循环VM来说,理想的调试器是混合器:它使用标准的独立于平台的调试器接口,但还可以在与底层平台相关的状态下与执行环境进行交互。本文提出了一种用于元圆形Maxine VM的混合体系结构。该体系结构采用了标准的调试接口Java Platform Debugger Architecture(JPDA),并与高度可扩展的NetBeans集成开发环境相结合。使用接口内的扩展点,可以在与VM关联的专用服务器与NetBeans中的插件扩展之间交换其他机器级信息。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号