The Bytecode Verifier’s Hidden Contract
Every class file passes a formal dataflow analysis before the JIT ever sees it, and that quiet checkpoint is what actually makes the JVM’s sandbox model possible. Ask most Java dev...
Search fresh public links, source activity, and ready-to-use post angles for Jvm Internals.
Fresh curated links around JVM Internals are collected here so marketers can spot useful updates and turn timely ideas into posts faster.
Recent items include:
Recent curated links from global sources. Generate one free draft from any story, then use SocialBu to schedule and refine your content calendar.
Every class file passes a formal dataflow analysis before the JIT ever sees it, and that quiet checkpoint is what actually makes the JVM’s sandbox model possible. Ask most Java dev...
Tim Lindholm, Java's original JVM maintainer, shares with El Reg some of the grungy build details the doc glosses over
Attach a profiler to see what the JIT is really doing, and you’ve just changed what the JIT does. On the JVM, that’s not a metaphor. It’s a specific, mechanical consequence of how...
A bytecode-level look at why recursive calls can’t quietly collapse their stack frames on the JVM, and why Scheme and Erlang made a different bet decades ago. Every Java developer...
Java applications have traditionally relied heavily on runtime class loading, linking, interpretation, profiling, and Just-in-Time (JIT) compilation. These mechanisms provide excel...
JEP 519 shipped stable in JDK 25. It shrinks every single object header on the heap. It’s one JVM flag. Most teams still haven’t flipped it. Here’s a JVM optimization that costs no...
Small, verifiable before and after code examples showing what helps, or defeats, the JIT’s ability to keep an object off the heap entirely. HotSpot does not actually allocate objec...
Why the JMM is the invisible contract behind every concurrent Java program — and what breaks when you misread it. Most Java developers write concurrent code by reasoning about it a...
How value classes differ from records — no identity, no heap header — where they outperform records in tight loops, and the Valhalla mental model in 300 words. Status check: As of...
What the new value keyword actually changes about heap layout, and why data-heavy Java applications should pay attention. For more than a decade, Java developers have lived with a...
Alice calls the order service. The order service calls the ledger on her behalf. At the second hop, the ledger has to decide whose authority the debit is being made under. Most s...
For a decade and a half, “G1 gives up some throughput for lower pause times” has been treated as a law of nature rather than an engineering choice. JEP 522 shipped in JDK 26 and qu...
JDK 24 removed the monitor-related carrier-thread pinning that stalled Netflix and similar teams on Java 21. What has replaced it on JDK 25 LTS is downstream-resource saturation: T...
Virtual threads are supposed to make blocking cheap. That is the whole promise of Project Loom: keep the simple thread-per-request style, but let the JVM mount and unmount those li...
In Part 1, the minimal deployment showed constraints traveling with the proxy: authentication, encryption, hardened deserialization, all declared in configuration and enforced at t...
Originally appeared on Peter Zhu.Object allocations from the garbage collector are now inlined in ZJIT.
In the first article, we got started with Jeffrey Microscope and learned to read a single flamegraph — the timeseries, search, tooltips, and the allocation and wall-clock variants....
Originally appeared on Rails at Scale. It’s been 8 years since the first just-in-time compiler was introduced in Ruby. However, throughout this time, the garbage collector has bee...
Java continues its evolution with another major release. Java 26 introduces important improvements across language features, runtime performance, garbage collection, concurrency, s...
Пара new в горячем методе может вообще не попасть в кучу — а после безобидного if внезапно вернуть аллокации обратно. Разбираемся, как C2 принимает такие решения, где ломается скал...
The constraint system stops a bad call before it leaves the JVM. The Safe Codebase Audit Pipeline stops bad code before a client ever loads it. What remains is identity: who is cal...
Every running Java Virtual Machine (JVM) application executes as an operating system process. Like every other process, the JVM is assigned a unique Process ID (PID) by the operati...
JEP 401 is real, it’s in an early-access build today, and you can run it right now. It just isn’t landing where most people think it is. A decade of conference talks, name changes,...
Learn how to retrieve the current Java process ID using ProcessHandle, RuntimeMXBean, and legacy approaches across different Java versions. The post How Does a Java Program Get It...
Use SocialBu to discover ideas, generate post drafts, and schedule them across your social channels.