Choosing an Application framework for Mobile Linux Device

Post on 13-Jul-2015

2,523 views 0 download

Tags:

transcript

   

Choosing an application framework for 

Mobile Linux Devices

   

The story of the SimputerTM

   

Drawing was simple

   

Open Alchemyhttp://openalchemy.org

   

Times be changing

   

ARM Twisting(This is good thing!)

   

Summer of X86Winter of XScale

   

Embedded Graphics 

   

OpenGL, OpenVG

   

Changing user expectations

   

Getting X off the hardware 

All hail Keith Packard!

   

The Contenders

   

Gnome/ Gtk 

   

Kde/Qt 

   

Enlightenment/ E

   

Clutter/ Tidy

   

Android

   

Utopian application framework

   

Timeline and animation support

   

Simple rotate, alpha and transition

   

 Experiments with Cairo

CPU goes Waaaah!

   

Hardware wants to be *used*Under assumption than marvin hasn't been created yet!

   

Re­write our birth right:This time we use hardware

   

Benchmarking frame rate

   

Tesselated texture on Intel Mobile

   

Simple polygon drawing

   

Name Animation apiHardware support(Opengl/gles)

Gtk/Gnome

Qt/Kde

EFL/E

Clutter/ Tidy

Android

No No

Yes Opengl

Yes Opengl

Yes Opengl/ gles

Yes Opengles

Rendering to Ofscreen Pixmap

No

Yes

Yes

Yes

No Idea!

   

Multi language bindings

   

Name Languages

Gtk/Gnome C,C++,python, java, c#

QT/KDE C++,Python, Java

Clutter/Tidy C, Python

EFL/E C,Python (C#)

Android Java

   

Email and HTML libraries

   

Name Email Browser

Gtk/Gnome Camel GtkMozembed, GtkWebkit

Kde/Qt Akonadi, Kmail Khtml, QtWebKit

Clutter/ Tidy Clutter Webkit

EFL/ E

Android Webkit

   

Inter Process Communication

   

Name Platform

Dbus Gnome, QT, EFL, Clutter

Android.os Android(Its called Ibinder amazingly, no relation to the Iphone i swear)

   

Possible Scenarios

   

Scenario 1

   

Hardware:GPU/ FPU

GLES supportSupported Driver

Eg: Freescale I.MX31Omap 2430, 3430

   

Best Bet: Clutter, Gtk

   

Hardware:GPU/ FPU

GL2.0 supportSupported Driver

Eg: MenlowAmd mobile processor

   

Best Bet: QT, Clutter, EFL, Gtk(In that order)

   

Hardware:No GPU/ FPU

Eg: Xscale

   

Best Bet: EFL, Gtk, QT

   

Challenges going forward

   

Multi core architecture: Do we have a strategy?

   

New Input handling?

   

Predicting next wave of display technologies

* E­Ink* Projection

   

Building a linux­based mobile device has never been easier

   

Building a worthy device continues to be an exciting journey

   

Questions?

shreyas@geodesic.com

IRC: shres (irc.freenode.net, irc.gimpnet.org)IM: sshreyas@gmail.com