Tizen architecture-solutionslinux-20130529

download Tizen architecture-solutionslinux-20130529

If you can't read please download the document

Transcript of Tizen architecture-solutionslinux-20130529

Cover Slide Title

Architecture Tizen

Dominig ar Foll
(Intel Open Source Technology Centre)


Stphane Desneux
(Eurogiciel)

Solutions Linux - Mai 2013

Slide 1

Nom de votre prsentation

Votre Nom + email et le mien + email. Vous excusez pour moi car je bloqu au Japon avec Linux Con.

Cela vous permettra d'introduite Eurogiciel (Vannes) comme tant en charge de l'intgration de Tizen avec Intel.

A la question "Intel a un site Vannes ?" La rponse est "Intel possde Wind River qui a un site Vannes depuis 20 ans".

INTRODUCTION

Eurogiciel

Intgrateur et dveloppeur Open source :

Tizen : Tizen PC / Tizen Application ; Meego

Dveloppement embarqu multimdia :
- Widi/Miracast stack
- Wayland/Weston
- Browser Webkit2 avec acceleration HW

Application: HTML5/CSS3, jquery, jqmobi, Cordova

1. Tizen Is Open Source Project

Upstream projects used by Tizen:

X Windows, Cairo, EFL for UI and graphics

Gstreamer, PulseAudio, OpenAL for multimedia

Connman, BlueZ, libsoup, wpa_supplicant for connectivity

WebKit for Web

Smack and OpenSSL for security

Dbus, glibc for base

Sqlite for database and PIM

Linux for OS Kernel

Eclipse for Tizen SDK

QEMU, U-Boot for target Emulator

GCC, llvm, cmake, gbs for build

And more

1. Tizen Is Open Source Project | Contribution to OSS

Intel and Samsung maintain or significantly contribute to:

Linux, WebKit, EFL, GStreamer, U-Boot, FFMPEG, WebCL, Cairo, BlueZ, QEMU, GCC, ConnMan, NFC, PulseAudio, Smack, Wayland, oFono, X, wpa_supplicant, Dbus, glibc, OpenGL, Geoclue, and libsoup

With notices, attributions, full license statements, and compliance to other obligations

Virtually everything newly developed for Tizen has been open-sourced under Apache 2.0 License:

app-core, WRT(Web Runtime), system-server, sensor-fw, app-service, slp-pkgmgr, libslp-pm, msg-service, email-service, telephony-daemon, audio-session-manager, contacts-service, slp-calendar, accounts-svc, sync-fw, cert-svc, secure-storage, nfc-manager, and more.

2. Tizen Is a Cross-category Platform

3. Tizen Has Strong Industry Support

4. Tizen Is Standards-based | HTML5/W3C API Support

Tizen has the top score in html5test.com

HTML5 is being adopted rapidly, especially for mobile Web app development

[1] http://www.dotcominfoway.com/blog/dot-com-infoway-releases-html5-infographic

Tizen Release History

Web-centric platform Highest HTML5 coverage

Tizen Device Web API

Web UI framework
(jQueryMobile based Extension)

Tizen 1.0Web/native dual frameworkNative API

Unified SDK for Web and native

Web Runtime based on WebKit2

Web Audio, HTML Media Capture

HTML Drag & Drop, Clipboard API

Tizen 2.0Readiness for commercialization in terms of stability & maturityHybrid Web and native app support

Content security policy

Trusted inter-app sharing

Account management

QR code and image recognition

Systemd replacing init daemon

Tizen 2.1Linux kernel 2.6.36Linux kernel 3.0 (w/ many 3.4 features backported, such as CMA/IOMMU)Memory optimization for graphics (Framebuffer DRM/GEM, DMABUF)eMMC 4.5 support, V4L2 (for codec and camera) supportApr. 2012Feb. 2013May. 2013

Websites

http://www.tizen.org

http://developer.tizen.org/sdk

http://source.tizen.org/

https://developer.tizen.org/documentation

http://seller.tizenstore.com

Community

Mailing lists: http://www.tizen.org/community/mailing-lists

IRC channel: #tizen

Wiki: https://www.tizen.org/community/wiki

IVI: https://wiki.tizen.org/wiki/IVI

JIRA: http://bugs.tizen.org

Tizen Websites and Community

TIZEN ARCHITECTURE

Architecture Overview (Mobile Profile)

ManufacturerAdaptationInterface

SMACK

Web framework

Provides state-of-the-art HTML5/W3C APIs, Web UI framework, supplementary APIs, and additional Tizen device APIs

Native framework

Supports full-featured native application development and provides a variety of features like background service, image and face recognition, and TTS/STT

Core

Underlying layer for Web and native providing common functionalities and a security mechanism

HW adaptation layer with plug-in

architectureOpenGL ES/EGL graphics driver

Architecture Overview in Detail

[Ref] Presentation Map

WebKit for TizenCreating Tizen native appswith the native UI framework

Tizen Web Runtimeupdate

Perf. optimization for Tizen WebKit: memory and graphics

Tizen compliance overviewTizen compliance testsTizen input serviceframework

How to embrace Wayland for Tizen

Protecting JS codeduring Web Runtime

Tizen telephony frameworkIn 2.1: whats new?

HTML5 featuresfor Tizen

Next generation BlueZ and BTSmart devices

SMACKIt may be simplebut how is it useful,smack me nowTizen WebDevice API

Migration of existingWeb apps to Tizen

Native and Web frameworks are complementary to each other

Web is strong in portability, ease of app development, and has a minimal learning curve

Native is relatively better in terms of performance and memory consumption

Native enables reusing the existing engine and libraries written in C & C++ in app development

Web vs. Native Framework

Different combinations for mixing Web and native, depending on the characteristics or requirements of the app to be developed

Web and Native: Mix & Match

Using W3CAPIs onlyW3C + Device APIWeb app for UI withnative app for serviceStandard C/C++ basedTizen Native APIwith standard C/C++Native appwith WebControlWeb appwith plug-inHybrid appWeb appNative appHighly portablePortable and feature-richPerformance-centric and feature-rich

Apps with bg monitoring(location, push,)Highly reusable(source-code level)

Both are native in nature but focusing on different aspects

Core focuses on:

Providing common functionalities to Web and native frameworks

No need to guarantee app binary compatibility (ABC)

Performance and power optimization

Native framework focuses on:

Application development productivity while guaranteeing ABC

Well-documented API references, developer guide, sample codes, and associated tools

Native Framework vs. Core

Web and native applications

Apps using only public APIs to get full support for package installation and upgrade, security, backward compatibility, and so on

Many sample apps included in the SDK

Core applications

Apps using Core APIs to fully utilize device capabilities such as telephony

Usually implemented and preloaded by device implementers

Backward binary compatibility is not guaranteed

Application Types

vvv

W3C standard Web APIs

W3C/HTML5 markup, CSS, and JavaScript APIs

Supplementary APIs

De-facto APIs (such as Khronos and Mozilla)

Tizen Device APIs

Advanced access to the device's platform capabilities

UI framework

jQueryMobile-based

Tools, such as widgets, events, effects, and animations

Web Framework

Package management (such as installation and update)

Execution and life-cycle (such as launching, pause, and resume)

Runtime security

(such as API/network access and sandboxing)Platform integration

Web Runtime

Since 2.0, Tizen is using WebKit2 (http://www.webkit.org)

Split process model for web content and UI with non-blocking APIs

UI responsiveness, robustness, security, and better use of multicore CPUs

WebKit2 based Browser and Web Runtime

HTML5 Canvas is accelerated by

Cairo OpenGL ES backend

WebGL

Directly uses OpenGL ES

Triple buffering

Web 2D and 3D Graphics

2D Canvas performance scoreWebGL fps testPerformance Optimization in WebkitDay2: 15:15-15:55 Seojin Kim

Released in Tizen 2.0

Set of C++ namespaces with more than 10,000 APIs

Base, IO, App, Security, Graphics and UI, Net, Messaging, Social, Locations, Web, etc

Support for standard C/C++, and popular open source libraries

eglibc, STL, libstdc++, libxml2, OpenGL ES, OpenAL, and OpenMP

Multiprocessing support

OpenMP, GCD

Native Framework

Core

Providing common features

Various native and Web APIs are implemented using the functionalities of core modules

Unified management for:

Package (un)installation and upgrade

Launching applications

Windows for different apps with E17

Sensor loading and value retrieval

Power consumption

Connectivity

Security enforcement with Smack from the kernel

And more..

TIZEN ARCHITECTURE (IVI)

IVI Demands more from Tizen

Navigation GPSDual DisplayTTS/STTBluRay playback

RadioDisplay AudioFront video analytics

Rear video analytics

Display AudioMobile DeviceDisplay AudioVideo playbackDRIVERPassenger 1Passenger 2Passenger 3

Architecture Overview (IVI profile)

W3C/HTML5 Device APIs Web RuntimeVideoTouchCSS3WebGLWorkerBTCallLBSNFCMsgApplicationsWeb FrameworkKernelCore

Application
FrameworkGraphics & UIMultimediaWebMessagingLocationSecuritySystemBaseConnectivityTelephonyPIM

Linux Kernel & device drivers

Web ApplicationsPublic APIIVIHere is a component view of Tizen SW Architecture. It is based on Linux Kernel. On top of Linux Kernel, there is the core service layer with native implementation. There are the application framework, Graphics & UI, Multimedia, Web, Messaging, Location, Security, System, Base, Connectivity, Telephony and PIM are composing this layer.On top of core services layer, Tizen provide Web APIs for Web applications. Let me explain more details about each layer from bottom to top

Tizen IVI Release History

Fully functional Web frameworkAutomotive Message Broker

HTML5 application

BT HFP dialer application

DLNA

Murphy Policy Manager

WiFi Tethering

Dual Display Support

Sample IVI apps

Tizen 2.0Focus areasWayland

Fast Boot

Small Footprint

Ethernet

AVB Murphy +

NFC

HW Acceleration

Vehicle & Additional Web APIs for Automotive

UI Manager

Tizen NextApr. 2013GENIVI ComplianceFastboot with systemd < 5 secs

Rootfs < 500 Mb

Sample Navigation App

Sample Hands free dialer App

Media Player App

IVI Home Screen App

Tizen 1.02012Introduction to IVIDay3: 09:00-09:40Rusty Lynch

Tizen Going Forward

Tizen 3.0 @ tizen.org

All development at @ tizen.org

Git trees are maintained @ tizen.org

Patch submission via Gerrit @ tizen.org

Daily / Weekly images availability @ tizen.org

Upstream and Tizen specific packages already available @ tizen.org

Generic Images are available @ tizen.org

Images for IVI and mobile platforms is being worked @ tizen.org

The Tizen Development ModelDay2: 14:15-14:55 Anas Nashif

Conclusions

Tizen is Standard-based, open source, cross category software platform under Linux Foundation that has strong industry support.

Architecture:

Linux Kernel 3.0

Core,

Web and Native frameworks

Profiles

Mobile

IVI

Tizen 3.0 Development @ tizen.org

Questions ? / En savoir plus

Point d'entre : https://www.tizen.org

Dveloppeurs : https://developer.tizen.org

Open source: https://source.tizen.org

Bugs : https://bugs.tizen.org

mailto:[email protected]

https://wiki.tizen.org/wiki/User:Pcoval

TODO: demo live ou video

Remerciements

Dominique, Patrick, Romuald, Daniel pour les ressources de ce document.

BeMyApp pour lorganisation du Devlab Tizen

Les quipes TizenPC, WRT, et SDK.

Tout le monde Intel OTC et partenaires (dont Eurogiciel)

Les fondateurs de Tizen : Intel, Samsung, et ex MeeGo.

Les projets opensources : WebKit, Gnome, EFL, Linux, Eclipse...

Architecture Tizen Solutions Linux 2013

Click to edit the title text formatClick to edit Master title style

Tizen ArchitectureRomuald RozanIntel Developer Relation Division

Tizen is a trademark of the Linux Foundation

Click to edit the title text formatClick to edit Master title style

29/05/13

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelClick to edit Master text styles

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelNUMBER.

Click to edit the title text formatClick to edit Master title style

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelClick to edit Master text styles

Second level

Third level

Fourth level

Click to edit the title text formatClick to edit Master title style

29/05/13

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelClick to edit Master text styles

Second level

Click to edit the title text formatClick to edit Master title style

Click to edit the title text formatClick to edit Master title style

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelClick to edit Master text styles

Second level

Third level

Click to edit the title text formatClick to edit Master title style

Click to edit the title text format

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline LevelSeventh Outline Level

/39

Click to edit the title text formatNumber

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelTopic

Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level

Seventh Outline LevelSub title 1Sub title 2Sub title 3

Click to edit the title text format

Click to edit the title text formatClick to edit Master title style

29/05/13

Click to edit the title text formatClick to edit Master title style