IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation d'OS Assembleur Discussion :

[Débutant] Programmation OS , asm/C/C++, compilateur 16/32 bits


Sujet :

Programmation d'OS Assembleur

  1. #1
    tlt
    tlt est déconnecté
    Membre confirmé Avatar de tlt
    Homme Profil pro
    Programmeur
    Inscrit en
    Juillet 2004
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Programmeur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 205
    Par défaut [Débutant] Programmation OS , asm/C/C++, compilateur 16/32 bits
    Salut!!
    Je me suis interressé tout recemment sur la programmation des OS et il y a quelques questions qui me turlupinent.Je travaille fréquemment sous windows (occasionnellement sous linux),et j'ai presque tout les compilateurs (asm,C,C++) sortis depuis .
    Voilà,j'ai appris qu'on peut associer le C et l'assembleur pour la compilation d'un kernel.Et d'après ce que j'ai appris aussi c'est qu'on utilise GCC et Nasm.
    Mon probleme ,d'abords c'est la façon dont on code l'asm sous gcc,c'est un peut nouveau pour moi,par contre j'aime beaucoup NASM.Donc je me demande,n'y aurait'il pas d'autres compilateur capable de faire le même truc que GCC.est ce que c'est possible avec Visual C++, ou le compilateur BC5 de chez borland.Sinon j'ai aussi les anciens Turbo C/C++ d'autrefois,ainsi que le compilateur BC5 avec le support 16bits et un IDE d'autre fois.
    Ensuite,j'ai un autre problème : comme je suis encore un débutant,je ne voudrait pas trop m'aventurer dans le mode protégé c-à-d 32bits,n'y aurait-il donc pas un compilateur (16bits) capable de combiner l'asm et le C,et en mode 16-bits (mode réel) pour me permettre de débuter,comme un genre de gcc mais en 16 bits?.
    Et une derniere chose : quelqu'un pourrait-il m'indiquer un lien pour comprendre comment on encode un fichier/dossier dans un système FAT,c-à-d comment sait t-on que c'est un fichier ou un dossier,et si le fichier est fragmenté, ou se trouve la suite,sa taille, son nom, etc.J'ai appris recemment comment fonctionne les tables de partitions mais c'est tout.Je travaille souvent sur disquette (comme tout le monde) et j'utilise un ordinateur virtuel (Virtual PC 2004 sou windows et VirtualBox sous Ubuntu) .
    Voilà tout.Merci

  2. #2
    Membre expérimenté Avatar de Nyarlathotep
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 174
    Par défaut
    Essaye avec Digital Mars C++.
    Il me semble qu'il peut faire du code 16bits et que la syntaxe de assembleur intégré est comparable à celle de NASM ( à vérifier. )

    Et pour FAT, il me semble qu'il y a ça.

  3. #3
    tlt
    tlt est déconnecté
    Membre confirmé Avatar de tlt
    Homme Profil pro
    Programmeur
    Inscrit en
    Juillet 2004
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Programmeur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 205
    Par défaut merci
    Merci pour le lien!!!!

  4. #4
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 12
    Par défaut
    salut
    oui c'est vrai le lien est exellent mais stp
    tu aurais pas un tuto qui explique comment programmer un systeme de fichier et le tuto en francais
    stp
    merci

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 225
    Par défaut
    Euh pourquoi du code 16bits ? du moment où tous les CPU d'aujourd'hui ( et même ceux émulé par des émulateurs comme BOCHS, QEMU ... ) sont 32 bits .

    Donc au lieu de chercher un compilateur qui produit du code 16 bits, crée plutôt un boot loader en Assembleur qui initialise une GDT ( Google est ton ami ), passe en mode protégé ( 3~4 instructions suffisent ) et fait un JMP vers l'adresse du noyau 32 bits ( chargé en mémoire avec l'interruption 13h biensûr ) .

    Après, bonne chance pour recoder quelques fonctions de la libc ( commence par putchar et printf )

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 108
    Par défaut
    Salut !

    Ici tu trouveras ton bonheur en français pour la GDT ! ^^
    http://inferno.cs.univ-paris8.fr/~am...utorial04.html

  7. #7
    tlt
    tlt est déconnecté
    Membre confirmé Avatar de tlt
    Homme Profil pro
    Programmeur
    Inscrit en
    Juillet 2004
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Programmeur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 205
    Par défaut rs os
    Merci pour les lien.
    Bon, mon vrai probléme c'est de m'aventurer à gerer les interruptions ( el la GDT) donc c'est la raison pour laquelle j'aimerai rester sur 16 bits, c'est plus facile je crois.
    Mais en y réfléchissant, je vais tenter la 32 bits.

    J'ai un dernier souci : où trouver des docs pour les ports ? (gestion du clavier, du mode video surtout) avec les instructions "in" et "out" je crois.

    J'utilise de l'asm ou du C. Mon autre souci est comment associer les deux si j'utilise NASM et GCC.
    Le syntaxe asm de gcc me pose probleme. J'aimerai utiliser un autre compilateur .
    merci

  8. #8
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 225
    Par défaut
    http://www.osdev.org/wiki/

    Tu trouveras toutes tes réponses dans ce wiki

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Programme Java en mode console / Applet
    Par Metallic-84s dans le forum Applets
    Réponses: 5
    Dernier message: 23/05/2013, 11h06
  2. Réponses: 20
    Dernier message: 29/03/2006, 11h37
  3. [débutant] programmation Symbian
    Par insidephone dans le forum MFC
    Réponses: 2
    Dernier message: 19/03/2006, 16h33
  4. [Débutant] Java et Asm
    Par Haywire dans le forum Assembleur
    Réponses: 4
    Dernier message: 17/03/2006, 00h22
  5. [Débutant]Programmer un mobile en java
    Par Pill_S dans le forum Java ME
    Réponses: 3
    Dernier message: 28/05/2004, 13h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo