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 :

Utiliser le format ELF pour son système d'exploitation perso


Sujet :

Programmation d'OS Assembleur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de bifur
    passe le balais et l'aspirateur
    Inscrit en
    Mars 2008
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : passe le balais et l'aspirateur

    Informations forums :
    Inscription : Mars 2008
    Messages : 314
    Par défaut Utiliser le format ELF pour son système d'exploitation perso
    Je suis actuellement en train de réfléchir à la possibilité d'utiliser le format ELF pour mes fichiers exécutables dans mon système d'exploitation.

    D'abord voilà comment est prévu de fonctionner mon système : mode protégé 32bits avec utilisation de la segmentation, chaque tâche a sa propre LDT qui contient les descripteurs de la mémoire utilisée (pile, code et données) l'IRQ timer est configurée pour se déclencher toutes les 2.5 ms et fait "commuter" les tâches toutes les X*2.5 ms en sauvegardant/restaurant les registres et flags sur la pile de chaque tâche.

    Actuellement, j'ai défini un format de fichier spécial pour mon système d'explotation, qui permet de définir un segment de pile, un segment de code et 4 segments de données (un pour chaque sélecteur de segment possible) pour chaque tâche.
    Je suis en train de me demander s'il ne serait pas plus judicieux d'utilliser un format de fichier exécutable déjà existant ?
    Est-ce que l'on peut signaler dans le format de fichier ELF que le fichier n'est exécutable que dans un seul environnement ? J'ai essayé dans un fichier de commencer mon programme par : format ELF executable xx (avec plusieurs valeurs pour xx) mais mon Linux a tout de même bien voulu le charger (ce qui a bien sûr fini par une erreur core dumped).

    Si vous aviez des suggestions/idées/critiques qui me permettraient de trancher...

  2. #2
    Nouveau candidat au Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2012
    Messages : 2
    Par défaut
    Citation Envoyé par bifur Voir le message
    je suis en train de me demander si il ne serait pas plus judicieux d'utilliser un format de fichier executable déja existant?
    De mon point de vue, ca dépend de ton objectif vis à vis du travail que tu fais.
    De mon côté, je suis parti du principe que j'utilise des formats ou des standards existants quand c'est disponible. Mon objectif étant plutôt l'architecture de l'os et son développement, plutôt que de tout inventer. Donc, je vais utiliser le format ELF quand j'en serais arrivé là, si j'arrive jusque là.

    Citation Envoyé par bifur Voir le message
    est ce que l'on peut signaler dans le format de fichier ELF que le fichier n'est executable que dans un seul envirommement?
    Quel est ton objectif par rapport à ca ? tu veux t'assurer que les exécutables produits pour ton os ne puissent pas s'exécuter sur d'autres ou au contraire vérifier que l'exécutable peut s'exécuter sur ton système ?

  3. #3
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 258
    Par défaut
    Regardes les spécs du format ELF dont voici un résumé :
    https://fr.wikipedia.org/wiki/Execut...Linking_Format

    Tu verras que tu peux jouer avec les champs ABI et machine cible.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  4. #4
    Membre chevronné Avatar de bifur
    passe le balais et l'aspirateur
    Inscrit en
    Mars 2008
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : passe le balais et l'aspirateur

    Informations forums :
    Inscription : Mars 2008
    Messages : 314
    Par défaut
    mon objectif est de pouvoir signaler aux systèmes qui essayerait d'executer un fichier créer pour mon système de ne pas le faire car je n'uttilise pas les mêmes interruptions pour mes fonctions système et aussi pour que mon système puisse reconaitre les executable qui sont compatible

    pour ce qui est du champ ABI du format de fichier ELF c'est celui la qui est modifié par la directive "format ELF executable ??" pour FASM et curieusement mon ordinateur ne se pose pas de question et execute quand même le fichier! (j'ai vérifié que le champ était bien modifié a l'éditeur hexadecimal)

  5. #5
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 258
    Par défaut
    Je ne sais pas si les champs sont informatifs ou vérifiés par les fonctions exec.

    mon objectif est de pouvoir signaler aux systèmes qui essayerait d'executer un fichier créer pour mon système de ne pas le faire car je n'uttilise pas les mêmes interruptions pour mes fonctions système et aussi pour que mon système puisse reconaitre les executable qui sont compatible
    Dans ce cas, n'utilises pas ELF.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  6. #6
    Membre chevronné Avatar de bifur
    passe le balais et l'aspirateur
    Inscrit en
    Mars 2008
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : passe le balais et l'aspirateur

    Informations forums :
    Inscription : Mars 2008
    Messages : 314
    Par défaut
    l'avantage que je souhaitait tirer de l'utillisation du format ELF était de pouvoir facilliter le dévellopement de programme dans d'autres language que l'assembleur mais peut être que c'est possible autrement

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 28/07/2015, 04h24
  2. Simple Interface Graphique pour un Système d'Exploitation
    Par marwane_nano dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 27/08/2010, 11h40
  3. Interface Graphique pour un Système d'exploitation
    Par marwane_nano dans le forum Autres systèmes
    Réponses: 0
    Dernier message: 26/08/2010, 22h39
  4. Réponses: 105
    Dernier message: 10/10/2009, 23h12

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