23,99 €
This book intends to educate Java practitioners on JAVA Virtual Machine through detailed explanation about the intended purpose and functions in a JVM.
Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:
Veröffentlichungsjahr: 2018
Java - VIRTUAL MACHINE
Preeti Man
Published by Preeti Man, 2018.
While every precaution has been taken in the preparation of this book, the publisher assumes no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein.
JAVA - VIRTUAL MACHINE
First edition. November 8, 2018.
Copyright © 2018 Preeti Man.
Written by Preeti Man.
10 9 8 7 6 5 4 3 2 1
Title Page
Copyright Page
Java - GUI Applications
The security model
What about Just-In-Time compilers?
Java Virtual Machine (JVM) - A program that runs under an operating system and interprets Java programs. The Java Virtual Machine ideally will not allow any harm to come to the computer because it has no control of the operating system and acts as if it is a separate computer. Thus, if a malicious Java program were to crash the Java Virtual Machine the operating system would remain stable. Another advantage of this mechanism is that different OSes can have their own Java Virtual Machines that should act identically. Thus Java should be able to be run across different platforms easily with no code changes. In the real world, however, this is not always the case.
The Java virtual machine (JVM) is the cornerstone of the Java and Java 2 platforms. It is the component of the technology responsible for its hardware- and operating system- independence, the small size of its compiled code, and its ability to protect users from malicious programs. The Java virtual machine is an abstract computing machine. Like a real computing machine, it has an instruction set and manipulates various memory areas at run time. It is reasonably common to implement a programming language using a virtual machine; the best-known virtual machine may be the P-Code machine of UCSD Pascal.
The first prototype implementation of the Java virtual machine, done at Sun Microsystems, Inc., emulated the Java virtual machine instruction set in software hosted by a handhold device that resembled a contemporary Personal Digital Assistant (PDA). Sun's current Java virtual machine implementations, components of its Java TM 2 SDK and Java TM 2 Runtime Environment products, emulate the Java virtual machine on Win32 and Solaris hosts in much more sophisticated ways. However, the Java virtual machine does not assume any particular implementation technology, host hardware, or host operating system. It is not inherently interpreted, but can just as well be implemented by compiling its instruction set to that of a silicon CPU. It may also be implemented in microcode or directly in silicon.
The Java virtual machine knows nothing of the Java programming language, only of a particular binary format, the class file format. A class file contains Java virtual machine instructions (or bytecodes) and a symbol table, as well as other ancillary information.
For the sake of security, the Java virtual machine imposes strong format and structural constraints on the code in a class file. However, any language with functionality that can be expressed in terms of a valid class file can be hosted by the Java virtual machine. Attracted by a generally available, machine-independent platform, implementors of other languages are turning to the Java virtual machine as a delivery vehicle for their languages.
