Le processus de démarrage sous Windows

Le processus de démarrage de Windows fait intervenir divers mécanismes et processus.
Cette article vous explique comment se déroule le démarrage de Windows.
Le fonctionnement est différent si vous êtes en MBR ou EFI.

windows_10_logo

Liste des processus utilisés

En mode EFI

  • efibootmgr : EFI boot manager
  • BCD –Bootmgr.exe or Bootmgr.efi : Boot Configuration Data – contient les informations de démarrage de Windows. Ce dernier remplace boot.ini
  • Windows Boot Loader (Winload.exe or Winload.efi) : 

En mode MBR

  • Ntldr : Charge l’OS
  • Boot.ini : Construit le menu de sélection
  • BBootsect.dos : Chargé par Ntldr en vue d’un autre OS
  • Ntdetect.com : Recherche le matériel disponible
  • Ntbootdd.sys : Pour amorçage à partir d’un disque dont le contrôleur n’a pas le bios activé
  • Ntoskrnl.exe : Noyau NT (System32).
  • System : Paramètres de configuration (System32\configuration).
  • Hal.dll : Couche HAL. Rend Ntoskrnl indépendant de la plate-forme sur laquelle il va fonctionner.

Etape 1 – Le Bios

Bios Legacy

Cette étape est réalisée par tous les ordinateurs, quel que soit le système d’exploitation installé.
Le CPU exécute le code du BIOS contenu dans la ROM, généralement vous obtenez un écran noir avec le décompte de la mémoire. P
endant cette étape, l’ordinateur vérifie certains composants matériels (mémoire, clavier, carte graphique), cela s’appelle le POST (Power On Self Test).

L’écran change alors (on obtient généralement un écran avec un tableau récapitulatif des informations de l’ordinateur), le BIOS va alors suivre la séquence de boot (démarrage) que l’on lui a imposé et qui est stocké dans la CMOS. Le BIOS cherche alors le MBR (master boot record) du périphérique qui est chargé de localiser la partition active et charger le secteur de boot en mémoire (bootstrap).
A cet instant c’est l’OS qui prend le relai.

Si aucun MBR n’est trouvé, on obtient alors un message du type :

Invalid partition table

Error loading operating system

Missing operating system

EFI

L’EFI contient un UEFI boot manager (efibootmgr) charge les pilotes UEFI drivers et les applications UEFI.
EFI charge ensuite le boot manger de Windows (BCD).

Etape 2 – Démarrage de Windows

Sous Windows, le bootstrap contient le fichier Ntldr qui charge les informations sur le matériel et les pilotes requis lors du chargement de NT.

Si Ntldr n’est pas trouvé, vous pouvez obtenir ce message d’erreur : « A kernel file is missing from the disk »

Ntldr démarre aussi le système de fichiers (FAT ou NTFS). Il charge aussi les informations du fichier boot.ini. Dans le cas où vous avez plusieurs Windows d’installé, il affiche un menu pour sélectionner le Windows sur lequel vous souhaitez démarrer.
C’est aussi ce type de menu que l’on retrouve lorsque l’on tape sur la touche F8 pour par exemple démarrer en mode sans échec.

NTLDR charge ensuite le fichier Ntdetect.com qui utilise le BIOS pour connaître la configuration et le matériel présent à travers le CMOS. Ntdetect.com récupère aussi l’heure, les différents types de bus (par exemple, ISA, PCI sur, EISA,…). Ces informations sont ensuite stockées dans la clef HKLM\HARDWARE.
Vous obtenez alors cette barre de progression.

Processus de demarrage sous Windows

Etape 3 – Chargement du Kernel Windows

Ntldr charge ensuite les fichiers Ntoskrnl.exe et Hal.dll, s’il n’y parvient pas, vous obtenez le message :

« Windows NT could not start because the following file was missing or corrupt »,
Ntoskrnl.exe ou Hal.dll 

NTLDR charge alors le contenu de la clef HKEY_LOCAL_MACHINE\SYSTEM situé dans le répertoire C:\Windows\System32\config\system puis insère les informations sur la configuration du matériel qu’il a recueillies plus tôt, dans la clé de Registre SYSTEM.NTLDR va aussi charger tous les pilotes de périphériques qui possèdent une valeur de démarrage (start) dans le Registre Windows : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

C’est dans cette partie du démarrage que vous pouvez obtenir de bels écran bleu d’erreur.

NTLDR charge le fichier ntoskrnl.exe.

Etape 4 – Initialisation du noyau

Ntoskrnl.exe créé le Clone control set (HKEY_LOCAL_MACHINE\SYSTEM\ControlSetXX) – voir fonctionnement des ControlSet
Ntoskrnl.exe va aussi créer la ruche HARDWARE dans le registre en utilisant les informations collectées précédemment par ntdetect.com. Ntoskrnl.exe va initialiser les pilotes de périphériques chargés précédemment, puis va scruter le registre à la recherche des pilotes de périphériques qui ont comme valeur de démarrage 0x1

l’échec de chargement d’un pilote peut provoquer le redémarrage de Windows pour tenter de redémarrer en utilisant la dernière bonne configuration connue

Etape 5 – Chargement des services et ouverture de session

Le noyau démarre ensuite le processus <SMSS, c’est un processus système Windows, il est responsable de la gestion des sessions sur le système (création, gestion, et suppression des sessions utilisateurs).
SMSS exécute les valeurs contenu dans la clé HKLM\SYSTEM\CurrentControlSet\Session Manager\BootExecute.
Cette valeur peut contenir une commande pour lancer l’utilitaire CHKDSK qui vérifie les éventuelles erreurs sur le disque.

SMSS charge le contenu des clefs HKLM\sam, HKLM\sam\security, et HKLMsoftware, puis la clef

SMSS lance csrss.exe et winlogon.exe puis LSASS.exe.

  • CSRSS.exe gère les fenêtres et les éléments graphiques de Windows
  • Winlogon.exe sert à gérer l’ouverture et la fermeture des sessions. Winlogon est chargé en service.
  • LSASS (Local Security Authority Subsystem Service), la fenêtre d’ouverture de session s’ouvre alors. LSASS créé la liste des groupes et les droits auquel l’utilisateur appartient.

screg.exe, le contrôleur de service, va ensuite démarrer les services qui ont la valeur 0x2 dans la clef : HKLM\SYSTEM\CurrentControlSet\ServicesDriver\Name. Les services sont chargés dans l’ordre de leurs dépendances.

L’ouverture de session se fait ensuite, et les programmes contenus dans les clefs suivantes se chargent :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
La session est alors ouverte.
Après chaque ouverture de session réussie, la Clone Control Set est copiée dans la clé HKEY_LOCAL_MACHINE\SYSTEM\LastKnownGoodRecovery.

Les problèmes de démarrage de Windows

Se reporter à la page : Erreur et problème au démarrage de Windows

Liens

Le processus de démarrage – astuces.microcoms.net
Le processus de démarrage – laboratoire-microsoft.org
Le processus de démarrage – microsoft.com

Comment lire d'autres tutoriels de malekal.com ?

Si le site vous a aidé, svp, débloquez les bloqueurs de publicités, n'hésitez pas non plus à partager l'article ou le site sur les réseaux sociaux.

Pour pouvoir lire plus d'articles et tutoriels, utilisez le menu en haut du site. Plein d'articles et tutos utiles vous attendent !

Besoin d'aide ?

Posez votre question ou soumettez votre problème sur le forum malekal.com pour obtenir une aide efficace : Aller sur le forum malekal.com
(Visited 2 528 times, 8 visits today)

One thought on “Le processus de démarrage sous Windows

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *