Bare metal Java
summary
Argues that recent Panama APIs make the JVM far more hardware-friendly: MemorySegment (spatial, temporal and thread-confinement bounds) plus MemoryLayout let Java allocate and safely manipulate native memory with alignment checks and VarHandle-style atomic/volatile semantics; Linker provides downcalls and upcalls so C can call back into Java via generated stubs. Demonstrates a working signal handler and an SDL-based game using jextract-generated bindings and an OpenJDK build, proving the approach actually runs and interoperates with native libraries.
AI-written summary · about
chapters (11)
- 0:00Introduction and context
- 3:07Managed vs. native runtimes
- 7:15Why Java for high-performance
- 11:06Foreign memory and linkers
- 13:43Memory segments and scopes
- 23:20Var handles and method handles
- 31:57Unsafe memory access
- 34:02Downcalls and native linking
- 38:04Upcalls to Java
- 43:23Game engine demonstration
- 51:23Closing thoughts and Q&A
related talks
46mBare Metal Java
29mEasily Leverage Native Functions with Project Panama from Java
16mForeign Function and Memory API
55mJava 19 Project Panama 4 Newbies
01h 01mJava Enable Preview: Foreign Function and Memory Interface
01h 04mProject Panama Unleashing Native Libraries
36mA Promising Future for using Native Libraries in the Java World
45mProject Panama - Foreign Function & Memory API
