aicas, inc.
-
Upload
deterministicsolutions -
Category
Documents
-
view
683 -
download
2
description
Transcript of aicas, inc.
The Case for Embedded JavaJamaicaVM Tools for Embedded & Realtime Application Development
David BebermanDir. Business [email protected]
2JamaicaVM
Agenda
Why use Java instead of C or C++?
Why Java isn’t used in embedded & realtime applications
The JamaicaVM solution for embedded & realtime applications
The aicas Group
The JamaicaVM Tool Suite
Conclusion, Q&A
3JamaicaVM
Why use Java instead of C or C++?
25% average savings per project
40% savings during coding phase
10-20% in production support
30% or more ongoing code maintenance
Reasons cited:
built-in memory management and simplified object orientation
IDC – “Java Technology Pays Positively”
Why use Java instead of C or C++?
“A typical C++ program had two to three times as many bugs per line of code…”
“C++ generated between 15% and 50% more defects per line”
“and took six times as long to debug”
“Java was between 30% and 200% more productive…”“Comparing Observed Bug and Productivity Rates for Java and C++”, Geoffrey Phipps, 2001
5JamaicaVM
Why use Java instead of C or C++?
#1 Most Popular Language
6JamaicaVM
Why use Java instead of C or C++?
• Reduce development time
• Reduce the need to “re-implement code”
• Reduce QA time
• Reduce shipped bugs & defects
Increase Productivity
Increase Code Reuse
Increase Code Quality
Increase access to potential developers: #1 most popular language (July 2010 Tiobe Index)
7JamaicaVM
Why Isn’t Java Used in Embedded & Realtime Applications?
Objections often cited by experienced embedded engineers:
“Java applications are too big”
“Interpreted Java applications are too slow”
“Java programs pause & delay unpredictably”
“Java memory management (garbage collection) is nondeterministic”
“Scoped Memory is too difficult to use”(Realtime Specification for Java)
“Lack of Java on embedded platforms”
Why Isn’t Java Used in Embedded & Realtime Applications?
All of those objectionsused to be true
BUT NOT ANYMORE!
9JamaicaVM
Embedded & Realtime Java
What if there was a solution for Java’s– application size?
– Pause & Delay unpredictably?
– nondeterminism?
– Interpreted performance?
– Scoped Memory complexity?
– Lack of availability for embedded platforms?
What if you could realize
Reduced development time?
Reduced QA time?
Reduced bugs & defects?
Increased code quality and reuse?
Increased access to qualified developers?
Increased number of releases per year?
The JamaicaVM Solution
Presenting , the Best Java Solution for Embedded & Realtime
Application Development
11JamaicaVM
The JamaicaVM Solution
Java Problems• Unpredictable pauses & delays
• Java nondeterminism
• Java application size
• Interpreted Java performance
• Java RTSJ Scoped Memory complexity problem?
• Lack of Java on Embedded Platforms?
JamaicaVM SolutionMultithreaded Hard Realtime Garbage
Collector (“RTGC”)
Worst Case Execution Time Analysis (“WCETA”) possible with RTGC
Smart Linker reduces executable size by up to 90%
Ahead-of-time (“AOT”) Compiler delivers “native” compiled code performance
No need for Scoped Memory
Support for most embedded OS’es and CPU’s
12JamaicaVM
The JamaicaVM Solution
Real Benefits
• Project deadlines are met: Gains in productivity help meet scheduling
• Developers learn new skills: Mastery of current technology helps attract and keep talent
• On time projects, low defect rates, and expert developers =
Satisified Management!
The aicas Group
Realtime Java Technology and Analysis Toolsfor Creating Robust Embedded Systems
14JamaicaVM
About aicas Gmbh.
Corporate Overview
• Founded March 2001
• Headquarters in Karlsruhe, Germany
Regional Companies
• Americas — aicas Inc., MA. & SC.
• France — aicas Sarl, Paris
Global Technology leader
• Embedded and Realtime Java Technology
• Analysis and Debugging Tools for Java
15JamaicaVM
JamaicaVM has a Powerful Toolset
16JamaicaVM
classfilesclass
filesclassfiles
settingsprofilin
gdata
Builder
objectfile
classfilesclass
filesJamaicaV
MRuntime
stand-aloneapplication
Build Process from Desktop to Device
Embedded
OS
17JamaicaVM
Thread Monitor
18JamaicaVM
Multicore Support
19JamaicaVM
Automatic Program Analysis
20JamaicaVM
JamaicaVM Tool Suite
• Tool Summary• Performance Profiler• Memory Profiler• Ahead-of-time Static Compiler• Smart Linker• JamaicaVM & RTGC Runtime Environment• Thread Monitor• Veriflux Static Analyzer• Eclipse Plugin
21JamaicaVM
Competitive Advantages
Safety
Security
Scalability
Portability
Performance
Tools Support
Short development time
Everything you need to program robust applications for embedded systems quickly!
22JamaicaVM
Conclusion
State-of-the-art Java technologyRealtime garbage collection
Compilation and smart linking technology
Complete RTSJ implementation
Market proven products
Dedicated to standards
Tools to ensure that your system works everytime!
Q&A
The Case for Embedded Java
Jamaica Toolchain for Embedded & Realtime Application Development
Jeannette FitzgeraldAccount [email protected](860) 367-2065