Passage en pmode

Signaler
Messages postés
93
Date d'inscription
mercredi 18 septembre 2002
Statut
Membre
Dernière intervention
20 juillet 2006
-
Messages postés
77
Date d'inscription
mardi 12 novembre 2002
Statut
Membre
Dernière intervention
18 octobre 2007
-
salut,
g 1 petit pb, kan je ceu pa c en mode protégé
mov eax, cr0
or al, 1
mov cr0, eax

(g deja cree et charger la gdt)
le pc redemarre !!
ce ki ne devrai pas être la cas!!
Alors ma question est cmt pa c en pmode ?
TRAX44 :sad)

4 réponses

Messages postés
540
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
5 octobre 2007
1
Et l'IDT !!!!

Il faut charger l'IDT sinon lorqu'une exception se déclenche et c'est surement ce qui déclenche le reboote, elle n'est pas gérée et donc le PC reboote automatiquement car il y a une exception de double faute qui est provoquée ou que le code de reboote est exécuté puisqu'il est à la fin du 1er Mo !!

Il faut donc charger l'IDT et redéfinir les exceptions même si elles contiennes un simple iretd

N'oublie pas aussi l'activer la ligne d'adresse 20 car en mode réel elle est naturellement désactivé et provoque un crash système en passant eu mode protégé !

Core Breaker :)
Messages postés
33
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
19 avril 2004

Salut tu à trouvé le problême car j'ai exactement le même? Je voudrai savoir si c'est parceque je charge mal ma IDT.
Messages postés
540
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
5 octobre 2007
1
Effectivement si ton IDT (descpteur ou le code exec pointé) est mauvaise ça peut faire rebooter voire planter le système.
Mais je ne sais pas si tu la charge mal car tu ne m'a pas donné ce que tu as fais.

Core Breaker :)
Messages postés
77
Date d'inscription
mardi 12 novembre 2002
Statut
Membre
Dernière intervention
18 octobre 2007

Le fait qu'il n'y ais pas d'idt n'emêche pas de passer en pmode... du moment qu'il ne se produits pas d'exception.

Par contre lorsque j'ai commencé... effectivement mon pc rebootait après le passage en pmode... ceci se produit lorsque certaine valeurs de la gdt sont mauvaise...

gdt:
        dw 0,0,0,0
gdt_ds:
        dw 0FFFFh,0000h,9200h,008Fh
gdtend:


tien si ca peut t'aider, voici une gdt qui fonctionne... elle donne accès a toute la mémoire en ring 0....

@++
TheLudo2013