Vous êtes sur la page 1sur 4

http://courstechinfo.be/OS/boot.

html 1/4
La procdure damorage dun PC
Boot
Le "boot" ou "boostrap" dsigne les tapes successives du dmarrage.
Ce terme ferait rfrence une histoire rocambolesque Les Aventures du Baron de
Mnchhausen qui, pour se sortir de sables mouvants, aurait tir de toutes ses forces sur les
languettes de ses bottes.
A la mise sous tension ou aprs un reset, le processeur fonctionne en mode rel. Toutes les
adresses des instructions et des donnes auxquelles il accde sont des adresses relles, des
adresses physiques qui ne vont pas au del de 1 Mo.
Le processeur est dautre part incapable daller chercher les instructions du systme
dexploitation se trouvant sur le disque dur, le CD ou la disquette. Il va chercher ses premires
instructions dans la ROM du BIOS ladresse FFFF0, 16 bytes avant la fin du premier mga
octet. L se trouve une instruction de saut vers dautres instructions du BIOS qui initialisent et
testent la mmoire centrale et dautres composants internes, lcran et le clavier. Ce test est
appel le POST.
POST
Le Post est un test des fonctions vitales du hardware par le PC lui-mme POST est
lacronyme de Power On Selft Test (auto test au dmarrage). Les erreurs constates au tout
dbut de ce test sont signales par des codes sonores qui dpendent des dfauts constats mais
qui varient aussi dun constructeur lautre. Un bip bref signale que la premire partie de ce
test sest termine sans encombre et que le systme est capable dutiliser la console pour la
suite de la communication. Le test de la RAM, linventaire du matriel ou les messages
derreurs peuvent maintenant safficher lcran.
Une fois cette premire tape ralise et si le POST na pas rencontr derreurs fatales, le
BIOS consulte la RAM CMOS pour y savoir quels disques peuvent servir de disque systme,
A: et C: par exemple.
MBR
Le premier secteur du disque systme est appel MBR - Master Boot Record. Les 512 octets
de ce secteur sont chargs en mmoire centrale.
La structure du MBR est identique pour tous les systmes dexploitation :
Les 446 premiers octets contiennent un petit programme dont le but est de rechercher
la partition active.
Les 64 octets contiennent la table de partition quatre entres de 16 octets chacune.
Les 2 derniers contiennent le magic number AA55 dont la prsence, vrifie par le
BIOS, atteste la validit du secteur MBR.
Le code du MBR, une fois charg dans la mmoire, peut tre lu et excut par le processeur. Il
teste la table de partition pour connatre la partition amorable (appele aussi "partition
active" ou bootable) ou encore volume systme
La partition amorable est celle dont le premier secteur, le secteur damorage. Elle abrite le
chargeur de dmarrage (aussi appel IPL "Initial Program Load") qui charge le systme
dexploitation en mmoire vive avant den lancer lexcution :
- cest soit un code qui lance lOS se trouvant sur la mme partition
- soit un gestionnaire damorage (bootmanager) qui prsente un choix entre plusieurs
systmes dexploitation.

http://courstechinfo.be/OS/boot.html 2/4
Lancement du systme dexploitation
Si lOS est le MS-DOS, le programme du secteur damorage recherche les fichiers
IO.SYS (le gestionnaire dentres/sorties) et MSDOS.SYS (le gestionnaire de disques et
de fichiers) puis lance leur excution. Le systme dexploitation est en place, le
programme damorage a termin sa mission.
Le DOS lit CONFIG.SYS et charge linterprteur de commande, COMMAND.COM . Ce
dernier excute les instructions du fichier de commande AUTOEXEC.BAT puis affiche
linvite de commande ( prompt) pour indiquer quil est prt recevoir vos commandes
Avec Linux, cest au LILO, le Linux Loader, que le secteur damorage passe la main,
moins que LILO ne soit plac directement dans le MBR.




Les utilisateur de Ubuntu auront fait la connaissance de GRUB un autre Boot Loader
encore.
Si lOS est Windows 95 ou 98, les deux premiers fichiers recherchs et excuts sont cette
fois IO.SYS et WINBOOT.SYS. Le fichier CONFIG.SYS nest plus daucune utilit mais
AUTOEXEC.BAT, lui aussi tomb en dsutude, sil est prsent est toujours excut
automatiquement avant le dmarrage de Windows.
Avec Windows NT, 2000 ou XP, le code du secteur de boot recherche le NT Loader = le
fichier systme \ntldr cache sur la racine du volume. Jusquici le systme tournait en
mode rel 16 bits, le NTLDR a maintenant accs lentiret de la mmoire physique. Il
cre des tables de pages et active la pagination pour fonctionner en mode protg avec un
espace dadressage continu.
NTLDR dmarre les pilotes du systme de fichiers, il a ds lors accs aux rpertoires du
volume.
Il lit le fichier \BOOT.INI, efface lcran et si Boot.ini fait rfrence plus dun systme
dexploitation affiche la slection en accordant gnralement 30 secondes pour la
modifier.
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000
Professionnel" /fastdetect
Le systme dexploitation slectionn est ensuite charg.
Il appelle Ntdetect.com un programme en mode rel 16 bits qui fait appel au BIOS pour
connatre la configuration de base du PC. Il charge ensuite les fichiers Ntoskrnl.exe et
Hal.dll pour initialiser le noyau (kernel).
NTLDR lit ensuite la ruche SYSTEM (\Windows\System32\Config\System) savoir quels
pilotes sont ncessaires lamorage. Sous lindication Dmarrage de Windows une
barre de progression avance pour chaque nouveau pilote charg. NTLDR passe la main au
noyau.

Pour plus dinformations sur ce sujet et le multiboot en
particulier, un site dcouvrir : www.bellamyjc.org


http://courstechinfo.be/OS/boot.html 3/4
Le noyau note dans HKEY_LOCAL_MACHINE \ HARDWARE \ DESCRIPTION les donnes
collectes prcdemment par Ntdetect. Il lance les pilotes damorages chargs par
NTLDR puis va chercher dans le registre les pilotes de priphriques qui ont 0x1 pour
valeur de chargement.
Dmarrage du Session Manager smss.exe, puis prend en compte diffrentes cls du
registre pour terminer des oprations diffres depuis la session prcdente, ouvrir des
DLL, initialiser des variables du registre et crer des variables denvironnement
A ce stade lcran passe dans le mode vido VGA au mode vido dfini dans le profil par
dfaut.
Le processus douverture de session est lanc et apparat la bote de dialogue douverture
de session. Dautres services sont encore lancs automatiquement (ceux qui dans le
registre ont une valeur de chargement de 0x2)


Les fichiers de configuration du DOS
in memoriam
Avant de clore ce chapitre, voici encore quelques explications propos de ces deux fichiers
qui lpoque du DOS et de Windows 3.x servaient configurer la machine. Ils subsistent
encore sous Windows 9x pour tre remplacs ensuite par ce quon appelle le registre de
Windows .
Ces fichiers contenaient une srie de commandes que nous examinons partir de deux
exemples tirs dune disquette de dmarrage DOS:

CONFIG.SYS
1
2
3
4
5
6
DEVICE=A:\DOS\HIMEM.SYS
DOS=HIGH
COUNTRY=032,850,A:\DOS\COUNTRY.SYS
DEVICE=A:\DOS\ANSI.SYS
DEVICE=A:\DOS\DISPLAY.SYS CON=(EGA,,2)
FILES=30
CONFIG.SYS est un fichier texte. Chaque ligne commence par un mot cl suivi du signe gal et
dun ou plusieurs paramtres spars par des virgules. Il ne peut pas il y avoir despace avant
ni aprs le signe gal.
Le mot cl DEVICE semploie pour spcifier les pilotes de priphriques (device driver) qui
doivent tre chargs au dmarrage de la machine. Ce sont alors des programmes rsidants.
1 HIMEM.SYS est le gestionnaire de mmoire qui sous DOS donne accs la
mmoire tendue.
2 DOS=HIGH commande au DOS de se placer en mmoire haute, gre par
HYMEM.SYS, pour laisser plus de place en mmoire conventionnelle.
3 COUNTRY sert dfinir les paramtres nationaux
Le code 032 est lindicatif tlphonique de la Belgique. Cest de ce code que
dpendent les options montaires ainsi que les formats daffichage de la date et de
lheure.
850 est le code page Latin 1 mais la page de code par dfaut (437) contient
dj les caractres accentus ncessaires au franais.

http://courstechinfo.be/OS/boot.html 4/4
4 ANSI.SYS est le device driver qui gre lcran selon la norme ANSI - American
National Standard Institute . On peut ensuite grer la position du curseur ou les
couleurs des caractres laide de commande squences ESC .
5 DISPLAY.SYS est le pilote de priphrique qui gre les pages de code. La mme
ligne prcise le type dcran ( EGA ou LCD), les paramtres suivants concernent
nouveau les pages de codes. Les deux parenthses qui suivent indiquent que lon
prend la page de codes par dfaut, Le 1 qui suit indique que lutilisateur
nutilisera quune seule page de codes. Les caractres accentus se trouvant de
toute faon aussi bien dans la page 437 que dans la 850.
6 FILE=30 tait une commande pour spcifier le nombre de fichiers pouvant tre
ouverts simultanment. Il fut un temps o il fallait doser de tels paramtres en
fonction de la quantit de mmoire dont on disposait.


AUTOEXEC.BAT
1
2
3
4
5
6
7
8
@ECHO OFF
A:\DOS\SMARTDRV.EXE /X
PROMPT $e[1;32;40m$p$e[1;33;40m$g$e[0;37;40m
PATH A:\DOS
MODE CON CODEPAGE PREPARE=((850) A:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=850
KEYB BE,,A:\DOS\KEYBOARD.SYS
doskey
AUTOEXEC.BAT est aussi un fichier texte. Les lignes sont des commandes interprtes par
COMMAND.COM et excutes au dmarrage juste avant de rendre la main lutilisateur.
1 @ECHO OFF masque laffichage des lignes de ce fichier
2 A:\DOS\SMARTDRV.EXE /X exploite la mmoire tendue gre maintenant par
HYMEM.SYS pour en faire une mmoire cache disque.
3 La commande PROMPT avait dhabitude $P$G comme seuls paramtres. Ici des
squences escape ont t ajoutes pour faire une invite en couleurs. Ce genre de
gadget est possible grce au driver ANSI.SYS charg par CONFIG.SYS
4 Le PATH ou chemin de recherche indique la liste des rpertoires auxquels
linterprteur devra accder pour y chercher les commandes externes et les
applications que lutilisateur pourrait invoquer.
5 et 6 Prparation de la page de codes en indiquant dans quel fichier trouver ces codes
7 Choix du clavier
8 Lancer lutilitaire qui permet de rappeler les commandes introduites laide des
flches.