Lorsque vous mettez en marche votre ordinateur, celui-ci entame une séquence d’opérations appelée « démarrage », un terme issu du mot « bootstrap ». Voici en détail ce qui se déroule en coulisses, que vous utilisiez un PC sous Windows, un Mac ou un système Linux.
L’alimentation des composants matériels
Au moment où vous actionnez le bouton de mise en marche, l’ordinateur alimente ses différents composants : la carte mère, le processeur, les disques durs, les SSD, les cartes graphiques et l’ensemble des éléments qui constituent votre machine.
L’élément matériel responsable de la distribution électrique est le « bloc d’alimentation ». Dans un ordinateur de bureau classique, il se présente sous la forme d’un boîtier situé dans un coin du châssis (la pièce de couleur jaune sur l’image ci-dessus) et c’est à cet endroit que vous branchez le câble d’alimentation secteur.
Le processeur (CPU) charge l’UEFI ou le BIOS
Une fois alimenté, le processeur s’initialise et part à la recherche d’un petit programme, généralement stocké dans une puce située sur la carte mère.
Auparavant, les ordinateurs chargeaient un système appelé BIOS (Basic Input/Output System). Sur les machines récentes, le processeur exécute plutôt le microprogramme UEFI (Unified Extensible Firmware Interface), un remplaçant moderne du BIOS. Il est à noter que, pour ajouter à la confusion, certains fabricants continuent d’appeler leur logiciel UEFI « BIOS ».
L’UEFI ou le BIOS teste et initialise les composants
Le microprogramme BIOS ou UEFI charge les paramètres de configuration à partir d’un emplacement spécifique sur la carte mère – auparavant, ces informations étaient conservées dans une mémoire sauvegardée par une pile CMOS. C’est dans cet espace que sont stockés les paramètres personnalisés que vous modifiez dans les écrans de réglages du BIOS ou de l’UEFI.
Le processeur exécute l’UEFI ou le BIOS, qui à son tour teste et initialise le matériel de votre système, y compris le processeur lui-même. Par exemple, si l’ordinateur ne détecte pas de mémoire vive (RAM), un signal sonore retentit et un message d’erreur s’affiche, interrompant ainsi le processus de démarrage. Cette phase de vérification est appelée le POST (Power On Self Test).
Au cours de cette étape, le logo du fabricant de votre PC peut apparaître à l’écran et il est parfois possible d’appuyer sur une touche pour accéder aux paramètres du BIOS ou de l’UEFI. Néanmoins, de nombreux ordinateurs récents effectuent cette opération si rapidement qu’il n’est pas nécessaire d’afficher le logo, et l’accès aux options de l’UEFI se fait depuis le menu de démarrage de Windows.
L’UEFI ne se limite pas à l’initialisation du matériel. Il s’agit d’un véritable mini-système d’exploitation. À titre d’exemple, les processeurs Intel sont dotés du moteur de gestion Intel (Intel Management Engine), qui propose diverses fonctionnalités, notamment l’alimentation de la technologie de gestion active d’Intel, permettant la gestion à distance d’ordinateurs professionnels.
L’UEFI ou le BIOS passe le relais à un périphérique de démarrage
Une fois que les tests et l’initialisation des composants sont terminés, l’UEFI ou le BIOS transfère la responsabilité du démarrage de l’ordinateur au chargeur de démarrage de votre système d’exploitation.
L’UEFI ou le BIOS recherche un « périphérique de démarrage », à partir duquel votre système d’exploitation sera lancé. Il s’agit généralement du disque dur ou du SSD de votre ordinateur, mais cela peut aussi être un CD, un DVD, une clé USB ou un emplacement réseau. Le périphérique de démarrage est configuré dans les paramètres de l’UEFI ou du BIOS. S’il existe plusieurs périphériques de démarrage, l’UEFI ou le BIOS va tenter de leur transférer le processus de démarrage dans l’ordre où ils sont listés. Ainsi, si un DVD bootable est inséré dans le lecteur, il est possible que le système essaie de démarrer depuis celui-ci avant d’essayer le disque dur.
De manière traditionnelle, le BIOS examinait le MBR (Master Boot Record), un secteur de démarrage spécifique au début du disque dur. Le MBR contient du code qui charge la suite du système d’exploitation, ce qu’on appelle le « chargeur de démarrage ». Le BIOS exécute ce chargeur qui prend la relève et démarre le système d’exploitation (Windows ou Linux, par exemple).
Les ordinateurs équipés de l’UEFI peuvent encore utiliser cette méthode de démarrage MBR, mais ils utilisent plus généralement un exécutable EFI. Ces derniers n’ont pas besoin d’être stockés au début du disque. Au lieu de cela, ils sont localisés sur la « partition système EFI ».
Dans tous les cas, le principe est le même : le BIOS ou l’UEFI cherche sur un périphérique de stockage un petit programme, soit dans le MBR ou sur une partition système EFI, et l’exécute. S’il n’y a pas de périphérique de démarrage valide, le processus échoue et un message d’erreur apparaît à l’écran.
Sur les PC récents, le microprogramme UEFI est généralement configuré pour le « démarrage sécurisé » (Secure Boot). Cela garantit que le système d’exploitation lancé n’a pas été altéré et qu’il ne chargera pas de logiciels malveillants de bas niveau. Si le démarrage sécurisé est activé, l’UEFI vérifie si le chargeur de démarrage est correctement signé avant de l’exécuter.
Le chargeur de démarrage lance le système d’exploitation complet
Le chargeur de démarrage est un petit programme dont la mission est de lancer le reste du système d’exploitation. Windows utilise un chargeur de démarrage appelé Gestionnaire de démarrage Windows (Bootmgr.exe), la plupart des systèmes Linux utilisent GRUB, et les Mac emploient boot.efi.
Si un problème survient avec le chargeur de démarrage, par exemple si ses fichiers sont endommagés sur le disque, un message d’erreur apparaît et le processus de démarrage s’arrête.
Le chargeur de démarrage est un programme de petite taille, et il ne gère pas le processus de démarrage à lui seul. Sous Windows, le Gestionnaire de démarrage Windows trouve et lance le chargeur du système d’exploitation Windows. Ce dernier charge les pilotes matériels essentiels au fonctionnement du noyau (la partie principale du système d’exploitation Windows), puis lance le noyau. Le noyau charge ensuite le registre système en mémoire et l’ensemble des pilotes matériels supplémentaires marqués avec l’attribut « BOOT_START », qui indique qu’ils doivent être chargés au démarrage. Le noyau Windows lance alors le processus du gestionnaire de session (Smss.exe), qui démarre la session système et charge d’autres pilotes. Ce processus continue et Windows charge les services d’arrière-plan, puis l’écran d’accueil qui vous permet de vous connecter.
Sous Linux, le chargeur de démarrage GRUB charge le noyau Linux. Ce dernier démarre aussi le système init, qui est systemd sur la plupart des distributions Linux modernes. Le système init gère les services de démarrage ainsi que les autres processus qui mènent à l’invite de connexion.
Ce processus complexe permet de charger correctement tous les éléments nécessaires en respectant un ordre précis.
Les programmes qualifiés de « démarrage » se lancent au moment où vous vous connectez à votre compte utilisateur, et non pas lorsque le système démarre. Cependant, certains services d’arrière-plan (sous Windows) ou démons (sous Linux et macOS) sont lancés au démarrage du système.
La procédure d’arrêt est également assez complexe. Voici le détail de ce qui se passe lorsque vous éteignez ou vous déconnectez d’un PC Windows.
Crédits photos : Suwan Waenlor/Shutterstock.com, DR-images/Shutterstock.com,