Erreu dans Bosokernel pour les intérruptions ?

Résolu
Edouard_Kaiser Messages postés 4 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 30 août 2005 - 20 juil. 2005 à 13:20
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010 - 13 déc. 2005 à 13:19
Salut à tous,
Voila je me demandais si il n'yavait pas une erreur dans les tutoriaux de BosoKernel.





http://inferno.cs.univ-paris8.fr/~am/tutorial/os/tutorial00.html





L'IDT qui contient les descripteurs d'intérruption doit contenir dans
les 32 premières entrées les descripteurs pour les 32 exceptions que
peuvent lever les processeurs x86.


De ce fait il s'agit d'interruptions qui n'ont aucun lien avec le PIC 8259A mais d'interruptions internes au processeur non ?


Dans ce cas si j'ai raison, les 32 premières fonctions bas niveaux définies en assembleur ne devraient pas contenir ce code :






Code:, ----
mov al,0x20

out 0x20,al







qui correspond à l'envoit d'un EOI (End Of Interrupt) au PIC.





J'ai raison ou j'ai rien compris ?

12 réponses

cs_patatalo Messages postés 1466 Date d'inscription vendredi 2 janvier 2004 Statut Membre Dernière intervention 14 février 2014 2
21 juil. 2005 à 13:18
salut,

tu as presque tout compris, les 32 premieres sont des exception qui n'ont rien a voir avec le pic.

par contre, le pic est definit par defaut avec le bios sur les n° d'interrutption 08h..0Fh (maitre) et 0x70..0x77 ( esclave )

donc, il est possible de lever une interruption pic sur les plages 08..0Fh ( notamment timer en 08 et clavier en 09 ) si tu n'as pas reprogrammé ton pic.

il est possible de reprogrammer les n° interruption du pic, les exemples sont simples a trouver...

@++
3
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010
30 août 2005 à 00:40
Bonsoir,



mon niveau est très débutant, alors je pose ma question quand même:



Dans le tutorial Bosokernel, il donne des commandes pour obtenir le fichier binaire :


"$ nasm -f bin -o bootsect bootsect.asm







Pour lancer le secteur de boot, il faut
copier le binaire sur une disquette :





$ dd if=bootsect of=/dev/fd0"

le "$" n'est pas reconnu, je le supprime, et nasm me fait mon fichier binaire.

Une fois mon fichier binaire obtenu, je le copie sur une disquette vierge, et le pc ne veut pas booter dessus.
ces commandes ressemblent à des commandes linux.

Comment faire ?




Corole3
3
Edouard_Kaiser Messages postés 4 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 30 août 2005
30 août 2005 à 09:58
En effet ce sont des commandes Linux ! Le $ est simplement le prompt ou l'invité de commande, il ne doit pas etre tapé.

Il ne suffit pas non plus de copier le fichier obtenu dans une
disquette car les 512 premiers octets de la disquette ne seront pas les
les 512 octets de ton fichier.

IL faut que tu utilises cette commande dd ou un équivalent si tu es
sous Windows (rawrite ? je ne me rappelle plus trop..), recherche avec
Google rawrite peut etre :)

A+
3
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010
30 août 2005 à 14:51
Merci Edouard_Kaiser,

j'ai utilisé rawrite comme tu m'as dit et ça marche. Le souci c'est que si j'essai d'ouvrir la disquette sous windows, il me dit " disquette non formatée" mais elle boote quand même .

Donc le reste des exemples sont pour Linux

Si j'ai un souci, je repasse.

Merci encore
Corole3[^]
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Edouard_Kaiser Messages postés 4 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 30 août 2005
30 août 2005 à 15:54
Ce n'est pas une question de Linux ou Windows, Linux te dira la meme chose et ne pourra pas monter la disquette.

Windows te dis "disquette non formatée" car dessus il n'y a aucun
système de fichier (FAT), tu as simplement copié en brut ton fichier

sur le premier secteur de ta disquette ! De ce fait, aucun file system...
3
Edouard_Kaiser Messages postés 4 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 30 août 2005
21 juil. 2005 à 23:48
Oui, pour la reprogrammation du pic je connais merci :) Merci pour la confirmation.

----------------------------------------------
Linux ? Il y'a moins bien, mais c'est plus cher !
http://kaiser.edouard.free.fr/
0
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010
30 août 2005 à 16:07
ok, merci pour cette précision.



Lorsque je parlais de Linux, c'était pour la synthaxe du code utilisé dans l'exemple : $ dd if=bootsect of=/dev/fd0"

alors qu'il faut utilser rawrite.

Heureusement que tu avais posé cette question concernant
Bosokernel, qui m'a permise de poser la mienne.

Merci.

je regarde la suite des exemples

Corole3
0
falcon007de Messages postés 5 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 8 octobre 2005
8 oct. 2005 à 10:18
hallo
je cherche le code source du bosokernel dans l´internet mais a ce qui parait
le site n´ai plus accecible
est ce que quelqu´un peux me donner le code source en assembleur
mon email est falcon007de@yahoo.de
merci
0
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010
10 oct. 2005 à 22:52
Salut,



je te l'envoie

Corole3
0
MrNOP Messages postés 17 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 1 février 2006
13 déc. 2005 à 11:54
Slt

Moi aussi je voudrais bien sur [mailto:cos2k@hotmail.com cos2k@hotmail.com] le source de bosokerner car je code un os en Pmode.

JNE[CrAcK] Were MrNop
0
MrNOP Messages postés 17 Date d'inscription dimanche 28 mars 2004 Statut Membre Dernière intervention 1 février 2006
13 déc. 2005 à 11:55
Slt

Moi aussi je voudrais bien sur [mailto:cos2k@hotmail.com cos2k@hotmail.com] le source de bosokerner car je code un os en Pmode.

JNE[CrAcK] Were MrNop
0
corole3 Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 4 janvier 2010
13 déc. 2005 à 13:19
Salut,



c'est fait

Corole3
0
Rejoignez-nous