[bootlin/training-materials updates] master: C libraries: update size figures (b546bda4)

Michael Opdenacker michael.opdenacker at bootlin.com
Fri Feb 26 13:17:22 CET 2021


Repository : https://github.com/bootlin/training-materials
On branch  : master
Link       : https://github.com/bootlin/training-materials/commit/b546bda40a874977293c8230c3a21f6cc66648aa

>---------------------------------------------------------------

commit b546bda40a874977293c8230c3a21f6cc66648aa
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Fri Feb 26 13:17:22 2021 +0100

    C libraries: update size figures
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


>---------------------------------------------------------------

b546bda40a874977293c8230c3a21f6cc66648aa
 slides/c-libraries/c-libraries.tex                             | 10 ++++++----
 slides/sysdev-intro/sysdev-intro.tex                           |  4 ++--
 .../sysdev-toolchains-definition.tex                           |  9 ++++++---
 3 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/slides/c-libraries/c-libraries.tex b/slides/c-libraries/c-libraries.tex
index 38db83c6..3be9e925 100644
--- a/slides/c-libraries/c-libraries.tex
+++ b/slides/c-libraries/c-libraries.tex
@@ -9,7 +9,7 @@
     \item Found on all GNU / Linux host systems
     \item Of course, actively maintained
     \item By default, quite big for small embedded systems.
-      On armv7hf, version 2.23: \code{libc}: 1.5 MB, \code{libm}: 492
+      On armv7hf, version 2.31: \code{libc}: 1.5 MB, \code{libm}: 432
       KB, source: \url{https://toolchains.bootlin.com}
     \item But some features not needed in embedded systems can be
           configured out (merged from the old {\em eglibc} project).
@@ -39,11 +39,11 @@
           supporting ARM noMMU.
     \item No guaranteed binary compatibility. May need to
       recompile applications when the library configuration changes.
-    \item Some glibc features may be implemented later (real-time,
+    \item Some glibc features may be implemented later than on glibc (real-time,
           floating-point operations...)
     \item Focus on size rather than performance
-    \item Size on armv7hf, version 1.0.24:
-      \code{libc}: 652 KB, source: \url{https://toolchains.bootlin.com}
+    \item Size on armv7hf, version 1.0.34:
+      \code{libc}: 712 KB, source: \url{https://toolchains.bootlin.com}
     \end{itemize}
     \item Actively supported, but Yocto Project stopped supporting it.
   \end{itemize}
@@ -65,6 +65,8 @@
         Project.
       \item Used by the Alpine Linux lightweight distribution
         (\url{https://www.alpinelinux.org/})
+      \item Size on armv7hf, version 1.2.0:
+        \code{libc}: 748 KB, source: \url{https://toolchains.bootlin.com}
       \end{itemize}
     \column{0.15\textwidth}
     \includegraphics[width=\textwidth]{slides/c-libraries/musl.png}
diff --git a/slides/sysdev-intro/sysdev-intro.tex b/slides/sysdev-intro/sysdev-intro.tex
index 66fbf82b..ba22d9f1 100644
--- a/slides/sysdev-intro/sysdev-intro.tex
+++ b/slides/sysdev-intro/sysdev-intro.tex
@@ -264,8 +264,8 @@
   \item {\bf Storage}: a very basic Linux system can work within 4 MB
     of storage, but usually more is needed.
     \begin{itemize}
-    \item Block storage: SD/MMC/eMMC, USB mass storage, SATA, etc,
-    \item Flash storage is supported too, both NAND and NOR flash, with
+    \item {\bf Block storage}: SD/MMC/eMMC, USB mass storage, SATA, etc,
+    \item {\bf Raw flash storage} is supported too, both NAND and NOR flash, with
       specific filesystems
     \end{itemize}
   \item Not necessarily interesting to be too restrictive on the
diff --git a/slides/sysdev-toolchains-definition/sysdev-toolchains-definition.tex b/slides/sysdev-toolchains-definition/sysdev-toolchains-definition.tex
index 061be517..759cc321 100644
--- a/slides/sysdev-toolchains-definition/sysdev-toolchains-definition.tex
+++ b/slides/sysdev-toolchains-definition/sysdev-toolchains-definition.tex
@@ -72,8 +72,10 @@
     \item \code{strip}, to strip parts of binaries that are just needed
       for debugging (reducing their size).
     \end{itemize}
-  \item \url{https://www.gnu.org/software/binutils/}
-  \item GPL license
+  \item GNU Binutils: \url{https://www.gnu.org/software/binutils/}, GPL license
+  \item The LLVM project now provides alternatives to GNU Binutils:
+        \code{llvm-strip}, \code{llvm-readelf}...
+        (\url{https://www.llvm.org/docs/CommandGuide/})
   \end{itemize}
 \end{frame}
 
@@ -116,7 +118,8 @@
 \begin{verbatim}
 #define O_RDWR 00000002
 \end{verbatim}
-\item Data structures, here in \code{<asm/stat.h>}
+\item Data structures, here in \code{<asm/stat.h>} (used by the
+\code{stat} command)
 \begin{verbatim}
 struct stat {
     unsigned long st_dev;




More information about the training-materials-updates mailing list