Bonjour.
Juste une petite question: au démarrage de l'ordinateur, le contenu du secteur boot de la disquette est chargé à l'adresse 7c00h. Le reste de la RAM est-il vide? Pourquoi cette adresse en particulier?
Bonjour.
Juste une petite question: au démarrage de l'ordinateur, le contenu du secteur boot de la disquette est chargé à l'adresse 7c00h. Le reste de la RAM est-il vide? Pourquoi cette adresse en particulier?
oh y'a un tas de truc dans la ram, notement les vecteurs d'interruption de 0:0 à 40:0 puis y'a la BDA (Bios Data area) de 40:0 à 50:0 je crois, puis le code eds ints du bios doivent trainer, + ce qu'il y a après A000:0 pour ce qui concerne l'ecran, la police de carctère et pleins d'autres conneries. Je connais pas tout en détail. Ce sont des conventions, heuresement qu'on les respecte, et 7c00h a été chosii simplement parce que cet emplacement était libre. Sinon il doit bien y avoir un bon espace rempli de 0, je crois que à l'initialisation, la RAM est mise à 0.
Le processus de boot est très complexe. Je ne vais pas rentrer dans les détails.
Mais en gros, lors du boot, le BIOS recherche un programme de boot (bootstrap) situé sur le secteur 0 du premier disque disponible (A: puis C: en général, comme décrit dans le setup du bios). C'est ce programme qui devra charger l'OS. Le BIOS copie ce programme à l'adresse 7c00h puis fait un jmp 7c00h, ce qui provoque l'exécution du bootstrap.
Pourquoi 7c00h et pas une autre adresse? Si je l'ai lu, je ne m'en rappelle plus. Mais la réponse peut être trouvée en étudiant l'histoire des systèmes d'exploitation.
Si tu es vraiment interressé par le sujet, je peux te donner des adresses traitant du sujet (en anglais)
Akis
Oui, ca m'interesserait beaucoup et si ca ne te dérange pas, ca serait sympa de me les envoyer à neo__82@hotmail.com
Merci!
tu peux me l'envoyer aussi s'il te plait ? blustuff@wanadoo.fr
post plutot l'adresse ici, ca pourra servir a tout le monde !!!!
Regarde sur le topic intitulé "Où y a-t-il de la place?" où j'ai formulé ma question de manière un peu plus précise et où les réponses le sont également.
Voici les quelques adresses que j'ai sur le sujet:
http://www.ata-atapi.com/
http://my.execpc.com/~geezer/johnfine/
http://www.nondot.org/sabre/os/articles/TheBootProcess/
http://www.geocities.com/mvea/bootstrap.htm
http://home.no.net/tkos/
De plus il y a un bouquin, assez ancien, vu qu'il concerne MSDOS qui rentre bien dans les détails du système :
Advanced MS-DOS Programming
The Microsoft(R) Guide for Assembly Language and C Programmers
By Ray Duncan
Salut,
Akis
Partager