Zero-overhead JavaFX on Embedded Systems
JavaFX on FrameBuffer
Typically, JavaFX applications run inside a (platform-specific) window manager, alongside other applications. The window manager allows JavaFX applications to be moved, resized, hidden,… similar to how other applications work.
Obviously, a window manager has its cost, in terms of memory and CPU/GPU. In the case of embedded devices where there is only a single application active, that should consume the whole screen (or render on a number of screens), the overhead of a window manager is not needed. The Gluon Embedded library allows JavaFX applications to directly use the underlying graphics framebuffer, without relying on a window manager.
Small devices, excellent performance
An extremely light-weight WindowManager
Embedded devices typically have less resources than desktop devices. That makes it even more important for applications to be careful with those resources, and utilize them well. Developers want to leverage the full power of JavaFX, using the exact same API’s they use on desktop and mobile, but they want the underlying implementation to be as efficient as possible.
This is where Gluon Embedded comes in the picture. Gluon Embedded contains a native library for ARM32 and AArch64 linux systems that allows JavaFX applications to run without a Window Manager.
Gluon Embedded directly connect the JavaFX rendering pipeline with the DRM/KMS modules in the Linux kernel. The JavaFX scenegraph is almost directly rendered on the hardware, using the functionality provided by the Linux kernel. With Gluon Embedded, JavaFX applications leverage the low-level drivers and the hardware on embedded systems. Gluon Embedded supports hardware rendering, support for hardware cursor, multiple displays, planes, different screen resolutions and modes as fast as possible.
From cross-platform API’s to specific hardware
Gluon Embedded contains a native library that bridges the gap between the JavaFX rendering pipeline and the low-level graphics functionality in the Linux kernel, including GPU support. As a consequence, everything that is rendered by the JavaFX rendering pipeline, is shown onto the display(s) connected to the embedded device. This has the huge advantage of combining cross-platform code in the JavaFX application with very specific device functionality.
- JavaFX applications do not need to be modified to leverage Gluon Embedded
- No window manager needed. Runs without X11 or similar
- Works out of the box on most embedded linux systems (32/64 bit ARM systems)
- Lightweight, very minimal dependencies
- Leverages hardware capabilities (rendering, cursor, planes)
- Convention over configuration
Free for development and Open Source
Device & Platform Agnostic Native Hardware Services
Gluon Embedded is packaged as a native library for ARM32 and AArch64 systems. Find out how to use it in our documentation.
It is free to use during development, and for open source projects. For commercial projects in production, contact sales for a quote.
Ready For Business
Gluon Embedded is being used by enterprises and embedded developers today
Learn about how to get started with Gluon solutions, including Gluon Embedded.
Get in touch to talk about your use-case and pricing details.
Contact one of our team to have your questions answered.