Inside the Java Virtual Machine (Java Masters Series)
Publisher:McGraw-Hill Companies(1997-12) | ISBN-10: 0079132480 | PDF | 2.3 Mb | 579 pages

For the advanced Java developer, Inside the Java 2 Virtual Machine offers a detailed guide to the inner workings of today's Java

Virtual Machines (JVMs), plus a complete reference to all bytecodes (the "machine code" for the language). For those who want

to understand how Java really works, this book definitely delivers the goods, with excellent technical detail and demos of JVMs

in action on the companion CD-ROM.
This title provides a remarkably detailed tour of the internals of the Java platform, with plenty of technical information on the

way virtual machines do business under the hood, from the way language statements are turned into bytecodes to in-depth

coverage of loading and invoking classes, security, and garbage collection. The author demonstrates superior knowledge of

Sun's Java Virtual Machine specification and explains the principles of its design and implementation, including a full explanation

of how actual bytecodes are run on a VM. (Surprisingly, variables in Java are always processed on the stack, since there are no

general CPU registers available, a very different architecture than most CPUs.) Each chapter includes applets that showcase

Java in action (for example, adding two numbers or demonstrating garbage collection).
The later part of this text covers over 200 Java bytecodes (mnemonic instructions for the JVM) by groups, and the book closes

with a full listing of these opcodes (with over 150 pages of material). In all, Inside the Java 2 Virtual Machine serves as both a

tutorial and reference to the architecture and inner operation of JVMs for any technically astute reader who wants to understand

how Java really works. --Richard Dragan
Topics covered: Java Virtual Machine (JVM) class architecture, the Java class loader, tips for platform independence, Java

security, verifying class files, code-signing, network mobility, Jini basics, the organization of Java .class files, Java object

lifetimes, the linking model, garbage collection basics and algorithms, stack operations, type conversions, integer and floating-

point arithmetic, objects and arrays, control flow, exceptions and finally clauses, method invocation, thread synchronization,

Java opcode and quickcode reference, and JVM simulation demos.