Le démarrage d’un système sous Linux se fait en 5 grosses étapes :

Le rôle de l’init peut être réalisé par différents programmes : system V, systemd, BusyBox.
Ce fichier est un système temporaire qui est démarrer au boot de Linux et qui permet de charger les composants nécessaire au montage du système de fichier final, par exemple en chargeant les drivers.
Dans Linux, il existe deux types de modules : les modules dynamiques et les modules statiques.
Les modules statiques sont inclus dans le kernel lors de sa compilation.
Ces modules ne sont pas inclus dans le kernel, mais ceci sont indispensable au montage du système de fichier et au boot du système. Ils sont donc placés sur un système de fichier particulier qui est monté pendant le boot.
Le démarrage des modules facultatifs est réalisé par l’init. Les modules sont des fichiers avec l’extension .ko et sont stockés dans le dossier /lib/modules/<nom du kernel>. Leur chargement se fait à l’aide de la commande modprobe <name>. Il est possible d’afficher les modules chargés grâce à la commande lsmod et de les décharger avec rmmod. La commande modinfo peut être très pratique pour lister les modules chargés.