Précédent   Forum du club des développeurs et IT Pro > Autres langages > Assembleur > Programmation d'OS
Programmation d'OS Programmation de systèmes d'exploitation
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 09/03/2009, 03h20   #1
spiner900
Invité régulier
 
Inscription : janvier 2009
Messages : 63
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 63
Points : 9
Points : 9
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 ?
spiner900 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2010, 15h10   #2
Euquigam
Futur Membre du Club
 
Inscription : août 2010
Messages : 13
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 13
Points : 15
Points : 15
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.
Euquigam est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2010, 17h41   #3
Obsidian
Modérateur
 
Avatar de Obsidian
 
Homme
Chercheur d'emploi
Inscription : septembre 2007
Messages : 4 639
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Chercheur d'emploi
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2007
Messages : 4 639
Points : 11 096
Points : 11 096
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.
Obsidian est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 13h21.


 
 
 
 
Partenaires

Hébergement Web