P i e r r e F i c h e u x É r i c B é n a r d Linux embarqué Nouvelle étude de

P i e r r e F i c h e u x É r i c B é n a r d Linux embarqué Nouvelle étude de cas – Traite d’OpenEmbedded 4e édition © Groupe Eyrolles, 2012, ISBN : 978-2-212-13482-7 Cet ouvrage a pour but de présenter les différentes techniques disponibles pour la création de systèmes embarqués sous Linux. De nombreux exemples de fichiers de configuration Linux, de codes source en C et de scripts bash (Bourne Again Shell) agrémentent le tout. S’il faut choisir des qualificatifs pour cet ouvrage, les mots « concret » et « pragmatique » arrivent largement en tête ! L’ouvrage se veut aussi indépendant que possible des produits commerciaux, même si certains peuvent objecter une préférence pour la distribution Fedora – liée à l’éditeur Red Hat Software – citée systématiquement en référence dans cet ouvrage. Lorsque c’est nécessaire, nous fournirons également un exemple d’utilisation sur Debian ou Ubuntu. Dans tous les cas, les concepts exprimés dans cet ouvrage sont valables quelle que soit la distribution utilisée, ce qui est logique puisque nous utilisons systématiquement le noyau Linux officiel disponible sur http://www.kernel.org ainsi que des composants cons- truits systématiquement à partir de leurs sources. À qui s’adresse ce livre ? Ce livre s’adresse à un public qui désire se familiariser avec l’utilisation de Linux comme système embarqué, et dans le but de l’intégrer à un équipement industriel Avant-propos PRÉCISION Linux ou GNU/Linux ? Comme nous le verrons plus loin, les travaux originaux de Linus Torvalds se limitent à la partie noyau. La partie espace utilisateur est constituée en majorité de composants issus du projet GNU. Le terme correct pour le système d’exploitation basé sur le noyau Linux est donc GNU/Linux. Afin de rester dans la conti- nuité et de simplifier l’expression, le terme « Linux » a cependant été conservé dans cette nouvelle ver- sion de l’ouvrage. Linux embarqué 2 dédié. Il pourra intéresser, dans sa première partie, cadres et décideurs de départe- ments techniques souhaitant évaluer l’état de l’art dans ce domaine ainsi que les pro- duits commerciaux disponibles. Une lecture plus poussée de l’ouvrage, dans ses parties subséquentes, permettra aux développeurs de réaliser de façon pratique l’intégration d’un système Linux embarqué à partir de composants standards. La lecture complète de l’ouvrage nécessite des notions de programmation en langage C et en langage de scripts shell Unix, ainsi que quelques connaissances générales en informatique industrielle. Structure de l’ouvrage L’ouvrage est divisé en trois parties, plus une étude de cas. La première partie traitera des systèmes embarqués en général, de leur champ d’application ainsi que des avan- tages et inconvénients de l’utilisation de Linux pour ce type de système. Un chapitre décrira ensuite le matériel pouvant être utilisé pour un système Linux embarqué. Cette première partie est relativement accessible d’un point de vue technique et ne demande pas de connaissances informatiques avancées. Par rapport aux précédentes éditions de l’ouvrage, elle a été légèrement écourtée, sachant qu’il y a toujours plus de sujets à évoquer dans les techniques de développement. La deuxième partie aborde les méthodes de réalisation d’un système Linux embarqué à partir de composants standards comme le noyau Linux. Après une description de la structure de Linux, tant au niveau du noyau que de la répartition des fichiers sys- tème, les différentes phases de la création d’un système réduit sont abordées, en par- ticulier la compréhension de la structure et du fonctionnement de Linux, l’optimisa- tion de l’empreinte mémoire utilisée ou bien la création de scripts de démarrage. On s’attachera ensuite à enrichir ce système minimal par une description détaillée des composants liés aux réseaux, à l’authentification des utilisateurs, au choix d’un char- RESSOURCES EN LIGNE Code source téléchargeable et compléments Les sources complètes des exemples présentés sont disponibles en téléchargement sur le site des édi- tions Eyrolles. B http://www.editions-eyrolles.com/Livre/9782212124521/linux-embarque Puisque c’est dans l’air du temps, nous avons également dédié une page à cet ouvrage sur le réseau social Facebook (chercher « linux embarqué v3 »), ce qui permettra d’avoir un dialogue avec les lecteurs, des suggestions, des remarques, voire des correctifs pour les prochaines versions. B http://www.editions-eyrolles.com/Livre/9782212134827/linux-embarque Avant-propos 3 geur de démarrage (bootloader) ou bien à l’installation du système sur des périphéri- ques spéciaux comme les mémoires flash. Dans la troisième partie, nous détaillerons certaines mises en œuvre particulières, notamment pour les systèmes temps réel, et l’on montrera comment concevoir des inter- faces graphiques embarquées, locales ou distantes. Cette partie contient également un chapitre consacré aux outils de mise au point ainsi qu’à Buildroot et OpenEmbedded, qui sont parmi les outils de production les plus utilisés pour la génération d’une distribu- tion embarquée à base de Linux. En fin d’ouvrage, une étude de cas décrira la mise en place d’un environnement com- plet pour une carte ARM. Précisions concernant les troisième et quatrième éditions Sept ans déjà ont passé depuis la sortie de la deuxième édition de l’ouvrage Linux embarqué. Ce dernier était épuisé depuis des mois. Au sens propre, puisque la version imprimée n’était plus disponible, mais également au sens figuré, puisque les concepts décrits à l’époque – très orientés x86 – n’étaient plus en phase avec le monde de l’embarqué d’aujourd’hui, pour lequel d’autres architectures, comme ARM, sont pré- sentes dans la majorité des projets. Durant ces mois, j’ai résisté non sans scrupules aux nombreuses pressions des développeurs, étudiants et lecteurs qui me demandaient de plus en plus fréquemment quand cette troisième édition verrait enfin le jour. La décision fut longue, car contrairement à la deuxième édition, je savais qu’une troi- sième version nécessiterait une réécriture à peu près intégrale de l’ouvrage, donc un volume de travail sans commune mesure avec celui de 2005. J’avais besoin de temps pour trouver l’énergie nécessaire, ce qui n’arriva hélas que début 2010. Cet apport d’énergie fut le bienvenu puisque, mis à part les trois premiers chapitres d’introduc- tion, les dix chapitres techniques (4 à 13) furent presque entièrement écrits pour cette troisième version, certains sujets ayant été à peine effleurés dans la deuxième édition. Concernant cette quatrième édition, elle nous a permis de traiter des sujets omis lors de la troisième par manque de temps, comme OpenEmbedded, Ftrace, Barebox ou bien l’adaptation du noyau Linux sur une carte ARM. Cette version constitue une « simple » mise à jour par rapport à la troisième mais les quelques sujets ajoutés sont, me semble-t-il, importants pour les développeurs, sachant qu’en plus, le stock de la troisième édition est désormais épuisé. Cette nouvelle édition fut également l’occasion d’accueillir, en tant que coauteur offi- ciel, Éric Bénard de la société Eukréa, qui avait déjà collaboré de manière anonyme aux éditions précédentes. Linux embarqué 4 Comme je l’exprimais en 2005, ces différents ouvrages auront, je l’espère, contribué à la promotion de Linux embarqué dans le monde francophone. Je reçois toujours de nombreux courriers de soutien et de suggestions, dont certains de pays éloignés dits « émergents », qui voient dans le logiciel libre l’opportunité du développement d’une industrie qui ne passe pas par le travers – inacceptable – du piratage. Plusieurs étu- diants du continent africain (Maroc, Sénégal, Tunisie, etc.) ont réalisé des mémoires sur le sujet et m’ont posé des questions auxquelles j’ai tenté de répondre dans la limite de mon emploi du temps. Certains sont restés des inconnus derrière une adresse électronique ou la validation d’un mémoire. Pour d’autres, ce fut l’occasion de ren- contres professionnelles qui ont orienté leur vie différemment, ainsi que la mienne. Ce livre est resté ce à quoi il était destiné, un support concret à la découverte des technologies Linux dans le monde industriel. Outre les nombreuses formations dis- pensées sur le sujet, mon cercle d’auditeurs s’est enrichi de plusieurs écoles d’ingé- nieurs prestigieuses dans lesquelles le logiciel libre a acquis une place de choix dans les programmes de spécialisation. Je citerai ici l’ENSEIRB-MATMECA (Bordeaux) et l’EPITA (Paris), que je remercie encore une fois pour leur confiance et le plaisir que l’on ressent à enseigner ces sujets passionnants dans de si bonnes conditions. Je profite de cette nouvelle édition pour remercier les professionnels qui ont contribué de près ou de loin à la diffusion de mes ouvrages. Je remercie de nouveau l’équipe d’Open Wide dont l’intérêt pour Linux embarqué ne faiblit pas. Le monde du travail étant en permanente évolution, les mouvements me permettent de remercier aujourd’hui des collaborateurs ou développeurs désormais proches que je ne connaissais pas il y a sept ans, citons Alexandre Lahaye, Frédéric Ferrandis, Thomas Monjalon, Gregory Thiémonge, Zakaria ElQotbi, Albin Kaufmann, Benoit Mauduit et Julien Aubé. Remercions également Nicolas Royer, membre de l’équipe d’Eukréa, qui a apporté des remarques judicieuses lors de la relecture de la première version des nou- vaux chapitres sur OpenEmbedded. Je remercie encore et toujours Linux Magazine France – et particulièrement Denis Bodor et Arnaud Metzler – qui m’offre régulièrement la possibilité de m’exprimer sur le sujet et donc d’entretenir ma plume. Merci encore à Patrice Kadionik de l’ENSEIRB- MATMECA qui a contribué à la rédaction de certaines parties du chapitre 12. Je uploads/Litterature/ ap-ficheux.pdf

  • 22
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager