Common wisdom says that Java runs on bytecode. Most developers also know there’s something like a JIT compiler, but few developers are aware that the JIT compiler generates real machine code. Let alone that we can see it.
Spectre and Meltdown came as a shock. They showed that low-level CPU optimizations have an impact on our lives. Plus, they proved an illusion of most programmers wrong. Yes, you’re using a high-level language. But that doesn’t mean all those abstraction layers shield you completely from the CPU. I’ve demonstrated the effect of the CPU […]