La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Jc/md/lp-01/05Boot Loader1 BOOT LOADER. jc/md/lp-01/05Boot Loader2 Objectif du chapitre Introduire la notion de Boot Loader Donner un aperçu de lorganisation.

Présentations similaires


Présentation au sujet: "Jc/md/lp-01/05Boot Loader1 BOOT LOADER. jc/md/lp-01/05Boot Loader2 Objectif du chapitre Introduire la notion de Boot Loader Donner un aperçu de lorganisation."— Transcription de la présentation:

1 jc/md/lp-01/05Boot Loader1 BOOT LOADER

2 jc/md/lp-01/05Boot Loader2 Objectif du chapitre Introduire la notion de Boot Loader Donner un aperçu de lorganisation proposée avec Platform Builder Présenter des variantes utilisables avec une architecture à base de x86

3 jc/md/lp-01/05Boot Loader3 Rôle du Boot Loader Programme exécuté directement après la mise sous tension de la cible ou sa réinitialisation Le point dentrée du code est défini par lentrée reset de la table des vecteurs Initialise un minimum la cible Éventuellement initialise une voie de debug Charge en mémoire Windows CE, à partir dun emplacement spécifique

4 jc/md/lp-01/05Boot Loader4 BLCOMMON BLCOMMON : Boot Loader Common Code Library Ensemble de fonctions standards disponibles avec Windows CE ou préparées spécifiquement pour une plate-forme servant à initialiser une cible Ces fonctions réalisent des initialisations obligatoires et éventuellement des compléments optionnels

5 jc/md/lp-01/05Boot Loader5 Séquence dinitialisation usuelle (1)

6 jc/md/lp-01/05Boot Loader6 Séquence dinitialisation usuelle (2) BootLoaderMain() est appelée à partir de lexception « reset » Opère des initialisations obligatoires ou non Appelle successivement dautres fonctions complémentaires dinitialisation –OEMDebugInit –OEMPlatformInit Appelle des fonctions de chargement du noyau pour installer un système dans la cible

7 jc/md/lp-01/05Boot Loader7 Séquence dinitialisation usuelle (3) –OEMPreDownLoad –DownLoadImage, qui elle-même fait appel à dautres fonctions pour le suivi du téléchargement ou la gestion de mémoire flash, etc. –OEMLaunch Donne le contrôle au système Windows CE chargé En fait, OEMLaunch fait un « PostDownLoad », cest-à-dire quelle réalise quelques opérations finales sur le système chargé puis donne définitivement le contrôle au nouveau système : il ny aura plus de retour au Boot Loader sauf par reset

8 jc/md/lp-01/05Boot Loader8 Boot Loader, fonctions obligatoires Initialisation du CPU Initialisation de la mémoire Initialisation dautres composants de la cible nécessaires pour transférer limage du système dans la mémoire de la cible (par exemple, contrôleur éthernet) Chargement effectif du système dans la mémoire de la cible Lancement du système chargé

9 jc/md/lp-01/05Boot Loader9 Boot Loader, fonctions optionnelles Implémentation de fonctions de debug de la carte Implémentation dun menu de démarrage Offrir la possibilité de charger le noyau à partir demplacement divers Offrir la possibilité de mettre à jour un noyau Permettre à lutilisateur de lancer une série de tests …

10 jc/md/lp-01/05Boot Loader10 Particularités liées au CPU x86 Larchitecture x86 étant très répandue dans le monde PC, nous pouvons réutiliser des logiciels existants pour effectuer une partie du travail Nous pouvons alors distinguer trois sortes de bootloader : –DOS Boot Loader –BIOS Boot Loader –ROM Boot Loader

11 jc/md/lp-01/05Boot Loader11 DOS Boot Loader Le plus simple à implémenter mais aussi le plus long pour booter Repose sur un fichier command.com qui contient un système du style MS-DOS Utilise le BIOS de la cible pour –Lire le périphérique disposant du fichier command.com de la disquette de boot –Gérer un clavier de base –Gérer un écran en mode minimal

12 jc/md/lp-01/05Boot Loader12 BIOS Boot Loader Un peu plus rapide et relativement simple à implémenter. Il sagit dune extension du BIOS de la cible apportant toute la richesse souhaitée. –On ne refait pas tout : il suffit décrire le logiciel complémentaire du BIOS en ROM –On installe dans la cible lextension du BIOS, en général dans une mémoire flash. Le meilleur compromis entre temps de développement et temps de boot

13 jc/md/lp-01/05Boot Loader13 ROM Boot Loader Le plus long à implémenter –Il faut tout écrire depuis le reset –Difficile et long à programmer puisquil faut gérer tout le matériel, les options, les tests, les variantes de configuration, etc. Temps de boot beaucoup plus faible que dans les autres solutions puisquil ny a que le nécessaire, et que le code est optimisé

14 jc/md/lp-01/05Boot Loader14 Conclusion Nous avons parcouru, sans entrer dans trop de détails, le processus qui permet de passer dun hardware accompagné dun simple BIOS, à un système complexe prêt à travailler


Télécharger ppt "Jc/md/lp-01/05Boot Loader1 BOOT LOADER. jc/md/lp-01/05Boot Loader2 Objectif du chapitre Introduire la notion de Boot Loader Donner un aperçu de lorganisation."

Présentations similaires


Annonces Google