Download presentation
Presentation is loading. Please wait.
Published byFelix Wiggins Modified over 9 years ago
1
25 August, 2015 SEESCOASEESCOA STWW - Programma D1.5: Choice of Platform Prof. Koen De Bosschere
2
SEESCOASEESCOA Platform requirements uMust enable component model uMust support (soft) real-time constraints uHigh software productivity uMust be well-defined and have stable APIs uSupport for remote connectivity uSupport for user interface uMust enable reuse and portability uMust run on off-the-self hardware platform
3
SEESCOASEESCOA Our choice: Java uJava is well-defined and has stable APIs uPure object-oriented language uMany libraries available uMany services are for free (TCP/IP, multithreading, …) uHigher software productivity due to higher abstraction level uPromising technology for embedded systems
4
SEESCOASEESCOA Java virtual machine uShields the underlying hardware architecture uAvailable for a wide range of hardware platforms: standard edition, enterprise edition, micro edition uHas kernel functionality or can be run on top of a real-time operating system uAllows access to hardware by means of native routines
5
SEESCOASEESCOA Design Methodology Goal:evaluate / merge different methodologies suitable for mid-scaled & large-scaled embedded systems uComponent Based uComponent Reuse uHardware/Software Co-Design uCo-Evolution uMulti-Site Development
6
SEESCOASEESCOA Component Architecture uA component architecture provides 1.A central component system to glue components 2.A hardware abstraction layer 3.A mechanism for integrating existing components through wrappers uJava makes (2) and (3) easier 1.invoke 2.native C interfacing 3.try/catch/throw clauses uFocus can then be on (1)
7
SEESCOASEESCOA Debugging uClear separation between the Java and JVM level uICE functionality can be implemented in software (instrumented JVM) uCross compilation on any platform: any JVM can serve as simulator uNo pointers, no memory leaks; Java application is “crash free”
8
SEESCOASEESCOA User interface uJava has its own GUI-libraries (with adaptable look-and-feel) uRemote user interface (service interface) easy to realize thanks to the internet connectivity
9
SEESCOASEESCOA Common prejudices uJava is too slow uJava is not suitable for hard real-time systems uJava requires extra memory uWe can do better in C or C++
10
SEESCOASEESCOA Java is too slow uShould be ok for our application uCan be improved by wStatically linking the application wCompiling a class file when downloading it wControlling the garbage collector wCalling low level methods wCalling native C routines where necessary
11
SEESCOASEESCOA Not suitable for hard real-time systems uJBED is hard real-time uJVM also runs on top of a standard real-time kernel
12
SEESCOASEESCOA Java requires extra memory uUp to 1 MB uBut: wThere are several alternatives < 200 kB wKVM requires only 40 kB
13
SEESCOASEESCOA We can do better in C or C++ uIsn’t this a similar argument to C/ASM debate?
14
SEESCOASEESCOA Hardware uProcessor Board with Ethernet connectivity, ROM, Flash, RAM Interface to the camera (USB, Video signal?) u32-bit Processor uSmall LCD-display
15
SEESCOASEESCOA Reported problem areas uIntegration of third party software; JVM yes, class files no problem! uGeneration and maintenance of documentation: JavaDoc uDebugging: memory leaks, ISR no pointers, better support for ISR uLack of multiplatform IDE, tools one platform uEffort estimation techniques (metrics) uPerformance estimation techniques (cross development)
16
SEESCOASEESCOA Reported problem areas uHardware problems (easier to trace) uChanging requirements (also: research during development) (OO + CBD) uLack of qualified personnel (standard language; easier to find) uServiceability (applets, TCP built-in, security) uGrowing complexity of software (OO+CBD) uLow software productivity (higher productivity in Java)
17
SEESCOASEESCOA Reported problem areas uNeed for rapid prototyping (OO+stubs) uUser interface specification is difficult (multi- platform user interfaces) uTesting is time-consuming (white, black box, glass box) uMulti-site development uVersioning of the design uDeadlines
18
SEESCOASEESCOA Conclusion uJava will enable us to wImplement our case wCarry out our workplan uCan help the companies in solving some of the reported problems
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.