One of the two major parts of Project Panama is the "Foreign Function and Memory API" (the "FFM API") which saw its third preview in Java 21 and will be finalized in Java 22. In this talk, we will explore how the FFM API enables native methods and memory access with pure Java code and how high performance and safety can be achieved at the same time. Fundamental concepts like MemorySegments, MemoryLayouts, Arenas, and native calls will be explained in detail and we will then build on these fundamental building blocks in a hands-on coding demo to customize their behavior and add functionality.
These newer building blocks will then be combined into a lightweight high-performance service architecture framework whereby we will use concepts like memory mapping, custom Arenas, trivial native calls, native linkers, and high-performance serialization. The building blocks shown can be reused across many typical and contemporary application domains. Who knows, maybe this can improve the performance and safety of your existing projects. There is only one way to find out: Let's break some boards in the Panama Dojo.
Per Minborg
Oracle, Inc
Per Minborg works in the Java Core Library team at Oracle, is an OpenJDK contributor, and is also a member of the Panama project team focusing on the FFM API. He is an inventor and developer with more than 20 years of Java coding experience. He has been a frequent contributor to various open-source projects, is a regular speaker at events, Oracle JavaOne alumnus, and co-author of the publication Modern Java.