Mode protégé

TRAX44 Messages postés 93 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 20 juillet 2006 - 18 avril 2003 à 21:44
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 - 20 avril 2003 à 06:16
Bonjour,
je voudrai savoir cmt pa c en mode protégé sans aucun drivers ou autre!
J'ai surtout des pb avec la gdt je compren pas vraiment cmt sa marche ...
merci

2 réponses

gblade Messages postés 85 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 19 mai 2003
18 avril 2003 à 23:35
Je ne peux pas t'expliquer ça sur place parce-que ça serait trop long et puis il y a des bookins qui expliquent bien mieux que moi :
http://developer.intel.com/design/pentium/manuals/
Le volume 3
0
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 1
20 avril 2003 à 06:16
Avanr de passer en MP (PM en anglais), tu dois préparer le passage en créant la GDT et l'IDT en autre

le passage en lui meme se fait par 3 instructions:
mov eax, cr0
or al, 1
mov cr0, eax

la gdt est un tableau système qui contient les zones mémoires dans lesquelles le système s'exécutes. Ce sont des zones de toutes sortes (code, données, pile). Elle peuvent se chevaucher. Chaque entrée appelée descripteur va décrire une zone. Un descripteur contient l'adresse de départ, la taille, le type de zone, ainsi que des paramètres de protection et sur sa nature (la manière sont elle est mappée).

ensuite il faut charger l'adresse de la GDT dans un regitre système:
mov eax, offset GDT
lgdt eax

ensuite un registre de segment contiendra principalement l'index dans la GDT. Chaque descripteur a une structure bien particulière.

Le livre Processeur et coprocesseur de Robert Hummel édité chez ZD Press, te décrira avec une grande précision les mécanismes de protections car il sont assez complexes.

Seule la GDT ne te suffira pas pour passer au MP, il faut renseigner aussi l'IDT et redéfinir les exceptions, les interruptions, activer la ligne d'adresse 20.

Core Breaker :)
0
Rejoignez-nous