harmonizing policy management with murphy in genivi, agl and tizen ivi

Post on 15-May-2015

368 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVI - Janos Kovacs, Intel

TRANSCRIPT

Murphy integration to

Weston in Tizen IVI

Janos Kovacs

Intel

Open Source Technology Center

June 2014

2

Background

3

X Architecture

Wayland Architecture

Clients

Kernel

X serverCompositing

Window

Manager

Wayland Architecture

Kernel

Clients

Wayland

compositor(Weston)

4

Resource Management Framework in Murphy

Resource Engine(core library)

clie

nt

AP

I

config API

manager

AP

I

Resource

Managers(optional plugins)

Exception

Rules

(optional)

Client Protocol

Adapters(plugins)

LUA adapter

Config Protocol

Adapter(optional plugins)

DBTable

DBTable

Data

base Inte

rface

xxx_owners

xxx_users

5

Screen Management Building Blocks• Regulator

• Logic to adapt vehicle state, driver activities and application usage scenarios

• Set of rules and/or state machines

• Determines what applications can be active

• Layout Manager• Manages Areas and Layers

• Assigns and moves surfaces to areas/layers

• Depends on Regulations

• Resource Manager• Decides what active applications can do and when

• Depends on Regulations

• Application Launcher / Task Switcher• Launches/kills application

• Requests to switch active application

• Screen Controller• Carries out / enforces the decisions of Layout & Resource Manager

• Input Controller• Carries out / enforces the decisions of Input & Resource Manager

6

Basic Usecases for Screen Management

• Application launching

• Task switching

• Regulation changes

7

Evolution of HomeScreen

phase 1

8

Phase 1 Executive Summary

• Tizen IVI 2.0

• Toyota-san contributed HomeScreen to Tizen• Weston ICO plugins

• HomeScreen

• Sample applications

• First version of HomeScreen was monolithic• GUI

• System controller to manage screens, audio, input etc

• Conflicting audio management• TIZEN had its own Murphy based audio management for routing and volume ctrl.

• HomeScreen had its own management for volume control

• The two stack was not integrated

9

Building Block Locations

WestonHome Screen

ResourceManager

Screen

Controller

LayoutManager

LauncherTask Switcher

Regulator

InputManager

InputController

10

Pros and Cons

• Pros

• Efficient communication between HomeScreen and Weston

• Cons

• Conflicting Tizen and ICO audio controllers in PulseAudio

• Monolithic

• GUI and control logic were grown together

• Configuration

• Limited

• No scripting

11

Evolution of HomeScreen

phase 2

12

Phase 2 Executive Summary

• Tizen IVI 3.0, 2013EOY

• Integration of the audio stacks

• Home Screen refactored

• System Controller was separated and run outside of HomeScreen as a daemon

• Audio resource management was linked to Murphy

• Home Screen improvements

• Look & feel has changed

• Improved configurability and better integration for TIZEN infrastructure

13

Building Block Locations

Weston

System

ControllerHome Screen

LayoutManager

Layout

Manager

LauncherTask Switcher

Resource Managerscreen, input

Regulator

ScreenController

InputManager

InputManager

InputController

Murphy

Resource Manageraudio

14

Pros and Cons

• Pros

• GUI and control logic separated

• Cons

• Both HomeScreen and SystemController have layout management logic

• Proxying Weston messages represent an extra hop

• Simple integration to TIZEN resource management

• Oversimplified audio management

• No scripting

15

Evolution of HomeScreen

phase 3

16

Phase 3 Executive Summary

• Tizen IVI 3.0 image 20140318.3

• Functionally equivalent to Phase2

• System controller is implemented in Murphy• The Murphy implementation is a drop-in replacement to

SystemController written in C++

• Could be tested by installing the relevant Murphy plugins

• Uses the ICO weston plugins

• Snapshot only• Migrating from ICO weston plugins to GENIVI compliant IVI shell was prioritized over the reimplementation of

System Controller in Murphy

• Paralell efforts• Toyota team worked on migration to GENIVI shell (see phase 4)

• Intel team worked on reimplementation of SystemController in Murphy

17

Building Block Locations

WestonMurphyHome Screen

LayoutManager

LayoutManager

LauncherTask Switcher

ResourceManager

Regulator

ScreenController

InputManager

InputManager

InputController

18 Example signal flow: launching Application B

RegulatorLayout

Manager

Resource

Manager

Launcher

Task SwitcherLayout

ManagerApplication

A

Application

B

Screen

Controller

Launch B

create surfacecreate surface

notificationcreate resource for B

move to area

set layercreate surface

notificationB is ready

Make B activeshow surface

request resource B

grant B

revoke A

hide surface A

show surface B

hide surface

notification

show surface

notification

hide surface

notification

show surface

notificationMake launcher

inactive

B is active

A is inactive

hide HomeScreen surface hide HomeScreen surface

19

Pros and Cons

• Pros

• GUI and control logic separated

• Full integration to TIZEN resource management

• Scriptable => highly configurable

• Cons

• Both HomeScreen and SystemController have layout management logic

• Proxying Weston messages represent an extra hop

• Works only with the deprecated ICO weston plugins

20

Evolution of HomeScreen

phase 4

21

Phase 4 Executive Summary

• Tizen IVI 3.0 M14.2

• Uses the IVI-shell instead of ICO Weston plugins

• IVI-shell is GENIVI compliant

• IVI-shell upstreaming is ongoing

• Functionally equivalent to Phase2

22

Evolution of HomeScreen

phase 5

23

Phase 5 Executive Summary

• Tizen IVI M14.3

• Merge of Phase 3 and Phase 4

• System Controller is implemented in Murphy

• Uses the IVI-shell

• No new functionality

• Functionally equivalent to Phase 4

24

Future directions

(life after phase 5)

25

Main goals

• Further data flow optimisation

• move layout and input management to Weston

• build a PoC to verify the idea

• Work with OEMs and Tier1s on regulator

• Regulations are currently rule based

• Verify whether the current mechanisms are covering all the needs

• Do we need new mechanism beside rules?

• eg. Table driven approach

26

Building Block Locations

WestonMurphyHome Screen

LauncherTask Switcher

Regulator

LayoutManager

ResourceManager

ScreenController

InputManager

InputController

27

X Architecture

Clients

Kernel

X serverCompositing

Window

Manager

Wayland Architecture Tizen Architecture

Kernel Kernel

Clients Clients

Wayland

compositor(Weston)

MurphyWeston

HomeScreen

top related