summaryrefslogtreecommitdiffstats
path: root/presentations/osts-2013-why-use-yocto
diff options
context:
space:
mode:
Diffstat (limited to 'presentations/osts-2013-why-use-yocto')
-rw-r--r--presentations/osts-2013-why-use-yocto/advert.jpgbin0 -> 649120 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/apple.jpgbin0 -> 565059 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/bike.jpgbin0 -> 611684 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/bomb.jpgbin0 -> 82008 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/cables.jpgbin0 -> 293433 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/clay.jpgbin0 -> 66128 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/data.jpgbin0 -> 432108 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/engineer.jpgbin0 -> 310702 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/labquest.jpgbin0 -> 35381 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/license.jpgbin0 -> 236192 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/minifigs.jpgbin0 -> 497571 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/qa.jpgbin0 -> 167108 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/road.jpgbin0 -> 188611 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/train.jpgbin0 -> 399452 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/tv.jpgbin0 -> 392568 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/xeon-phi.jpgbin0 -> 158595 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/yocto.jpgbin0 -> 40098 bytes
-rw-r--r--presentations/osts-2013-why-use-yocto/yocto.pin254
18 files changed, 254 insertions, 0 deletions
diff --git a/presentations/osts-2013-why-use-yocto/advert.jpg b/presentations/osts-2013-why-use-yocto/advert.jpg
new file mode 100644
index 0000000..2288b25
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/advert.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/apple.jpg b/presentations/osts-2013-why-use-yocto/apple.jpg
new file mode 100644
index 0000000..d3b7c9c
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/apple.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/bike.jpg b/presentations/osts-2013-why-use-yocto/bike.jpg
new file mode 100644
index 0000000..dd56173
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/bike.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/bomb.jpg b/presentations/osts-2013-why-use-yocto/bomb.jpg
new file mode 100644
index 0000000..1fd5e07
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/bomb.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/cables.jpg b/presentations/osts-2013-why-use-yocto/cables.jpg
new file mode 100644
index 0000000..3fdc7c6
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/cables.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/clay.jpg b/presentations/osts-2013-why-use-yocto/clay.jpg
new file mode 100644
index 0000000..a22a3ac
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/clay.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/data.jpg b/presentations/osts-2013-why-use-yocto/data.jpg
new file mode 100644
index 0000000..4820594
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/data.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/engineer.jpg b/presentations/osts-2013-why-use-yocto/engineer.jpg
new file mode 100644
index 0000000..71b7350
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/engineer.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/labquest.jpg b/presentations/osts-2013-why-use-yocto/labquest.jpg
new file mode 100644
index 0000000..9406a9d
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/labquest.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/license.jpg b/presentations/osts-2013-why-use-yocto/license.jpg
new file mode 100644
index 0000000..4d1fd00
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/license.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/minifigs.jpg b/presentations/osts-2013-why-use-yocto/minifigs.jpg
new file mode 100644
index 0000000..3c63cbd
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/minifigs.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/qa.jpg b/presentations/osts-2013-why-use-yocto/qa.jpg
new file mode 100644
index 0000000..11164d9
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/qa.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/road.jpg b/presentations/osts-2013-why-use-yocto/road.jpg
new file mode 100644
index 0000000..a0e373c
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/road.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/train.jpg b/presentations/osts-2013-why-use-yocto/train.jpg
new file mode 100644
index 0000000..c748db1
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/train.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/tv.jpg b/presentations/osts-2013-why-use-yocto/tv.jpg
new file mode 100644
index 0000000..4742383
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/tv.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/xeon-phi.jpg b/presentations/osts-2013-why-use-yocto/xeon-phi.jpg
new file mode 100644
index 0000000..3e914aa
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/xeon-phi.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/yocto.jpg b/presentations/osts-2013-why-use-yocto/yocto.jpg
new file mode 100644
index 0000000..333aec6
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/yocto.jpg
Binary files differ
diff --git a/presentations/osts-2013-why-use-yocto/yocto.pin b/presentations/osts-2013-why-use-yocto/yocto.pin
new file mode 100644
index 0000000..4ea52b8
--- /dev/null
+++ b/presentations/osts-2013-why-use-yocto/yocto.pin
@@ -0,0 +1,254 @@
1#!/usr/bin/env pinpoint
2
3[fill]
4[bottom]
5[font=ITC Kabel Semi-Bold 80px]
6[transition=fade]
7-- [yocto.jpg]
8
9# Ross Burton, a senior engineer on the Yocto Project
10#
11# Been working on Yocto for nearly a year, but also worked on the precursor to Yocto, Poky, before working on moblin, meego and tizen.
12
13-- [black] [text-align=center] [center]
14Why you should use
15the Yocto Project
16(instead of a desktop Linux)
17for your product
18#I'm talking about why you should use the Yocto Project (instead of a desktop Linux) for your pproduct
19#
20#They say when you can't summarise your talk in three words, why not use thirty, so I added a subtitle
21
22-- [bomb.jpg] [text-align=center]
23or,
24How I Learned To Stop Worrying
25And Love Building Distros
26#How I learned to stop worrying and love building distros.
27#
28#Because every conference should have a Dr Strangelove reference.
29#
30#Although this is less funny now that BAE systems have just appeared on the support mailing list.
31
32-- [yocto.jpg]
33“It's not an embedded Linux distribution
34— it creates a custom one for you”
35#What is the Yocto Project?
36#
37#YP is not a Linux distribution in the traditional sense, it helps you build a tailored Linux distribution for your embedded Linux product
38#
39#But what do we mean by embedded? Embedded means different things to different people.
40
41-- [apple.jpg]
42Not a “PC”
43#Basically, "not general purpose desktop computing".
44#
45#There are many examples where the YP is a good fit
46
47-- [tv.jpg]
48Home Media
49#Home media: Televisions, digital video recorders, set-top boxes, wireless speakers, internet radios.
50#
51#Our set-top box division is rebasing their SDK to YP right now, after maintaining their own linux distro.
52
53-- [advert.jpg]
54Digital Signage
55#Digital signage, such as the schedule displays you can see in the hallway, airport departure panels, so on.
56#
57#I certainy hope that next year instead of mac minis we're using minnow boards.
58
59-- [data.jpg] [text-align=center]
60Telecoms
61Data Centre
62#Telecoms and data centres, where you'll have clusters of xeons running core networking, or other specialised applications
63#
64#These are basically incredible powerful appliances, not general purpose machines. they need every bit of power squeezed out of their hardware, and generalising, even with an enterprise distro, may not be enough.
65
66-- [xeon-phi.jpg]
67Intel® Xeon Phi™
68(ding dong ding dong!)
69#Xeon Phi, aka MIC or Knights Corner.
70#
71#Can't get much more embedded than a PCI Express board with 64 x86 cores on. These are for massive number crunching, and each runs a Linux platform built by the Yocto Project.
72#
73#The processor was once upon a time a Pentium but is substantially extended, and the system is totally unlike anything else, so they needed a Linux system that could be massively customised to fit their needs.
74
75-- [labquest.jpg]
76Misc and Other
77#The fun thing about YP is you can't predict where people use it.
78#
79#This is the Vernier LabQuest, a flexible science probe for education.
80#
81#webOS, the platform on the palm phone and tablets, is built using YP.
82#
83#If you update the firmware in your Intel SSD, that tool is built with Yocto
84#
85#Concordia, our software defined radio platform, runs on YP.
86#
87#PAUSE.
88#
89#Now we know what sort of products the YP is aimed at, why should you use it?
90
91-- [minifigs.jpg] [center]
92So many choices!
93#When picking a platform what's the difference between Yocto and Android, Linaro, Tizen, Buildroot, Baserock, or hacking your favourite desktop distribution such as Fedora or Debian, especially as some have embedded versions such as emdebian.
94
95-- [cables.jpg]
96Easy to hack on at first,
97but you’ll regret it later
98#When your processor is x86, it's easy to prototype with a desktop distribution and chop pieces off
99#
100#Building new packages and rebuilding the pieces that need changes
101#
102#By the time the prototype is working well, you've invested enough effort that starting again to remove the hacks is off-putting.
103#
104#But you may end up with a fragile system, or the need to do something invasive such as rebuild the entire product with new compiler flags, it's not that easy any more
105
106-- [road.jpg] [top]
107Designed to go
108the distance
109#Yocto is proven technology and designed for long term use
110#
111#The build tool and package metadata (BitBake and OpenEmbedded) have been around for ten years with major deployments
112#
113#Builds on standard hardware (use your laptop to try it out) without any special requirements (eg no VM or root permission), just disk space and a compiler to bootstrap.
114#
115#Commercial support from major OSVs and specialized consultancies
116#
117#Finally no restrictions in it's use, the build system is GPL/MIT, no terms to agree to.
118#
119#Speaking of licensing
120
121-- [license.jpg] [center]
122
123Licensing Hell
124#It's easy to accidently break OSS licensing terms, so YP tries to help.
125#
126#Around $100k per violation
127#
128#All recipes need a license statement, and checksums to validate. if a new upstream release changes their license statements and you didn't notice, the build errors and the maintainer must verify the license situation.
129#
130#"No GPLv3" button when building that can will disable v3 features or whole packages if the v3 bothers you.
131#
132# Generate release archives for license compliance, full source and patches. Easy to split open/closed components and publish the "build instructions" (your build metadata) for true GPL compliance.
133
134-- [train.jpg] [top]
135
136Won’t fall apart over time
137#Yocto won't surprise you late in product development
138#
139#Reproducable builds for the entire system. minimal host dependencies and ability to blow away build tree results in same image.
140#
141#Six monthly release cycle with maintained release branches (about to release the first point release of 1.3, and 1.2 is still getting fixes in its branch)
142#
143#Open planning process for future releases, no development in private repos or not-quite open source model.
144
145-- [bike.jpg]
146Exactly how you want it
147
148#Numerous functional layers, with more packages (network daemons, multimedia support, selinux). these are all optional, you start from a minimal system and build up instead of from a large system and removing pieces.
149#
150#Entirely override existing packaging in your own layers, or just tweak behavior by appending packaging fragments.
151#
152#Generate a machine configuration for your exact target, so you can compile everything with optimal compiler flags, tuned libraries (jpeg, zlib, etc), specific kernel.
153#
154#meta-intel has BSPs for key Intel platforms with targetted hardware support, such as NUC, FRI2, Xeon and IVB/SNB platforms.
155
156-- [engineer.jpg]
157
158Developer friendly
159
160# YP is developer friendly
161#
162# Generate standalone toolchain with headers and libraries so app developers don't actually need to build the whole distro.
163#
164# Development images with compilers/headers, debug images with full symbols and source
165#
166# Eclipse based SDK for anyone who has an irrational fear of emacs and xterm.
167#
168# Bogdan just spoke about hob, the graphical interface to bitbake. also starting work on webhob
169#
170# Documentation is never finished but we've a paid documentation writer
171#
172# Our autobuild setup is open source and documented, so anyone else can do the same.
173#
174# Fast to build. Highly parallel builds. my consumer i7 does a build in under an hour, pre-built objects can be shared on the network.
175
176-- [clay.jpg]
177Malleable
178
179#YP is incredibly flexible.
180#
181#Easily swap or change components, such as systemd for sysvinit, uclibc for eglibc, use Wayland, X11 or DirectFB.
182#
183#choice of packaging system, and no need to keep it on the image.
184#
185#Easily shrinks down to a fastboot few meg filesystem for tiny single-application systems, but can also build a full desktop environment.
186
187-- [qa.jpg]
188Q&A
189
190-- [yocto.jpg]
191Thanks!
192
193# Credits
194#
195# bomb.png
196# Public Domain, apparently. Fair use, if not, right?
197# http://commons.wikimedia.org/wiki/File:Dr._Strangelove_-_Riding_the_Bomb.png
198#
199# apple.jpg
200# Creative Commons 2.0 BY (C) Steve Jurvetson
201# http://www.flickr.com/photos/44124348109@N01/7515248418/
202#
203# tv.jpg
204# Creative Commons 2.0 BY (C) Sarah Reid
205# http://www.flickr.com/photos/sarahreido/3245498261/
206#
207# advert.jpg
208# Creative Commons 2.0 BY-NC-SA (C) Justin Brown
209# http://www.flickr.com/photos/40708728@N04/8496770124/
210#
211# data.jpg
212# Creative Commons 2.0 BY-SA (C) Leonardo Rizzi
213# http://www.flickr.com/photos/29479498@N05/4381851322/
214#
215# xeon-phi.jpg
216# (C) Intel, press material
217#
218# labquest.jpg
219# www.venier.com, press material
220#
221# minifigs.jpg
222# Creative Commons 2.0 BY (C) peter dutton
223# http://www.flickr.com/photos/40646519@N00/305410323/
224#
225# cables.jpg
226# (C) David Stewart, All Rights Reserved, Used with Permission.
227#
228# road.jpg
229# Creative Commons 2.0 BY-NC-SA (C) Rick Harrison
230# http://www.flickr.com/photos/81851211@N00/5861614/
231#
232# license.jpg
233# Creative Commons 2.0 BY-NC (C) Daniel Hoherd
234# http://www.flickr.com/photos/warzauwynn/2553621029/
235#
236# train.jpg
237# Creative Commons 2.0 BY-NC (C) Ian Britton
238# http://www.flickr.com/photos/freefoto/8488902378/
239#
240# bike.jpg
241# Creative Commons 2.0 BY (C) Gerry Lauzon
242# http://www.flickr.com/photos/26745132@N00/1677527193/
243#
244# engineer.jpg
245# Creative Commons 2.0 BY-NC-SA (C) RoberthK
246# http://www.flickr.com/photos/39066002@N05/3595313340/
247#
248# clay.jpg
249# Creative Commons 2.0 BY-NC (C) Toby Thain
250# http://www.flickr.com/photos/qu1j0t3/47174053/
251#
252# qa.jpg
253# Creative Commons 2.0 BY-NC (C) Tantek Çelik
254# http://www.flickr.com/photos/39039882@N00/22778226/