+ All Categories
Home > Documents > 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

Date post: 11-Jan-2016
Category:
Upload: lindsay-boone
View: 220 times
Download: 1 times
Share this document with a friend
37
41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3
Transcript
Page 1: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

1

Embedded Software Lab. @ SKKU

Introduction to Tizen v2.3

Page 2: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

2

Embedded Software Lab. @ SKKU

• Manufacturers provide different applications and user experiences

• Why could not manufacturers provide the same platform for their devices? – The platform has been designed for a specific embedded

device.– Manufacturers do not want to share their proprietary

platforms.

Proprietary Platform

Page 3: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

3

Embedded Software Lab. @ SKKU

• Standard-based, cross category platform– Provide common & multiple categories of compliances

• Open Source Platform– Tizen project resides within the Linux Foundation

• Provides a robust and flexible environment for HTML5 based application

Tizen is,

Page 4: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

4

Embedded Software Lab. @ SKKU

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

• Tizen has the top score in html5test.com

Tizen is W3C Standard-Based

Page 5: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

5

Embedded Software Lab. @ SKKU

• NEC, Panasonic, and Telefonica leaved Tizen Association.• Telefonica: Firefox Phone

Industry Support

Page 6: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

6

Embedded Software Lab. @ SKKU

Tizen Releases

Nov.2014

Wearable profile-New native UI builder -Support multi-project packaging.-New mobile web device APIs-Development language for native has changed -Support enlightenment foundation libraries

Tizen 2.3

Page 7: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

7

Embedded Software Lab. @ SKKU

• Tizen 2.x Mobile source code continues to be productized

Tizen Releases

Page 8: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

8

Embedded Software Lab. @ SKKU

• Tizen 3.0– All development happens at tizen.org

• Most of code is common and close to upstream development

– Moved from in-out to out-in development– Tizen IVI continues to be developed in tizen.org– Configurable and multi-product support with one code base

Tizen Releases

Mobile Product

IVI Product

ivi/

mobile/

Profile/•Mobile/

Platform/

ivi/•…

• Platform- upstream/- framework/

- Native/- Web/

- Core/- …

• apps/• tools/• sdk/• scm/• test/• doc/• project/

Page 9: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

9

Embedded Software Lab. @ SKKU

• Visit – http://www.tizen.org – http://developer.tizen.org/sdk – http://source.tizen.org/ – https://developer.tizen.org/documentation

• Community – Mailing lists: http://www.tizen.org/community/mailing-lists – IRC Channel: #tizen – Wiki: https://www.tizen.org/community/wiki – JIRA: http://bugs.tizen.org

• Tizen Developer Conference– https://www.tizen.org/conference

Tizen Open Source Information

Page 10: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

10

Embedded Software Lab. @ SKKU

• 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 – GC, llvm, cmake, gbs for build – And more…

Open Source Projects within Tizen

Page 11: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

11

Embedded Software Lab. @ SKKU

• Intel and Samsung maintain or significantly contribute to: – Linux, WebKit, EFL, GStreamer, U-Boot, FMPEG, 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 ben 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.

– Flora License• solely as incorporated into a Tizen Certified Platform• Encourage Tizen member companies to contribute their patents to

Tizen project

Open Source Projects within Tizen (cont)

Page 12: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

12

Embedded Software Lab. @ SKKU

Tizen v2.3 Architecture Overview

Native framework is deprecated

Page 13: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

13

Embedded Software Lab. @ SKKU

• Linux kernel and H/W abstraction– Linux kernel– Device Drivers– Hardware Adaptation Layer

• Native subsystem– Underlying layer to provide common functionalities and a

security mechanism– HW adaptation layer with plug-in architecture – OpenGL ES/EGL graphics driver

• Web framework – Provides state-of-the-art HTML5/W3C APIs, Web UI

framework, supplementary APIs, and additional Tizen device APIs

Tizen v2.3 Architecture Overview (cont)

Page 14: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

14

Embedded Software Lab. @ SKKU

• Linux kernel– Modified Linux kernel

• 3.0.15, 3.10.y support (for ARMv7, AArch64)• DRM, CMA, KDBUS, dma_buf, Power Manager, etc.

• Device Drivers• Hardware Adaptation Layer

– Plug-ins• OpenGL ES/EGL Graphics Driver

– DRM-based graphics stack

Tizen Kernel and H/W Abstraction

Page 15: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

15

Embedded Software Lab. @ SKKU

• Common features– Various native, Web APIs

are implemented using the native modules

• Unified management for– package installation and

upgrade– Launching applications– Windows with E17– Sensor management– Power management– Connectivity– Security enforcement

with smack– and more.

Native Subsystem

Page 16: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

16

Embedded Software Lab. @ SKKU

• W3C standard web APIs– W3C/HTML5 markup, CSS, JS

• Supplementary APIs– De-facto APIs (Khronos, Mozilla, etc.)

• Tizen Device APIs– Advanced access to the device capabilities

• UI framework– JQueryMobile-based– Tools, such as widgets, events, effects, and animations

Web Framework

Page 17: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

17

Embedded Software Lab. @ SKKU

• Package management– installation and update

• Execution and life-cycle– launching, pause, and resume

• Runtime security– API/network access and sandboxing

• Platform integration

Web Runtime (WRT)

Page 18: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

18

Embedded Software Lab. @ SKKU

• Tizen (over 2.0) using Webkit2– 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

Page 19: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

19

Embedded Software Lab. @ SKKU

• HTML5 Canvas is accelerated by– Cairo OpenGL ES backed

• WebGL– Directly uses OpenGL ES

Web 2D and 3D Graphics

Page 20: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

20

Embedded Software Lab. @ SKKU

• Web and Native applications– App using only public APIs to get full support for package

installation and upgrade, security, backward compatibility, etc.– Many sample apps included in the SDK

• Native subsystem 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

Page 21: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

21

Embedded Software Lab. @ SKKU

• Tizen Common Architecture (without specific profile)

Tizen 3.0

Page 22: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

22

Embedded Software Lab. @ SKKU

• Common Source + Profile based packages– Share source for common features across products– Test on reference devices

How to Create a Tizen 3.0 Common Source

Common 3D UI

Multi-User

64-bit

KDBUS

Buxton

Blink/Crosswalk

Wayland

Mobile

Automotive

TV

Watch

Refrigerator

Page 23: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

23

Embedded Software Lab. @ SKKU

• Key Features 2014-Q2 release:– Multi-user– SMACK: three domains security– Wayland, Enlightenment Window Manager– Crosswalk/BLINK– 64-bit IA / ARM– New Configuration System – BUXTON– KDBUS– 3D UI & Rendering Engine– New Bluetooth Framework– WiFi Framework to combine WiFi DirectManager, Mobile AP-agent and

net-config

Tizen 3.0 Common Feature Highlight

Page 24: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

24

Embedded Software Lab. @ SKKU

• Consists of – IDE, Web Simulator, Emulator, Event Injector, UI Builder– Documents, Sample applications, Remote Inspector, Localization Wizard,

Project Wizard– …

Tizen SDK

Page 25: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

25

Embedded Software Lab. @ SKKU

Tizen v2.3 Native Subsystem Services

(Mobile Profile)

Page 26: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

26

Embedded Software Lab. @ SKKU

• Launching a new Application (AUL, app-svc)– Explicit or implicit information (Combination of Action, URI, and MIME) can be

used to determine an app to launch– Allowed to launch different type of app (i.e. Web to Native and Native to Web)

• Application life cycle management and handling system events (app-core)– Getting app state change notification or system events through main loop– Then, calling registered callbacks for the events

• Installing/Uninstalling application (package manager)• Managing application launch history (librua)• Setting an alarm to launch at specific time (alarm-manager)

Application Framework

Page 27: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

27

Embedded Software Lab. @ SKKU

• Enlightenment Foundation Libraries– Rich Widgets multiple theme supports by Elementary– Retained mode canvas by Evas (Scene-graph, OpenGL ES back-end)– Compositing Window Manager

• Window System based on X11• 3D (OpenGL ES), Font (freetype2, fontconfig)• Input Service (SCIM), Voice FW (STT, TTS),

Graphics & Input

SCIM: Smart Common Input Method

Page 28: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

28

Embedded Software Lab. @ SKKU

• Provides:– Best Web experience with Browser and packaged Web Apps

• Focusing on functionality(HTML5), performance (UI Responsiveness, 2D/3D Acceleration, JS Engine), Standard Compliance(W3C)

• More device feature accessibility through Tizen Device API• jQueryMobile-based Tizen Web UI FW enables easy Web App

development • Consists of:

– WebVeiw (WebKit /EFL): JavaScriptCore, WebCore(HTML5/W3C API implementation), WebKit API

– Web Runtime: Execution environment for packaged Web Apps

Web

Page 29: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

29

Embedded Software Lab. @ SKKU

• Provides:– Playback of audio and video contents (local and streaming)– Capturing images and recording audio and video– 3D Audio Sound (OpenAL) specially for games– Scanning & Playback of radio– Determining audio policy– Extracting and displaying media content information

• Features:– High Quality Video Playback

• Full HD(1080P) Playback (with HW codec & Render Optimization)• Support for various kind of Multimedia Streaming (HTTP,

RTP/RTSP)• Support for HTML5 Video and embedded playback in Web

Browser– High Quality & High Speed Camera/Recorder

• High Quality Image Capture & Video Recording• Support for various kind of shooting mode (single, continuous,

panorama, etc)

Multimedia

Page 30: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

30

Embedded Software Lab. @ SKKU

• Key Components:– GStreamer: Audio, Video, Recording, Streaming, Editing, Etc– Audio Session Manager: Sound Policy Management– PulseAudio: Software mixing multiple audio streams– Multiple-Format Codec: Various support of codec– Media Content Service: Content management for media files– Audio I/O: Accessing raw audio buffer to manipulate

Multimedia (Cont’d)

Page 31: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

31

Embedded Software Lab. @ SKKU

• Provides:– Hybrid position information

• GPS, WPS (Wi-Fi Positioning System), SPS (Sensor Positioning System)

– Map Service (Geocode, POI, Route) • Key Components:

– GeoClue: Deliver location info from various positioning sources• GeoClue library: An open source geo-information library• GeoClue Providers: Implement the GeoClue library API• Currently GPS Manager in GeoClue Providers is provided

Location

Page 32: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

32

Embedded Software Lab. @ SKKU

• Provides:– System monitoring and event handling functionalities

• Key components:– Deviced

• Runs as a daemon process• Monitors device and system status and handles events from devices

(battery, USB, MMC, charger, earjack, etc)• Setting/getting device values such as brightness• Power Manager: Controls LCD display backlight and application sleep

– Sensor Manager• Handling sensor events from various sensors

System

Page 33: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

33

Embedded Software Lab. @ SKKU

• Cellular and Wi-Fi Connection– “Always-on” internet connections based on cellular(e.g.3G) and

Wi-Fi .– ConnMan manages internet connections• Allowing automatic connection for available Wi-Fi access point

– Managing statistics of data network • Bluetooth

– Based on BlueZ and profiles (OPP, A2DP, RFCOMM, HFP, HDP, etc)

– Discovering / bonding / exchanging data with remote devices • Tethering

– Providing three type of tethering : USB, Bluetooth and Wi-Fi • NFC

– Including NFC Manager to handling NFC plug-ins– Supporting P2P, Controlling NDEF tag, card emulation

• Wi-Fi– Scanning and connecting Access Points– Connecting hidden Access Points

Connectivity

Page 34: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

34

Embedded Software Lab. @ SKKU

• Consists of cellular functionalities for communicating with modem:– Managing call/non-call info, packet-related services, network status

information, SMS-related services for UMTS and CDMA– Managing SIM Application Toolkit services for UMTS.– Managing SIM files, phone book, and security

• Key Components:– TAPI is available as a library for client– Defining a plug-in architecture for Telephony Server

Telephony

Page 35: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

35

Embedded Software Lab. @ SKKU

• Provides: Contact, Calendar, Account, and Sync Services • Key Components:

– Account: Manage accounts to share account information on the device– Contact/Calendar:

• Account based, Multiple address/calendar books for an account.• Enough features to satisfy mobile contact/calendar app requirements.• Supporting vCard 3.0 and vCalendar 1.0 respectively

• Synchronization (Sync-FW)

PIM

Page 36: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

36

Embedded Software Lab. @ SKKU

• Provides: SMS, MMS, Email– SMS, WAP and cell broadcast messages– MMS protocols: OMA MMS 1.2.– Email protocols: SMTP, IMAP, POP3

• Key Components– Message Client API– Message Server

• Transaction Manager: Manage IPC between message server and library• Main Handlers: Handle message sending/receiving/filtering/setting.• Storage Handlers: Save on DB• Plug-in Manager: Manage SMS and MMS Plug-ins

Messaging

Page 37: 41 1 Embedded Software Lab. @ SKKU Introduction to Tizen v2.3.

41

37

Embedded Software Lab. @ SKKU

• Provides: – Certificate management and verification – Secure storage for confidential data – User space access control management – Cryptography and SSL support – Mandatory access control support

• Security model: – No root applications/No privilege escalation – Sandboxed by SMACK – Service daemons will make use of SMACK

and enforce access control in server side – Manifest-based permission policy for Apps

Security


Recommended