Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
2
Agenda
● What is Tizen IVI
● How to join the project
● Our road map
● Architecture
● New Features
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
3
Tizen IVI● Support Intel and ARM● Secured Linux embedded distro● Fast boot● Advanced connectivity● Wayland multi-tool kit● HTML5 ready● IVI middleware
– Media– Car Can-Bus– Phone and messages
● Compliant with IVI standards– Genivi– AGL
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
4
Tizen 3 an Open Project TSG Arch ForumAPI Forum
Release Engineer
QA Engineer
Domain
Maintainers
Integrators
Reviewers
package package
Architects
Domain
Maintain-
ers
Integrators
Reviewers
package package
Architects
…
Git Group
Developers
Reviewers
[Integrators]
Maintainers
Architects
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
5
Code contribution Flow
Write code Write code
Developer
Reviewer
Submit to
Gerrit
Submit to
Gerrit
ReviewReview Offer suggestions Offer suggestions
Not OKApprove
contribution
Approve
contribution
OK
Maintainer
[Integrator]Integrate
contribution
Integrate
contribution
Release
engineer Create image Create image Release image Release image
MaintainerMaintainer
Maintainer can override
code acceptance at any step
Release to
build system
Release to
build system
Smoke TestSmoke Test
Not OK
OK
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
6
How to Create a New Tizen Profile
MobileMobile
CoreCore
IVIIVI ......
Ofo
noO
fono
......Qt
Qt
EF
LE
FL
Dev
elD
evel
QA
& T
ests
QA
& T
ests
ProfilesProfiles
CommonCommon
Base (mandatory)Base (mandatory) Shared (optional)Shared (optional)ToolsTools
HA
L / p
latfo
rmH
AL
/ pla
tform
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
7
Keeping Synced with Tizen:Common
Common
Submissions on tizen:accepted on tizen_$profile only if
accepted on tizen_common(bug fixes)
Profile
c
b
a Submissions on tizen_$profile
(specific pkgs)
daily
weekly1
2
3
ed
4
s
ync
xy
z
Submissions on tizen_common
(new features)
12
34
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
8
Apr May June July Aug Sep Oct Nov De
c
Jan Feb Mar Apr May Jun
e
July Aug Se
p
20142014 20152015
3.0-M23.0-M2
IVI 3.0-M3IVI 3.0-M3
Functional Features
• BT - Serial Port Profile 1.1, AVRCP,
A2DP, HFP 1.6, MAP
• Web APIs (Vehicle Info, DLNA DMS,
Speech)
• Smack 3 domain model
• Apps2App Comms
• DLNA
• Media Player w/BT and DLNA
• Dialer App w/BT HFP
• WebGL, Video and CSS HW accel
• HW accel of Video streams
• Genivi Layer Manager
• Genivi Audio Manager
• Diagnostic Log and Trace
• Tizen IVI SDK
IVI 3.0 M2
Functional Features
• GENIVI Compliance w/ 6.0
• AGL incremental requirements as defined by
AGL and OEM/Tier1 customers
• Crosswalk replaces webkit-efl
• Smack 3 domain model w/ Crosswalk
• Sequential Multi-User
• PIM w/ Cloud sync
• ICO sample UI w/ GENIVI Layer Manager
• Modello sample HMI
• Fast boot to camera
• WiFi Direct support
IVI 3.0 M3
IVI 3.0 FinalIVI 3.0 Final
In Planning
In Planning
POR
POR
IVI Next…IVI Next…
Functional Features
• Vendor defined Smack domains
• Yocto Build Support
• Simultaneous Multi-User
• Integrated Browser
• Additional AMB, Web APIs
• Additional AGL Component Integration
• Murphy w/ GENIVI Audio Manager
• Miracast
• Qt5
• SDK Enhancements
• Additional Tools
IVI Next
Tizen 3.0 AlphaTizen 3.0 Alpha
BetaBeta
FinalFinal
* IVI 3.o Final will be focused on bug fixes
and stabilization of all features in previous
Tizen IVI 3.0 releases
Tizen IVI Roadmap
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
9
Architecture
W3C/HTML5 W3C/HTML5 Device APIs Device APIs
Web Runtime Web Runtime
VideoVideo TouchTouch
CSS3CSS3 WebGLWebGL
WorkerWorker
BTBT CallCall
LBSLBS NFCNFC
MsgMsg… …
ApplicationsApplications
Web FrameworkWeb Framework
KernelKernel
CoreCore
Application
Framework
Application
Framework
Graphics & UIGraphics & UI MultimediaMultimedia WebWeb MessagingMessaging LocationLocation
SecuritySecurity SystemSystem BaseBase ConnectivityConnectivity TelephonyTelephony PIMPIM
Linux Kernel & device driversLinux Kernel & device drivers
Web ApplicationsWeb Applications
Public
API
IVIIVI
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
10
Tizen IVI Multi-user system
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
11
Tizen Multi-user requirements● Guest log in by default
– Start Generic Application
(e.g. rear cam, radio, ...)● User logging in shall not stop running applications
– ID user is added on top of Guest.– Multiple user can share the same Display– (e.g. passenger and drivers)– Users can exchange seats
(and so Display)● Security must protect the user data and the system data.
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
12
Dissociate Seat and User
● General Linux– Before Login → No use– Seat = Display
● IVI– Before Login → Guest– Login → add user to a seat– User can change seat
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
13
What needs to change
● Application Frame work● Login Manager● Startup procedure● Security model
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
14
Application Framework• Launching Application
• Explicit or implicit information (Combination of Action, URI, and MIME) can be used to determine an app to launch and the control backend.
• Allowed to launch different type of app (i.e. Web to Native and Native to Web)• Application life cycle management
• Install – delete – update• List all, recently launch– Search – swap active
• Event Handler• Screen orientation size and number, dim, off• Critical resources RAM, disk, batterie, ...
• Inter App communication• Service Req• Message exchange• Copy/Paste• Drag/Drop
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
15
AppFW with Tizen Login Manager
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
16
User & App Management– Base on standard Linux user account
– Each user owns its Environment / data / applications
– Priviledge users(s) concept
– Each App has its own Smack label and priviledge manifest
Global AppsUser 1 Apps User 2 Apps
Default Apps
Tizen 3.0 multi user AppFWJune 2014
Dominig ar FollIntel Open Source Technology Centre
17
Application Framework• Application are launched in the User Environment
provided by systemd session
• Each User can access to :– A set of databases corresponding to System/common Application– Another corresponding to it own databases. – Application Databases look like the Tizen 2.0 ones– Core API are extended
Tizen 3.0 multi user AppFWJune 2014
Dominig ar FollIntel Open Source Technology Centre
18
Tizen 3 : Application Framework
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
20
¿ IT Security in a Car ?
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
21
Tizen an integrated security
● Application isolation with controlled sharing– No access to system privileges– No undeclared data sharing– No direct launch in session
● Per Application control over privileged resources– Extensive control of system resources– Fine grain control of the ressource– HTML5 and Native Applications
● Multiple users on a device– Application available for all or individual user– No data contamination of uncontrolled sharing.
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
22
Three Domains Model - A new simplified model
● "User" : user domain for user processes and data,
● "System" : system domain for system processes and their private data
● "_" : floor domain for static public data.● Peers domains are used for
● System process change ID whenever possible● Each User has a unique UID● Each Application has a unique Smack label.
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
23
Per Application Manifest
● Manifest are fined grainede.g. Bluetooth– bluetoothmanager– bluetooth.spp (Serial Port Profile)– bluetooth.opp (Object Push
Profile)– bluetooth.health (Health Device
Profile)– bluetooth.gap (Generic Access
Profile)– bluetooth.admin
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
24
Manifest enforcement SAPI (evolution from Tizen 2.x CAPI)Apps
Service API
Service API
Security
Core services
FrameworksCore App
SAPI
Cynara
User session
System
User session
API call permission : ALWAYS / NEVER / ASK ONCE / ASK ALWAYS (+ answers cache)
Internal APIs (based on CAPIs)
Services Proxy Daemon
Native App
SAPI
Native Framework
AMD Session Agent AMD Session Agent
ModuleModuleModuleModuleModuleModule
Xwalk Process
Tizen Ext. Crosswalk
W3CAPIs
RP
EP
SAPI
RP
EP
RP
EP
BT Service Connman Service ..Media service. ,,,App FW,,,
Xwalk Process
Tizen Ext. Crosswalk
W3CAPIs
RP
EP
SAPI
RP
EP
RP
EP
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
26
CrossWalk Architecture
Browser Process (BP)Browser Process (BP)
WebAppWebApp
Render
Process (RP)
Render
Process (RP)
Extension
Process (EP)
Extension
Process (EP)
I
P
C
I
P
C
WebAppWebApp
Render
Process (RP)
Render
Process (RP)
Extension
Process (EP)
Extension
Process (EP)
I
P
C
I
P
C
Tizen OSTizen OS
• Shared process model
• BP is shared with all WebApps
• WebApp contains EP and RP
• RP is sandboxed and can’t do OS calls
• RP delegates OS calls to BP via IPC
• EP is not sandboxed and can do OS calls
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
27
CrossWalk Security
• Policy is created during WebApp installation
• API permission is checked against the policy during runtime
• Policy contains <application context>, <privilege> tuple
• Permission check has simple answer: ALLOW, DENY or ASK USER
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
28
Modello HTML5 UI
● HTML5 UI– Proof of concept– Reference– Open Source Option– Fully functional
Tizen 3 IVIALS June 2014
Dominig ar FollIntel Open Source Technology Centre
30
Tizen Goodies● Graphic
– Weston 1.5 with XDG and Layers
– EFL 1.9– QT 5.3– Ozone– Gstreamer 1.2
● Automotive Middleware– Automotive Message Broker– Murphy resource
management● DLNA, WiFi P2P, DNLA, NFC, ...
● Build Systems– OBS– Yocto– Eclipse SDK
● Architecture– IA 64 bits– IA 32 bits– ARM 32 bits