[SOS] Problème de faute triple

Julien Pichon glandoillator at hotmail.com
Jeu 29 Mai 10:08:38 CEST 2008


Bonsoir à tous, Je suis arrivé jusqu'à l'article 4 qui traite de la mise en place de la pagination,et je m'adresse à vous car j'ai un problème à l'exécution. Bochs dans ses logs me renvoit cecitout en rebootant en boucle la machine virtuelle: /**************************************************/Message in a bochs00016359077e[CPU0 ] interrupt(): not accessable or not code segment cs=0x000800016359077e[CPU0 ] interrupt(): not accessable or not code segment cs=0x000800016359077i[CPU0 ] CPU is in protected mode (active)00016359077i[CPU0 ] CS.d_b = 32 bit00016359077i[CPU0 ] SS.d_b = 32 bit00016359077i[CPU0 ] EFER   = 0x0000000000016359077i[CPU0 ] | RAX=0000000000000000  RBX=000000000002d8e400016359077i[CPU0 ] | RCX=0000000000000001  RDX=000000000000000200016359077i[CPU0 ] | RSP=00000000002044ce  RBP=000000000020450400016359077i[CPU0 ] | RSI=000000000005453a  RDI=000000000005453b00016359077i[CPU0 ] |  R8=0000000000000000   R9=000000000000000000016359077i[CPU0 ] | R10=0000000000000000  R11=000000000000000000016359077i[CPU0 ] | R12=0000000000000000  R13=000000000000000000016359077i[CPU0 ] | R14=0000000000000000  R15=000000000000000000016359077i[CPU0 ] | IOPL=0 id vip vif ac vm RF nt of df if tf sf zf af pf cf00016359077i[CPU0 ] | SEG selector     base    limit G D00016359077i[CPU0 ] | SEG sltr(index|ti|rpl)     base    limit G D00016359077i[CPU0 ] |  CS:0008( 0001| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  DS:0010( 0002| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  SS:0010( 0002| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  ES:0010( 0002| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  FS:0010( 0002| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  GS:0010( 0002| 0|  0) 00000000 000fffff 1 100016359077i[CPU0 ] |  MSR_FS_BASE:000000000000000000016359077i[CPU0 ] |  MSR_GS_BASE:000000000000000000016359077i[CPU0 ] | RIP=0000000000202337 (0000000000202337)00016359077i[CPU0 ] | CR0=0x80010011 CR1=0x0 CR2=0x000000000000000000016359077i[CPU0 ] | CR3=0x01fef000 CR4=0x0000000000016359077i[CPU0 ] >> add byte ptr ds:[eax], al : 000000016359077e[CPU0 ] exception(): 3rd (13) exception with no resolution, shutdown status is 00h, resetting00016359077i[SYS  ] bx_pc_system_c::Reset(SOFTWARE) called00016359077i[CPU0 ] cpu software reset/***************************************************/ Ce qu'il faut savoir c'est que j'ai réécris les fichiers exception_wrappers.S etirq_wrappers.S [ainsi que boot.S (mais je pense qu'il n'a pas d'incidence ici)]pour qu'ils puissent être compilés avec nasm. Sinon après avoir expérimenté un peu les choses, l'erreur provient je pense de cette portionde code suivante qui se situe dans sos/main.c dans la fonction test_paging:   sos_paging_map(ppage_new, vpage_code,                         FALSE,                         SOS_VM_MAP_ATOMIC                       | SOS_VM_MAP_PROT_READ                       | SOS_VM_MAP_PROT_WRITE); en essayant de changer les paramètres envoyés à cette fonction je me suis aperçu que c'est le mapping de lapage de code actuelle (vpage_code) qui doit déclencher une faute, qui en redéclenche une autrejusqu'à avoir une faute triple. Et d'après le numéro la ligne de log"00016359077e[CPU0 ] exception(): 3rd (13) exception with no resolution, shutdown status is 00h, resetting"je pense que l'erreur viendrait d'un #GP (general protection). Par contre je n'en sais pas plus et j'avoue être un peu perdu, si des personnes voient d'où l'erreur peutprovenir, ou il faut que je reagarde, je veux bien de l'aide. D'avance merci.
_________________________________________________________________
Caroline vient de mettre à jour son profil Messenger ! Connectez-vous !
http://login.live.com/login.srf?wa=wsignin1.0&rpsnv=10&ct=1198837564&rver=4.0.1534.0&wp=MBI&wreply=http:%2F%2Fhome.services.spaces.live.com%2F&lc=1036&id=73625
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: http://the-doors.enix.org/pipermail/sos/attachments/20080529/180afac7/attachment.html 


Plus d'informations sur la liste de diffusion Sos