Advanced Design and Implementation of Virtual Machines by Xiao-Feng Li

, , Comments Off on Advanced Design and Implementation of Virtual Machines by Xiao-Feng Li

By Xiao-Feng Li

Besides the more and more very important runtime engines pervasive in our daily-life computing, there's a powerful call for from the software program neighborhood for a fantastic presentation at the layout and implementation of contemporary digital machines, together with the Java digital computer, javascript engine and Android execution engine. The neighborhood expects to determine not just formal set of rules description, but in addition pragmatic code snippets to appreciate not just learn themes, but in addition engineering suggestions. This ebook meets those calls for by way of delivering a special description that mixes excessive point layout with low point implementations and educational complex themes with advertisement recommendations. This booklet takes a holistic method of the layout of VM structure, with contents geared up right into a constant framework, introducing themes and algorithms in an simply understood step-by-step procedure. It specializes in the serious points of VM layout, that are frequently ignored in different works, comparable to runtime helpers, stack unwinding and local interface. The algorithms are totally illustrated in figures and applied in effortless to digest code snippets, making the summary ideas tangible and programmable for procedure software program builders.

Show description

Read Online or Download Advanced Design and Implementation of Virtual Machines PDF

Similar design & architecture books

Constrained Control and Estimation: An Optimisation Approach (Communications and Control Engineering)

Fresh advancements in restricted regulate and estimation have created a necessity for this entire creation to the underlying primary rules. those advances have considerably broadened the area of program of limited regulate. - utilizing the primary instruments of prediction and optimisation, examples of the way to accommodate constraints are given, putting emphasis on version predictive keep an eye on.

Architecting Composite Applications and Services with TIBCO (Tibco Press Tibco Press)

“Paul Brown has performed a want for the TIBCO neighborhood and an individual desirous to get into this product set. Architecting TIBCO recommendations with out understanding the TIBCO structure basics and having perception to the subjects mentioned during this publication is dicy to any association. I totally suggest this e-book to an individual inquisitive about designing options utilizing the TIBCO ActiveMatrix items.

Autonomic Computing Enabled Cooperative Networked Design

This e-book introduces the idea that of autonomic computing pushed cooperative networked process layout from an architectural point of view. As such it leverages and capitalises at the suitable developments in either the geographical regions of autonomic computing and networking by way of welding them heavily jointly. specifically, a multi-faceted Autonomic Cooperative approach Architectural version is outlined which includes the inspiration of Autonomic Cooperative Behaviour being orchestrated via the Autonomic Cooperative Networking Protocol of a cross-layer nature.

Extra info for Advanced Design and Implementation of Virtual Machines

Example text

Apache Harmony project itself was discontinued in year 2011. The code base is still available at the Apache’s website. In 2015, Google Android started to shift its libraries from Apache Harmony to OpenJDK. It requires huge efforts to implement a complete Java platform, especially the abundant class libraries, whereas it is relatively easy to implement a JVM. To the knowledge of the author, there are dozens of claimed JVM implementations, whereas there have been only three independent Java class library implementations: OpenJDK, GNU Classpath, and Apache Harmony.

It is also common for a virtual machine to execute a piece of the application code with interpretation and then do the next piece with compilation. A virtual machine can be implemented in software or hardware or both combined. Some hardware is designed to directly execute the virtual ISA instructions, which is no longer a virtual machine since the virtual ISA is no longer virtual. Conventionally, it is still called virtual machine but implemented in hardware. Since almost all modern programming languages rely on a virtual machine, it is no surprise that a user probably cannot live without one virtual machine or two.

6 Traditional Model versus Virtual Machine Model Looking from the perspective of traditional computing, virtual machine actually shares almost the same components but organized in a different way. For example, to support C language on a target X86 machine, one needs a compiler such as GNU GCC to translate the source code into X86 machine code and then a linker to package the result into an executable file. When the executable is executed, a loader is needed to load the file into memory and then a dynamic linker resolves all the referenced symbols to memory addresses.

Download PDF sample

Rated 4.71 of 5 – based on 38 votes