[bootlin/training-materials updates] master: Embedded Linux: misc updates and improvements (ab1341d7)
Michael Opdenacker
michael.opdenacker at bootlin.com
Mon Sep 28 09:44:33 CEST 2020
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/ab1341d792f4f27b56e5509316f4ce668e41271a
>---------------------------------------------------------------
commit ab1341d792f4f27b56e5509316f4ce668e41271a
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date: Mon Sep 28 09:44:33 2020 +0200
Embedded Linux: misc updates and improvements
Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>
>---------------------------------------------------------------
ab1341d792f4f27b56e5509316f4ce668e41271a
.../sysdev-application-development.tex | 20 ++++++++++++++++----
.../sysdev-embedded-linux/sysdev-embedded-linux.tex | 16 +++++++++-------
.../sysdev-flash-filesystems.tex | 4 ++--
3 files changed, 27 insertions(+), 13 deletions(-)
diff --git a/slides/sysdev-application-development/sysdev-application-development.tex b/slides/sysdev-application-development/sysdev-application-development.tex
index e2d7b35a..6f5e697f 100644
--- a/slides/sysdev-application-development/sysdev-application-development.tex
+++ b/slides/sysdev-application-development/sysdev-application-development.tex
@@ -45,9 +45,9 @@
\end{frame}
\begin{frame}
- \frametitle{Programming language}
+ \frametitle{Programming language (1)}
\begin{itemize}
- \item The default programming language for system-level applications
+ \item The programming language for system-level applications
in Linux is usually C
\begin{itemize}
\item The C library is already present on your system, nothing to
@@ -59,6 +59,18 @@
\item Some libraries, including Qt, are developed in C++ so they
need the C++ library on the system anyway
\end{itemize}
+ \item The Rust language is increasingly popular in embedded
+ and system applications, as an alternative to C and C++.\\
+ See \url{https://www.rust-lang.org/what/embedded}
+ for attractive features.
+ \item Suggestion to start with this Rust if you neither know
+ C and C++.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Programming language (2)}
+ \begin{itemize}
\item Scripting languages can also be useful for quick application
development, web applications or scripts
\begin{itemize}
@@ -67,7 +79,7 @@
performance
\item Most popular: Python, shell
\end{itemize}
- \item All programming languages can be used: Lua, Ada, Java, Rust...
+ \item All programming languages can be used: Lua, Ada, Java, Go...
\end{itemize}
\end{frame}
@@ -277,7 +289,7 @@
\item Initially designed and developed by Linus Torvalds for Linux
kernel development
\item Extremely popular in the community, and used by more and
- more projects (kernel, U-Boot, Barebox, uClibc, GNOME, X.org,
+ more projects (Linux, U-Boot, Barebox, uClibc, GNOME, X.org,
etc.)
\item Outstanding performance, in particular in big projects
\item \url{https://en.wikipedia.org/wiki/Git_(software)}
diff --git a/slides/sysdev-embedded-linux/sysdev-embedded-linux.tex b/slides/sysdev-embedded-linux/sysdev-embedded-linux.tex
index 178eb849..c19a62c4 100644
--- a/slides/sysdev-embedded-linux/sysdev-embedded-linux.tex
+++ b/slides/sysdev-embedded-linux/sysdev-embedded-linux.tex
@@ -47,17 +47,16 @@
\begin{frame}
\frametitle{Find existing components}
\begin{itemize}
- \item Free Software Directory\\
- \url{https://directory.fsf.org}
- \item Look at other embedded Linux products, and see what their
- components are
\item Look at the list of software packaged by embedded Linux build
systems
\begin{itemize}
\item These are typically chosen for their suitability to embedded
systems
\end{itemize}
- \item Ask the community or Google
+ \item Look at other embedded Linux products, and see what their
+ components are - \url{https://linuxgizmos.com/} is a good source
+ of information.
+ \item Ask the community or your favorite search engine
\item This presentation will also feature a list of components for
common needs
\end{itemize}
@@ -449,7 +448,7 @@ met:
\item {\bf iptables}, the user space tools associated to the Linux firewall, Netfilter
\item {\bf iw and wireless tools}, the user space tools associated to Wireless devices
\item {\bf netsnmp}, implementation of the SNMP protocol (device monitoring)
- \item {\bf openntpd}, implementation of the Network Time Protocol,
+ \item {\bf chrony}, implementation of the Network Time Protocol,
for clock synchronization
\item {\bf openssl}, a toolkit for SSL and TLS connections
\end{itemize}
@@ -528,7 +527,7 @@ met:
\item {\bf libavcodec}: from the {\em ffmpeg} project, used in players
such \code{vlc} and \code{mplayer}, and supporting most audio and
video codecs (mpeg4, h264, vp8, vp9...)
- \item {\bf libvpx}: vp8 and vp8 video encoding
+ \item {\bf libvpx}: vp8 and vp9 video encoding
\item {\bf libflac}: {\em FLAC: Free Lossless Audio Codec}
\item {\bf libvorbis}: lossy audio codec
\item {\bf libopus}: lossy audio codec (replacement for Vorbis)
@@ -1422,6 +1421,9 @@ $(eval $(autotools-package))
\item Use the \code{debootstrap} command to build a root
filesystem for your architecture, with a custom selection
of packages.
+ \item ELBE (\code{https://elbe-rfs.org}) is a more advanced
+ environment for generating custom root filesystems
+ based on Debian.
\end{itemize}
\column{0.2\textwidth}
%% Debian logo found on
diff --git a/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex b/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
index 5e81cd6d..c256b5fd 100644
--- a/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
+++ b/slides/sysdev-flash-filesystems/sysdev-flash-filesystems.tex
@@ -846,8 +846,8 @@ Device 0 bad blocks:
\end{itemize}
\item Once created
\begin{itemize}
- \item Can be written to a UBI volume from the target using
- \code{ubiupdatevol} from Linux on the target
+ \item Can be written to a UBI volume from the target either using
+ \code{ubiupdatevol} in Linux, or \code{ubi writevol} in U-Boot.
\item Or, can be included in a UBI image (using \code{ubinize}
on the host)
\end{itemize}
More information about the training-materials-updates
mailing list