Understanding Linux based mobile platform
Nov.26, 2008 KIPA Seminar
[email protected] Mobile Solutions Architect Wind River Systems
© 2008 Wind River Systems, Inc. Agenda
• Why Linux? • Architectures • A few components • Issues and Opportunities
© 2008 Wind River Systems, Inc. Two Choices
Proprietary Open Source Platform Benefits Benefits •IP protection/control •Ability to Customize •Compatibility between apps •Business model flexibility •Compatibility w. Desktop •No Vendor Lock-in •Broad external developer •Broad external developer community (many 100K) community (many 100K)
Considerations Considerations •Customization •GPL issues •Footprint, performance •Availability of in-house open •Vendor Lock In source expertise •BOM Impact •Over-customization •It is not open source •Fragmentation
© 2008 Wind River Systems, Inc. Lessons Learned Time 1998 2002 2008 Telecom
Realization of Unsustainable Linux Experiments Solution Creation thru Requirements Community and Individual Widespread Companies Adoption
Digital TV / Setop Box
Mobile
Automotive
• Vendor Lock-in • Choice is fragmented - • Architected, • Cost optimization • Hard to Innovate Wild West structured • Revenue maximization • Expensive Development • Some innovation, still • Common OS – Linux • Innovation and • Long Dev. Cycle costly • Common Middleware differentiation • Lack of Standards • Few middleware or HW – CGL • Some Differentiation at standards • Common HW all levels –> outside core • Differentiation outside Standard – ATCA competency core competency • Differentiation in core competencies © 2008 Wind River Systems, Inc. 361 • Linux Distributions 1444 • Linux Distribution Variants
One Common Mobile Handset Distribution?
mobile
© 2008 Wind River Systems, Inc. Agenda
• Why Linux? • Architectures • A few components • Issues and Opportunities
© 2008 Wind River Systems, Inc. Android Architecture
© 2008 Wind River Systems, Inc. Moblin Architecture
The Moblin.org Open Source Project, Dr. Derek S. Speed, Open Source Technology Center, Intel
© 2008 Wind River Systems, Inc. LiMo Architecture
© 2008 Wind River Systems, Inc. Prizm Architecture
© 2008 Wind River Systems, Inc. Agenda
• Why Linux? • Architectures • A few components • Issues and Opportunities
© 2008 Wind River Systems, Inc. User Interface
© 2008 Wind River Systems, Inc. Why GTK+?
• GNOME, Maemo, ALP, Openmoko, LiMo, etc • Free software with LGPL • Many Applications • Very active development (2.14.4 on 10 Oct. 2008) • GtkFB: GTK+2.0 for Linux Frame Buffer – 2MB disk (stripped, shared GtkFB library)
13 © 2008 Wind River Systems, Inc. Moblin GUI Application Layers
14 © 2008 Wind River Systems, Inc. LiMo GUI Architecture
http://www.limofoundation.org/api/R1/aui/gtk/fnd/index.html
© 2008 Wind River Systems, Inc. What is OpenGL ES?
• Royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded system • 3D API for Symbian, Android, iPhone, etc • Stripped down version of OpenGL – Standard specification for cross-language, cross-platform API for 2D & 3D graphics – About 150 commands specifying objects and operations
© 2008 Wind River Systems, Inc. Java
• Java Platform, Micro Edition (aka J2ME) – JRE 1.3 only (vs. JRE 1.5 or 1.6) – CLDC (Connected Limited Device Configuration) • Defines most basic set of libraries and virtual-machine features – MIDP (Mobile Information Device Profile) • LCD oriented GUI API • MIDP 2.0 includes basic gaming API • Google Dalvik – Register based virtual machine – Optimized for low memory requirement – Multiple VMs running together (needs OS support) • Moblin – Java SE or Java ME?
© 2008 Wind River Systems, Inc. Telephony
© 2008 Wind River Systems, Inc. Web Browser
• Webkit – Apple Safari – Google Chrome • Gecko – Mozilla (Fennec, Firefox) • Proprietary – Opera – Netfront – POLARIS
© 2008 Wind River Systems, Inc. Webkit goals
• Web content engine • Open source • Compatibility • Standards compliance • Stability • Performance • Security • Portability • Usability • Hackability
http://webkit.org/projects/goals.html
© 2008 Wind River Systems, Inc. Benchmark
http://oe.linuxtogo.org/~zecke/elce2007/ELCE2007_WebKit.pdf
© 2008 Wind River Systems, Inc. Opening about:blank
© 2008 Wind River Systems, Inc. Agenda
• Why Linux? • Architectures • A few components • Issues and Opportunities
© 2008 Wind River Systems, Inc. Open Handset Alliance
Handset Software Commercialization Semiconductor Operator Makers Companies Companies Companies
© 2008 Wind River Systems, Inc. LiMo Foundation
© 2008 Wind River Systems, Inc. Moblin Community
© 2008 Wind River Systems, Inc. Professional Services
Wind River can enhance and extend your capability
Concept Product Development Product
People Process Technology
People Process Technology •Training •Product Life Cycle •Wind River Platforms •DSO Experts •Software Development •Ecosystem Partnerships •Field Engineers •Hardware Development •COTS HW •911 Consultants •Cost Management •Middleware •Senior Level •Quality Management •Drivers •Project Managers •Resource Management •Board Support Packages •Program Managers •Risk Management •Domain Experts •Procurement/Sourcing •Wind River IP •Specialized Support •Custom IP •Product Engineering •Performance Analysis
© 2008 Wind River Systems, Inc. License Issues
Open Source License Linux Kernel GPL System C Library BSD DBUS GPL2 OpenBinder (Core) GPL2 YAFFS2 GPL SQLite GPL2 Webkit BSD (including LGPL) Webcore LGPL SDL LGPL SGL Google (Skia) OpenGL SGI OpenGL (BSD/MPL)
http://wiki.kldp.org/wiki.php/AndroidPortingOnRealTarget/ko
© 2008 Wind River Systems, Inc. Quality Assurance
Historically, testing hasn't gotten much respect in the world of software development. As the old saying goes, "It compiles! Ship it!" Only a joke — but like most jokes, it hides a grain of truth.
http://www.experexchange.com/list3.asp?class_id=202&sort_id=a08
© 2008 Wind River Systems, Inc. Tools
© 2008 Wind River Systems, Inc. Commercial Components
• Adobe • RIL • Media Player (Codecs) • Active X • Bluetooth • OMA-DM • Input Method • Etc
© 2008 Wind River Systems, Inc. © 2008 Wind River Systems, Inc.