rgoussu@goussu: ~/library/java/jvm-implementations/references
~/library/java/jvm-implementations/references cat jvm-specification.md

The Java Virtual Machine Specification (JVMS)

# The authoritative Oracle specification defining the class file format, bytecode semantics, and verification rules every conforming JVM implements.

Referencesaved 2026-08-09source #java#jvm#specification#bytecode

Why kept

The authoritative contract every JVM implementation — HotSpot, OpenJ9, GraalVM, Zing — implements; the ground truth behind JVM implementations compared.

Notes

  • Chapters worth knowing: ch. 4 — the class file format (constant pool, attributes, descriptors) and the verification rules; ch. 6 — the bytecode instruction set, one entry per opcode with operand-stack effects; ch. 2 for run-time data areas, ch. 5 for loading/linking/initialization.
  • The Java Language Specification (JLS) lives at the same URL — language semantics (including the Java Memory Model, JLS §17) vs the JVMS's execution machinery; cite the right one.
  • Versioned per release: pick the spec matching the class file major version at hand; updated with every Java release alongside the JLS.