SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Consolidation of IVI Graphic Subsystems
Weston, a Wayland Compositor,
and GENIVI Layer Management
Nobuhiko Tanibata
25 October 2013
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Contents
• Trends of Graphic stacks in IVI segment
• Problems & Proposing solution
• Solution of consolidating two into one
• IVI shell protocol
• Design of Implementation
• Demonstration
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Trend of Graphic stacks in automotive segment
• Proprietary to Common
• Complexity to Light weight
• Wayland is one of candidates
– Distill out functions from X server
• Trends
– Tizen IVI
– many companies shift proprietary stacks to using
Wayland.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Problem & Proposing solution for selecting Wayland
• Problem: Two candidates of Wayland implementation.
Which is better for automotive system?
– Weston: a Wayland compositor
– Genivi Layer manager: Wayland plug-in, a Wayland compositor
• Proposing Solution: Consolidate two into one. Merge both
advantages. Why does DENSO do this?
– DENSO is now developing new model product for several car
makers, jointly implementing Wayland base automotive platform.
– DENSO is motivated to open the implantation as product ready
quality.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Weston: a Wayland compositor
• Maintained by Wayland Community
– Wayland Core protocol
– Shell:
Managing SceneGraph
– Compositor:
Composite Surfaces
Pros:
• Wayland community is more active than Genivi
Layer management, more contributors. Many bug
fixes are available.
Cons:
• No ivi feature set, Layer management.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
GENIVI Layer management: Wayland plug-in
• Maintained by GENIVI Layer management community.
– Wayland Core Protocol
– Communicator:
Genivi Layer management APIs
– Compositor:
Compositing Wayland surfaces
• Pros:
– Support ivi feature set, Layer management
• Car makers and Tier1s can use proven a HMI controller with Layer
management. The controller is already qualified on actual product.
– Denso contribute codes via Advance Driver Information Technology.
• Cons:
– Compositor need to be updated continuously per Weston version
up. E.g. Applying bug fixes.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Solution of consolidating two into one
• Define IVI related protocol and IVI shell to Wayland
community.
• Genivi Layer manage APIs wrapping IVI related
protocol to Layer manager community.
Comparison of IVI related features
with current Wayland Protocol
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI client/controller protocol
• Define IVI specific protocol to fit GENIVI layer
management; managing surface->Layer->Screen.
• Client and Controller to clearly define a role of
application and controller.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI Client protocol: ivi-client.xml
Use case: Wayland application set its native to ivi_surface
• ivi_client: the first protocols for creation of surface.
• ivi_surface: set weston native_handle to ivi_surface
Simple protocol to tie native and ivi_surface with global ID.
Global ID allow us to identify ivi_surface.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
ivi-client.xml
<protocol name="ivi-client">
・・・
<interface name="ivi_client" version="1">
<description summary="creation of ivi_surface"/>
<request name="surface_create">
<description summary="ilm_surfaceCreate"/>
<arg name="id_surface" type="uint"/>
<arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
<arg name="id" type="new_id" interface="ivi_surface"/>
</request>
</interface>
</protocol>
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI controller protocol: ivi-controller.xml
Use case: Create layers, add surfaces to it and control them.
• ivi_controller: the first protocols for receiving events: creation of surface
and create layer.
• ivi_controller_surface: set visibility e.g. in case of speed restriction.
• ivi_controller_layer : add/clear surfaces, set visibility, position, ….
• Ivi_controller_screen: add layer to a screen
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
ivi-controller.xml: ivi_controller
<protocol name="ivi_controller">
<interface name="ivi_controller" version="1">
<description summary="Interface for central controller of layers and surfaces"/>
…
<request name="layer_create">
<description summary="ilm_layerCreateWithDimension"/>
<arg name="id_layer" type="uint"/>
<arg name="width" type="int"/>
<arg name="height" type="int"/>
<arg name="id" type="new_id" interface="ivi_layer"/>
</request>
<event name="layer">
<description summary="Receive id_layer/ivi_layer and a controller to control ivi_layer"/>
<arg name="id_layer" type="uint"/>
<arg name="layer" type="new_id" interface="ivi_layer"/>
<arg name="controller" type="new_id" interface="ivi_controller_layer"/>
</event>
<event name="surface">
<description summary="Receive id_surface/ivi_surface and a controller to control ivi_surface"/>
<arg name="id_surface" type="uint"/>
<arg name="surface" type="new_id" interface="ivi_surface"/>
<arg name="controller_surface" type="new_id" interface="ivi_controller_surface"/>
</event>
…
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
ivi-controller.xml: ivi_controller_surface
<protocol name="ivi_controller">
<interface name="ivi_controller_surface" version="1">
<description summary="Request property change of ivi_surface to server"/>
…
<request name="set_visibility">
<description summary="Set Visibility"/>
<arg name="visibility" type="uint"/>
</request>
<event name="visibility">
<description summary="sent in response to set visibility"/>
<arg name="visibility" type="int"/>
</event>
…
<event name="layer">
<description summary="Receive a ivi_layer this ivi_surface belongs"/>
<arg name="layer" type="object" interface="ivi_layer" allow-null="true"/>
</event>
…
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
ivi-controller.xml: ivi_controller_layer
<protocol name="ivi_controller">
<interface name="ivi_controller_layer" version="1">
<description summary="Request property change of ivi_layer and add/remove ivi_surface from ivi_layer
to server"/>
…
<request name="set_visibility">
<description summary="Set Visibility"/>
<arg name="visibility" type="uint"/>
</request>
…
<request name="add_surface">
<description summary="add a ivi_surface to top order of a ivi_layer"/>
<arg name="surface" type="object" interface="ivi_surface"/>
</request>
…
<event name="screen">
<description summary="Receive a wl_output this ivi_layer belongs"/>
<arg name="screen" type="object" interface="wl_output" allow-null="true"/>
</event>
…
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
ivi-controller.xml: ivi_controller_screen
<protocol name="ivi_controller">
<interface name="ivi_controller_screen" version="1">
<description summary="Request add/remove layer from ivi_layer to server"/>
…
<request name="add_layer">
<description summary="add a ivi_layer to top order of a wl_output"/>
<arg name="layer" type="object" interface="ivi_layer"/>
</request>
…
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI-Shell Implementation
• ivi-shell.so:
– Implement ivi-client/controller protocols
– Communicate Weston by Plug-in APIs
– Set name of plug-in in weston.ini
[shell]
type=ivi-shell.so
…
• libilmClient.so
– Wrap ivi-client protocol to be compatible
with Genivi LM client APIs.
• libilmControl.so
– Wrap ivi-controller protocol to be
compatible with Genivi LM control APIs
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI-Shell property database
ivi-shell.so
ivi-shell.so
compositor
compositor
Client Application
Client Application
OpenGL-ES
OpenGL-ES
Weston
ivi-shell Info.
Compositor Info.
wayland IPCwayland IPC
ivi_client_surface
- Surface ID
- Properties
- Weston Surface
ivi_client_layer
- Layer ID
- Properties
- Surface Order List
ivi_client_screen
- Screen ID
- Layer Order List
- Weston Output
Database of
hierarchy
- Surface List
- Layer List
- Screen Order List
- Weston Surface List
- Weston Compositor
...
...
...
• ivi-shell.so contains a database to manage
hierarchy and tie Weston resources.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
IVI-Shell: how to composite surfaces
sd surface_list
Compostior
ivi-shell compositor compositor_backend
layer.surface_list compositor.surface_list
gl_renderer
"CommitChanges" triggers update
layer.surface_list by ivi_shell date base
Update compositor.surface_list to apply attributes
of surfaces and layers to corresponding screen:
wl_output.
gl_renderer actually composite
surfaces and layers according to
compositor.surface_list
render
order()
update
layer.surface_list()
update()
weston_compositor_schedule_repaint()
add_idle_repaint()
start_repaint_loop()
output->start_repaint()
repaint()
weston_output_finish_frame()
weston_output_repaint()
weston_compositor_build_surface_list()
refer()
surface_list()
update
surface_list()
update()
repaint()
refer()
surface()
draw_surface()
• IVI-shell just asks
compositor to composite
surface according to
attributes.
• Update layer.surface_list
by Database of attribute.
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Demonstration
• Qt, EFL, and Adobe AIR on Wayland and Layout management by
Genivi Layer management APIs.
• Layout change and fade-in animation done by compositor.
Cluster on
Adobe AIR
Qt and EFL
windows
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Demonstration
• Layer management compatible test
• LayerManagerControl demo
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
Summary
• Weston and Genivi Layer management wayland
compositor have pros and cons
– Propose consolidation of two compositor and being
contributed to both community.
• IVI UI style; client and controller model
– Define separated protocol
– Genivi layer management compatible APIs
This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties.
References
• Wayland
– http://wayland.freedesktop.org/
– http://cgit.freedesktop.org/wayland
• GENIVI
– http://projects.genivi.org/ivi-layer-management/

Mais conteúdo relacionado

Mais procurados

Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksLaurent Bernaille
 
Containerd internals: building a core container runtime
Containerd internals: building a core container runtimeContainerd internals: building a core container runtime
Containerd internals: building a core container runtimeDocker, Inc.
 
Service discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulService discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulJos Dirksen
 
The Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitchThe Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitchTe-Yen Liu
 
Task migration using CRIU
Task migration using CRIUTask migration using CRIU
Task migration using CRIURohit Jnagal
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes IntroductionPeng Xiao
 
Namespaces and cgroups - the basis of Linux containers
Namespaces and cgroups - the basis of Linux containersNamespaces and cgroups - the basis of Linux containers
Namespaces and cgroups - the basis of Linux containersKernel TLV
 
MemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemory Fabric Forum
 
Linux Presentation
Linux PresentationLinux Presentation
Linux PresentationNaiyan Noor
 
Rootless Containers
Rootless ContainersRootless Containers
Rootless ContainersAkihiro Suda
 
The basic concept of Linux FIleSystem
The basic concept of Linux FIleSystemThe basic concept of Linux FIleSystem
The basic concept of Linux FIleSystemHungWei Chiu
 
Advanced Namespaces and cgroups
Advanced Namespaces and cgroupsAdvanced Namespaces and cgroups
Advanced Namespaces and cgroupsKernel TLV
 
Docker Networking Deep Dive
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep DiveDocker, Inc.
 
The State of CXL-related Activities within OCP
The State of CXL-related Activities within OCPThe State of CXL-related Activities within OCP
The State of CXL-related Activities within OCPMemory Fabric Forum
 
Introduction to char device driver
Introduction to char device driverIntroduction to char device driver
Introduction to char device driverVandana Salve
 
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)Laehyoung Kim
 

Mais procurados (20)

Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay Networks
 
Containerd internals: building a core container runtime
Containerd internals: building a core container runtimeContainerd internals: building a core container runtime
Containerd internals: building a core container runtime
 
Service discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulService discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consul
 
The Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitchThe Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitch
 
Task migration using CRIU
Task migration using CRIUTask migration using CRIU
Task migration using CRIU
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Docker by Example - Basics
Docker by Example - Basics Docker by Example - Basics
Docker by Example - Basics
 
Namespaces and cgroups - the basis of Linux containers
Namespaces and cgroups - the basis of Linux containersNamespaces and cgroups - the basis of Linux containers
Namespaces and cgroups - the basis of Linux containers
 
MemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL Environments
 
Linux Systems: Getting started with setting up an Embedded platform
Linux Systems: Getting started with setting up an Embedded platformLinux Systems: Getting started with setting up an Embedded platform
Linux Systems: Getting started with setting up an Embedded platform
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Linux Presentation
Linux PresentationLinux Presentation
Linux Presentation
 
Rootless Containers
Rootless ContainersRootless Containers
Rootless Containers
 
The basic concept of Linux FIleSystem
The basic concept of Linux FIleSystemThe basic concept of Linux FIleSystem
The basic concept of Linux FIleSystem
 
Advanced Namespaces and cgroups
Advanced Namespaces and cgroupsAdvanced Namespaces and cgroups
Advanced Namespaces and cgroups
 
Docker Networking Deep Dive
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep Dive
 
The State of CXL-related Activities within OCP
The State of CXL-related Activities within OCPThe State of CXL-related Activities within OCP
The State of CXL-related Activities within OCP
 
Introduction to char device driver
Introduction to char device driverIntroduction to char device driver
Introduction to char device driver
 
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 

Destaque

Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVI
Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVIHarmonizing policy management with Murphy in Genivi, AGL and Tizen IVI
Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVIRyo Jin
 
Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs mentoresd
 
QtWS15 Revolutionizing Automotive with Qt
QtWS15 Revolutionizing Automotive with QtQtWS15 Revolutionizing Automotive with Qt
QtWS15 Revolutionizing Automotive with QtJohan Thelin
 
Ivi external briefing_pack_v.aim
Ivi external briefing_pack_v.aimIvi external briefing_pack_v.aim
Ivi external briefing_pack_v.aimAIMIreland
 
Embedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentEmbedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentFSCONS
 
Automotive Grade Linux and systemd
Automotive Grade Linux and systemdAutomotive Grade Linux and systemd
Automotive Grade Linux and systemdAlison Chaiken
 
Porting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC PlatformPorting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC PlatformRyo Jin
 
The Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Sourcegenivialliance
 
Current trends in open source and automotive
Current trends in open source and automotiveCurrent trends in open source and automotive
Current trends in open source and automotiveRyo Jin
 
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)Leon Anavi
 
Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Yannick Gicquel
 
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)KPIT
 
HKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewHKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewLinaro
 
GENIVI Development Platform (GDP) summary : 15th AMM
GENIVI Development Platform (GDP) summary : 15th AMMGENIVI Development Platform (GDP) summary : 15th AMM
GENIVI Development Platform (GDP) summary : 15th AMMAgustin Benito Bethencourt
 
GENIVI Development Platform, la plataforma para desarrolladores de software l...
GENIVI Development Platform, la plataforma para desarrolladores de software l...GENIVI Development Platform, la plataforma para desarrolladores de software l...
GENIVI Development Platform, la plataforma para desarrolladores de software l...Agustin Benito Bethencourt
 

Destaque (15)

Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVI
Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVIHarmonizing policy management with Murphy in Genivi, AGL and Tizen IVI
Harmonizing policy management with Murphy in Genivi, AGL and Tizen IVI
 
Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs
 
QtWS15 Revolutionizing Automotive with Qt
QtWS15 Revolutionizing Automotive with QtQtWS15 Revolutionizing Automotive with Qt
QtWS15 Revolutionizing Automotive with Qt
 
Ivi external briefing_pack_v.aim
Ivi external briefing_pack_v.aimIvi external briefing_pack_v.aim
Ivi external briefing_pack_v.aim
 
Embedding Linux For An Automotive Environment
Embedding Linux For An Automotive EnvironmentEmbedding Linux For An Automotive Environment
Embedding Linux For An Automotive Environment
 
Automotive Grade Linux and systemd
Automotive Grade Linux and systemdAutomotive Grade Linux and systemd
Automotive Grade Linux and systemd
 
Porting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC PlatformPorting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC Platform
 
The Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Source
 
Current trends in open source and automotive
Current trends in open source and automotiveCurrent trends in open source and automotive
Current trends in open source and automotive
 
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)
Software, Over the Air (SOTA) for Automotive Grade Linux (AGL)
 
Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)
 
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)
IVI Software Update - Challenges and Strategies - Webinar Presentation (updated)
 
HKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewHKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting Review
 
GENIVI Development Platform (GDP) summary : 15th AMM
GENIVI Development Platform (GDP) summary : 15th AMMGENIVI Development Platform (GDP) summary : 15th AMM
GENIVI Development Platform (GDP) summary : 15th AMM
 
GENIVI Development Platform, la plataforma para desarrolladores de software l...
GENIVI Development Platform, la plataforma para desarrolladores de software l...GENIVI Development Platform, la plataforma para desarrolladores de software l...
GENIVI Development Platform, la plataforma para desarrolladores de software l...
 

Semelhante a Consolidation of IVI Graphic Subsystems; Weston, a Wayland Compositor, and Genivi Layer Management

Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...
Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...
Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...eG Innovations
 
View 5 competitive sales presentation
View 5 competitive sales presentationView 5 competitive sales presentation
View 5 competitive sales presentationsolarisyourep
 
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCohesive Networks
 
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...Unidesk Corporation
 
Product positioning ss_v.1.03
Product positioning ss_v.1.03Product positioning ss_v.1.03
Product positioning ss_v.1.03Nimit Shishodia
 
Deep Dive Into Android Security
Deep Dive Into Android SecurityDeep Dive Into Android Security
Deep Dive Into Android SecurityMarakana Inc.
 
Ensure The Success of VMware Horizon View Deployments
Ensure The Success of VMware Horizon View DeploymentsEnsure The Success of VMware Horizon View Deployments
Ensure The Success of VMware Horizon View DeploymentseG Innovations
 
Evolve_positioning_ss_v.1.03
Evolve_positioning_ss_v.1.03Evolve_positioning_ss_v.1.03
Evolve_positioning_ss_v.1.03Nimit Shishodia
 
Abicloud Technical Overview
Abicloud Technical OverviewAbicloud Technical Overview
Abicloud Technical OverviewAbiquo, Inc.
 
eG Enterprise Citrix XenDesktop Monitor Product Tour
eG Enterprise Citrix XenDesktop Monitor Product ToureG Enterprise Citrix XenDesktop Monitor Product Tour
eG Enterprise Citrix XenDesktop Monitor Product ToureG Innovations
 
Visibility and Automation for Enhanced Security
Visibility and Automation for Enhanced SecurityVisibility and Automation for Enhanced Security
Visibility and Automation for Enhanced Securitypatmisasi
 
Clanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalClanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalDOCOMO Innovations, Inc.
 
SpringOne2GX 2014 Splunk Presentation
SpringOne2GX 2014 Splunk PresentationSpringOne2GX 2014 Splunk Presentation
SpringOne2GX 2014 Splunk PresentationDamien Dallimore
 
F5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5 Networks
 
F5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5 Networks
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays
 

Semelhante a Consolidation of IVI Graphic Subsystems; Weston, a Wayland Compositor, and Genivi Layer Management (20)

Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...
Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...
Citrix XenMobile and ShareFile Performance - 5 Steps for a Better BYOD Experi...
 
View 5 competitive sales presentation
View 5 competitive sales presentationView 5 competitive sales presentation
View 5 competitive sales presentation
 
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
 
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...
Future-Proof Your Desktops - How City of Kent is Implementing VDI for 800 Wor...
 
Product positioning ss_v.1.03
Product positioning ss_v.1.03Product positioning ss_v.1.03
Product positioning ss_v.1.03
 
Deep Dive Into Android Security
Deep Dive Into Android SecurityDeep Dive Into Android Security
Deep Dive Into Android Security
 
Discover Great Reasons to move to ConfigMgr 2012 SP1
Discover Great Reasons to move to ConfigMgr 2012 SP1Discover Great Reasons to move to ConfigMgr 2012 SP1
Discover Great Reasons to move to ConfigMgr 2012 SP1
 
Ensure The Success of VMware Horizon View Deployments
Ensure The Success of VMware Horizon View DeploymentsEnsure The Success of VMware Horizon View Deployments
Ensure The Success of VMware Horizon View Deployments
 
Evolve_positioning_ss_v.1.03
Evolve_positioning_ss_v.1.03Evolve_positioning_ss_v.1.03
Evolve_positioning_ss_v.1.03
 
Abicloud Technical Overview
Abicloud Technical OverviewAbicloud Technical Overview
Abicloud Technical Overview
 
eG Enterprise Citrix XenDesktop Monitor Product Tour
eG Enterprise Citrix XenDesktop Monitor Product ToureG Enterprise Citrix XenDesktop Monitor Product Tour
eG Enterprise Citrix XenDesktop Monitor Product Tour
 
Dmz aa aioug
Dmz aa aiougDmz aa aioug
Dmz aa aioug
 
Dmz aa aioug
Dmz aa aiougDmz aa aioug
Dmz aa aioug
 
Visibility and Automation for Enhanced Security
Visibility and Automation for Enhanced SecurityVisibility and Automation for Enhanced Security
Visibility and Automation for Enhanced Security
 
INTRODUCTION OF SCADA.pptx
INTRODUCTION OF SCADA.pptxINTRODUCTION OF SCADA.pptx
INTRODUCTION OF SCADA.pptx
 
Clanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalClanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by Drupal
 
SpringOne2GX 2014 Splunk Presentation
SpringOne2GX 2014 Splunk PresentationSpringOne2GX 2014 Splunk Presentation
SpringOne2GX 2014 Splunk Presentation
 
F5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference Architecture
 
F5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference ArchitectureF5’s VMware Horizon View Reference Architecture
F5’s VMware Horizon View Reference Architecture
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
 

Mais de Ryo Jin

Why is EFL used on Tizen?
Why is EFL used on Tizen?Why is EFL used on Tizen?
Why is EFL used on Tizen?Ryo Jin
 
Samsung Z4 User Manual
Samsung Z4 User ManualSamsung Z4 User Manual
Samsung Z4 User ManualRyo Jin
 
Samsung ARTIK 050 (ARTIK ZERO) Modules Data Sheet
Samsung ARTIK 050 (ARTIK ZERO) Modules Data SheetSamsung ARTIK 050 (ARTIK ZERO) Modules Data Sheet
Samsung ARTIK 050 (ARTIK ZERO) Modules Data SheetRyo Jin
 
Introduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen StudioIntroduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen StudioRyo Jin
 
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan Driver
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan DriverTizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan Driver
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan DriverRyo Jin
 
Panduan Penggunaan Perangkat Wearable Tizen
Panduan Penggunaan Perangkat Wearable TizenPanduan Penggunaan Perangkat Wearable Tizen
Panduan Penggunaan Perangkat Wearable TizenRyo Jin
 
Cara Menggunakan Smartphone Tizen
Cara Menggunakan Smartphone TizenCara Menggunakan Smartphone Tizen
Cara Menggunakan Smartphone TizenRyo Jin
 
Gear Fit2 Watchface Design Guide
Gear Fit2 Watchface Design GuideGear Fit2 Watchface Design Guide
Gear Fit2 Watchface Design GuideRyo Jin
 
Samsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreSamsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreRyo Jin
 
Samsung Indonesia: Tizen Wearables
Samsung Indonesia: Tizen WearablesSamsung Indonesia: Tizen Wearables
Samsung Indonesia: Tizen WearablesRyo Jin
 
Samsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsSamsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsRyo Jin
 
Samsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native AppSamsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native AppRyo Jin
 
Samsung Indonesia: Tizen Platform Overview and IoT
Samsung Indonesia: Tizen Platform Overview and IoTSamsung Indonesia: Tizen Platform Overview and IoT
Samsung Indonesia: Tizen Platform Overview and IoTRyo Jin
 
Russian Tizen Project
Russian Tizen ProjectRussian Tizen Project
Russian Tizen ProjectRyo Jin
 
Samsung SM-R360 Tizen User Manual
Samsung SM-R360 Tizen User ManualSamsung SM-R360 Tizen User Manual
Samsung SM-R360 Tizen User ManualRyo Jin
 
Tizen Micro Profile for IoT device
Tizen Micro Profile for IoT deviceTizen Micro Profile for IoT device
Tizen Micro Profile for IoT deviceRyo Jin
 
Panduan Dasar Pemrograman Tizen
Panduan Dasar Pemrograman TizenPanduan Dasar Pemrograman Tizen
Panduan Dasar Pemrograman TizenRyo Jin
 
The Story of Enlightenment, EFL, Tizen and Wayland
The Story of Enlightenment, EFL, Tizen and WaylandThe Story of Enlightenment, EFL, Tizen and Wayland
The Story of Enlightenment, EFL, Tizen and WaylandRyo Jin
 
Tizen PASS
Tizen PASSTizen PASS
Tizen PASSRyo Jin
 
Tizen PASS
Tizen PASSTizen PASS
Tizen PASSRyo Jin
 

Mais de Ryo Jin (20)

Why is EFL used on Tizen?
Why is EFL used on Tizen?Why is EFL used on Tizen?
Why is EFL used on Tizen?
 
Samsung Z4 User Manual
Samsung Z4 User ManualSamsung Z4 User Manual
Samsung Z4 User Manual
 
Samsung ARTIK 050 (ARTIK ZERO) Modules Data Sheet
Samsung ARTIK 050 (ARTIK ZERO) Modules Data SheetSamsung ARTIK 050 (ARTIK ZERO) Modules Data Sheet
Samsung ARTIK 050 (ARTIK ZERO) Modules Data Sheet
 
Introduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen StudioIntroduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen Studio
 
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan Driver
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan DriverTizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan Driver
Tizen 3.0's Window System Integration Layer of OpenGLES/EGL & Vulkan Driver
 
Panduan Penggunaan Perangkat Wearable Tizen
Panduan Penggunaan Perangkat Wearable TizenPanduan Penggunaan Perangkat Wearable Tizen
Panduan Penggunaan Perangkat Wearable Tizen
 
Cara Menggunakan Smartphone Tizen
Cara Menggunakan Smartphone TizenCara Menggunakan Smartphone Tizen
Cara Menggunakan Smartphone Tizen
 
Gear Fit2 Watchface Design Guide
Gear Fit2 Watchface Design GuideGear Fit2 Watchface Design Guide
Gear Fit2 Watchface Design Guide
 
Samsung Indonesia: Tizen Store
Samsung Indonesia: Tizen StoreSamsung Indonesia: Tizen Store
Samsung Indonesia: Tizen Store
 
Samsung Indonesia: Tizen Wearables
Samsung Indonesia: Tizen WearablesSamsung Indonesia: Tizen Wearables
Samsung Indonesia: Tizen Wearables
 
Samsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsSamsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web Apps
 
Samsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native AppSamsung Indonesia: Tizen Native App
Samsung Indonesia: Tizen Native App
 
Samsung Indonesia: Tizen Platform Overview and IoT
Samsung Indonesia: Tizen Platform Overview and IoTSamsung Indonesia: Tizen Platform Overview and IoT
Samsung Indonesia: Tizen Platform Overview and IoT
 
Russian Tizen Project
Russian Tizen ProjectRussian Tizen Project
Russian Tizen Project
 
Samsung SM-R360 Tizen User Manual
Samsung SM-R360 Tizen User ManualSamsung SM-R360 Tizen User Manual
Samsung SM-R360 Tizen User Manual
 
Tizen Micro Profile for IoT device
Tizen Micro Profile for IoT deviceTizen Micro Profile for IoT device
Tizen Micro Profile for IoT device
 
Panduan Dasar Pemrograman Tizen
Panduan Dasar Pemrograman TizenPanduan Dasar Pemrograman Tizen
Panduan Dasar Pemrograman Tizen
 
The Story of Enlightenment, EFL, Tizen and Wayland
The Story of Enlightenment, EFL, Tizen and WaylandThe Story of Enlightenment, EFL, Tizen and Wayland
The Story of Enlightenment, EFL, Tizen and Wayland
 
Tizen PASS
Tizen PASSTizen PASS
Tizen PASS
 
Tizen PASS
Tizen PASSTizen PASS
Tizen PASS
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 

Último (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

Consolidation of IVI Graphic Subsystems; Weston, a Wayland Compositor, and Genivi Layer Management

  • 1. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Consolidation of IVI Graphic Subsystems Weston, a Wayland Compositor, and GENIVI Layer Management Nobuhiko Tanibata 25 October 2013
  • 2. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Contents • Trends of Graphic stacks in IVI segment • Problems & Proposing solution • Solution of consolidating two into one • IVI shell protocol • Design of Implementation • Demonstration
  • 3. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Trend of Graphic stacks in automotive segment • Proprietary to Common • Complexity to Light weight • Wayland is one of candidates – Distill out functions from X server • Trends – Tizen IVI – many companies shift proprietary stacks to using Wayland.
  • 4. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Problem & Proposing solution for selecting Wayland • Problem: Two candidates of Wayland implementation. Which is better for automotive system? – Weston: a Wayland compositor – Genivi Layer manager: Wayland plug-in, a Wayland compositor • Proposing Solution: Consolidate two into one. Merge both advantages. Why does DENSO do this? – DENSO is now developing new model product for several car makers, jointly implementing Wayland base automotive platform. – DENSO is motivated to open the implantation as product ready quality.
  • 5. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Weston: a Wayland compositor • Maintained by Wayland Community – Wayland Core protocol – Shell: Managing SceneGraph – Compositor: Composite Surfaces Pros: • Wayland community is more active than Genivi Layer management, more contributors. Many bug fixes are available. Cons: • No ivi feature set, Layer management.
  • 6. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. GENIVI Layer management: Wayland plug-in • Maintained by GENIVI Layer management community. – Wayland Core Protocol – Communicator: Genivi Layer management APIs – Compositor: Compositing Wayland surfaces • Pros: – Support ivi feature set, Layer management • Car makers and Tier1s can use proven a HMI controller with Layer management. The controller is already qualified on actual product. – Denso contribute codes via Advance Driver Information Technology. • Cons: – Compositor need to be updated continuously per Weston version up. E.g. Applying bug fixes.
  • 7. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Solution of consolidating two into one • Define IVI related protocol and IVI shell to Wayland community. • Genivi Layer manage APIs wrapping IVI related protocol to Layer manager community. Comparison of IVI related features with current Wayland Protocol
  • 8. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI client/controller protocol • Define IVI specific protocol to fit GENIVI layer management; managing surface->Layer->Screen. • Client and Controller to clearly define a role of application and controller.
  • 9. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI Client protocol: ivi-client.xml Use case: Wayland application set its native to ivi_surface • ivi_client: the first protocols for creation of surface. • ivi_surface: set weston native_handle to ivi_surface Simple protocol to tie native and ivi_surface with global ID. Global ID allow us to identify ivi_surface.
  • 10. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. ivi-client.xml <protocol name="ivi-client"> ・・・ <interface name="ivi_client" version="1"> <description summary="creation of ivi_surface"/> <request name="surface_create"> <description summary="ilm_surfaceCreate"/> <arg name="id_surface" type="uint"/> <arg name="surface" type="object" interface="wl_surface" allow-null="true"/> <arg name="id" type="new_id" interface="ivi_surface"/> </request> </interface> </protocol>
  • 11. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI controller protocol: ivi-controller.xml Use case: Create layers, add surfaces to it and control them. • ivi_controller: the first protocols for receiving events: creation of surface and create layer. • ivi_controller_surface: set visibility e.g. in case of speed restriction. • ivi_controller_layer : add/clear surfaces, set visibility, position, …. • Ivi_controller_screen: add layer to a screen
  • 12. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. ivi-controller.xml: ivi_controller <protocol name="ivi_controller"> <interface name="ivi_controller" version="1"> <description summary="Interface for central controller of layers and surfaces"/> … <request name="layer_create"> <description summary="ilm_layerCreateWithDimension"/> <arg name="id_layer" type="uint"/> <arg name="width" type="int"/> <arg name="height" type="int"/> <arg name="id" type="new_id" interface="ivi_layer"/> </request> <event name="layer"> <description summary="Receive id_layer/ivi_layer and a controller to control ivi_layer"/> <arg name="id_layer" type="uint"/> <arg name="layer" type="new_id" interface="ivi_layer"/> <arg name="controller" type="new_id" interface="ivi_controller_layer"/> </event> <event name="surface"> <description summary="Receive id_surface/ivi_surface and a controller to control ivi_surface"/> <arg name="id_surface" type="uint"/> <arg name="surface" type="new_id" interface="ivi_surface"/> <arg name="controller_surface" type="new_id" interface="ivi_controller_surface"/> </event> …
  • 13. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. ivi-controller.xml: ivi_controller_surface <protocol name="ivi_controller"> <interface name="ivi_controller_surface" version="1"> <description summary="Request property change of ivi_surface to server"/> … <request name="set_visibility"> <description summary="Set Visibility"/> <arg name="visibility" type="uint"/> </request> <event name="visibility"> <description summary="sent in response to set visibility"/> <arg name="visibility" type="int"/> </event> … <event name="layer"> <description summary="Receive a ivi_layer this ivi_surface belongs"/> <arg name="layer" type="object" interface="ivi_layer" allow-null="true"/> </event> …
  • 14. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. ivi-controller.xml: ivi_controller_layer <protocol name="ivi_controller"> <interface name="ivi_controller_layer" version="1"> <description summary="Request property change of ivi_layer and add/remove ivi_surface from ivi_layer to server"/> … <request name="set_visibility"> <description summary="Set Visibility"/> <arg name="visibility" type="uint"/> </request> … <request name="add_surface"> <description summary="add a ivi_surface to top order of a ivi_layer"/> <arg name="surface" type="object" interface="ivi_surface"/> </request> … <event name="screen"> <description summary="Receive a wl_output this ivi_layer belongs"/> <arg name="screen" type="object" interface="wl_output" allow-null="true"/> </event> …
  • 15. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. ivi-controller.xml: ivi_controller_screen <protocol name="ivi_controller"> <interface name="ivi_controller_screen" version="1"> <description summary="Request add/remove layer from ivi_layer to server"/> … <request name="add_layer"> <description summary="add a ivi_layer to top order of a wl_output"/> <arg name="layer" type="object" interface="ivi_layer"/> </request> …
  • 16. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI-Shell Implementation • ivi-shell.so: – Implement ivi-client/controller protocols – Communicate Weston by Plug-in APIs – Set name of plug-in in weston.ini [shell] type=ivi-shell.so … • libilmClient.so – Wrap ivi-client protocol to be compatible with Genivi LM client APIs. • libilmControl.so – Wrap ivi-controller protocol to be compatible with Genivi LM control APIs
  • 17. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI-Shell property database ivi-shell.so ivi-shell.so compositor compositor Client Application Client Application OpenGL-ES OpenGL-ES Weston ivi-shell Info. Compositor Info. wayland IPCwayland IPC ivi_client_surface - Surface ID - Properties - Weston Surface ivi_client_layer - Layer ID - Properties - Surface Order List ivi_client_screen - Screen ID - Layer Order List - Weston Output Database of hierarchy - Surface List - Layer List - Screen Order List - Weston Surface List - Weston Compositor ... ... ... • ivi-shell.so contains a database to manage hierarchy and tie Weston resources.
  • 18. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. IVI-Shell: how to composite surfaces sd surface_list Compostior ivi-shell compositor compositor_backend layer.surface_list compositor.surface_list gl_renderer "CommitChanges" triggers update layer.surface_list by ivi_shell date base Update compositor.surface_list to apply attributes of surfaces and layers to corresponding screen: wl_output. gl_renderer actually composite surfaces and layers according to compositor.surface_list render order() update layer.surface_list() update() weston_compositor_schedule_repaint() add_idle_repaint() start_repaint_loop() output->start_repaint() repaint() weston_output_finish_frame() weston_output_repaint() weston_compositor_build_surface_list() refer() surface_list() update surface_list() update() repaint() refer() surface() draw_surface() • IVI-shell just asks compositor to composite surface according to attributes. • Update layer.surface_list by Database of attribute.
  • 19. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Demonstration • Qt, EFL, and Adobe AIR on Wayland and Layout management by Genivi Layer management APIs. • Layout change and fade-in animation done by compositor. Cluster on Adobe AIR Qt and EFL windows
  • 20. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Demonstration • Layer management compatible test • LayerManagerControl demo
  • 21. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. Summary • Weston and Genivi Layer management wayland compositor have pros and cons – Propose consolidation of two compositor and being contributed to both community. • IVI UI style; client and controller model – Define separated protocol – Genivi layer management compatible APIs
  • 22. This information is the exclusive property of DENSO CORPORATION. Without their consent, it may not be reproduced or given to third parties. References • Wayland – http://wayland.freedesktop.org/ – http://cgit.freedesktop.org/wayland • GENIVI – http://projects.genivi.org/ivi-layer-management/