blob: 07ab7d2cb714601cd3b9963cc625afdf044ec2cc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
\begin{frame}
\frametitle{Yocto is \dots}
\begin{itemize}
\item an ecosystem (not a single open-source project)
\item a collection of embedded projects and tooling
\item a place for industry to publish BSP's
\item NOT an embedded Linux distribution
\end{itemize}
\dots used to build a Linux system from source in about an hour \footnote{quad i7, 16GB
RAM, fast disks}
\end{frame}
\begin{frame}
\frametitle{the Yocto project family}
\begin{itemize}
\item \textbf{Poky} - reference build system / distribution
\begin{itemize}
\item \textbf{BitBake} - build-engine
\item \textbf{Toaster} - graphical user interface for BitBake
\item \textbf{meta} - shared base layer of recipes and classes
\item \textbf{example BSP's} - for qemux86, mpc8315e-rdb, beaglebone
\end{itemize}
\item \textbf{ADT} - development environment for userspace applications
\item \textbf{Eclipse IDE Plugin} - integration of ADT into the Eclipse IDE
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Poky is \dots}
the Yocto key project; a reference distribution consisting of
\begin{itemize}
\item a build system for Linux (openembedded + customized busybox,
psplash, alsa-state, tiny-init)
\item Yocto Linux kernel
\item build recipes for common open-source software from openembedded
\item ability to generate toolchains for several architectures
\item documentation
\end{itemize}
release cycle: about 6 months
\end{frame}
\begin{frame}
\frametitle{Yocto Releases}
\includegraphics[height=6cm]{images/https_wiki.yoctoproject.org_wiki_Releases.png}
Quelle: https://wiki.yoctoproject.org/wiki/Releases
\end{frame}
\begin{frame}
\frametitle{Poky Commits (master)}
\includegraphics[height=6cm]{images/yocto-commits.png}
\end{frame}
\begin{frame}
\frametitle{Poky Lines Changed (master)}
\includegraphics[height=6cm]{images/yocto-lineschanged.png}
\end{frame}
\begin{frame}
\frametitle{Poky Authors (master)}
\includegraphics[height=6cm]{images/yocto-authors.png}
\end{frame}
\begin{frame}[fragile]
\frametitle{Who maintains Poky? (master commits)}
\begin{tabular}{l|rrrrr}
domain & 2015 & 2016 & 2017 & 2018 & \% \\
\hline
intel.com & 2636 & 3033 & 2097 & 598 & 47\% \\
gmail.com & 566 & 1105 & 817 & 297 & 16\% \\
windriver.com & 892 & 738 & 623 & 192 & 14\% \\
linuxfoundation.org & 477 & 500 & 401 & 84 & 8\% \\
fujitsu.com & 29 & 38 & 103 & 35 & 1\% \\
axis.com & 10 & 83 & 80 & 13 & 1\% \\
ossystems.com.br & 26 & 59 & 57 & 29 & 1\% \\
mentor.com & 87 & 80 & 46 & 1 & 1\% \\
atlascopco.com & 4 & 9 & 39 & 0 & - \\
linaro.org & 14 & 9 & 34 & 16 & - \\
madison.systems & 3 & 6 & 33 & 14 & - \\
siemens.com & 8 & 10 & 31 & 6 & - \\
nathanrossi.com & 4 & 9 & 31 & 3 & - \\
bmw*.de & 9 & 9 & 28 & 3 & - \\
tycoint.com & 0 & 35 & 25 & 3 & - \\
konsulko.com & 0 & 0 & 18 & 1 & - \\
chargestore.se & 1 & 2 & 17 & 0 & - \\
ti.com & 3 & 6 & 16 & 14 & - \\
ni.com & 26 & 48 & 12 & 4 & 1\% \\
mvista.com & 17 & 60 & 11 & 34 & 1\% \\
\end{tabular}
\end{frame}
\begin{frame}
\frametitle{Yocto Principles}
\begin{itemize}
\item Poky provides a collection of software build recipes
\item customize build recipe blueprints for your own needs
\item distinguishing between application and system developers
\item layer model for modular development, reuse, and customization
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Cross-Build vs. Binary Distribution}
\begin{itemize}
\item What are the true costs involved in building/maintaining your own distribution?
\item Who is performing security tracking?
\item Are optimizations needed on all binaries?
\item Is cross-compiling wanted?
\end{itemize}
\end{frame}
|