This paper describes a framework for structural testing in a java Virtual Machine (JVM), called Jazz2. The framework provides instrumentation, memory management, control flow analysis, and callback handling services f...
详细信息
Calling-context profiles and dynamic metrics at the bytecode level are important for profiling, workload characterization, program comprehension, and reverse engineering. Prevailing tools for collecting calling-contex...
详细信息
Two main demands on instruction set simulation are portability and high simulation performance. For the testing and benchmarking of ISA prototypes such as in an ASIP design process, simulators are additionally require...
详细信息
ISBN:
(纸本)9781450309356
Two main demands on instruction set simulation are portability and high simulation performance. For the testing and benchmarking of ISA prototypes such as in an ASIP design process, simulators are additionally required to offer retargetability for the rapid modeling and revisal of their simulation targets. In this paper, we present the techniques applied in a full-system instruction set simulation framework that combines these three conflicting demands. Our framework is retargetable, portable and provides high simulation performance. It is entirely implemented in java and features a two-stage dynamic binary translation (DBT) targeting java Bytecode in the first stage and employing the java Virtual Machine as an external code generation back end in the second *** the use of state-of-the-art techniques such as DBT generates high simulation performance, the framework is also platform independent and can run on any J2SE-compliant java Runtime Environment. In spite of this platform independence, the native code generated in the second stage will even profit from the platform-specific optimizations performed by modern JVM implementations. Our second contribution is HPADL, the instruction set description language that provides the retargetability of our framework. HPADL is tailored for the specific needs of dynamically compiling full-system IS simulation. Due to its clean separation of concerns between the instruction decoding and instruction execution, it easily enables DBT. Also, it is not restricted to a specific range of target architectures such as RISC. In this paper, we will compare the modeling effort in HPADL to that of QEMU. For our experiments and in order to show the practicability and flexibility of our approach, we implemented HPADL models of the DLX, 8086, ARMv4 and PowerPC / PowerPC VLE ISA as well as some IO devicemodels in java. A comparison with the simulation performance of QEMU by reference of the EEMBC AutoBench 1.1 shows that we achieve 78% o
The java language and runtime environment has had a profound worldwide impact on computer software since its introduction nearly two decades ago. It has enabled the creation of a rich ecosystem of libraries, framework...
详细信息
ISBN:
(纸本)9781450309356
The java language and runtime environment has had a profound worldwide impact on computer software since its introduction nearly two decades ago. It has enabled the creation of a rich ecosystem of libraries, frameworks, and tools that promises to deliver significant value for many years to come. Consequently, a wide range of Interactive Development Environments (IDEs) have emerged to increase the productivity of java programmers. They vary in functionality based on the expertise level assumed for their target user base. The Eclipse java Development Tools (JDT) project offers a rich set of power tools for experienced programmers, but can be harder for novice programmers to set up and use. In contrast, IDEs such as Drjava [2] and BlueJ [16] have been developed primarily for use in introductory programming courses.
Although there exists many Semantic Web tools and APIs to help building semantic web applications, java EE 3-tier architecture has been largely used in developing large enterprise applications. It is proved to be comp...
详细信息
Web services have emerged as a technology for designing and composing distributed applications. Recent research increasingly addressed the need to adapt such systems based on changing requirements and environmental co...
详细信息
It has always been a challenge to justify a professional java curriculum setting because of the diversity of this technology. Guided by the principles of software engineering, a philosophical-level solution is propose...
详细信息
Task-driving Teaching design is one of Teaching method based on the theory of constructivism. How to organize the process is the key of obtaining good teaching effects. In this paper, with introducing the task-driving...
详细信息
In change impact analysis, obtaining guidance from automatic tools would be highly desirable since this activity is generally seen as a very difficult program comprehension problem. However, since the notion of an ...
详细信息
A mixin is a set of functionalities that can be added to many different classes. Typically, there are two common situations where mixins are used: (1) if a feature should be added to a large number of different classe...
详细信息
A mixin is a set of functionalities that can be added to many different classes. Typically, there are two common situations where mixins are used: (1) if a feature should be added to a large number of different classes;(2) if a class should have many optional features. In recent years mixins gained a lot of popularity, particularly in dynamically typed scripting languages such as Ruby or javaScript. The topic of our research is the integration of dynamic mixins into java using the Dynamic Code Evolution Virtual Machine (DCE VM) [1]. We aim for a stable, easy to use API and hope for a performance gain in comparison to other approaches.
暂无评论