Créer un système d'exploitation
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Créer un système d'exploitation



  1. #1
    01antonin01

    Exclamation Créer un système d'exploitation


    ------

    Bonjour a tous

    J'ai 15 ans et je souhaite créer un système d'exploitation.
    je sais que c'est très long et difficile donc éviter certains commentaires car je ne suis pas du genre a baisser les bras.

    Je connais très bien les langages C/C++ et pyton est ce suffisant et par ou commencer?

    Merci

    -----

  2. #2
    azad

    Re : Créer un système d'exploitation

    Salut
    Ca c'est un peu la question du qui de l'oeuf ou de la poule est venu en premier…
    Alors pour débuter à zéro, puisque l'ordinateur qui va supporter ton propre système, n'existe pas encore il te faut un "ordinateur" un peu simpliste (encore que …)
    Donc tu prends un micro-controleur, n'importe lequel, tu étudies pendants plusieurs semaines son data sheet, tu le vide de tous les fichiers boot qu'il pourrait contenir, et tu installes ta propre création de façon à le rendre opérationnel. Ca c'est déjà un système d'exploitation. Mais c'est la base.
    Après tu comprendras que les bibliothèques telles celles des disques durs, USB, écrans, claviers…. ne sont finalement que les éléments externes qu'il te faudra inclure dans ton propre système pour en faire un système autonome. Et comme la place va te manquer dans le micro-controleur que tu auras choisi, il va te falloir fabriquer une carte avec de la ROM pour contenir tout cela. Et aussi de la RAM pour… bref j'arrête. Si tu travaille seul, et vu ton âge, tu as de saines soirées en perspective pour au moins les cinq années à venir.
    L'avantage est que tu peux tester l'état d'avancement à chaque nouvel ajout.

    Ha, aussi. Oublies Python, mais pense à l'assembleur. Et c'est justement là que le choix du micro-controleur devient important : certains ont des jeux d'instruction plus parlant, ou plus agréable que d'autres.

  3. #3
    albanxiii
    Modérateur

    Re : Créer un système d'exploitation

    Bonjour,

    Vous pouvez déjà commencer par contribuer au développement d'OS libres déjà existant, comme Linux, FreeBSD, etc.

    @+
    Not only is it not right, it's not even wrong!

  4. #4
    01antonin01

    Re : Créer un système d'exploitation

    Merci azad

    J'ai un microcontrôleur "Pcduino" :
    http://www.pcduino.com/
    est ce suffisant ?
    je sais qui faut un noyau mais quel type de noyau faudrait il pour commencer? ou comment en créer un?

  5. A voir en vidéo sur Futura
  6. #5
    azad

    Re : Créer un système d'exploitation

    Salut, 01antonin.

    La Foi, du moins celle qui oriente vers des connaissances concrètes, est à mes yeux une bonne chose. Et je n'ai pas pour habitude de briser les élans de ceux qui sont habités par elle.
    Mais sur le coup, il faut démarrer doucement. Le PCDuino est à mon avis trop, beaucoup trop, puissant pour servir de base au projet que tu as.
    C'est un ordinateur à part entière qui tourne sous Linux, qui est son système d'exploitation. Et qui est équipé de nombreux composants très complexes. ( sa vidéo, par exemple). Or tu souhaites faire ton propre système, c'est à dire te passer de Linux.
    Tu te doutes bien de ce que l'on pourrait faire d'un PC sur lequel on se refuserait d'installer le moindre système d'exploitation : rien bien entendu.
    Il faut démarrer avec quelque chose qui posséderait les interfaces requises pour pouvoir communiquer avec le monde extérieur via des ports entrées et sorties. Par exemple un "simple" (?) ATMmega328. Une puce à 5€. Et il faut l'acheter, nu. Par nu, je veux dire vierge, c'est à dire dont la mémoire flash est vide. Ce qui revient à dire que ce processeur - tout comme un PC sans système - est à l'achat, incapable de faire quoi que ce soit.
    Avant de l'acheter, il est indispensable de comprendre toutes ses possibilités, son architecture et les façons d'accéder aux nombreux sous-ensembles qu'il possède. Et pour cela, un seul moyen, s'imprégner de sa documentation. Tu la trouvera, par exemple ICI. Si tu résistes à cette lecture et à cet apprentissage, alors tu peux t'acheter la bête en question. Et commencer à en faire des choses qui te sembleront trop simples pour être intéressantes, mais qui seront tout de même très difficiles à réaliser. Rien que de faire passer une de ses sorties d'un niveau 1 à un niveau 0 va t'occuper pendant quelques semaines. Mais ces semaines ne seront pas perdues, et quoi que tu puisses penser elles seront très enrichissantes.
    Essaies donc de t'accrocher à la lecture du lien que je t'ai donné, ( ou de tout autre micro-controleur, comme tu veux ) et aussi à celle des différents liens que tu trouveras au fil de ta lecture. Si tu persistes, tu réussiras, et si tu résistes à la tentation de télécharger l'un des nombreux fichiers qui permettent la mise en oeuvre de ton processeur, alors tu pourras être fier de toi et dire : j'ai écris un système d'exploitation.

  7. #6
    lou_ibmix_xi

    Re : Créer un système d'exploitation

    J'ai 15 ans et je souhaite créer un système d'exploitation.
    je sais que c'est très long et difficile donc éviter certains commentaires car je ne suis pas du genre a baisser les bras.
    Créer un système d'exploitation, il ne faut pas rếver (même si tu ne baisses pas les bras facilement...), comprendre les concepts/problématiques sous-jacents c'est autre chose.
    Quelques liens intéressants:
    un site généraliste sur ce qui constitue un OS
    un site sur noyau linux et sa mailing-list
    un "pseudo OS minimaliste", qui tient en très peu de fichier C (il y en a certainement d'autre)
    Il faut également une sérieuse culture sur les aspects matériels informatiques / architectures des processeurs: tu dois savoir ce qu'est une mémoire cache, le mode protégée et autres vecteurs d'interruptions...

    Je connais très bien les langages C/C++ et pyton est ce suffisant et par ou commencer?
    hmmm... permets moi d'en douter... J'en ai 20 de plus que toi, avec 10 ans de développement en C de manière professionnel, et je me considère comme un bon programmeur C. Faire des petits programmes même au niveau école d'ingénieur est très loin de ce qu'est la réalité de l'ingénieurie logiciel, en terme de méthodologie (tests unitaires, conceptions modulaires, gestionnaire de version...), mais également dans le langage, ses possibilités et ses subtilitées (dérivations de classe en C pur, différence entre un pointeur et un tableau, alignement mémoire, norme...). Et le C est un language très simple... Le C++ est un language horriblement compliqué, avec des subtilités dans tous les sens (opérateurs de recopie par défaut et autre joyeuseuté qui te pêtent à la figure de temps à autre): laisse tomber le C++, il n'a à mon sens plus grand intérêt en tant que language de programmation de nos jours (c'est un avis personnel pas forcément partagé par mes confrères), par contre une immense majorité de développeur estiment que le C est le seul langage à utiliser pour faire un système d'exploitation. Enfin python est certainement un bon language pour tout un tas de truc mais tu ne feras jamais un un OS avec...

    J'ai un microcontrôleur "Pcduino" :
    Ce n'est pas forcément le plus adapté car les ARM cortex-A8 sont de sacré bestiole... Néanmoins, tu peux peut-être t'amuser avec le "bootloader" (certainement u-boot ou redboot), qui doit offrir quelques services d'un OS, et de toute façon c'est un point de passage obligé pour comprendre le passage de flambeau entre le boot-loader et l'OS. Attention, vérifies que tu puisses reprogrammer le boot-loader quoi qu'il arrive car, suivant les bêtises que tu peux faire, tu peux bloquer complètement la carte...
    Je partirais plutôt sur du PC classique: en utiliseant l'émulateur qemu, ou bien avec un vrai PC (mais en enlevant physiquement les disques-durs qui contiennent des données importantes).
    L'autre solution serait une bestiole bien plus simple (j'aime bien le MSP430, et l'AVR a une très bonne presse, je n'aime pas trop les PIC mais c'est surtout dû au compilateur MPLAB que je trouve très mauvais), tu trouves des cartes et des programmateurs pour un 50aine de $ ou moins chez www.olimex.com par exemple, et tu t'amuses avec et autour de FreeRTOS là-dessus...

    Voilà quelques pistes, donc non ne baisse pas les bras, en revanche revoie tes ambitions à la baisse, tu n'écriras certainement pas un OS mais tu peux expérimenter autour et avec pour mieux comprendre de quoi il en retourne...

Discussions similaires

  1. créer un systeme d'exploitation
    Par invite585bbbc7 dans le forum Logiciel - Software - Open Source
    Réponses: 21
    Dernier message: 08/04/2012, 23h37
  2. systeme d'exploitation
    Par invitea51476ab dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 30/07/2009, 12h21
  3. Systeme d'exploitation
    Par invitee61ef0f4 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 19
    Dernier message: 19/11/2008, 11h35
  4. systeme d exploitation
    Par dewinter dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 10/06/2007, 22h22
  5. Systéme d'exploitation
    Par invite67d96d45 dans le forum Logiciel - Software - Open Source
    Réponses: 11
    Dernier message: 17/05/2003, 17h11
Découvrez nos comparatifs produits sur l'informatique et les technologies.