Forum Linux.embarqué COntribuer au développement linux .

Posté par . Licence CC by-sa
Tags : aucun
2
14
avr.
2016

Bonjour à tous ,

Je souhaiterais contribuer au developpement du système linux embarqué en langagce C .
Pourrriez vous me diriger vers le lien d'un projet en cours .
Je précise que je suis débutant mais je m'interesse bien au systeme linux, developement de driver …
tout aide serait précieuse .
Merci à vous

:)

linuxement ,
Moi

  • # pour commencer…

    Posté par . Évalué à 3.

    …un moteur de recherche et un niveau d'anglais minimal

    ensuite, tu peux faire un tour par là: http://elinux.org/Main_Page

    • [^] # Re: pour commencer…

      Posté par . Évalué à -5.

      Sympas le site que tu partages.

      Une vaingtaine de plateformes pour la pluspart basée sur une architecture "ARM" (machines basses consommation)

      J'ai souvent vu mentionnée la plateforme Rasbery Pi comme abordable de part sa connectivité et son prix attractif.
      Son conncurent direct semble être les bananapi.

      J'ai souvent lu comme conseil de démarrer sur un petit projet afin de se fixer un objectif et trouver une finalité dans son apprentissage. Or le choix d'une plateforme de dévelopement est fondamental et tu devras adapter ton projet selon les possibilité de ta plateforme ou alors adapter ta plateforme à ton projet.

      J'ai vu que ces cartes disposaient d'entrées/sortie (GPIO) qui pouvaient être commandées par le systeme qui tourne dans la mémoire flash de la machine (rasbian = debian pour rasberry pi)
      En l'occurence ces GPIO semblent nombreuses comme le matériel embarqué dans le Rasbery Pi.

      Après j'ai vu des sytèmes qui semblent plus léger en entrée sorties comme le pine64 (dans la meme gamme de prix) mais qui sont peut-être tout aussi intéressant.

      Les autres plateforme semblent intéressantes mais parfois plus onéreuse mais peut-être que pour un kit de développement a visée pédagogique il est important d'investir un peu plus ? La qualité de la documentation et du support est il avantageux ?

  • # Eudyptula challenge

    Posté par (page perso) . Évalué à 5.

    Il existe une série de cours qui va te permettre d'aborder 2 choses :
    - la structure d'un driver
    - la manière de communiquer avec les autres dev noyau et comment formatter/envoyer ton travail.

    Il s'agit de l'eudyptula challenge.

    Je ne peux que te conseiller d'aller y jeter un oeil, car c'est exactement fait pour ce que tu recherches.

    C'est vraiment progressif. Je l'avais commencé il y a un certains temps, il faudra que je le continue un de ces jours :)

  • # Embarqué, driver

    Posté par . Évalué à 1.

    Pourquoi veux-tu coder des systèmes embarqués ?
    C'est un peu difficile pour un débutant de commencer à coder des drivers, ou des choses concernant des systèmes embarqués. je ne pense pas que ça soit une bonne idée.

    En langage C sous linux, tu peux aussi coder des utilitaires, un bot IRC, etc. et si tu veux vraiment un programme qui tourne dans ta poche, alors intéresse toi à Arduino qui est une carte de prototypage électronique, et au Raspberry Pi qui est un ordinateur de la taille d'une carte de crédit (dont la version la moins chère coûte 5 euros). Les 2 sont programmables en C, et sont abordables pour des débutants.

    Sinon pour apprendre le C, tu cherches "tutoriel langage c" sur google. Sinon il y a ce livre The C programming language qui est la référence sur le C.

    • [^] # Re: Embarqué, driver

      Posté par . Évalué à 3.

      Je suis d'accord avec max22, on ne devient pas champion de formule1 du jour au lendemain sans pratiquer.
      Ce que je te conseillerais, surtout si tu ne maîtrises pas le C, c'est de commencer par des petits projets; j'entends par là, que si tu ne maitrises pas les pointeurs de pointeurs, les pointeurs de fonction, unions, structures, allocations de mémoires, le code assembleur généré, les makefile, et tout ce qui donne des sueurs froides aux étudiants, alors ça risque d'être "compliqué".

      Je pense qu'il est plus motivant d'apprendre avec des applications concrètes.
      Comme idée de petits projets pour te former, je peux te proposer ceux-ci:
      - Récupération de la température, humidité à l'extérieur, dans un pot de fleurs, etc. avec un arduino ou autre microcontrolleur 8 bits
      - Affichage des données sur un petit écran (7 segments, lcd) avec un arduino ou autre microcontrolleur 8 bits
      - Transmission de données avec des petits modules RF par exemple (arduino, modules RF)
      - Récupération des données sur un PC via USB, bluetooth, webserver, ou autre
      - Développement de petites applications (PC) pour pilotage/récupération de données d'une plateforme arduino via interface série, ethernet ou autre

      Ca, c'était juste pour la partie C "embarqué"; et encore, je ne t'ai pas rajouté un développement en assembleur, indispensable pourtant. Sans maîtriser ce genre de développement, tu ne sauras que faire du C; ce n'est pas péjoratif, c'est juste que l'embarqué est une expertise à elle toute seule.
      Ensuite, tu peux attaquer sur de l'OS, le mieux c'est du RTOS mais bon, c'est juste pour de la formation.
      - Compilation d'un bootloader pour Raspberry, BeagleBone Black ou autre
      - Compilation et intégration d'un kernel "Linux From Scratch" sur une BeagleBoneBlack, Raspberry ou autre

      Essaye de toujours "finir" un projet que tu commences, car c'est dans les détails que tu apprendras le plus.
      Prends le temps de lire des livres en plus et les datasheets. Si ton système plante avant 2 ans, s'il ne démarre pas bien sur plusieurs milliers de tests, c'est que ton système n'est pas suffisemment maîtisé.

      PS1: parce qu'on est 'dredi, un HS:
      Si tu maîtrisais le C uniquement embarqué, tu ne devrais pas te sentir à l'aise pour faire une application performante en langage C sur PC. Et inversement, j'en connais qui sont très doués pour faire des applications/drivers sur PC et qui sont incapables de faire un driver performant et fiable sur une plateforme embarquée: ce n'est pas pour rien que "Das U-Boot" n'a suporté que très tard l'architecture x86.

      PS2(qui devrait être le minimum requis tellement ça me semble évident): si tu ne fais pas en sorte de maîtriser l'anglais (compréhension écrite au minimum), ou si tu es un de ces ayatollahs du français, passe ton chemin.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.