SlideShare une entreprise Scribd logo
1  sur  33
Improving cross desktop standard
Cedric BailCedric Bail
<cedric@efl.so><cedric@efl.so>
<cedric.bail@samsung.com><cedric.bail@samsung.com>
Who am I ?
• French free software developer in Korea
• Enlightenment developer since 2005
• Work for Samsung Mobile in Korea
• On Enlightenment Foundation Libraries
What is this talk about ?
●
Give some context about Enlightenment
●
Sharing experience
●
Wayland usage
●
Systemd usage
Why ?
●
Improve link across community
●
All about Free software
●
Sharing experience and knowledge
●
Lead to a better experience for everyone
Why ?
●
Better communication across project !
●
Seriously !
●
Build better and stronger base for everyone
to use
●
To get better standard, people need to
understand each other goal
Enlightenment ?
●
X Windows manager started in 1997
●
Enlightenment 0.17 released 21/12/2012
●
Composite manager
●
Wayland server
●
Wrote our own C toolkit, EFL
●
And our own terminal emulator
88
Enlightenment ?
< Screenshot of Enlightenment Window Manager >
Enlightenment ?
●
Was GNOME windows manager more than
10 years ago.
●
Due to a conflict between Carsten and
Miguel, each of them took their own path
●
Argument was about the integration of the
windows manager with the desktop
Enlightenment ?
●
The year of Linux Desktop will not happen
●
The future will be in the embedded world
●
That was in 2001 and defined where
Enlightenment community worked on.
●
Goal :
– Serve us, developers
– Serve the embedded world
Enlightenment ?
●
In fact, this two goal where the same
●
Need a buttload of options
●
Light on CPU and memory usage
●
Easily themable
●
Easily adaptable to various screen and input
Performance matters ?
●
Embedded device don't have
– Much memory
– Much CPU
– Much GPU, if at all
– Much battery
●
In fact, optimizing for battery imply
optimizing for all the other goals !
Memory and battery ?
●
Used memory need to be always powered
●
Accessing memory use more energy than
accessing cache
●
Embedded memory bandwidth don't
increase
●
No swap
CPU and battery ?
●
Obviously, the more you use it...
●
What does use means with modern CPU :
– Have multiple core
– With different characteristic
– Change their clock
●
Use as little as possible and make them go
back to sleep as soon as possible
GPU and battery ?
●
Avoid fullscreen rendering
●
Avoid memcpy (on the GPU to)
●
No dependencies between frame
●
Use hardware layer to avoid compositing
●
If not, software compositor may be lighter
Battery ?
●
Don't follow Moore's Law !
●
Core i7 is as efficient as a Cortex A8 !
●
Little hope into a Moore's Law for SoC power
consumption
●
Battery will always be a limit
Battery ?
●
EFL/E17 use 10% less battery than Android
●
With Unity my laptop loose 1 hour of
autonomy according to powertop
●
Closing my webbrowser give me 1 more
hour of autonomy
●
True on a x86 laptop to !
Beyond desktop !
Beyond desktop !
Beyond desktop
●
1.5 Billion Android device in 2013
●
More than the number of desktop in use
●
Developing country jumping on Android
●
No free software
●
Gate to our today life !
●
As powerful as some laptop !
Specific software ?
●
An application per device ?
●
Screen variation ?
●
Reading distance ?
●
Input ?
●
Optimized for mobile ?
●
Not really specific !
Memory optimization
●
Share content across application, mmap !
●
Maybe finally a sensible .desktop
●
Share glyph and pixels across applications
●
Need help from the kernel to decide when
to really throw those data away
●
Toolkit should agree on a common cache
Screen variation
●
DPI is not enough
●
Distance to screen matter
●
Personnal sighseeing to
●
Scale factor for all readable elements per
screen
=> Should be a cross desktop standard and
handle by toolkit
Input variation
●
Not everyone has the same fingers !
Suspending
●
Throw all cached ressource away
●
Interact with the system nicely on suspend
●
On iconify EFL application throttle
themselves (yes, sleep in the main loop)
●
Drop frame rate when minimized
Wayland
●
X is impossible to secure by design
●
Designed more than 20 years ago
●
Compositing was added later on
●
A lot was learned
●
It is a great time to clean stuff
●
Needed to be competitiv
Wayland
●
More efficient by design
●
Should be better than Android
●
Should be more secure
●
Some backward compatibility for X apps
●
Create more work on Composite Manager
●
We need to all agree on the standard
Wayland
Wayland
Wayland
●
First always compositing
●
Handle Wayland client under X
●
Become a full Wayland compositor
Systemd
●
Enlightenment_start replacement
●
More reliable
●
Handle monitoring of many process
●
Can monitor :
– Evas_Cserve2
– Elev8d
– Elm_Quicklaunch
Systemd
●
Could it take care of more ?
●
Launching/sandboxing application
●
Converting .desktop
●
Multi-instance application ?
●
Toolkit pre-initialization daemon ?
●
Maybe not a problem necessary to solve
Question ?

Contenu connexe

Similaire à Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)

Full stack development
Full stack developmentFull stack development
Full stack developmentArnav Gupta
 
Going native - Taking desktop applications to mobile devices
Going native - Taking desktop applications to mobile devicesGoing native - Taking desktop applications to mobile devices
Going native - Taking desktop applications to mobile devicesTanzer Consulting
 
OSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
OSMC 2014: Naemon 1, 2, 3, N | Andreas EricssonOSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
OSMC 2014: Naemon 1, 2, 3, N | Andreas EricssonNETWAYS
 
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...Russell Pavlicek
 
Sidiq Permana - Building For The Next Billion Users
Sidiq Permana - Building For The Next Billion UsersSidiq Permana - Building For The Next Billion Users
Sidiq Permana - Building For The Next Billion UsersDicoding
 
Akademy 2010 presentation
Akademy 2010 presentationAkademy 2010 presentation
Akademy 2010 presentationMarco Martin
 
Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012Daniel Woods
 
All Aboard The Stateful Train
All Aboard The Stateful TrainAll Aboard The Stateful Train
All Aboard The Stateful TrainSmartLogic
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux HeritageOpersys inc.
 
IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015Ryan Alcock
 
Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Opersys inc.
 
Glimworm 21-11-2013
Glimworm 21-11-2013Glimworm 21-11-2013
Glimworm 21-11-2013relayr
 
Castle Game Engine and the joy of making and using a custom game engine
Castle Game Engine and the joy  of making and using a custom game engineCastle Game Engine and the joy  of making and using a custom game engine
Castle Game Engine and the joy of making and using a custom game engineMichalis Kamburelis
 
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisKubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisAgileSparks
 
Glimworm 21 11-13 (1)
Glimworm 21 11-13 (1)Glimworm 21 11-13 (1)
Glimworm 21 11-13 (1)Paul Hopton
 
Optimisation and performance in Android
Optimisation and performance in AndroidOptimisation and performance in Android
Optimisation and performance in AndroidRakesh Jha
 
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...IndicThreads
 

Similaire à Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013) (20)

Full stack development
Full stack developmentFull stack development
Full stack development
 
Going native - Taking desktop applications to mobile devices
Going native - Taking desktop applications to mobile devicesGoing native - Taking desktop applications to mobile devices
Going native - Taking desktop applications to mobile devices
 
OSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
OSMC 2014: Naemon 1, 2, 3, N | Andreas EricssonOSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
OSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
 
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
OSAC16: Unikernel-powered Transient Microservices: Changing the Face of Softw...
 
Sidiq Permana - Building For The Next Billion Users
Sidiq Permana - Building For The Next Billion UsersSidiq Permana - Building For The Next Billion Users
Sidiq Permana - Building For The Next Billion Users
 
Akademy 2010 presentation
Akademy 2010 presentationAkademy 2010 presentation
Akademy 2010 presentation
 
Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012
 
Go fundamentals
Go fundamentalsGo fundamentals
Go fundamentals
 
All Aboard The Stateful Train
All Aboard The Stateful TrainAll Aboard The Stateful Train
All Aboard The Stateful Train
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux Heritage
 
Windows 10 overview
Windows 10 overviewWindows 10 overview
Windows 10 overview
 
IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015
 
Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011
 
Glimworm 21-11-2013
Glimworm 21-11-2013Glimworm 21-11-2013
Glimworm 21-11-2013
 
Castle Game Engine and the joy of making and using a custom game engine
Castle Game Engine and the joy  of making and using a custom game engineCastle Game Engine and the joy  of making and using a custom game engine
Castle Game Engine and the joy of making and using a custom game engine
 
Developer effiencency
Developer effiencencyDeveloper effiencency
Developer effiencency
 
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisKubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
 
Glimworm 21 11-13 (1)
Glimworm 21 11-13 (1)Glimworm 21 11-13 (1)
Glimworm 21 11-13 (1)
 
Optimisation and performance in Android
Optimisation and performance in AndroidOptimisation and performance in Android
Optimisation and performance in Android
 
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...
Performance in Android: Tips and Techniques [IndicThreads Mobile Application ...
 

Plus de Daniel Juyung Seo

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰Daniel Juyung Seo
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 Daniel Juyung Seo
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기Daniel Juyung Seo
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력Daniel Juyung Seo
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발Daniel Juyung Seo
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation LibrariesDaniel Juyung Seo
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어Daniel Juyung Seo
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기Daniel Juyung Seo
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...Daniel Juyung Seo
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)Daniel Juyung Seo
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Daniel Juyung Seo
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014Daniel Juyung Seo
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Daniel Juyung Seo
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)Daniel Juyung Seo
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전Daniel Juyung Seo
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Daniel Juyung Seo
 
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)Daniel Juyung Seo
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼Daniel Juyung Seo
 
The Art of Tizen UI Theme Technology in Various Profiles
The Art of Tizen UI Theme Technology in Various ProfilesThe Art of Tizen UI Theme Technology in Various Profiles
The Art of Tizen UI Theme Technology in Various ProfilesDaniel Juyung Seo
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Daniel Juyung Seo
 

Plus de Daniel Juyung Seo (20)

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
 
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼
 
The Art of Tizen UI Theme Technology in Various Profiles
The Art of Tizen UI Theme Technology in Various ProfilesThe Art of Tizen UI Theme Technology in Various Profiles
The Art of Tizen UI Theme Technology in Various Profiles
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
 

Dernier

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 

Dernier (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 

Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)

  • 1.
  • 3. Who am I ? • French free software developer in Korea • Enlightenment developer since 2005 • Work for Samsung Mobile in Korea • On Enlightenment Foundation Libraries
  • 4. What is this talk about ? ● Give some context about Enlightenment ● Sharing experience ● Wayland usage ● Systemd usage
  • 5. Why ? ● Improve link across community ● All about Free software ● Sharing experience and knowledge ● Lead to a better experience for everyone
  • 6. Why ? ● Better communication across project ! ● Seriously ! ● Build better and stronger base for everyone to use ● To get better standard, people need to understand each other goal
  • 7. Enlightenment ? ● X Windows manager started in 1997 ● Enlightenment 0.17 released 21/12/2012 ● Composite manager ● Wayland server ● Wrote our own C toolkit, EFL ● And our own terminal emulator
  • 8. 88 Enlightenment ? < Screenshot of Enlightenment Window Manager >
  • 9. Enlightenment ? ● Was GNOME windows manager more than 10 years ago. ● Due to a conflict between Carsten and Miguel, each of them took their own path ● Argument was about the integration of the windows manager with the desktop
  • 10. Enlightenment ? ● The year of Linux Desktop will not happen ● The future will be in the embedded world ● That was in 2001 and defined where Enlightenment community worked on. ● Goal : – Serve us, developers – Serve the embedded world
  • 11. Enlightenment ? ● In fact, this two goal where the same ● Need a buttload of options ● Light on CPU and memory usage ● Easily themable ● Easily adaptable to various screen and input
  • 12. Performance matters ? ● Embedded device don't have – Much memory – Much CPU – Much GPU, if at all – Much battery ● In fact, optimizing for battery imply optimizing for all the other goals !
  • 13. Memory and battery ? ● Used memory need to be always powered ● Accessing memory use more energy than accessing cache ● Embedded memory bandwidth don't increase ● No swap
  • 14. CPU and battery ? ● Obviously, the more you use it... ● What does use means with modern CPU : – Have multiple core – With different characteristic – Change their clock ● Use as little as possible and make them go back to sleep as soon as possible
  • 15. GPU and battery ? ● Avoid fullscreen rendering ● Avoid memcpy (on the GPU to) ● No dependencies between frame ● Use hardware layer to avoid compositing ● If not, software compositor may be lighter
  • 16. Battery ? ● Don't follow Moore's Law ! ● Core i7 is as efficient as a Cortex A8 ! ● Little hope into a Moore's Law for SoC power consumption ● Battery will always be a limit
  • 17. Battery ? ● EFL/E17 use 10% less battery than Android ● With Unity my laptop loose 1 hour of autonomy according to powertop ● Closing my webbrowser give me 1 more hour of autonomy ● True on a x86 laptop to !
  • 20. Beyond desktop ● 1.5 Billion Android device in 2013 ● More than the number of desktop in use ● Developing country jumping on Android ● No free software ● Gate to our today life ! ● As powerful as some laptop !
  • 21. Specific software ? ● An application per device ? ● Screen variation ? ● Reading distance ? ● Input ? ● Optimized for mobile ? ● Not really specific !
  • 22. Memory optimization ● Share content across application, mmap ! ● Maybe finally a sensible .desktop ● Share glyph and pixels across applications ● Need help from the kernel to decide when to really throw those data away ● Toolkit should agree on a common cache
  • 23. Screen variation ● DPI is not enough ● Distance to screen matter ● Personnal sighseeing to ● Scale factor for all readable elements per screen => Should be a cross desktop standard and handle by toolkit
  • 24. Input variation ● Not everyone has the same fingers !
  • 25. Suspending ● Throw all cached ressource away ● Interact with the system nicely on suspend ● On iconify EFL application throttle themselves (yes, sleep in the main loop) ● Drop frame rate when minimized
  • 26. Wayland ● X is impossible to secure by design ● Designed more than 20 years ago ● Compositing was added later on ● A lot was learned ● It is a great time to clean stuff ● Needed to be competitiv
  • 27. Wayland ● More efficient by design ● Should be better than Android ● Should be more secure ● Some backward compatibility for X apps ● Create more work on Composite Manager ● We need to all agree on the standard
  • 30. Wayland ● First always compositing ● Handle Wayland client under X ● Become a full Wayland compositor
  • 31. Systemd ● Enlightenment_start replacement ● More reliable ● Handle monitoring of many process ● Can monitor : – Evas_Cserve2 – Elev8d – Elm_Quicklaunch
  • 32. Systemd ● Could it take care of more ? ● Launching/sandboxing application ● Converting .desktop ● Multi-instance application ? ● Toolkit pre-initialization daemon ? ● Maybe not a problem necessary to solve