4
JavaFX Mobile vs J2ME (3) We write Java applications on top of that VM that is running on the Java ME phone = midlet-based environment Its not integrated but its an application thats running on top of it.

5
JavaFX Mobile vs J2ME (4) In Java FX Mobile, every API that the developer sees when theyre writing an application is a Java API. All of the native services that you would normally have on the phone are Java enabled

6
JavaFX Mobile vs J2ME (4) In Java FX Mobile, every API that the developer sees when theyre writing an application is a Java API. All of the native services that you would normally have on the phone are Java enabled

7
JavaFX Mobile vs J2ME (5) Java FX Mobile offers set of frameworks such as a graphics framework, a telephone framework, a messaging framework and a browser framework

8
JavaFX Mobile vs JavaFX Script Java FX Script is a platform, a language for developing rich media and graphically intensive application Sits on top of standard Java Available both on the desktop and on embedded devices

9
Motivation Adapt Java to information appliances that have limited resources in a small footprint. Problem: Information appliances do not have the resources to run J2SE with anything approaching acceptable performance

10
Motivation (2) A Solution: J2ME A range of subsets of Java that overcomes the performance issue by restricting functionality

12
Motivation (4) Root of the Problem Java Virtual Machine Associated portability layers, classes and libraries normally run on top a native operating system with its own portability layers, APIs and libraries.

13
Motivation (5) The Solution SavaJe OS First mobile platform built from the kernel up for Java Enables mobile operators to gain full benefits of Java: cross-platform, graphically rich and secure.

14
History 2000 – SavaJe Technologies has raised nearly $80 million to date from operators, Vodafone, T-Mobile and Orange Mission: to deliver mobile operating system where applications could run at native speed

15
History (2) First showcased a prototype LG handset in 2005 Lack of stability, poor battery life and unattractive industrial design

16
History (3) First SavaJe-powered handset, the Jasper S20, developed by Group Sense Ltd of HongKong Released to developers at Suns JavaOne 2006

17
History (4) 2007, Sun Microsystems just bought the rights to all of SavaJes intellectual property including the rights to SavaJes Java-based mobile OS. Sun debuted its Java Phone which is powered by SavaJe Ports SavaJe code into a Linux kernel

18
Strengths Java is popular Having more Java API's mean more capabilities than J2ME The SavaJe code can be ported to a Linux kernel and is expanding the applications programming interfaces and set of developer tools that will ship with it. Easy customization, theming

19
Weaknesses Porting effort will be required for most applications Platform requires a minimum hardware of ARM9-class processor clocked at MH with 32MB ROM and 32MB RAM Manufacturers and Service Providers As of 2007, it has no licensees yet SavaJe impressed a lot of geeks and won precisely zero phone contracts

21
Uniqueness Inherits unique qualities of Java Java virtual machine Bytecodes run through an interpreter on a local host = portability

22
Opportunities An OS which can run next-gen Linux GUI and JavaFX applications side by side Low-end JavaFx plus high-end Linux GTK bindings for more powerful phones Nokia = Symbian. Competitors like Vodafone clearly wants to differentiate themselves

23
The SavaJe OS The primary goals of the OS are: A small, efficient kernel Portable applications A rich graphical experience Strong and flexible security Full network support Performance

24
The Core Platform

25
The Core Platform (2) Applications that run on SavaJe OS can be written using any one of the full range of Java APIs It does not support end user applications written in other languages, there are provisions to allow third-party native modules written in C, C++ or assembler to be integrated into the SavaJe OS.

28
Kernel (3) If source code is not available when creating an OS image, its standard GNU tool chain (compiler, linker, assembler, etc) allows for binary code modules to be added to OS without access to source code.

30
Memory Management (2) Monitors, locks and semaphores are allocated using memory blocks of fixed size No heap size setting since all memory that is not used by system is available to Java programs

31
Real Time Response SavaJe OS is not a hard real time system. Designed for time critical tasks to the end user but not catastrophic Soft real time system

32
Real Time Response (2) It is capable of sustained processing of approximately 100,000 interrupts per second. Allows developers to create system threads apart from Java apps in order to perform sensitive operations

33
Virtual Machine Developed from Suns VM Has been optimized for size, speed and low-memory environments Garbage collection is mark and sweep. Interpretative and does not use JIT techniques

40
Security (3) Byte-code verification – the system will start each process with a security manager installed which mandates a program be given a policy file. Applications should be run with security manager and given the desired set of permissions.

48
File Systems (4) All file systems are mounted at a root (/) File can be universally accessed via a single namespace (/cf0/foo/bar.html) Appearance of a UNIX-style file system with properties similar to Microsoft UNC

50
Network Access An IP network may consist of a home- network, corporate intranet, the Internet or a Peer-to-Peer connection. Java APIs are used to access the network

51
Application Protocols Make use of raw TCP or UDP sockets to implement its own application level protocols. Addition application level protocols such as HTTP, POP, SMTP can be utilized Java APIs for RMI, CORBA, JNDI, JDBC and JINI.

52
Personal Area Networking PAN is useful for quick short-range information transfer between two devices.

53
OS Upgrade Capabilities to patch the OS from a connected server Enables OTA upgrades and patches Complete OS replacement cam be carried out through a high speed network or using a memory card