moving to realtime java for embedded systems af james hunt, aicas
DESCRIPTION
Oplægget blev holdt ved InfinIT-arrangementet "Temadag: Java for real-time and embedded systems", der blev afholdt hhv. den 12. og 13. september 2013. Læs mere om arrangementet her: http://infinit.dk/dk/arrangementer/tidligere_arrangementer/temadag_java_for_real-time_and_embedded_systems.htmTRANSCRIPT
aicas technology
Moving to Realtime Java for Embedded Systems
Dr. James HuntCEO, aicas GmbH
Temadag om Java, Sept. 2013
2JamaicaVM: Realt ime Response for Java Applications
Barriers to Using Java in ES
Business Uncertainties
cost
commercial stability
support
Techniclal Uncertainties
size and speed
device access
OS issues
how does it work in practice
3JamaicaVM: Realt ime Response for Java Applications
Business Issues
Cost
Effect on Product Cost
Porting Costs
External Dependencies
Licensing risk
Support risk
Obsolecense risk
4JamaicaVM: Realt ime Response for Java Applications
Resource Requirements
Processor
32 bit or 64 bit
speed depends on applicationgraphics?
computational intesity?
Memory
512k has been done
from 4M w/o graphics, 20M w/ graphics
depends on application
5JamaicaVM: Realt ime Response for Java Applications
Attr ibutes
Performance
500usec periodic thread w/ allocation on Linux w/ Preempt patch, Intel Core Duo, 5usec jitter
Similar result on VxWork, PowerPC
Size
minimum for HelloWorld >1Mbyte
depends on application complexity
Java Versions
J2SE 1.6 & J2ME 1.4 both w/ RTSJ
6JamaicaVM: Realt ime Response for Java Applications
JamaicaVM Platform Support
RTOS
VxWorks
Linux/RT
QNX
WinCE
Windows XP...
Integrity
ThreadX
Solaris
Processors
PowerPC
SH4
ARM
Atom
x86
IA-64
7JamaicaVM: Realt ime Response for Java Applications
Porting
Processor dependencies
No JIT
base AOT uses platform C compiler
Operating System
easier for POSIX like systems
harder for others
Graphics
most costly
leverage standard libraries
8JamaicaVM: Realt ime Response for Java Applications
Operating System
Is an RTOS Required? Yes for
scheduling
network
file system
boad support package
Is an RTOS required?
Yes for hard realtime
No for soft realtime
9JamaicaVM: Realt ime Response for Java Applications
Drivers
Device access
JNI w/ C or C++ (SWIG)
RawMemory—access control and data registers
Happenings—manage interrupts
Interrupt Service Routined
Networking
ethernet
CAN
etc.
10JamaicaVM: Realt ime Response for Java Applications
JamaicaVM Build Process
Optimization
JamaicaVMBuilder
JamaicaVMBuilder
Java Byte Code
InterpretedExecutable
Profiled Executable
JamaicaVMBuilder
Profile
OptimizedExecutable
IDE
SourceCode
Javac
Test on Host(JamacaVM Pluggin)
Test on Target
Test Performance