Presentation is loading. Please wait.

Presentation is loading. Please wait.

Java phoneME CDC AMS July, 15, 2008 by Wooram Noh.

Similar presentations


Presentation on theme: "Java phoneME CDC AMS July, 15, 2008 by Wooram Noh."— Presentation transcript:

1 Java phoneME CDC AMS July, 15, 2008 by Wooram Noh

2 Outline CDC ASM Java phoneme CDC build tutorial
Application Management System PBP Presentation Mode (Personal Basis Profile only)

3 CDC ASM CDC AMS – Concurrently launch and manage multiple application
The Goal of CDC AMS Robustness Scalability AMS system should provide quick luanching AMS be minimized Full native integration Full compatibility with existing applications Transparency

4 CDC ASM Early time uses Monolithic main()-based application
After java runtime environment to launch, run, and manage several application at once CDC include xlet-managed application model Thread-based concurrency and namespace-based isolation can still interfere with each other in subtle ways Not fully isolated Namespace-based isolation provides security without rubustness New Requirments Classloader-based isolation works for well behind applications Cannot provide robustness Robustness needed different vendors and built for different purposes.

5 Build Tutorial CDC Build system set of Makefiles, scripts, tools
CDC VM 1.1.1 Foundation Profile 1.1 (JSR 219) Personal Basis Profile 1.1 (JSR 217) Personal Profile 1.1 (JSR 216 ) CDC AMS (Application Management System) Available X-NIX build tools to compile java, C, asm codes Generate an executable image for a specific target platform Install Linux build tool packages for PBP, PP RPM Package Version Binutils-static 2.16 Bison 2.1 Make 3.8 G 4.0.3 Subversion 1.3.0 Qt3-dev 3.3.5 Qt3

6 About phoneME Advanced MR1
Q: What is phoneME Advanced MR1 software? A: Build around JavaME CDC and incorporates implementations of a variety of key wireless industry standard. Q: What more does phoneME advanced software offer? A: CDC architecture is well suited to high-level OS features. Providing enhanced compatibility Q: What are the supported hardware platform? A: Supports deployment on ARM, MIPS and x86-linux devices

7 Install Guide Simple Example Building Building Personal Basis Profile
at /user/phoneme-advanced-mr1/build/linux-x86-generic/ make Test the Executable bin/cvm –cp testclasses.zip HelloWorld Building Personal Basis Profile Before start need Qt3 Makefile option J2ME_CLASSLIB=basis QT_TARGET_DIR=/usr/local/qt/lib X11_LIB_DIR=/usr/X11R6/lib J2ME_PLATFORM=appmanager Do! Make

8 Install Guide Install Guide Qt3 Unzip source file to /usr/local/qt
Setting .bash_profile QTDIR=/root/qt/qtx PATH=$QTDIR/bin:$PATH MANPATH=$QTDIR/doc/man:$MANPATH LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH export QTDIR PATH MANPATH LD_LIBRARY_PATH ./configure when ask for license type “yes” Make When Errors g++ doesn't exist Install g++ About Freetype.h error #ln –s /usr/include/freetype2/freetype /usr/include/freetype

9 Launching CDC AMS 3 stage procedure
1st Stage: mtask server JVM instance through conventional JVM launch mechanism loading and excuting from cvm ROM emage Mtask server JVM instance remain in memory Wating for mtask commands 2nd Stage: cvmc driver util send an mtask command to clone itself the server jvm instance into a client JVM instance Server JVM instance – respond to mtask command Client JVM instance – encapsulates the AMS implementation mtask server JVM instance cvm ROM image mtask server JVM instance mtask client JVM instance cvmc Driver utility clone

10 Launching CDC AMS 3rd Stage: CDC AMS can create more mtask JVM instance for encapsulating individual applications AMS sends an mtask command to the server JVM instance clone it self. AMS also send an mtask command to a client JVM instance to kill its process and end application’s lifecyle. AppManager JVM instance mtask server JVM instance Application JVM instance

11 Launching CDC AMS Executing Shell script (Cobalt Qube)
# launch the mtask server $CDCAMS/bin/cvm \ -Xbootclasspath/a:$AMSCLIENTJAR \ -Xserver:port=7788,initClasses=$CLASSLIST,precompileMethods=$METHODLIST \ > $SERVERLOG 2>&1 & # wait for the mtask server to finish launching before cloning it sleep 5 # use the cvmc driver utility to launch the CDC AMS implementation in a client JVM instance $CDCAMS/bin/cvmc \ -host \ -port 7788 \ -command JDETACH \ -Xbootclasspath/a:$AMSMANAGERJAR:$PMODEJAR \ -Dcdcams.presentation=$PMODECLASS \ $AMSCLASS \ -server > $MANAGERLOG 2>&1

12 Launching CDC AMS PBP Presentation Mode
Simple button base user interface Purpose of CDC AMS is to allow multiple application to run concurrently These application share memory and CPU resource But, only single can be in the foreground and control GUI panel If you want to interact with another, you must switch the foreground application Launching CDC AMS

13 Future Plan…. Class structure Scour code Demo program


Download ppt "Java phoneME CDC AMS July, 15, 2008 by Wooram Noh."

Similar presentations


Ads by Google