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 :

Boot / kernel : compiler en binaire ou ELF ?


Sujet :

Programmation d'OS Assembleur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 74
    Points : 41
    Points
    41
    Par défaut Boot / kernel : compiler en binaire ou ELF ?
    Bonjour, j'ai remarqué que certain tutos disaient qu'il fallait compiler le bootSecteur / kernel en format ELF alors que d'autres, en binaire pur ! Lequel choisir ? Et quelles sont les différences ?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 13
    Points : 18
    Points
    18
    Par défaut
    Bonjour,
    En format ELF, tu seras obligé d'utiliser un éditeur de lien pour avoir ton programme final (utilisé surtout pour les OS en C).
    En format binaire, le code est entièrement compilé en une seule étape.

  3. #3
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 360
    Points : 23 599
    Points
    23 599
    Par défaut
    Si c'est le secteur de boot lui-même que tu veux initialiser, sache que le MBR d'un PC fait exactement 512 octets, auquel tu enlèves 2 octets pour la signature « 55 AA » et quatre fois 16 octets pour la table des partitions primaires.

    Il te reste donc exactement 446 octets pour y loger ton exécutable. Si tu arrives à y loger un ELF, bravo. Mais, dans tous les cas, le BIOS va charger ce secteur en une seule fois à l'adresse 0000:7c00 et l'exécuter à partir du début. Donc, binaire brut.

    Comme le dit Euquigam, l'intérêt est d'avoir des fichiers que tu peux manipuler avec tes outils habituels pendant tout le temps de la construction. Il se peut aussi que ces tutoriels partent du principe que le secteur de boot contiennent une amorce chargeant un petit bout de programme capable de repérer et de lire un ELF, qui lui va contenir soit un noyau entier, soit un programme suffisamment long pour démarrer ton ordinateur en entier.

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

Discussions similaires

  1. Compiler un .c en .elf
    Par PitchFork dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 16/03/2009, 15h56
  2. [Compiler] Compilation fichiers binaires
    Par brisbo dans le forum MATLAB
    Réponses: 7
    Dernier message: 12/02/2009, 09h53
  3. [kernel] compilation et problème module madwifi
    Par .:Spip:. dans le forum Administration système
    Réponses: 0
    Dernier message: 20/01/2009, 21h37
  4. boot - kernel panic
    Par Arnich dans le forum RedHat / CentOS / Fedora
    Réponses: 2
    Dernier message: 18/11/2007, 23h15

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