[bootlin/training-materials updates] master: Improvements in init details (f4f3a8f3)

Michael Opdenacker michael.opdenacker at bootlin.com
Tue May 26 11:38:18 CEST 2020


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

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

commit f4f3a8f3ad4a26e4893f5e1694f3ac428af093d2
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Tue May 26 11:38:18 2020 +0200

    Improvements in init details
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


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

f4f3a8f3ad4a26e4893f5e1694f3ac428af093d2
 labs/sysdev-tinysystem/sysdev-tinysystem.tex                   |  2 +-
 slides/sysdev-busybox/sysdev-busybox.tex                       |  4 ++--
 .../sysdev-root-filesystem-minimal.tex                         | 10 ++++++----
 3 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/labs/sysdev-tinysystem/sysdev-tinysystem.tex b/labs/sysdev-tinysystem/sysdev-tinysystem.tex
index 766a73f6..f45e2d8e 100644
--- a/labs/sysdev-tinysystem/sysdev-tinysystem.tex
+++ b/labs/sysdev-tinysystem/sysdev-tinysystem.tex
@@ -190,7 +190,7 @@ The first user space program that gets executed by the kernel is
 \code{/sbin/init} and its configuration file is \code{/etc/inittab}.
 
 In the BusyBox sources, read details about \code{/etc/inittab} in the
-\code{examples/inittab} file.
+\projfile{busybox}{examples/inittab} file.
 
 Then, create a \code{/etc/inittab} file and a \code{/etc/init.d/rcS}
 startup script declared in \code{/etc/inittab}. In this startup
diff --git a/slides/sysdev-busybox/sysdev-busybox.tex b/slides/sysdev-busybox/sysdev-busybox.tex
index 93478f86..771fed35 100644
--- a/slides/sysdev-busybox/sysdev-busybox.tex
+++ b/slides/sysdev-busybox/sysdev-busybox.tex
@@ -114,14 +114,14 @@ yes, zcat, zcip}
   \begin{itemize}
   \item Busybox provides an implementation of an \code{init} program
   \item Simpler than the init implementation found on desktop/server
-    systems: no runlevels are implemented
+    systems ({\em SysV init} or {\em systemd})
   \item A single configuration file: \code{/etc/inittab}
     \begin{itemize}
     \item Each line has the form \code{<id>::<action>:<process>}
     \end{itemize}
   \item Allows to run services at startup, and to make sure that
     certain services are always running on the system
-  \item See \code{examples/inittab} in Busybox for details on the
+  \item See \projfile{busybox}{examples/inittab} in Busybox for details on the
     configuration
   \end{itemize}
 \end{frame}
diff --git a/slides/sysdev-root-filesystem-minimal/sysdev-root-filesystem-minimal.tex b/slides/sysdev-root-filesystem-minimal/sysdev-root-filesystem-minimal.tex
index 187b12ee..fa1ab335 100644
--- a/slides/sysdev-root-filesystem-minimal/sysdev-root-filesystem-minimal.tex
+++ b/slides/sysdev-root-filesystem-minimal/sysdev-root-filesystem-minimal.tex
@@ -7,17 +7,19 @@
     applications
   \item An \code{init} application, which is the first user space
     application started by the kernel after mounting the root
-    filesystem
+    filesystem (see \url{https://en.wikipedia.org/wiki/Init}):
     \begin{itemize}
-    \item The kernel tries to run \code{/sbin/init}, \code{/bin/init},
+    \item The kernel tries to run the command specified by the
+          \code{init=} command line parameter if available.
+    \item Otherwise, it tries to run \code{/sbin/init}, \code{/bin/init},
       \code{/etc/init} and \code{/bin/sh}.
     \item In the case of an initramfs, it will only look for
       \code{/init}. Another path can be supplied by the \code{rdinit}
       kernel argument.
-    \item If none of them are found, the kernel panics and the boot
+    \item If none of this works, the kernel panics and the boot
       process is stopped.
     \item The \code{init} application is responsible for starting all other
-      user space applications and services
+      user space applications and services:
     \end{itemize}
   \item A shell, to implement scripts, automate tasks, and allow a user
         to interact with the system




More information about the training-materials-updates mailing list